diff --git a/frontend/src/routes/(app)/links/+page.svelte b/frontend/src/routes/(app)/links/+page.svelte index 685e199..76d6dff 100644 --- a/frontend/src/routes/(app)/links/+page.svelte +++ b/frontend/src/routes/(app)/links/+page.svelte @@ -18,9 +18,32 @@ } from 'lucide-svelte' import { goto, invalidateAll } from '$app/navigation' import Qr from '$lib/components/QR.svelte' + import { page } from '$app/stores' export let data: PageData + let selectedProject: any = undefined + + $: updateSelectedProject(selectedProject) + + const updateSelectedProject = async (selectedProject: any) => { + let project_uuid = null + + if (selectedProject && selectedProject.value) { + project_uuid = selectedProject.value + const url = new URLSearchParams() + url.set('project', `${project_uuid}`) + await goto(`?${url}`, { replaceState: true }) + return + } + + if ($page.url.searchParams.has('project')) { + const url = new URLSearchParams() + url.delete('project') + await goto(`?${url}`, { replaceState: true }) + } + } + let dialogOpen = false let inputLink = '' let isLoading = false @@ -125,6 +148,25 @@ +
+ + + + + + + Project + None + {#each data.projects as project} + {project.name} + {/each} + + + + +
+ {#if data.shorteners.length > 0}
{#each data.shorteners as shortener}