From c49b4fab8bc7d3cebb5121f6923570874f12d5ca Mon Sep 17 00:00:00 2001 From: Dustin Carlino Date: Thu, 24 Oct 2024 15:24:42 +0100 Subject: [PATCH] Move draw controls into the map toolbox, out of the sidebar --- assets/help.svg | 1 - package-lock.json | 24 +++++++++++---------- package.json | 2 +- src/lib/common/HelpButton.svelte | 31 --------------------------- src/lib/common/index.ts | 3 +-- src/lib/sketch/EditFeatureForm.svelte | 6 ++++-- src/lib/sketch/FileManagement.svelte | 2 +- src/lib/sketch/config.ts | 7 +++--- src/pages/SketchSchemes.svelte | 23 +++++++++++--------- 9 files changed, 36 insertions(+), 63 deletions(-) delete mode 100644 assets/help.svg delete mode 100644 src/lib/common/HelpButton.svelte diff --git a/assets/help.svg b/assets/help.svg deleted file mode 100644 index f7ffc5da2..000000000 --- a/assets/help.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 2b54b8a8e..f64ee0c7f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "humanize-string": "^3.0.0", "js-cookie": "^3.0.5", "maplibre-gl": "^4.0.2", - "scheme-sketcher-lib": "github:acteng/scheme-sketcher-lib", + "scheme-sketcher-lib": "github:acteng/scheme-sketcher-lib#move_draw_controls", "svelte": "^4.2.10", "svelte-maplibre": "^0.9.7", "uuid": "^9.0.1" @@ -2526,7 +2526,7 @@ }, "node_modules/govuk-svelte": { "version": "0.0.1", - "resolved": "git+ssh://git@github.com/acteng/govuk-svelte.git#2a9ab3754ed5af6958e999268e2fd1785852fe5a", + "resolved": "git+ssh://git@github.com/acteng/govuk-svelte.git#15e95e077a5ce0cb34c729443407c5436f51bbf0", "dependencies": { "govuk-frontend": "^5.4.1", "sass": "^1.77.8", @@ -3685,14 +3685,14 @@ } }, "node_modules/route-snapper": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/route-snapper/-/route-snapper-0.4.1.tgz", - "integrity": "sha512-qtuYO6V/O2SQzRZnsBBhZ2q/By71ZjF2TXcU3S14LJ7S0xxOh/2JQnxcpQt1/OkbMYglFFxlPnLdBKh1KviWyQ==" + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/route-snapper/-/route-snapper-0.4.4.tgz", + "integrity": "sha512-G12I5dpUyKGS0slqoIBexs2DKLn5gPKGA8ZgybZb32N58Ld94p6c0kTBGgL1KrhYRo3Wf9mR6HIVKYjT5eiVfQ==" }, "node_modules/route-snapper-ts": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/route-snapper-ts/-/route-snapper-ts-0.0.5.tgz", - "integrity": "sha512-xQyU81/gJdtKlWWeyEevKR4GLs/C1QtPQTD9JmuFO9ExShjmvD4TtT1EdchpT+omfe4quvIuA9YSN6qt4UNMMg==", + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/route-snapper-ts/-/route-snapper-ts-0.0.8.tgz", + "integrity": "sha512-6tDhEQ+vwu+R9bCwWl3ARMhzl4KREuzpmT8vg2TE0kjCwri+VKURSJ2Pfjc8t3gVK1AXf8perrMwriw2ks33kg==", "dependencies": { "@turf/helpers": "^6.5.0", "@turf/length": "^6.5.0", @@ -3700,7 +3700,7 @@ "@turf/line-split": "^6.5.0", "@turf/nearest-point-on-line": "^6.5.0", "maplibre-gl": "^4.0.0", - "route-snapper": "^0.4.0" + "route-snapper": "^0.4.2" } }, "node_modules/route-snapper-ts/node_modules/@turf/helpers": { @@ -3794,16 +3794,18 @@ }, "node_modules/scheme-sketcher-lib": { "version": "0.0.1", - "resolved": "git+ssh://git@github.com/acteng/scheme-sketcher-lib.git#534f48402fc3013e8ec628ed463ae565b90d9aaf", + "resolved": "git+ssh://git@github.com/acteng/scheme-sketcher-lib.git#d32f1b564ea318a61862fa3ea16d18db7866f3c5", "dependencies": { "@maptiler/geocoding-control": "1.2.3", "@turf/mask": "^7.0.0", "@turf/nearest-point-on-line": "^7.0.0", + "govuk-frontend": "^5.4.1", "govuk-svelte": "github:acteng/govuk-svelte", "maplibre-draw-polygon": "github:dabreegster/maplibre-draw-polygon", "maplibre-gl": "^4.0.2", "route-snapper": "^0.4.1", - "route-snapper-ts": "^0.0.5", + "route-snapper-ts": "^0.0.8", + "sass": "^1.77.8", "svelte-maplibre": "^0.9.7", "uuid": "^10.0.0" }, diff --git a/package.json b/package.json index b144d448d..75a730d67 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "humanize-string": "^3.0.0", "js-cookie": "^3.0.5", "maplibre-gl": "^4.0.2", - "scheme-sketcher-lib": "github:acteng/scheme-sketcher-lib", + "scheme-sketcher-lib": "github:acteng/scheme-sketcher-lib#move_draw_controls", "svelte": "^4.2.10", "svelte-maplibre": "^0.9.7", "uuid": "^9.0.1" diff --git a/src/lib/common/HelpButton.svelte b/src/lib/common/HelpButton.svelte deleted file mode 100644 index a11c0c0d9..000000000 --- a/src/lib/common/HelpButton.svelte +++ /dev/null @@ -1,31 +0,0 @@ - - - - - -
- -
-
- - diff --git a/src/lib/common/index.ts b/src/lib/common/index.ts index 6caa271ea..c20502a92 100644 --- a/src/lib/common/index.ts +++ b/src/lib/common/index.ts @@ -7,7 +7,6 @@ export { default as ColorLegend } from "./ColorLegend.svelte"; export { default as ExternalLink } from "./ExternalLink.svelte"; export { default as Geocoder } from "./Geocoder.svelte"; export { default as Header } from "./Header.svelte"; -export { default as HelpButton } from "./HelpButton.svelte"; export { default as Layout } from "./Layout.svelte"; export { default as Legend } from "./Legend.svelte"; export { default as LineMeasureTool } from "./LineMeasureTool.svelte"; @@ -16,7 +15,7 @@ export { default as Popup } from "./Popup.svelte"; export { default as MapLibreMap } from "./MapLibreMap.svelte"; export { default as ZoomOutMap } from "./ZoomOutMap.svelte"; export * from "./storage"; -export { Modal, WarningIcon } from "scheme-sketcher-lib/common"; +export { HelpButton, Modal, WarningIcon } from "scheme-sketcher-lib/common"; export async function getAuthoritiesGeoJson(): Promise { let resp = await fetch(authoritiesUrl); diff --git a/src/lib/sketch/EditFeatureForm.svelte b/src/lib/sketch/EditFeatureForm.svelte index e40efc3cd..ecf6eeec0 100644 --- a/src/lib/sketch/EditFeatureForm.svelte +++ b/src/lib/sketch/EditFeatureForm.svelte @@ -10,14 +10,16 @@ export let cfg: Config; export let gjSchemes: Writable; - export let id: number; + export let id: number | null; export let props: FeatureProps; // Workaround unused var warning cfg; - +{#if id != null} + +{/if} {#if $schema == "v1"} {:else if $schema == "pipeline"} diff --git a/src/lib/sketch/FileManagement.svelte b/src/lib/sketch/FileManagement.svelte index c4e684333..d92fcc5d5 100644 --- a/src/lib/sketch/FileManagement.svelte +++ b/src/lib/sketch/FileManagement.svelte @@ -145,7 +145,7 @@ } -{#if $mode.mode == "list"} +{#if $mode.mode == "list" || $mode.mode == "split-route" || $mode.mode == "set-image" || $mode.mode == "streetview"} diff --git a/src/lib/sketch/config.ts b/src/lib/sketch/config.ts index b8afb1df3..7e230678c 100644 --- a/src/lib/sketch/config.ts +++ b/src/lib/sketch/config.ts @@ -41,12 +41,13 @@ export let cfg: Config = { }, newLineStringFeature: (f) => { f.properties.intervention_type = "route"; - if (f.properties.route_name) { + if (f.properties.route_name && !f.properties.name) { if (get(schemaStore) != "pipeline") { f.properties.name = f.properties.route_name; } - delete f.properties.route_name; } + delete f.properties.route_name; + delete f.properties.full_path; }, updateFeature: (destination, source) => { @@ -63,8 +64,6 @@ export let cfg: Config = { } }, - maptilerApiKey: import.meta.env.VITE_MAPTILER_API_KEY, - getStreetViewRoadLayerNames: (map) => getRoadLayerNames(map, get(mapStyle)), layerZorder, diff --git a/src/pages/SketchSchemes.svelte b/src/pages/SketchSchemes.svelte index e33885ba1..8de70be31 100644 --- a/src/pages/SketchSchemes.svelte +++ b/src/pages/SketchSchemes.svelte @@ -9,8 +9,8 @@ InterventionLayer, PolygonToolLayer, RouteSnapperLayer, - SplitRouteMode, Toolbox, + NewFeatureForm, } from "scheme-sketcher-lib/draw"; import { appVersion, @@ -28,7 +28,7 @@ import About from "lib/sketch/About.svelte"; import FileManagement from "lib/sketch/FileManagement.svelte"; import Instructions from "lib/sketch/Instructions.svelte"; - import { PerModeControls } from "scheme-sketcher-lib/sidebar"; + import { ListMode, EditFeatureForm } from "scheme-sketcher-lib/sidebar"; import { map, mapStyle, schema } from "stores"; import { onMount } from "svelte"; import { cfg } from "lib/sketch/config"; @@ -97,7 +97,6 @@ return authorityName; } - // Need this to set up PerModeControls $: if ($map) { sketchMapStore.set($map); } @@ -107,7 +106,7 @@