From 946c4c1237600969e0f39ff97a6f02b38f1b9a7d Mon Sep 17 00:00:00 2001 From: Werner Kramer Date: Wed, 11 Dec 2024 14:03:28 +0100 Subject: [PATCH 1/3] Make locations available in SpatialDisplay --- src/components/spatialdisplay/SpatialDisplay.vue | 16 ++++++++++++++-- .../spatialdisplay/SpatialDisplayComponent.vue | 13 +++++-------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/components/spatialdisplay/SpatialDisplay.vue b/src/components/spatialdisplay/SpatialDisplay.vue index 12279daae..8d21a7eff 100644 --- a/src/components/spatialdisplay/SpatialDisplay.vue +++ b/src/components/spatialdisplay/SpatialDisplay.vue @@ -6,7 +6,8 @@ :location-id="props.locationId" :latitude="props.latitude" :longitude="props.longitude" - :filter-ids="props.filterIds" + :locations="locations" + :geojson="geojson" @changeLocationId="onLocationChange" :layer-capabilities="layerCapabilities" :times="times" @@ -32,7 +33,7 @@ import { computed, ref, watch } from 'vue' import SpatialDisplayComponent from '@/components/spatialdisplay/SpatialDisplayComponent.vue' import { useDisplay } from 'vuetify' import { configManager } from '@/services/application-config' -import { useRoute, useRouter } from 'vue-router' +import { onBeforeRouteUpdate, type RouteLocationNormalized, useRoute, useRouter } from 'vue-router' import { findParentRoute } from '@/router' import { onMounted } from 'vue' import { @@ -48,6 +49,7 @@ import circle from '@turf/circle' import bbox from '@turf/bbox' import { useUserSettingsStore } from '@/stores/userSettings' import { UseDisplayConfigOptions } from '@/services/useDisplayConfig' +import { useFilterLocations } from '@/services/useFilterLocations' interface Props { layerName?: string @@ -72,6 +74,10 @@ const { layerCapabilities, times } = useWmsLayerCapabilities( baseUrl, () => props.layerName, ) +const { locations, geojson } = useFilterLocations( + baseUrl, + () => props.filterIds, +) const start = computed(() => { if (!times.value || times.value.length === 0) return null @@ -267,6 +273,12 @@ watch( } }, ) + +onBeforeRouteUpdate(reroute) + +function reroute(to: RouteLocationNormalized) { + console.log('Spatial Display', to) +}