@mapcomponents/react-maplibre 0.1.62 → 0.1.64
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.
- package/.babelrc +21 -2
- package/.editorconfig +1 -1
- package/.eslintrc.js +11 -1
- package/.github/workflows/check-catalogue-metadata-schema.yml +19 -0
- package/.storybook/main.js +0 -1
- package/.storybook/preview.js +0 -2
- package/CHANGELOG.md +43 -0
- package/coverage/clover.xml +864 -1037
- package/coverage/coverage-final.json +32 -21
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +170 -95
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/src/components/MapLibreMap/MapLibreMap.tsx.html +24 -24
- package/coverage/lcov-report/src/components/MapLibreMap/index.html +1 -1
- package/coverage/lcov-report/src/components/MlCenterPosition/MlCenterPosition.tsx.html +5 -5
- package/coverage/lcov-report/src/components/MlCenterPosition/index.html +1 -1
- package/coverage/lcov-report/src/components/MlCreatePdfButton/MlCreatePdfButton.tsx.html +2 -2
- package/coverage/lcov-report/src/components/MlCreatePdfButton/index.html +1 -1
- package/coverage/lcov-report/src/components/MlCreatePdfForm/MlCreatePdfForm.cy.tsx.html +148 -0
- package/coverage/lcov-report/src/components/MlCreatePdfForm/MlCreatePdfForm.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlCreatePdfForm/index.html +22 -7
- package/coverage/lcov-report/src/components/MlFeatureEditor/MlFeatureEditor.tsx.html +72 -42
- package/coverage/lcov-report/src/components/MlFeatureEditor/index.html +15 -15
- package/coverage/lcov-report/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlFillExtrusionLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/MlFollowGps/MlFollowGps.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlFollowGps/index.html +1 -1
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/MlGeoJsonLayer.tsx.html +86 -35
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/{MlSpatialElevationProfile/MlSpatialElevationProfile.js.html → MlGeoJsonLayer/story_utils/MlGeoJsonLayer.lineStyler.js.html} +215 -320
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.polygonStyler.js.html +649 -0
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerCircleStyler.tsx.html +112 -0
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerHeatMapStyler.tsx.html +115 -0
- package/coverage/lcov-report/src/components/MlGeoJsonLayer/story_utils/index.html +161 -0
- package/coverage/lcov-report/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlGeojsonLayerWithSource/index.html +1 -1
- package/coverage/lcov-report/src/components/MlGpxViewer/MlGpxViewer.tsx.html +394 -0
- package/coverage/lcov-report/src/components/MlGpxViewer/index.html +116 -0
- package/coverage/lcov-report/src/components/MlImageMarkerLayer/MlImageMarkerLayer.tsx.html +63 -285
- package/coverage/lcov-report/src/components/MlImageMarkerLayer/index.html +21 -21
- package/coverage/lcov-report/src/components/MlLayer/MlLayer.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/MlLayerMagnify/MlLayerMagnify.tsx.html +58 -76
- package/coverage/lcov-report/src/components/MlLayerMagnify/index.html +1 -1
- package/coverage/lcov-report/src/components/MlLayerSwipe/MlLayerSwipe.tsx.html +58 -61
- package/coverage/lcov-report/src/components/MlLayerSwipe/index.html +11 -11
- package/coverage/lcov-report/src/components/MlLayerSwitcher/MlLayerSwitcher.js.html +1 -1
- package/coverage/lcov-report/src/components/MlLayerSwitcher/components/LayerBox.js.html +30 -21
- package/coverage/lcov-report/src/components/MlLayerSwitcher/components/index.html +1 -1
- package/coverage/lcov-report/src/components/MlLayerSwitcher/index.html +1 -1
- package/coverage/lcov-report/src/components/MlMarker/MlMarker.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlMarker/index.html +1 -1
- package/coverage/lcov-report/src/components/MlMeasureTool/MlMeasureTool.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlMeasureTool/index.html +1 -1
- package/coverage/lcov-report/src/components/MlNavigationCompass/MlNavigationCompass.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlNavigationCompass/index.html +1 -1
- package/coverage/lcov-report/src/components/MlNavigationTools/MlNavigationTools.tsx.html +1 -1
- package/coverage/lcov-report/src/components/MlNavigationTools/index.html +1 -1
- package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.js.html +1 -1
- package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.stories_.js.html +1 -1
- package/coverage/lcov-report/src/components/MlOsmLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/MlScaleReference/MlScaleReference.js.html +1 -1
- package/coverage/lcov-report/src/components/MlScaleReference/index.html +1 -1
- package/coverage/lcov-report/src/components/MlShareMapState/MlShareMapState.js.html +1 -1
- package/coverage/lcov-report/src/components/MlShareMapState/index.html +1 -1
- package/coverage/lcov-report/src/components/MlSketchTool/LayerList/ColorPicker.tsx.html +214 -0
- package/coverage/lcov-report/src/components/MlSketchTool/LayerList/LayerList.tsx.html +121 -0
- package/coverage/lcov-report/src/components/MlSketchTool/LayerList/LayerListItem.tsx.html +412 -0
- package/coverage/lcov-report/src/components/MlSketchTool/LayerList/LayerPropertyForm.tsx.html +463 -0
- package/coverage/lcov-report/src/components/MlSketchTool/LayerList/index.html +161 -0
- package/coverage/lcov-report/src/components/{MlGPXViewer/MlGPXViewer.tsx.html → MlSketchTool/MlSketchTool.tsx.html} +271 -589
- package/coverage/lcov-report/src/components/{MlGPXViewer → MlSketchTool}/index.html +22 -37
- package/coverage/lcov-report/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.tsx.html +514 -0
- package/coverage/lcov-report/src/components/MlSpatialElevationProfile/index.html +21 -21
- package/coverage/lcov-report/src/components/MlThreeJsLayer/MlThreeJsLayer.js.html +1 -1
- package/coverage/lcov-report/src/components/MlThreeJsLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.tsx.html +20 -206
- package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/index.html +1 -1
- package/coverage/lcov-report/src/components/MlUseMapDebugger/MlUseMapDebugger.js.html +1 -1
- package/coverage/lcov-report/src/components/MlUseMapDebugger/index.html +1 -1
- package/coverage/lcov-report/src/components/MlVectorTileLayer/MlVectorTileLayer.tsx.html +10 -7
- package/coverage/lcov-report/src/components/MlVectorTileLayer/index.html +5 -5
- package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.js.html +1 -1
- package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/index.html +1 -1
- package/coverage/lcov-report/src/components/MlWmsLayer/MlWmsLayer.tsx.html +111 -57
- package/coverage/lcov-report/src/components/MlWmsLayer/index.html +19 -19
- package/coverage/lcov-report/src/components/MlWmsLoader/MlWmsLoader.tsx.html +201 -144
- package/coverage/lcov-report/src/components/MlWmsLoader/index.html +9 -9
- package/coverage/lcov-report/src/contexts/MapContext.tsx.html +23 -23
- package/coverage/lcov-report/src/contexts/SimpleDataContext.js.html +1 -1
- package/coverage/lcov-report/src/contexts/SimpleDataProvider.js.html +1 -1
- package/coverage/lcov-report/src/contexts/index.html +1 -1
- package/coverage/lcov-report/src/hooks/index.html +50 -50
- package/coverage/lcov-report/src/hooks/useCameraFollowPath/index.html +1 -1
- package/coverage/lcov-report/src/hooks/useCameraFollowPath/useCameraFollowPath.tsx.html +1 -1
- package/coverage/lcov-report/src/hooks/useExportMap/index.html +1 -1
- package/coverage/lcov-report/src/hooks/useExportMap/index.ts.html +1 -1
- package/coverage/lcov-report/src/hooks/useExportMap/lib.ts.html +1 -1
- package/coverage/lcov-report/src/hooks/useGpx/index.html +116 -0
- package/coverage/lcov-report/src/hooks/useGpx/useGpx.tsx.html +295 -0
- package/coverage/lcov-report/src/hooks/useLayer.ts.html +132 -66
- package/coverage/lcov-report/src/hooks/useLayerEvent.js.html +1 -1
- package/coverage/lcov-report/src/hooks/useLayerHoverPopup/index.html +116 -0
- package/coverage/lcov-report/src/hooks/useLayerHoverPopup/useLayerHoverPopup.tsx.html +331 -0
- package/coverage/lcov-report/src/hooks/useMap.ts.html +47 -47
- package/coverage/lcov-report/src/hooks/useMapState.ts.html +54 -54
- package/coverage/lcov-report/src/hooks/useSource.ts.html +57 -57
- package/coverage/lcov-report/src/hooks/{useWms.js.html → useWms.ts.html} +54 -15
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/index.ts.html +6 -6
- package/coverage/lcov.info +1724 -1974
- package/cypress/support/commands.ts +37 -0
- package/cypress/support/component-index.html +12 -0
- package/cypress/support/component.ts +46 -0
- package/cypress.config.ts +101 -0
- package/dist/components/MapLibreMap/MapLibreMap.d.ts +1 -1
- package/dist/components/MapLibreMap/lib/MapLibreGlWrapper.d.ts +53 -27
- package/dist/components/MlCenterPosition/MlCenterPosition.d.ts +3 -2
- package/dist/components/MlCenterPosition/MlCenterPosition.stories.d.ts +35 -16
- package/dist/components/MlComponentTemplate/MlComponentTemplate.d.ts +1 -1
- package/dist/components/MlComponentTemplate/MlComponentTemplate.stories.d.ts +12 -9
- package/dist/components/MlCreatePdfButton/MlCreatePdfButton.d.ts +1 -1
- package/dist/components/MlCreatePdfButton/MlCreatePdfButton.stories.d.ts +12 -9
- package/dist/components/MlCreatePdfForm/MlCreatePdfForm.cy.d.ts +1 -0
- package/dist/components/MlCreatePdfForm/lib/PdfPreview.d.ts +1 -1
- package/dist/components/MlFeatureEditor/MlFeatureEditor.d.ts +10 -4
- package/dist/components/MlFeatureEditor/lib/double_click_zoom.d.ts +0 -2
- package/dist/components/MlFeatureEditor/lib/theme.d.ts +1 -1
- package/dist/components/MlGeoJsonLayer/MlGeoJsonLayer.d.ts +23 -12
- package/dist/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.d.ts +12 -11
- package/dist/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.lineStyler.d.ts +2 -0
- package/dist/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.polygonStyler.d.ts +2 -0
- package/dist/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerCircleStyler.d.ts +3 -0
- package/dist/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerHeatMapStyler.d.ts +3 -0
- package/dist/components/MlGpxViewer/MlGpxViewer.d.ts +30 -0
- package/dist/components/MlGpxViewer/MlGpxViewer.stories.d.ts +17 -0
- package/dist/components/MlGpxViewer/MlGpxViewer.test.d.ts +1 -0
- package/dist/components/MlGpxViewer/util/GeoJsonContext.d.ts +10 -0
- package/dist/components/MlGpxViewer/util/GeoJsonProvider.d.ts +4 -0
- package/dist/components/MlGpxViewer/util/MetadataDrawer.d.ts +7 -0
- package/dist/components/MlGpxViewer/util/MlGpxDemoLoader.d.ts +10 -0
- package/dist/components/MlGpxViewer/util/MlGpxViewerInstructions.d.ts +3 -0
- package/dist/components/MlImageMarkerLayer/MlImageMarkerLayer.d.ts +11 -2
- package/dist/components/MlImageMarkerLayer/MlImageMarkerLayer.stories.d.ts +7 -9
- package/dist/components/MlLayerMagnify/MlLayerMagnify.d.ts +8 -2
- package/dist/components/MlLayerMagnify/MlLayerMagnify.stories.d.ts +13 -9
- package/dist/components/MlLayerSwipe/MlLayerSwipe.d.ts +13 -3
- package/dist/components/MlLayerSwipe/MlLayerSwipe.stories.d.ts +12 -10
- package/dist/components/MlSketchTool/LayerList/ColorPicker.d.ts +9 -0
- package/dist/components/MlSketchTool/LayerList/LayerList.d.ts +5 -0
- package/dist/components/MlSketchTool/LayerList/LayerListItem.d.ts +11 -0
- package/dist/components/MlSketchTool/LayerList/LayerPropertyForm.d.ts +9 -0
- package/dist/components/MlSketchTool/MlSketchTool.d.ts +29 -0
- package/dist/components/MlSketchTool/MlSketchTool.stories.d.ts +10 -0
- package/dist/components/MlSpatialElevationProfile/MlSpatialElevationProfile.d.ts +33 -14
- package/dist/components/MlSpatialElevationProfile/MlSpatialElevationProfile.stories.d.ts +18 -15
- package/dist/components/MlSpatialElevationProfile/util/getElevationData.d.ts +14 -0
- package/dist/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.d.ts +3 -67
- package/dist/components/MlWmsLayer/MlWmsLayer.d.ts +7 -4
- package/dist/components/MlWmsLoader/MlWmsLoader.d.ts +17 -10
- package/dist/components/MlWmsLoader/MlWmsLoader.stories.d.ts +23 -12
- package/dist/components/MlWmsLoader/utils/MlWmsLoaderInstructions.d.ts +3 -0
- package/dist/components/MlWmsLoader/utils/WMSLinks.d.ts +6 -0
- package/dist/contexts/SimpleDataProvider.d.ts +1 -1
- package/dist/custom.d.d.ts +1 -1
- package/dist/decorators/ThemeWrapper.d.ts +3 -1
- package/dist/hooks/useGpx/lib/gpxConverter.d.ts +11 -0
- package/dist/hooks/useGpx/useGpx.d.ts +26 -0
- package/dist/hooks/useGpx/useGpx.stories.d.ts +10 -0
- package/dist/hooks/useLayer.d.ts +14 -8
- package/dist/hooks/useLayerHoverPopup/useLayerHoverPopup.d.ts +23 -0
- package/dist/hooks/useLayerHoverPopup/useLayerHoverPopup.stories.d.ts +10 -0
- package/dist/hooks/useMap.d.ts +2 -2
- package/dist/hooks/useMap.test.d.ts +1 -0
- package/dist/hooks/useMapState.d.ts +3 -3
- package/dist/hooks/useSource.d.ts +3 -3
- package/dist/hooks/useWms.d.ts +24 -16
- package/dist/index.d.ts +5 -5
- package/dist/index.esm.css +1 -1
- package/dist/index.esm.js +9327 -14844
- package/dist/index.esm.js.map +1 -1
- package/dist/setupTests.d.ts +6 -5
- package/dist/ui_components/Dropzone.d.ts +5 -0
- package/dist/ui_components/ImageLoader.d.ts +8 -1
- package/dist/ui_components/LoadingOverlayContext.d.ts +11 -11
- package/dist/ui_components/Sidebar.d.ts +10 -1
- package/dist/ui_components/Tooltip.d.ts +1 -1
- package/dist/ui_components/TopToolbar.d.ts +7 -1
- package/dist/ui_components/UploadButton.d.ts +6 -0
- package/dist/util/BubbleForInstructions.d.ts +2 -0
- package/dist/util/Instructions.d.ts +13 -0
- package/package.json +195 -185
- package/public/assets/sample1.gpx +3003 -0
- package/public/assets/sample2.gpx +1264 -0
- package/public/assets/sample3.gpx +912 -0
- package/{src/components/MlImageMarkerLayer → public}/assets/wg-marker.png +0 -0
- package/public/index.html +0 -4
- package/public/thumbnails/MlSketchTool.png +0 -0
- package/public/thumbnails/useCameraFollowPath.png +0 -0
- package/scripts/build-catalogue-meta.js +35 -11
- package/src/components/MapLibreMap/lib/MapLibreGlWrapper.ts +230 -188
- package/src/components/MlCenterPosition/MlCenterPosition.meta_.json +1 -2
- package/src/components/MlCenterPosition/MlCenterPosition.stories.tsx +20 -0
- package/src/components/MlCenterPosition/MlCenterPosition.tsx +4 -4
- package/src/components/MlComponentTemplate/MlComponentTemplate.meta_.json +1 -2
- package/src/components/MlComponentTemplate/{MlComponentTemplate.stories.js → MlComponentTemplate.stories.tsx} +2 -2
- package/src/components/MlComponentTemplate/MlComponentTemplate.tsx +1 -1
- package/src/components/MlCreatePdfButton/MlCreatePdfButton.meta_.json +1 -2
- package/src/components/MlCreatePdfButton/{MlCreatePdfButton.stories.js → MlCreatePdfButton.stories.tsx} +1 -1
- package/src/components/MlCreatePdfButton/MlCreatePdfButton.tsx +1 -1
- package/src/components/MlCreatePdfForm/MlCreatePdfForm.cy.tsx +21 -0
- package/src/components/MlCreatePdfForm/MlCreatePdfForm.meta.json +1 -2
- package/src/components/MlCreatePdfForm/MlCreatePdfForm.stories.tsx +1 -3
- package/src/components/MlCreatePdfForm/lib/PdfForm.tsx +25 -2
- package/src/components/MlFeatureEditor/MlFeatureEditor.meta.json +2 -3
- package/src/components/MlFeatureEditor/MlFeatureEditor.tsx +39 -29
- package/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.meta.json +1 -2
- package/src/components/MlFollowGps/MlFollowGps.meta.json +1 -2
- package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.meta.json +1 -2
- package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.tsx +191 -0
- package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.tsx +47 -30
- package/src/components/MlGeoJsonLayer/assets/earthquake.json +109937 -0
- package/src/components/MlGeoJsonLayer/assets/sample_1.json +138 -24
- package/src/components/MlGeoJsonLayer/assets/sample_2.json +140 -20
- package/src/components/MlGeoJsonLayer/assets/wg_locations.json +65 -0
- package/src/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.lineStyler.js +189 -0
- package/src/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.polygonStyler.js +188 -0
- package/src/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerCircleStyler.tsx +9 -0
- package/src/components/MlGeoJsonLayer/story_utils/MlGeojsonLayerHeatMapStyler.tsx +10 -0
- package/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.meta_.json +1 -2
- package/src/components/{MlGPXViewer/MlGPXViewer.doc.de.md → MlGpxViewer/MlGpxViewer.doc.de.md} +0 -0
- package/src/components/{MlGPXViewer/MlGPXViewer.doc.en.md → MlGpxViewer/MlGpxViewer.doc.en.md} +0 -0
- package/src/components/{MlGPXViewer/MlGPXViewer.meta.json → MlGpxViewer/MlGpxViewer.meta.json} +2 -3
- package/src/components/MlGpxViewer/MlGpxViewer.stories.tsx +109 -0
- package/src/components/MlGpxViewer/MlGpxViewer.test.js +53 -0
- package/src/components/MlGpxViewer/MlGpxViewer.tsx +103 -0
- package/src/components/{MlGPXViewer → MlGpxViewer}/util/GeoJsonContext.ts +0 -0
- package/src/components/{MlGPXViewer → MlGpxViewer}/util/GeoJsonProvider.tsx +0 -0
- package/src/components/MlGpxViewer/util/MetadataDrawer.tsx +38 -0
- package/src/components/MlGpxViewer/util/MlGpxDemoLoader.tsx +128 -0
- package/src/components/MlGpxViewer/util/MlGpxViewerInstructions.tsx +68 -0
- package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.meta_.json +1 -2
- package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.stories.tsx +41 -0
- package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.test.js +27 -8
- package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.tsx +41 -115
- package/src/components/MlLayer/MlLayer.meta_.json +1 -2
- package/src/components/MlLayerMagnify/MlLayerMagnify.meta.json +1 -2
- package/src/components/MlLayerMagnify/MlLayerMagnify.stories.tsx +44 -0
- package/src/components/MlLayerMagnify/{MlLayerMagnify.test.js → MlLayerMagnify.test.tsx} +15 -18
- package/src/components/MlLayerMagnify/MlLayerMagnify.tsx +55 -61
- package/src/components/MlLayerSwipe/MlLayerSwipe.meta.json +1 -2
- package/src/components/MlLayerSwipe/{MlLayerSwipe.stories.js → MlLayerSwipe.stories.tsx} +9 -11
- package/src/components/MlLayerSwipe/MlLayerSwipe.tsx +47 -48
- package/src/components/MlLayerSwitcher/MlLayerSwitcher.meta_.json +1 -2
- package/src/components/MlLayerSwitcher/components/LayerBox.js +22 -19
- package/src/components/MlMarker/MlMarker.meta_.json +1 -2
- package/src/components/MlMeasureTool/MlMeasureTool.meta.json +1 -2
- package/src/components/MlNavigationCompass/MlNavigationCompass.meta.json +1 -2
- package/src/components/MlNavigationTools/MlNavigationTools.meta.json +1 -2
- package/src/components/MlScaleReference/MlScaleReference.meta.json +1 -2
- package/src/components/MlShareMapState/MlShareMapState.meta_.json +1 -2
- package/src/components/MlSketchTool/LayerList/ColorPicker.tsx +43 -0
- package/src/components/MlSketchTool/LayerList/LayerList.tsx +12 -0
- package/src/components/MlSketchTool/LayerList/LayerListItem.tsx +109 -0
- package/src/components/MlSketchTool/LayerList/LayerPropertyForm.tsx +126 -0
- package/src/components/MlSketchTool/MlSketchTool.doc.de.md +3 -0
- package/src/components/MlSketchTool/MlSketchTool.meta.json +14 -0
- package/src/components/MlSketchTool/MlSketchTool.stories.js +26 -0
- package/src/components/MlSketchTool/MlSketchTool.tsx +271 -0
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.meta.json +1 -2
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.stories.tsx +121 -0
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.test.js +30 -1
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.tsx +143 -0
- package/src/components/MlSpatialElevationProfile/util/getElevationData.tsx +103 -0
- package/src/components/MlThreeJsLayer/MlThreeJsLayer.meta.json +1 -2
- package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.meta.json +3 -4
- package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.stories.js +2 -3
- package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.tsx +17 -79
- package/src/components/MlUseMapDebugger/MlUseMapDebugger.meta_.json +1 -2
- package/src/components/MlVectorTileLayer/MlVectorTileLayer.meta.json +1 -2
- package/src/components/MlVectorTileLayer/MlVectorTileLayer.tsx +3 -2
- package/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.meta_.json +1 -2
- package/src/components/MlWmsLayer/MlWmsLayer.tsx +59 -41
- package/src/components/MlWmsLoader/MlWmsLoader.meta.json +1 -2
- package/src/components/MlWmsLoader/MlWmsLoader.stories.tsx +89 -0
- package/src/components/MlWmsLoader/MlWmsLoader.tsx +141 -122
- package/src/components/MlWmsLoader/utils/MlWmsLoaderInstructions.tsx +50 -0
- package/src/components/MlWmsLoader/utils/WMSLinks.tsx +128 -0
- package/src/decorators/MapContextDecorator.js +1 -1
- package/src/decorators/MapContextDecoratorHooks.js +1 -1
- package/src/decorators/ThemeWrapper.tsx +9 -0
- package/src/hooks/useCameraFollowPath/useCameraFollowPath.meta.json +1 -2
- package/src/{components/MlGPXViewer → hooks/useGpx/lib}/gpxConverter.js +1 -0
- package/src/hooks/useGpx/useGpx.doc.de.md +3 -0
- package/src/hooks/useGpx/useGpx.meta_.json +15 -0
- package/src/{components/MlCenterPosition/MlCenterPosition.stories.js → hooks/useGpx/useGpx.stories.js} +4 -5
- package/src/hooks/useGpx/useGpx.tsx +70 -0
- package/src/hooks/useLayer.ts +32 -10
- package/src/hooks/useLayerHoverPopup/useLayerHoverPopup.doc.de.md +3 -0
- package/src/hooks/useLayerHoverPopup/useLayerHoverPopup.meta_.json +15 -0
- package/src/hooks/useLayerHoverPopup/useLayerHoverPopup.stories.js +20 -0
- package/src/hooks/useLayerHoverPopup/useLayerHoverPopup.tsx +82 -0
- package/src/hooks/useMap.test.tsx +48 -0
- package/src/hooks/useMap.ts +8 -8
- package/src/hooks/useSource.ts +4 -4
- package/src/hooks/{useWms.js → useWms.ts} +24 -11
- package/src/index.ts +5 -5
- package/src/setupTests.js +18 -15
- package/src/ui_components/Dropzone.tsx +104 -0
- package/src/ui_components/{ImageLoader.js → ImageLoader.tsx} +30 -25
- package/src/ui_components/{LoadingOverlayContext.js → LoadingOverlayContext.tsx} +12 -15
- package/src/ui_components/Sidebar.tsx +82 -0
- package/src/ui_components/Tooltip.tsx +17 -0
- package/src/ui_components/TopToolbar.tsx +26 -0
- package/src/ui_components/UploadButton.tsx +57 -0
- package/src/util/BubbleForInstructions.js +46 -0
- package/src/util/Instructions.tsx +60 -0
- package/tsconfig.json +39 -58
- package/config/getHttpsConfig.js +0 -66
- package/config/modules.js +0 -134
- package/config/pnpTs.js +0 -35
- package/config/webpack.config.js +0 -757
- package/config/webpackDevServer.config.js +0 -130
- package/coverage/lcov-report/src/components/MlGPXViewer/gpxConverter.js.html +0 -1645
- package/scripts/start.js +0 -166
- package/src/components/MlGPXViewer/MlGPXViewer.stories.js +0 -31
- package/src/components/MlGPXViewer/MlGPXViewer.test.js +0 -28
- package/src/components/MlGPXViewer/MlGPXViewer.tsx +0 -377
- package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.js +0 -66
- package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.stories.js +0 -45
- package/src/components/MlLayerMagnify/MlLayerMagnify.stories.js +0 -41
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.js +0 -224
- package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.stories.js +0 -57
- package/src/components/MlWmsLoader/MlWmsLoader.stories.js +0 -47
- package/src/decorators/ThemeWrapper.jsx +0 -9
- package/src/ui_components/Legend.js +0 -44
- package/src/ui_components/LoadingOverlay.js +0 -41
- package/src/ui_components/Sidebar.js +0 -100
- package/src/ui_components/Tooltip.js +0 -21
- package/src/ui_components/TopToolbar.js +0 -29
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
<html lang="en">
|
|
4
4
|
|
|
5
5
|
<head>
|
|
6
|
-
<title>Code coverage report for src/components/
|
|
6
|
+
<title>Code coverage report for src/components/MlGeoJsonLayer/story_utils/MlGeoJsonLayer.lineStyler.js</title>
|
|
7
7
|
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="
|
|
9
|
-
<link rel="stylesheet" href="
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="
|
|
8
|
+
<link rel="stylesheet" href="../../../../prettify.css" />
|
|
9
|
+
<link rel="stylesheet" href="../../../../base.css" />
|
|
10
|
+
<link rel="shortcut icon" type="image/x-icon" href="../../../../favicon.png" />
|
|
11
11
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
12
|
<style type='text/css'>
|
|
13
13
|
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(
|
|
14
|
+
background-image: url(../../../../sort-arrow-sprite.png);
|
|
15
15
|
}
|
|
16
16
|
</style>
|
|
17
17
|
</head>
|
|
@@ -19,34 +19,34 @@
|
|
|
19
19
|
<body>
|
|
20
20
|
<div class='wrapper'>
|
|
21
21
|
<div class='pad1'>
|
|
22
|
-
<h1><a href="
|
|
22
|
+
<h1><a href="../../../../index.html">All files</a> / <a href="index.html">src/components/MlGeoJsonLayer/story_utils</a> MlGeoJsonLayer.lineStyler.js</h1>
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>0/34</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>0/8</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>0/10</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>0/33</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -252,42 +252,7 @@
|
|
|
252
252
|
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
253
|
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
254
|
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
-
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
-
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
-
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
-
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
-
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
-
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
-
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
-
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
-
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
-
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
-
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
-
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
-
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
-
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
-
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
-
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
-
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
-
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
-
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
-
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
-
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
-
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
-
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
-
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
-
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
-
<a name='L225'></a><a href='#L225'>225</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
255
|
+
<a name='L190'></a><a href='#L190'>190</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
291
256
|
<span class="cline-any cline-neutral"> </span>
|
|
292
257
|
<span class="cline-any cline-neutral"> </span>
|
|
293
258
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -300,31 +265,17 @@
|
|
|
300
265
|
<span class="cline-any cline-neutral"> </span>
|
|
301
266
|
<span class="cline-any cline-neutral"> </span>
|
|
302
267
|
<span class="cline-any cline-neutral"> </span>
|
|
303
|
-
<span class="cline-any cline-yes">10x</span>
|
|
304
|
-
<span class="cline-any cline-yes">8x</span>
|
|
305
268
|
<span class="cline-any cline-neutral"> </span>
|
|
306
|
-
<span class="cline-any cline-yes">8x</span>
|
|
307
269
|
<span class="cline-any cline-neutral"> </span>
|
|
308
270
|
<span class="cline-any cline-neutral"> </span>
|
|
309
|
-
<span class="cline-any cline-
|
|
310
|
-
<span class="cline-any cline-yes">8x</span>
|
|
271
|
+
<span class="cline-any cline-no"> </span>
|
|
311
272
|
<span class="cline-any cline-neutral"> </span>
|
|
312
|
-
<span class="cline-any cline-yes">8x</span>
|
|
313
|
-
<span class="cline-any cline-yes">8x</span>
|
|
314
|
-
<span class="cline-any cline-yes">8x</span>
|
|
315
273
|
<span class="cline-any cline-neutral"> </span>
|
|
316
|
-
<span class="cline-any cline-yes">8x</span>
|
|
317
274
|
<span class="cline-any cline-neutral"> </span>
|
|
318
275
|
<span class="cline-any cline-neutral"> </span>
|
|
319
|
-
<span class="cline-any cline-no"> </span>
|
|
320
276
|
<span class="cline-any cline-neutral"> </span>
|
|
321
277
|
<span class="cline-any cline-neutral"> </span>
|
|
322
278
|
<span class="cline-any cline-neutral"> </span>
|
|
323
|
-
<span class="cline-any cline-no"> </span>
|
|
324
|
-
<span class="cline-any cline-no"> </span>
|
|
325
|
-
<span class="cline-any cline-no"> </span>
|
|
326
|
-
<span class="cline-any cline-no"> </span>
|
|
327
|
-
<span class="cline-any cline-no"> </span>
|
|
328
279
|
<span class="cline-any cline-neutral"> </span>
|
|
329
280
|
<span class="cline-any cline-no"> </span>
|
|
330
281
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -343,25 +294,13 @@
|
|
|
343
294
|
<span class="cline-any cline-neutral"> </span>
|
|
344
295
|
<span class="cline-any cline-neutral"> </span>
|
|
345
296
|
<span class="cline-any cline-neutral"> </span>
|
|
346
|
-
<span class="cline-any cline-yes">8x</span>
|
|
347
|
-
<span class="cline-any cline-yes">4x</span>
|
|
348
|
-
<span class="cline-any cline-yes">4x</span>
|
|
349
|
-
<span class="cline-any cline-neutral"> </span>
|
|
350
|
-
<span class="cline-any cline-yes">2x</span>
|
|
351
|
-
<span class="cline-any cline-yes">2x</span>
|
|
352
297
|
<span class="cline-any cline-neutral"> </span>
|
|
353
|
-
<span class="cline-any cline-yes">2x</span>
|
|
354
298
|
<span class="cline-any cline-neutral"> </span>
|
|
355
299
|
<span class="cline-any cline-neutral"> </span>
|
|
356
300
|
<span class="cline-any cline-neutral"> </span>
|
|
357
301
|
<span class="cline-any cline-neutral"> </span>
|
|
358
|
-
<span class="cline-any cline-
|
|
359
|
-
<span class="cline-any cline-yes">8x</span>
|
|
360
|
-
<span class="cline-any cline-neutral"> </span>
|
|
361
|
-
<span class="cline-any cline-yes">4x</span>
|
|
362
|
-
<span class="cline-any cline-yes">4x</span>
|
|
302
|
+
<span class="cline-any cline-no"> </span>
|
|
363
303
|
<span class="cline-any cline-neutral"> </span>
|
|
364
|
-
<span class="cline-any cline-yes">4x</span>
|
|
365
304
|
<span class="cline-any cline-neutral"> </span>
|
|
366
305
|
<span class="cline-any cline-neutral"> </span>
|
|
367
306
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -369,13 +308,15 @@
|
|
|
369
308
|
<span class="cline-any cline-neutral"> </span>
|
|
370
309
|
<span class="cline-any cline-neutral"> </span>
|
|
371
310
|
<span class="cline-any cline-neutral"> </span>
|
|
372
|
-
<span class="cline-any cline-yes">4x</span>
|
|
373
311
|
<span class="cline-any cline-neutral"> </span>
|
|
374
312
|
<span class="cline-any cline-neutral"> </span>
|
|
375
313
|
<span class="cline-any cline-neutral"> </span>
|
|
376
314
|
<span class="cline-any cline-neutral"> </span>
|
|
377
315
|
<span class="cline-any cline-neutral"> </span>
|
|
378
316
|
<span class="cline-any cline-neutral"> </span>
|
|
317
|
+
<span class="cline-any cline-no"> </span>
|
|
318
|
+
<span class="cline-any cline-no"> </span>
|
|
319
|
+
<span class="cline-any cline-no"> </span>
|
|
379
320
|
<span class="cline-any cline-neutral"> </span>
|
|
380
321
|
<span class="cline-any cline-neutral"> </span>
|
|
381
322
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -384,31 +325,45 @@
|
|
|
384
325
|
<span class="cline-any cline-neutral"> </span>
|
|
385
326
|
<span class="cline-any cline-neutral"> </span>
|
|
386
327
|
<span class="cline-any cline-neutral"> </span>
|
|
328
|
+
<span class="cline-any cline-no"> </span>
|
|
329
|
+
<span class="cline-any cline-no"> </span>
|
|
330
|
+
<span class="cline-any cline-no"> </span>
|
|
331
|
+
<span class="cline-any cline-no"> </span>
|
|
332
|
+
<span class="cline-any cline-no"> </span>
|
|
387
333
|
<span class="cline-any cline-neutral"> </span>
|
|
334
|
+
<span class="cline-any cline-no"> </span>
|
|
335
|
+
<span class="cline-any cline-no"> </span>
|
|
336
|
+
<span class="cline-any cline-no"> </span>
|
|
388
337
|
<span class="cline-any cline-neutral"> </span>
|
|
338
|
+
<span class="cline-any cline-no"> </span>
|
|
389
339
|
<span class="cline-any cline-neutral"> </span>
|
|
390
340
|
<span class="cline-any cline-neutral"> </span>
|
|
341
|
+
<span class="cline-any cline-no"> </span>
|
|
342
|
+
<span class="cline-any cline-no"> </span>
|
|
343
|
+
<span class="cline-any cline-no"> </span>
|
|
391
344
|
<span class="cline-any cline-neutral"> </span>
|
|
392
345
|
<span class="cline-any cline-neutral"> </span>
|
|
393
346
|
<span class="cline-any cline-neutral"> </span>
|
|
394
347
|
<span class="cline-any cline-neutral"> </span>
|
|
395
348
|
<span class="cline-any cline-neutral"> </span>
|
|
396
349
|
<span class="cline-any cline-neutral"> </span>
|
|
350
|
+
<span class="cline-any cline-no"> </span>
|
|
397
351
|
<span class="cline-any cline-neutral"> </span>
|
|
352
|
+
<span class="cline-any cline-no"> </span>
|
|
398
353
|
<span class="cline-any cline-neutral"> </span>
|
|
399
354
|
<span class="cline-any cline-neutral"> </span>
|
|
355
|
+
<span class="cline-any cline-no"> </span>
|
|
356
|
+
<span class="cline-any cline-no"> </span>
|
|
400
357
|
<span class="cline-any cline-neutral"> </span>
|
|
401
358
|
<span class="cline-any cline-neutral"> </span>
|
|
402
359
|
<span class="cline-any cline-neutral"> </span>
|
|
360
|
+
<span class="cline-any cline-no"> </span>
|
|
403
361
|
<span class="cline-any cline-neutral"> </span>
|
|
404
|
-
<span class="cline-any cline-yes">8x</span>
|
|
405
|
-
<span class="cline-any cline-yes">8x</span>
|
|
406
|
-
<span class="cline-any cline-yes">4x</span>
|
|
407
|
-
<span class="cline-any cline-yes">4x</span>
|
|
408
362
|
<span class="cline-any cline-neutral"> </span>
|
|
409
363
|
<span class="cline-any cline-no"> </span>
|
|
410
364
|
<span class="cline-any cline-no"> </span>
|
|
411
365
|
<span class="cline-any cline-neutral"> </span>
|
|
366
|
+
<span class="cline-any cline-neutral"> </span>
|
|
412
367
|
<span class="cline-any cline-no"> </span>
|
|
413
368
|
<span class="cline-any cline-no"> </span>
|
|
414
369
|
<span class="cline-any cline-no"> </span>
|
|
@@ -416,11 +371,7 @@
|
|
|
416
371
|
<span class="cline-any cline-neutral"> </span>
|
|
417
372
|
<span class="cline-any cline-no"> </span>
|
|
418
373
|
<span class="cline-any cline-neutral"> </span>
|
|
419
|
-
<span class="cline-any cline-no"> </span>
|
|
420
374
|
<span class="cline-any cline-neutral"> </span>
|
|
421
|
-
<span class="cline-any cline-no"> </span>
|
|
422
|
-
<span class="cline-any cline-neutral"> </span>
|
|
423
|
-
<span class="cline-any cline-no"> </span>
|
|
424
375
|
<span class="cline-any cline-neutral"> </span>
|
|
425
376
|
<span class="cline-any cline-neutral"> </span>
|
|
426
377
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -429,68 +380,46 @@
|
|
|
429
380
|
<span class="cline-any cline-neutral"> </span>
|
|
430
381
|
<span class="cline-any cline-neutral"> </span>
|
|
431
382
|
<span class="cline-any cline-neutral"> </span>
|
|
432
|
-
<span class="cline-any cline-no"> </span>
|
|
433
|
-
<span class="cline-any cline-no"> </span>
|
|
434
|
-
<span class="cline-any cline-neutral"> </span>
|
|
435
|
-
<span class="cline-any cline-no"> </span>
|
|
436
383
|
<span class="cline-any cline-neutral"> </span>
|
|
437
384
|
<span class="cline-any cline-neutral"> </span>
|
|
438
385
|
<span class="cline-any cline-no"> </span>
|
|
439
|
-
<span class="cline-any cline-no"> </span>
|
|
440
|
-
<span class="cline-any cline-neutral"> </span>
|
|
441
386
|
<span class="cline-any cline-neutral"> </span>
|
|
442
387
|
<span class="cline-any cline-neutral"> </span>
|
|
443
388
|
<span class="cline-any cline-neutral"> </span>
|
|
444
389
|
<span class="cline-any cline-no"> </span>
|
|
445
|
-
<span class="cline-any cline-no"> </span>
|
|
446
|
-
<span class="cline-any cline-no"> </span>
|
|
447
|
-
<span class="cline-any cline-no"> </span>
|
|
448
390
|
<span class="cline-any cline-neutral"> </span>
|
|
449
391
|
<span class="cline-any cline-neutral"> </span>
|
|
450
392
|
<span class="cline-any cline-neutral"> </span>
|
|
451
393
|
<span class="cline-any cline-neutral"> </span>
|
|
452
|
-
<span class="cline-any cline-no"> </span>
|
|
453
|
-
<span class="cline-any cline-neutral"> </span>
|
|
454
|
-
<span class="cline-any cline-neutral"> </span>
|
|
455
394
|
<span class="cline-any cline-neutral"> </span>
|
|
456
395
|
<span class="cline-any cline-neutral"> </span>
|
|
457
|
-
<span class="cline-any cline-no"> </span>
|
|
458
|
-
<span class="cline-any cline-neutral"> </span>
|
|
459
396
|
<span class="cline-any cline-neutral"> </span>
|
|
460
397
|
<span class="cline-any cline-neutral"> </span>
|
|
461
398
|
<span class="cline-any cline-neutral"> </span>
|
|
462
399
|
<span class="cline-any cline-neutral"> </span>
|
|
463
|
-
<span class="cline-any cline-no"> </span>
|
|
464
400
|
<span class="cline-any cline-neutral"> </span>
|
|
465
401
|
<span class="cline-any cline-neutral"> </span>
|
|
466
402
|
<span class="cline-any cline-neutral"> </span>
|
|
467
403
|
<span class="cline-any cline-neutral"> </span>
|
|
468
|
-
<span class="cline-any cline-no"> </span>
|
|
469
404
|
<span class="cline-any cline-neutral"> </span>
|
|
470
405
|
<span class="cline-any cline-neutral"> </span>
|
|
471
406
|
<span class="cline-any cline-neutral"> </span>
|
|
472
407
|
<span class="cline-any cline-neutral"> </span>
|
|
473
408
|
<span class="cline-any cline-neutral"> </span>
|
|
474
409
|
<span class="cline-any cline-no"> </span>
|
|
475
|
-
<span class="cline-any cline-no"> </span>
|
|
476
410
|
<span class="cline-any cline-neutral"> </span>
|
|
477
411
|
<span class="cline-any cline-neutral"> </span>
|
|
478
412
|
<span class="cline-any cline-neutral"> </span>
|
|
479
413
|
<span class="cline-any cline-neutral"> </span>
|
|
480
|
-
<span class="cline-any cline-no"> </span>
|
|
481
|
-
<span class="cline-any cline-no"> </span>
|
|
482
414
|
<span class="cline-any cline-neutral"> </span>
|
|
483
|
-
<span class="cline-any cline-no"> </span>
|
|
484
415
|
<span class="cline-any cline-neutral"> </span>
|
|
485
416
|
<span class="cline-any cline-neutral"> </span>
|
|
486
|
-
<span class="cline-any cline-yes">8x</span>
|
|
487
417
|
<span class="cline-any cline-neutral"> </span>
|
|
488
418
|
<span class="cline-any cline-neutral"> </span>
|
|
489
|
-
<span class="cline-any cline-yes">10x</span>
|
|
490
419
|
<span class="cline-any cline-neutral"> </span>
|
|
491
420
|
<span class="cline-any cline-neutral"> </span>
|
|
421
|
+
<span class="cline-any cline-no"> </span>
|
|
492
422
|
<span class="cline-any cline-neutral"> </span>
|
|
493
|
-
<span class="cline-any cline-yes">10x</span>
|
|
494
423
|
<span class="cline-any cline-neutral"> </span>
|
|
495
424
|
<span class="cline-any cline-neutral"> </span>
|
|
496
425
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -511,230 +440,196 @@
|
|
|
511
440
|
<span class="cline-any cline-neutral"> </span>
|
|
512
441
|
<span class="cline-any cline-neutral"> </span>
|
|
513
442
|
<span class="cline-any cline-neutral"> </span>
|
|
514
|
-
<span class="cline-any cline-neutral"> </span
|
|
515
|
-
import
|
|
516
|
-
import
|
|
517
|
-
import {
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
const componentId = useRef(
|
|
531
|
-
(props.idPrefix ? <span class="branch-0 cbranch-no" title="branch not covered" >props.idPrefix </span>: "MlSpatialElevationProfile-") + uuidv4()
|
|
532
|
-
);
|
|
533
|
-
const mapRef = useRef(null);
|
|
534
|
-
const initializedRef = useRef(false);
|
|
535
|
-
|
|
536
|
-
const dataSource = useContext(GeoJsonContext);
|
|
537
|
-
const sourceName = useRef("elevationprofile-" + uuidv4());
|
|
538
|
-
const layerName = useRef("elevationprofile-layer-" + uuidv4());
|
|
539
|
-
|
|
540
|
-
const createStep = useCallback(
|
|
541
|
-
<span class="fstat-no" title="function not covered" > (x</span>, y, z, x2, y2) => {
|
|
542
|
-
//const summand = 0.0002;
|
|
543
|
-
const line = <span class="cstat-no" title="statement not covered" >lineString([</span>
|
|
544
|
-
[x, y],
|
|
545
|
-
[x2, y2],
|
|
546
|
-
]);
|
|
547
|
-
const offsetLine = <span class="cstat-no" title="statement not covered" >lineOffset(line, 5, { units: "meters" });</span>
|
|
548
|
-
const x3 = <span class="cstat-no" title="statement not covered" >offsetLine.geometry.coordinates[0][0];</span>
|
|
549
|
-
const y3 = <span class="cstat-no" title="statement not covered" >offsetLine.geometry.coordinates[0][1];</span>
|
|
550
|
-
const x4 = <span class="cstat-no" title="statement not covered" >offsetLine.geometry.coordinates[1][0];</span>
|
|
551
|
-
const y4 = <span class="cstat-no" title="statement not covered" >offsetLine.geometry.coordinates[1][1];</span>
|
|
443
|
+
<span class="cline-any cline-neutral"> </span>
|
|
444
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import React, { useEffect, useState, useMemo } from 'react';
|
|
445
|
+
import Sidebar from '../../../ui_components/Sidebar';
|
|
446
|
+
import {
|
|
447
|
+
Select,
|
|
448
|
+
Typography,
|
|
449
|
+
Slider,
|
|
450
|
+
Stack,
|
|
451
|
+
FormControl,
|
|
452
|
+
MenuItem,
|
|
453
|
+
Checkbox,
|
|
454
|
+
ListItemText,
|
|
455
|
+
} from '@mui/material';
|
|
456
|
+
import { ColorPicker } from 'mui-color';
|
|
457
|
+
import MlGeoJsonLayer from '../MlGeoJsonLayer';
|
|
458
|
+
import useMap from '../../../hooks/useMap';
|
|
552
459
|
|
|
553
|
-
<span class="cstat-no" title="statement not covered" >
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
460
|
+
const streetNames = <span class="cstat-no" title="statement not covered" >[</span>
|
|
461
|
+
'Show all',
|
|
462
|
+
'In der Sürst',
|
|
463
|
+
'Münsterplatz',
|
|
464
|
+
'Poststraße',
|
|
465
|
+
'Mauspfad',
|
|
466
|
+
'Remiglustraße',
|
|
467
|
+
'Windeckstraße',
|
|
468
|
+
];
|
|
469
|
+
const marks = <span class="cstat-no" title="statement not covered" >[</span>
|
|
470
|
+
{
|
|
471
|
+
value: 0,
|
|
472
|
+
label: '0%',
|
|
473
|
+
},
|
|
474
|
+
{
|
|
475
|
+
value: 0.25,
|
|
476
|
+
label: '25%',
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
value: 0.5,
|
|
480
|
+
label: '50%',
|
|
481
|
+
},
|
|
482
|
+
{
|
|
483
|
+
value: 0.75,
|
|
484
|
+
label: '75%',
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
value: 1,
|
|
488
|
+
label: '100%',
|
|
489
|
+
},
|
|
490
|
+
];
|
|
491
|
+
const widthMarks = <span class="cstat-no" title="statement not covered" >[</span>
|
|
492
|
+
{
|
|
493
|
+
value: 0,
|
|
494
|
+
label: '0',
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
value: 5,
|
|
498
|
+
label: '5',
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
value: 10,
|
|
502
|
+
label: '10',
|
|
503
|
+
},
|
|
504
|
+
];
|
|
558
505
|
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
506
|
+
const ITEM_HEIGHT = <span class="cstat-no" title="statement not covered" >48;</span>
|
|
507
|
+
const ITEM_PADDING_TOP = <span class="cstat-no" title="statement not covered" >8;</span>
|
|
508
|
+
const MenuProps = <span class="cstat-no" title="statement not covered" >{</span>
|
|
509
|
+
PaperProps: {
|
|
510
|
+
style: {
|
|
511
|
+
maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,
|
|
512
|
+
width: 250,
|
|
566
513
|
},
|
|
567
|
-
|
|
568
|
-
|
|
514
|
+
},
|
|
515
|
+
};
|
|
569
516
|
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
mapRef.current.cleanup(_componentId);
|
|
517
|
+
const LineStyler = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(p</span>rops) => {</span>
|
|
518
|
+
const [color, setColor] = <span class="cstat-no" title="statement not covered" >useState('#2485C1');</span>
|
|
519
|
+
const [opacity, setOpacity] = <span class="cstat-no" title="statement not covered" >useState(0.8);</span>
|
|
520
|
+
const [featuresToShow, setFeaturesToShow] = <span class="cstat-no" title="statement not covered" >useState(['Show all']);</span>
|
|
521
|
+
const [lineWidth, setLineWidth] = <span class="cstat-no" title="statement not covered" >useState(5);</span>
|
|
576
522
|
|
|
577
|
-
|
|
578
|
-
|
|
523
|
+
const storyGeoJson = <span class="cstat-no" title="statement not covered" >useMemo(<span class="fstat-no" title="function not covered" >()</span> => {</span>
|
|
524
|
+
<span class="cstat-no" title="statement not covered" > if (featuresToShow[0] === 'Show all') {</span>
|
|
525
|
+
<span class="cstat-no" title="statement not covered" > return props.geojson;</span>
|
|
526
|
+
}
|
|
527
|
+
<span class="cstat-no" title="statement not covered" > return {</span>
|
|
528
|
+
type: 'FeatureCollection',
|
|
529
|
+
features: props.geojson.features.filter(<span class="fstat-no" title="function not covered" >(i</span>tem) => {
|
|
530
|
+
<span class="cstat-no" title="statement not covered" > for (var i = <span class="cstat-no" title="statement not covered" >0;</span> i < featuresToShow.length; i++) {</span>
|
|
531
|
+
<span class="cstat-no" title="statement not covered" > if (item.properties.name === featuresToShow[i]) {</span>
|
|
532
|
+
<span class="cstat-no" title="statement not covered" > return item;</span>
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
}),
|
|
579
536
|
};
|
|
580
|
-
}, []);
|
|
581
|
-
|
|
582
|
-
useEffect(() => {
|
|
583
|
-
if (!mapContext.mapExists(props.mapId) || initializedRef.current) return;
|
|
537
|
+
}, [featuresToShow, props.geojson]);
|
|
584
538
|
|
|
585
|
-
|
|
586
|
-
mapRef.current = mapContext.getMap(props.mapId);
|
|
539
|
+
const mapHook = <span class="cstat-no" title="statement not covered" >useMap({ mapId: "map_1", waitForLayer: "Linestring" });</span>
|
|
587
540
|
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
{
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
);
|
|
596
|
-
mapRef.current.addLayer(
|
|
597
|
-
{
|
|
598
|
-
id: layerName.current,
|
|
599
|
-
source: sourceName.current,
|
|
600
|
-
type: "fill-extrusion",
|
|
601
|
-
paint: {
|
|
602
|
-
"fill-extrusion-height": ["get", "height"],
|
|
603
|
-
"fill-extrusion-opacity": 0.9,
|
|
604
|
-
"fill-extrusion-color": [
|
|
605
|
-
"interpolate",
|
|
606
|
-
["linear"],
|
|
607
|
-
["get", "height"],
|
|
608
|
-
0,
|
|
609
|
-
"rgba(0, 0, 255, 0)",
|
|
610
|
-
0.1,
|
|
611
|
-
"royalblue",
|
|
612
|
-
0.3,
|
|
613
|
-
"cyan",
|
|
614
|
-
0.5,
|
|
615
|
-
"lime",
|
|
616
|
-
0.7,
|
|
617
|
-
"yellow",
|
|
618
|
-
1,
|
|
619
|
-
"yellow",
|
|
620
|
-
],
|
|
621
|
-
},
|
|
622
|
-
},
|
|
623
|
-
props.insertBeforeLayer,
|
|
624
|
-
componentId.current
|
|
541
|
+
const handleChange = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(e</span>vent) => {</span>
|
|
542
|
+
const {
|
|
543
|
+
target: { value },
|
|
544
|
+
} = <span class="cstat-no" title="statement not covered" >event;</span>
|
|
545
|
+
<span class="cstat-no" title="statement not covered" > setFeaturesToShow(</span>
|
|
546
|
+
// On autofill we get a stringified value.
|
|
547
|
+
typeof value === 'string' ? value.split(',') : value
|
|
625
548
|
);
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
useEffect(() => {
|
|
629
|
-
if (!mapRef.current || !mapRef.current.getLayer(layerName.current)) return;
|
|
630
|
-
const { data } = dataSource;
|
|
631
|
-
<span class="missing-if-branch" title="else path not taken" >E</span>if (!data || <span class="branch-1 cbranch-no" title="branch not covered" >!data.features)</span> return;
|
|
632
|
-
|
|
633
|
-
const line = <span class="cstat-no" title="statement not covered" >data.features.find(<span class="fstat-no" title="function not covered" >(e</span>lement) => {</span>
|
|
634
|
-
<span class="cstat-no" title="statement not covered" > return element.geometry.type === "LineString";</span>
|
|
635
|
-
});
|
|
636
|
-
<span class="cstat-no" title="statement not covered" > if (!line || !line.geometry) <span class="cstat-no" title="statement not covered" >return;</span></span>
|
|
637
|
-
const heights = <span class="cstat-no" title="statement not covered" >line.geometry.coordinates.map(<span class="fstat-no" title="function not covered" >(c</span>oordinate, index) => {</span>
|
|
638
|
-
<span class="cstat-no" title="statement not covered" > return coordinate[2];</span>
|
|
639
|
-
});
|
|
549
|
+
<span class="cstat-no" title="statement not covered" > console.log(featuresToShow);</span>
|
|
550
|
+
};
|
|
640
551
|
|
|
641
|
-
|
|
552
|
+
const handleColorChange = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(e</span>) => {</span>
|
|
553
|
+
<span class="cstat-no" title="statement not covered" > setColor(`#${e.hex}`);</span>
|
|
554
|
+
};
|
|
642
555
|
|
|
643
|
-
|
|
556
|
+
<span class="cstat-no" title="statement not covered" > useEffect(<span class="fstat-no" title="function not covered" >()</span> => {</span>
|
|
557
|
+
<span class="cstat-no" title="statement not covered" > mapHook.map?.map.setCenter([7.099301807798469, 50.734214410085684]);</span>
|
|
558
|
+
<span class="cstat-no" title="statement not covered" > mapHook.map?.map.setZoom(16.5);</span>
|
|
559
|
+
}, [mapHook.map]);
|
|
644
560
|
|
|
645
|
-
<span class="cstat-no" title="statement not covered" >
|
|
561
|
+
<span class="cstat-no" title="statement not covered" > return (</span>
|
|
562
|
+
<>
|
|
563
|
+
<Sidebar>
|
|
564
|
+
<Stack paddingTop={5} spacing={3} direction="column" sx={{ mb: 1 }} alignItems="left">
|
|
565
|
+
<Typography>Feature to show:</Typography>
|
|
646
566
|
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
567
|
+
<FormControl>
|
|
568
|
+
<Select
|
|
569
|
+
id="demo-multiple-checkbox"
|
|
570
|
+
multiple
|
|
571
|
+
native={false}
|
|
572
|
+
value={featuresToShow}
|
|
573
|
+
onChange={handleChange}
|
|
574
|
+
renderValue={<span class="fstat-no" title="function not covered" >(s</span>elected) => <span class="cstat-no" title="statement not covered" >selected.join(', ')}</span>
|
|
575
|
+
MenuProps={MenuProps}
|
|
576
|
+
>
|
|
577
|
+
{streetNames?.map(<span class="fstat-no" title="function not covered" >(n</span>ame) => (
|
|
578
|
+
<span class="cstat-no" title="statement not covered" > <MenuItem key={name} value={name}></span>
|
|
579
|
+
<Checkbox checked={featuresToShow.indexOf(name || 'Show All') > -1} />
|
|
580
|
+
<ListItemText primary={name} />
|
|
581
|
+
</MenuItem>
|
|
582
|
+
))}
|
|
583
|
+
</Select>
|
|
584
|
+
</FormControl>
|
|
658
585
|
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
//points.push(point);
|
|
662
|
-
<span class="cstat-no" title="statement not covered" > if (line.geometry.coordinates[index + 1]) {</span>
|
|
663
|
-
const wayLength = <span class="cstat-no" title="statement not covered" >distance(</span>
|
|
664
|
-
[coordinate[0], coordinate[1]],
|
|
665
|
-
[line.geometry.coordinates[index + 1][0], line.geometry.coordinates[index + 1][1]],
|
|
666
|
-
{ units: "kilometers" }
|
|
667
|
-
);
|
|
668
|
-
let listLength = <span class="cstat-no" title="statement not covered" >~~((wayLength * 1000) / 10);</span>
|
|
669
|
-
<span class="cstat-no" title="statement not covered" > listLength = listLength < 1 ? 1 : listLength;</span>
|
|
670
|
-
<span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i < listLength; i++) {</span>
|
|
671
|
-
const x = <span class="cstat-no" title="statement not covered" >lerp(</span>
|
|
672
|
-
line.geometry.coordinates[index][0],
|
|
673
|
-
line.geometry.coordinates[index + 1][0],
|
|
674
|
-
i / listLength
|
|
675
|
-
);
|
|
676
|
-
const y = <span class="cstat-no" title="statement not covered" >lerp(</span>
|
|
677
|
-
line.geometry.coordinates[index][1],
|
|
678
|
-
line.geometry.coordinates[index + 1][1],
|
|
679
|
-
i / listLength
|
|
680
|
-
);
|
|
681
|
-
const z = <span class="cstat-no" title="statement not covered" >lerp(</span>
|
|
682
|
-
line.geometry.coordinates[index][2] - min,
|
|
683
|
-
line.geometry.coordinates[index + 1][2] - min,
|
|
684
|
-
i / listLength
|
|
685
|
-
);
|
|
586
|
+
<Typography>Display color:</Typography>
|
|
587
|
+
<ColorPicker value={color} onChange={handleColorChange} />
|
|
686
588
|
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
589
|
+
<Typography>Opacity:</Typography>
|
|
590
|
+
<Slider
|
|
591
|
+
value={opacity}
|
|
592
|
+
aria-label="Default"
|
|
593
|
+
max={1}
|
|
594
|
+
min={0}
|
|
595
|
+
step={0.1}
|
|
596
|
+
marks={marks}
|
|
597
|
+
onChange={<span class="fstat-no" title="function not covered" >(e</span>) => {
|
|
598
|
+
<span class="cstat-no" title="statement not covered" > setOpacity(e.target.value);</span>
|
|
599
|
+
}}
|
|
600
|
+
/>
|
|
601
|
+
<Typography paddingTop={4}>Stroke:</Typography>
|
|
602
|
+
<Slider
|
|
603
|
+
value={lineWidth}
|
|
604
|
+
aria-label="Default"
|
|
605
|
+
max={10}
|
|
606
|
+
min={0}
|
|
607
|
+
step={1}
|
|
608
|
+
marks={widthMarks}
|
|
609
|
+
onChange={<span class="fstat-no" title="function not covered" >(e</span>) => {
|
|
610
|
+
<span class="cstat-no" title="statement not covered" > setLineWidth(e.target.value);</span>
|
|
611
|
+
}}
|
|
612
|
+
/>
|
|
613
|
+
</Stack>
|
|
614
|
+
</Sidebar>
|
|
697
615
|
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
}
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
MlSpatialElevationProfile.defaultProps = {
|
|
714
|
-
elevationFactor: 1,
|
|
715
|
-
};
|
|
716
|
-
|
|
717
|
-
MlSpatialElevationProfile.propTypes = {
|
|
718
|
-
/**
|
|
719
|
-
* Id of the target MapLibre instance in mapContext
|
|
720
|
-
*/
|
|
721
|
-
mapId: PropTypes.string,
|
|
722
|
-
/**
|
|
723
|
-
* Prefix of the component id this component uses when adding elements to the MapLibreGl-instance
|
|
724
|
-
*/
|
|
725
|
-
idPrefix: PropTypes.string,
|
|
726
|
-
/**
|
|
727
|
-
* Number describes the factor of the height of the elevation
|
|
728
|
-
*/
|
|
729
|
-
elevationFactor: PropTypes.number,
|
|
730
|
-
/**
|
|
731
|
-
* The layerId of an existing layer this layer should be rendered visually beneath
|
|
732
|
-
* https://maplibre.org/maplibre-gl-js-docs/api/map/#map#addlayer - see "beforeId" property
|
|
733
|
-
*/
|
|
734
|
-
insertBeforeLayer: PropTypes.string,
|
|
616
|
+
<MlGeoJsonLayer
|
|
617
|
+
geojson={storyGeoJson}
|
|
618
|
+
layerId={'Linestring'}
|
|
619
|
+
type="line"
|
|
620
|
+
defaultPaintOverrides={{
|
|
621
|
+
line: {
|
|
622
|
+
'line-color': color,
|
|
623
|
+
'line-opacity': opacity,
|
|
624
|
+
'line-width': lineWidth,
|
|
625
|
+
},
|
|
626
|
+
}}
|
|
627
|
+
/>
|
|
628
|
+
</>
|
|
629
|
+
);
|
|
735
630
|
};
|
|
736
631
|
|
|
737
|
-
export default
|
|
632
|
+
export default LineStyler;
|
|
738
633
|
</pre></td></tr></table></pre>
|
|
739
634
|
|
|
740
635
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -742,16 +637,16 @@ export default MlSpatialElevationProfile;
|
|
|
742
637
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
743
638
|
Code coverage generated by
|
|
744
639
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
745
|
-
at
|
|
640
|
+
at 2023-01-15T17:55:43.336Z
|
|
746
641
|
</div>
|
|
747
|
-
<script src="
|
|
642
|
+
<script src="../../../../prettify.js"></script>
|
|
748
643
|
<script>
|
|
749
644
|
window.onload = function () {
|
|
750
645
|
prettyPrint();
|
|
751
646
|
};
|
|
752
647
|
</script>
|
|
753
|
-
<script src="
|
|
754
|
-
<script src="
|
|
648
|
+
<script src="../../../../sorter.js"></script>
|
|
649
|
+
<script src="../../../../block-navigation.js"></script>
|
|
755
650
|
</body>
|
|
756
651
|
</html>
|
|
757
652
|
|