diff --git a/backend/src/lib.rs b/backend/src/lib.rs index af8cdf4..95761ea 100644 --- a/backend/src/lib.rs +++ b/backend/src/lib.rs @@ -201,11 +201,10 @@ impl MapModel { self.graph .mercator .to_mercator_in_place(&mut input.geometry); - routes.push( - self.graph - .snap_route(&input.geometry, mode) - .map_err(err_to_js)?, - ); + match self.graph.snap_route(&input.geometry, mode) { + Ok(route) => routes.push(route), + Err(err) => log::warn!("Couldn't snap a route: {err}"), + } } let start_time = NaiveTime::parse_from_str(&req.start_time, "%H:%M").map_err(err_to_js)?; diff --git a/web/src/UploadRouteMode.svelte b/web/src/UploadRouteMode.svelte index 6cf984d..4bf1464 100644 --- a/web/src/UploadRouteMode.svelte +++ b/web/src/UploadRouteMode.svelte @@ -20,6 +20,9 @@ let output: FeatureCollection | null = null; let totalPopulationInBuffer = 0; + let showInput = true; + let showOutput = true; + let fileInput: HTMLInputElement; async function loadFile(e: Event) { try { @@ -78,6 +81,15 @@ + + + {#if input} @@ -100,6 +112,9 @@ {#if input}