diff --git a/frontend/src/routes/worldtravel/[id]/+page.svelte b/frontend/src/routes/worldtravel/[id]/+page.svelte index f0ca9fb..42016c7 100644 --- a/frontend/src/routes/worldtravel/[id]/+page.svelte +++ b/frontend/src/routes/worldtravel/[id]/+page.svelte @@ -10,6 +10,21 @@ let regions: Region[] = data.props?.regions || []; let visitedRegions: VisitedRegion[] = data.props?.visitedRegions || []; + let filteredRegions: Region[] = []; + + let searchQuery: string = ''; + + $: { + if (searchQuery === '') { + filteredRegions = regions; + } else { + // always filter from the original regions list + filteredRegions = regions.filter((region) => + region.name.toLowerCase().includes(searchQuery.toLowerCase()) + ); + } + } + const country = data.props?.country || null; console.log(data); @@ -88,8 +103,25 @@ +
+ + {#if searchQuery.length > 0} + +
+ +
+ {/if} +
+
- {#each regions as region} + {#each filteredRegions as region} visitedRegion.region === region.id)} diff --git a/frontend/src/routes/worldtravel/[id]/[id]/+page.svelte b/frontend/src/routes/worldtravel/[id]/[id]/+page.svelte index 9801823..d5a8ea8 100644 --- a/frontend/src/routes/worldtravel/[id]/[id]/+page.svelte +++ b/frontend/src/routes/worldtravel/[id]/[id]/+page.svelte @@ -20,7 +20,7 @@ filteredCities = allCities; } else { // otherwise, filter countries by name - filteredCities = filteredCities.filter((country) => + filteredCities = allCities.filter((country) => country.name.toLowerCase().includes(searchQuery.toLowerCase()) ); } @@ -97,74 +97,7 @@
- - {#if allCities.length > 0} -
- - {#if searchQuery.length > 0} - -
- -
- {/if} -
-
@@ -198,6 +131,23 @@
{/if} +
+ + {#if searchQuery.length > 0} + +
+ +
+ {/if} +
+
{#each filteredCities as city}