From 5816c4cd905c77455b7abd9dd1d9cde8582c8dfe Mon Sep 17 00:00:00 2001 From: Daniel Lorigan Date: Fri, 8 Nov 2024 17:34:33 -0800 Subject: [PATCH] Consolidate site navbar functionality into one reusable component --- src/lib/components/layout/Header.svelte | 188 ++++++++++++++++++++++++ src/lib/utils/types.ts | 6 + src/routes/(app)/+layout.svelte | 122 +-------------- src/routes/(viewer)/+layout.svelte | 48 +----- src/routes/+layout.svelte | 43 ------ 5 files changed, 204 insertions(+), 203 deletions(-) create mode 100644 src/lib/components/layout/Header.svelte diff --git a/src/lib/components/layout/Header.svelte b/src/lib/components/layout/Header.svelte new file mode 100644 index 00000000..90b186e0 --- /dev/null +++ b/src/lib/components/layout/Header.svelte @@ -0,0 +1,188 @@ + + + + + + + Washington State Department of Health Logo + + + + + + + (isOpen = !isOpen)} /> + + + + + + \ No newline at end of file diff --git a/src/lib/utils/types.ts b/src/lib/utils/types.ts index f255c7af..0f45ca47 100644 --- a/src/lib/utils/types.ts +++ b/src/lib/utils/types.ts @@ -66,3 +66,9 @@ export interface Language { lang: string; code: string; } + +export enum NavLinks { + Home = "home", + Actions = "actions", + Languages = "languages" +} diff --git a/src/routes/(app)/+layout.svelte b/src/routes/(app)/+layout.svelte index 597f87b7..af6c7e1d 100644 --- a/src/routes/(app)/+layout.svelte +++ b/src/routes/(app)/+layout.svelte @@ -1,26 +1,13 @@ - - - - - Washington State Department of Health Logo - - - - - - - ($isOpen = !$isOpen)} /> - - - - + +
diff --git a/src/routes/(viewer)/+layout.svelte b/src/routes/(viewer)/+layout.svelte index 0abf268d..3dbcdb22 100644 --- a/src/routes/(viewer)/+layout.svelte +++ b/src/routes/(viewer)/+layout.svelte @@ -1,57 +1,15 @@ - - - - - Washington State Department of Health Logo - - - - - - - (isOpen = !isOpen)} /> - - - - +
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 02537b65..b24aed2a 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -73,22 +73,6 @@ let mode = writable('normal'); window.localStorage[MODE_KEY] ? mode.set(JSON.parse(window.localStorage[MODE_KEY])) : mode.set('normal'); - let isOpen = writable(false); - setContext('isOpen', isOpen); - function closeNav() { - $isOpen = false; - } - - document.addEventListener('click', (event) => { - closeNav(); - }); - document.addEventListener('keydown', (event) => { - closeNav(); - }); - window.addEventListener('scroll', (event) => { - closeNav(); - }); - $: { if ($mode) window.localStorage[MODE_KEY] = JSON.stringify($mode); } @@ -130,33 +114,6 @@