From 4007cb703539c67045cacad1bfb6a85ac944d61a Mon Sep 17 00:00:00 2001 From: sdl60660 Date: Wed, 5 Jan 2022 21:43:27 -0500 Subject: [PATCH 01/16] Trying globe projection from mapbox alpha release --- package.json | 2 +- src/components/Map.svelte | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 496b764..e6054f6 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "d3-fetch": "^2.0.0", "dateformat": "^4.5.1", "fast-xml-parser": "^3.19.0", - "mapbox-gl": "2.3", + "mapbox-gl": "2.7.0-alpha.1", "node-fetch-polyfill": "^2.0.6", "node-html-parser": "^3.3.5", "scrollama": "^2.2.2", diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 0d80e21..dcb1f9e 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -117,11 +117,11 @@ center: [0, 0], zoom: 9, minZoom: 2, - maxBounds: [ - [-500, -65], - [500, 85], - ], - // projection: 'naturalEarth' + // maxBounds: [ + // [-500, -65], + // [500, 85], + // ], + projection: 'globe' }); map.fitBounds(bounds, { animate: false, padding: 30 }); From 6dcedab7a38cdfd440f85fc817c0bcee89e4a8bc Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Wed, 25 May 2022 09:59:14 +0000 Subject: [PATCH 02/16] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a7e2222..5b0e9e3 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "d3-fetch": "^2.0.0", "dateformat": "^4.5.1", "fast-xml-parser": "^3.19.0", - "mapbox-gl": "^2.8.0-alpha.4", + "mapbox-gl": "^2.9.0-beta.1", "node-html-parser": "^3.3.5", "scrollama": "^2.2.2", "sirv-cli": "^1.0.0", From 6f9c595e5597c80b727bdd14b05f702a3c77d475 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Wed, 25 May 2022 10:00:49 +0000 Subject: [PATCH 03/16] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5b0e9e3..8f3d390 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "river-runner", - "version": "2.2.1", + "version": "2.3.0", "private": true, "author": "Sam Learner", "repository": { From 76147e3457dda9601b4dc4bc2c96c2b35fbdff06 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Wed, 25 May 2022 10:09:08 +0000 Subject: [PATCH 04/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 32a6eb0..6c5e2e1 100644 --- a/README.md +++ b/README.md @@ -41,4 +41,4 @@ Thank you to [Mapbox](https://www.mapbox.com/) for sponsoring this project! ## Updates * **January 2022**: The [global version](https://river-runner-global.samlearner.com/) of this tool is now released and in beta! While some lingering issues are resolved and it remains in beta, it can be found on this branch, while the original, US-only version is preserved [here](https://github.com/sdl60660/river-runner/tree/us-only) in Github, and at its original URL: https://river-runner.samlearner.com/. This is to avoid any breaking changes to existing share links/paths due to any discrepancies and because minor US issues persist on the global version, mainly when paths involve dams, canals, or conduits. -If you'd like to be notified about major updates to the tool, you can sign up for an email list [here](https://tinyletter.com/samlearner) +If you'd like to be notified about major updates to the tool, you can sign up for an email list [here](https://tinyletter.com/samlearner). From dac4887b3b59b2eba283a2ade1407f35d5328442 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Wed, 25 May 2022 10:29:41 +0000 Subject: [PATCH 05/16] Update Map.svelte --- src/components/Map.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 91866ee..697fa4a 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -116,8 +116,8 @@ container, style: mapStyle || "mapbox://styles/mapbox/light-v10", center: [0, 0], - zoom: 9, - minZoom: 1.6, + zoom: 2, + minZoom: 1.3, // maxBounds: [ // [-500, -65], // [500, 85], From 21dd3ab182d64078d72240f931bf589347c99162 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Wed, 1 Jun 2022 17:34:51 -0400 Subject: [PATCH 06/16] Trying to shut off bounds --- src/components/Map.svelte | 59 ++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 697fa4a..170bbf0 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -66,7 +66,7 @@ let container; let map; - let mapBounds = bounds; + // let mapBounds = bounds; let geocoder = null; let runSettings = {}; @@ -131,7 +131,7 @@ center: startingSearch.lngLat, }); } - mapBounds = map.getBounds(); + // mapBounds = map.getBounds(); // map.dragRotate.disable(); // map.touchZoomRotate.disableRotation(); @@ -247,21 +247,21 @@ return; } - if (!mapBounds.contains(e.lngLat)) { - map.flyTo({ - center: e.lngLat, - speed: 0.9, - zoom: 4, - }); - - map.once("moveend", () => { - setTimeout(() => { - initializeData({ map, e }); - }, 300); - }); - } else { + // if (!mapBounds.contains(e.lngLat)) { + // map.flyTo({ + // center: e.lngLat, + // speed: 0.9, + // zoom: 4, + // }); + + // map.once("moveend", () => { + // setTimeout(() => { + // initializeData({ map, e }); + // }, 300); + // }); + // } else { initializeData({ map, e }); - } + // } }; const initializeData = async ({ map, e }) => { @@ -1082,9 +1082,9 @@ clearRiverLines({ map, sourceID: "highlighted-section" }); }; - const handleResize = () => { - mapBounds = map.getBounds(); - }; + // const handleResize = () => { + // mapBounds = map.getBounds(); + // }; const exitFunction = () => { aborted = true; @@ -1161,17 +1161,20 @@ } } - $: coordinates.update(() => { - if (mapBounds._sw) { - return [ - [mapBounds._sw.lat, mapBounds._ne.lat], - [mapBounds._sw.lng, mapBounds._ne.lng], - ]; - } - }); + // $: coordinates.update(() => { + // console.log(mapBounds) + // if (mapBounds._sw) { + // return [ + // [mapBounds._sw.lat, mapBounds._ne.lat], + // [mapBounds._sw.lng, mapBounds._ne.lng], + // ]; + // } + // }); - +
Date: Thu, 9 Jun 2022 16:52:06 -0400 Subject: [PATCH 07/16] Seems to have worse 'hitch' issues after initial flight than the non-globe projection unless started from very zoomed in (probably has to do with when the 3D topo layer loads), but have this basically working now in beta. --- package.json | 2 +- src/components/Map.svelte | 113 +++++++++++++++++++------------------- 2 files changed, 58 insertions(+), 57 deletions(-) diff --git a/package.json b/package.json index 8f3d390..5eac563 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "d3-fetch": "^2.0.0", "dateformat": "^4.5.1", "fast-xml-parser": "^3.19.0", - "mapbox-gl": "^2.9.0-beta.1", + "mapbox-gl": "^2.9.0-beta.2", "node-html-parser": "^3.3.5", "scrollama": "^2.2.2", "sirv-cli": "^1.0.0", diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 170bbf0..e634c99 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -44,7 +44,7 @@ sendUnnamedFeatureData, basicSiteTypeData, getTickElevation, - getFlowrateData + getFlowrateData, } from "./utils/mapUtils"; export let bounds; @@ -116,13 +116,9 @@ container, style: mapStyle || "mapbox://styles/mapbox/light-v10", center: [0, 0], - zoom: 2, - minZoom: 1.3, - // maxBounds: [ - // [-500, -65], - // [500, 85], - // ], - projection: 'globe' + minZoom: 2, + zoom: 2.001, + projection: "globe", }); map.fitBounds(bounds, { animate: false, padding: 30 }); @@ -165,14 +161,14 @@ // If starting coordinates were passed in as a parameter (from a shared link), load starting path if (startingSearch) { - initRunner({ map, e: {...startingSearch, from_share_link: true} }); + initRunner({ map, e: { ...startingSearch, from_share_link: true } }); startingSearch = null; } }); map.on("click", async (e) => { if (vizState === "uninitialized") { - initRunner({ map, e }); + initRunner({ map, e, searched: false }); } }); }; @@ -208,7 +204,7 @@ }; geocoderControl.clear(); - initRunner({ map, e: result }); + initRunner({ map, e: result, searched: true }); }); const position = window.innerWidth > 700 ? "top-right" : "bottom-left"; @@ -217,7 +213,7 @@ return geocoderControl; }; - const initRunner = async ({ map, e }) => { + const initRunner = async ({ map, e, searched = false }) => { // If a click is in the middle of processing, just return if (map.interactive === false) { return; @@ -231,37 +227,30 @@ // Correct out of bounds longitudes from map wrapping if (e.lngLat.lng < -180) { - e.lngLat.lng += 360 - } - else if (e.lngLat.lng > 180) { + e.lngLat.lng += 360; + } else if (e.lngLat.lng > 180) { e.lngLat.lng -= 360; } currentLocation = e.lngLat; startCoordinates = e.lngLat; - try { - mapBounds = map.getBounds(); - } catch (e) { - // console.error(e); - return; - } - // if (!mapBounds.contains(e.lngLat)) { - // map.flyTo({ - // center: e.lngLat, - // speed: 0.9, - // zoom: 4, - // }); - - // map.once("moveend", () => { - // setTimeout(() => { - // initializeData({ map, e }); - // }, 300); - // }); - // } else { + if (searched === true) { + map.flyTo({ + center: e.lngLat, + speed: 0.8, + zoom: 4.5, + }); + + map.once("moveend", () => { + setTimeout(() => { + initializeData({ map, e }); + }, 400); + }); + } else { initializeData({ map, e }); - // } + } }; const initializeData = async ({ map, e }) => { @@ -271,7 +260,7 @@ errorStatus = flowlinesData; vizState = "error"; - sendQueryData(e.lngLat.lat, e.lngLat.lat, false, true); + sendQueryData(e.lngLat.lat, e.lngLat.lat, false, true); resetMapState({ map, error: true }); return; } @@ -284,10 +273,10 @@ // currentFlowrateIndex = 0; } - totalLength = flowlinesData.features[0].properties.pathlength >= 0 - ? flowlinesData.features[0].properties.pathlength + flowlinesData.features[0].properties.lengthkm + ? flowlinesData.features[0].properties.pathlength + + flowlinesData.features[0].properties.lengthkm : undefined; // Find the parent features of flowlines along the path @@ -335,9 +324,10 @@ let terrainElevationMultiplier = 1.2; let cameraBaseAltitude = 4300; - const elevationArrayStep = Math.max(2, Math.round( - Math.min(coordinatePath.length / 4 - 1, 100) - )); + const elevationArrayStep = Math.max( + 2, + Math.round(Math.min(coordinatePath.length / 4 - 1, 100)) + ); // Sometimes while 3D tiles are still loading, the queryTerrainElevation method doesn't hit, // so we'll give it a few attempts with a delay in between before falling back on a method that doesn't @@ -542,7 +532,7 @@ return { error: true, status: "API error" }; } - const results = (await flowlinesResponse.json()); + const results = await flowlinesResponse.json(); if (results.code === "fail") { return { error: true, status: "Routing error" }; } @@ -607,12 +597,13 @@ const stopFeatureNameOverrides = { "Saint Lawrence River": "Gulf of Saint Lawrence", - "Yangtze": "East China Sea", - "Canal do Sul": "North Atlantic Ocean" + Yangtze: "East China Sea", + "Canal do Sul": "North Atlantic Ocean", }; - const stopFeatureName = closestFeature.properties.stop_feature_name === "" ? - `Inland Water Feature ${closestFeature.properties.id}`: - closestFeature.properties.stop_feature_name; + const stopFeatureName = + closestFeature.properties.stop_feature_name === "" + ? `Inland Water Feature ${closestFeature.properties.id}` + : closestFeature.properties.stop_feature_name; // If the closest feature in the stop feature set is more than 10 km away, this is landing on an unidentified inland water feature if ( @@ -643,7 +634,7 @@ const allNames = featurePoints.map( (feature) => feature.properties.feature_name - ) + ); sendUnnamedFeatureData(startCoordinates, allNames); // This fixes a rare, but frustrating bug, where because I don't sample each flowline for VAA data, and because... @@ -701,7 +692,8 @@ distance_from_destination: featureData.properties.pathlength === -9999 ? 0 - : featureData.properties.pathlength + featureData.properties.lengthkm, + : featureData.properties.pathlength + + featureData.properties.lengthkm, index, stream_level: featureData.properties.streamlev, active: false, @@ -811,7 +803,8 @@ const alongCamera = projectDistance({ distanceGap: altitudeMultiplier * distanceGap, originPoint: smoothedPath[0], - targetPoint: alongTarget === smoothedPath[0] ? smoothedPath[1] : alongTarget, + targetPoint: + alongTarget === smoothedPath[0] ? smoothedPath[1] : alongTarget, }); const bearing = bearingBetween(alongCamera, alongTarget); @@ -943,7 +936,13 @@ } // Calculate camera elevation using the base elevation and the elevation at the specific coordinate point - const tickElevation = getTickElevation(phase, elevations, altitudeMultiplier, cameraBaseAltitude, terrainElevationMultiplier); + const tickElevation = getTickElevation( + phase, + elevations, + altitudeMultiplier, + cameraBaseAltitude, + terrainElevationMultiplier + ); let alongTarget = along( lineString(route), @@ -1156,10 +1155,14 @@ }; const handleKeydown = (e) => { - if (e.key === "Escape" && vizState === 'running' && activeFeatureIndex >= 0) { + if ( + e.key === "Escape" && + vizState === "running" && + activeFeatureIndex >= 0 + ) { aborted = true; } - } + }; // $: coordinates.update(() => { // console.log(mapBounds) @@ -1172,9 +1175,7 @@ // }); - +
Date: Tue, 21 Jun 2022 11:29:43 -0400 Subject: [PATCH 08/16] Stashing --- src/components/Map.svelte | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index e634c99..30f4fa2 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -222,6 +222,9 @@ // Turn off map interactivity map.interactive = false; map.scrollZoom.disable(); + // map.dragRotate.disable(); + // map.touchZoomRotate.disableRotation(); + d3.selectAll(".mapboxgl-ctrl-geocoder").style("display", "none"); d3.select(".mapboxgl-ctrl-top-left").style("display", "none"); From 17ec92658664cde17dfcf07064bdf30e685ed5f4 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Tue, 21 Jun 2022 11:52:00 -0400 Subject: [PATCH 09/16] Fixed default zoom on mobile --- src/components/Map.svelte | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 95edd13..d8edbe6 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -116,8 +116,8 @@ container, style: mapStyle || "mapbox://styles/mapbox/light-v10", center: [0, 0], - minZoom: 2, - zoom: 2.001, + minZoom: window.innerWidth > 700 ? 2 : 1.4, + zoom: window.innerWidth > 700 ? 2.001 : 1.4001, projection: "globe", }); @@ -242,7 +242,7 @@ map.flyTo({ center: e.lngLat, speed: 0.8, - zoom: 4.5, + zoom: 4.8, }); map.once("moveend", () => { From 4898922135e8be8cd21de0588f2fc1fb45742c14 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Tue, 21 Jun 2022 11:57:34 -0400 Subject: [PATCH 10/16] Bumped version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5eac563..d069419 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "d3-fetch": "^2.0.0", "dateformat": "^4.5.1", "fast-xml-parser": "^3.19.0", - "mapbox-gl": "^2.9.0-beta.2", + "mapbox-gl": "^2.9.1", "node-html-parser": "^3.3.5", "scrollama": "^2.2.2", "sirv-cli": "^1.0.0", From 24720912651bbbe7b141a65bb2131331806a1f8a Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Tue, 21 Jun 2022 12:44:31 -0400 Subject: [PATCH 11/16] Adding zoom/rotate control on mobile. --- src/components/Map.svelte | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index d8edbe6..23c441d 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -155,9 +155,9 @@ showCompass: true, visualizePitch: true, }); - if (window.innerWidth > 700) { - map.addControl(nav, "top-left"); - } + // if (window.innerWidth > 700) { + map.addControl(nav, "top-left"); + // } // If starting coordinates were passed in as a parameter (from a shared link), load starting path if (startingSearch) { From bc23301dcf8beadb5a629ca4aed27ac135146296 Mon Sep 17 00:00:00 2001 From: Sam Learner Date: Tue, 21 Jun 2022 21:33:12 -0400 Subject: [PATCH 12/16] Adjusted padding, added scss and set mobile breakpoint as a variable for consistency --- package.json | 4 +++- rollup.config.js | 6 +++++- src/components/Map.svelte | 32 +++++++++++++++++++------------- src/settings.scss | 1 + 4 files changed, 28 insertions(+), 15 deletions(-) create mode 100644 src/settings.scss diff --git a/package.json b/package.json index d069419..ba6e091 100644 --- a/package.json +++ b/package.json @@ -21,12 +21,14 @@ "eslint-config-airbnb-base": "^14.2.1", "eslint-plugin-import": "^2.22.1", "eslint-plugin-svelte3": "^3.2.0", + "node-sass": "^7.0.1", "rollup": "^2.3.4", "rollup-plugin-css-only": "^3.1.0", "rollup-plugin-livereload": "^2.0.0", "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-terser": "^7.0.0", - "svelte": "^3.0.0" + "svelte": "^3.0.0", + "svelte-preprocess": "^4.10.7" }, "dependencies": { "@rollup/plugin-json": "^4.1.0", diff --git a/rollup.config.js b/rollup.config.js index b0caf07..ee32619 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -6,6 +6,9 @@ import { terser } from 'rollup-plugin-terser'; import css from 'rollup-plugin-css-only'; import json from '@rollup/plugin-json'; +import autoPreprocess from 'svelte-preprocess'; + + const production = !process.env.ROLLUP_WATCH; function serve() { @@ -42,7 +45,8 @@ export default { compilerOptions: { // enable run-time checks when not in production // dev: !production - } + }, + preprocess: autoPreprocess() }), // we'll extract any component CSS out into // a separate file - better for performance diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 23c441d..ae56240 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -64,6 +64,8 @@ ? { lngLat: { lat: +urlParams.get("lat"), lng: +urlParams.get("lng") } } : null; + const mobileBreakpoint = 700; + let container; let map; // let mapBounds = bounds; @@ -86,7 +88,8 @@ let phaseJump; // Zoom level won't be adjustable on mobile, but it will be set slightly higher to avoid jiterriness - const defaultAltitudeMultiplier = window.innerWidth < 700 ? 1.1 : 0.9; + const defaultAltitudeMultiplier = + window.innerWidth < mobileBreakpoint ? 1.1 : 0.9; let altitudeMultiplier = defaultAltitudeMultiplier; let altitudeChange = false; let paused = false; @@ -116,12 +119,12 @@ container, style: mapStyle || "mapbox://styles/mapbox/light-v10", center: [0, 0], - minZoom: window.innerWidth > 700 ? 2 : 1.4, - zoom: window.innerWidth > 700 ? 2.001 : 1.4001, + minZoom: window.innerWidth > mobileBreakpoint ? 2 : 1.4, + zoom: window.innerWidth > mobileBreakpoint ? 2.001 : 1.4001, projection: "globe", }); - map.fitBounds(bounds, { animate: false, padding: 30 }); + map.fitBounds(bounds, { animate: false, padding: 10 }); if (startingSearch) { map.jumpTo({ center: startingSearch.lngLat, @@ -155,7 +158,7 @@ showCompass: true, visualizePitch: true, }); - // if (window.innerWidth > 700) { + // if (window.innerWidth > mobileBreakpoint) { map.addControl(nav, "top-left"); // } @@ -192,7 +195,7 @@ flyTo: false, }); - if (window.innerWidth < 700) { + if (window.innerWidth < mobileBreakpoint) { geocoderControl.setLimit(4); } @@ -207,7 +210,8 @@ initRunner({ map, e: result, searched: true }); }); - const position = window.innerWidth > 700 ? "top-right" : "bottom-left"; + const position = + window.innerWidth > mobileBreakpoint ? "top-right" : "bottom-left"; map.addControl(geocoderControl, position); return geocoderControl; @@ -434,7 +438,7 @@ // When using the vizState change/return instead of startRun, it displays the overview before automatically starting the run // We'll do this with a countdown timer on desktop, and just right into it on mobile - if (window.innerWidth > 700) { + if (window.innerWidth > mobileBreakpoint) { vizState = "overview"; // map.scrollZoom.enable(); // map.dragPan.enable(); @@ -1037,7 +1041,7 @@ pitch: 0, padding: 70, maxZoom: 12, - offset: window.innerWidth < 700 ? [0, -20] : [0, 0], // On mobile, the search bar will get in the way so we actually want it a little off center + offset: window.innerWidth < mobileBreakpoint ? [0, -20] : [0, 0], // On mobile, the search bar will get in the way so we actually want it a little off center }); map.once("moveend", () => { @@ -1225,7 +1229,7 @@ {suggestionModalActive} on:hide-suggestion-modal={hideSuggestionModal} /> - {#if window.innerWidth > 700 && advancedFeaturesOn === true} + {#if window.innerWidth > mobileBreakpoint && advancedFeaturesOn === true} - - - - \ No newline at end of file diff --git a/src/components/ContactBox.svelte b/src/components/ContactBox.svelte index 73220fc..410a52b 100644 --- a/src/components/ContactBox.svelte +++ b/src/components/ContactBox.svelte @@ -40,19 +40,33 @@

Sources: The data used in this project comes from the River Runner API, which is based on several open source projects and - datasets and developed by - Dave Blodgett, - Kyle Onda, and - Ben Webb. - Learn about it + datasets and developed by + Dave Blodgett, + Kyle Onda, and + Ben Webb. Learn about it here.

- -

Code and data for this project lives - here. Thank you to Mapbox for sponsoring. + >. +

+ +

+ Code and data for this project lives + here. Thank you to + Mapbox for + sponsoring.

This version of the app is in beta. Report any issues you experience Date: Tue, 21 Jun 2022 21:35:55 -0400 Subject: [PATCH 14/16] Small contact box change --- src/components/ContactBox.svelte | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/ContactBox.svelte b/src/components/ContactBox.svelte index 410a52b..43c2d48 100644 --- a/src/components/ContactBox.svelte +++ b/src/components/ContactBox.svelte @@ -104,7 +104,9 @@ {/if}

- diff --git a/src/components/Map.svelte b/src/components/Map.svelte index ae56240..97d54a0 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -1362,6 +1362,12 @@ bottom: 3rem; } + // .left-column { + // left: 1rem; + // top: 1rem; + // bottom: 1rem; + // } + :global(.mapboxgl-ctrl-top-left .mapboxgl-ctrl) { margin: 1.5rem 0 0 1rem !important; } diff --git a/src/components/NavigationInfo.svelte b/src/components/NavigationInfo.svelte index 8d492cd..6a07da0 100644 --- a/src/components/NavigationInfo.svelte +++ b/src/components/NavigationInfo.svelte @@ -340,7 +340,9 @@ Know one of these missing river names? Make a suggestion!
-