diff options
| author | Fuwn <[email protected]> | 2024-02-11 12:39:15 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-02-11 12:39:15 -0800 |
| commit | 76be8830909ee0fb7ebf6dc5fbd9fde0d7ca9e51 (patch) | |
| tree | 573ec1ed07d86052392cd6be10cc598433b96ad0 /src | |
| parent | feat(layout): profile dropdown (diff) | |
| download | due.moe-76be8830909ee0fb7ebf6dc5fbd9fde0d7ca9e51.tar.xz due.moe-76be8830909ee0fb7ebf6dc5fbd9fde0d7ca9e51.zip | |
feat(layout): prevent default on dropdown
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/Dropdown.svelte | 10 | ||||
| -rw-r--r-- | src/routes/+layout.svelte | 1 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/lib/Dropdown.svelte b/src/lib/Dropdown.svelte index bd657f9a..39d9ecec 100644 --- a/src/lib/Dropdown.svelte +++ b/src/lib/Dropdown.svelte @@ -3,6 +3,7 @@ name: string; url: string; onClick?: () => void; + preventDefault?: boolean; } export let items: Item[] = []; @@ -43,7 +44,14 @@ <div class={`dropdown-content card card-small ${open ? 'dropdown-open' : ''}`}> {#each items as item} - <a href={item.url} class="header-item" on:click={item.onClick}> + <a + href={item.url} + class="header-item" + on:click={(e) => { + if (item.preventDefault) e.preventDefault(); + if (item.onClick) item.onClick(); + }} + > {item.name} </a> {/each} diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index dfb3a278..835b59f7 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -135,6 +135,7 @@ { name: $locale().navigation.logOut, url: '#', + preventDefault: true, onClick: () => { localStorage.removeItem('identity'); localStorage.removeItem('commit'); |