diff options
author | Jakob Stendahl <14180120+JakobST1n@users.noreply.github.com> | 2021-10-11 20:02:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-11 20:02:04 +0200 |
commit | c67531161e56488166a33232f87566309ba8676e (patch) | |
tree | 846e59a020e80bea48557d5a06af5728e44961ff /src_frontend/Components/MainMenu.svelte | |
parent | e6880cd8ccf82d993f222cb14b4860581654acb8 (diff) | |
parent | c1b6eec770b885a9829e1f62bad5cc99389ca429 (diff) | |
download | Luxcena-Neo-c67531161e56488166a33232f87566309ba8676e.tar.gz Luxcena-Neo-c67531161e56488166a33232f87566309ba8676e.zip |
Merge pull request #24 from JakobST1n/rebuild
v1.0.0
Diffstat (limited to 'src_frontend/Components/MainMenu.svelte')
-rw-r--r-- | src_frontend/Components/MainMenu.svelte | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/src_frontend/Components/MainMenu.svelte b/src_frontend/Components/MainMenu.svelte new file mode 100644 index 0000000..7de36a5 --- /dev/null +++ b/src_frontend/Components/MainMenu.svelte @@ -0,0 +1,80 @@ +<script> + import { link } from 'svelte-spa-router'; + import active from 'svelte-spa-router/active'; + import { fade } from 'svelte/transition'; + + let menuItems = { + 0: {type: "item", name: "Home", href: "/"}, + // 1: {type: "item", name: "Schedules", href: "/schedules"}, + 2: {type: "seperator"}, + 3: {type: "item", name: "Mode editor", href: "/modes"}, + 4: {type: "item", name: "LED configuration", href: "/led_config"}, + // 5: {type: "item", name: "Logs", href: "/logs"}, + 6: {type: "seperator"}, + 7: {type: "item", name: "Settings", href: "/settings"}, + 8: {type: "seperator"}, + 9: {type: "abslink", name: "Docs", href: "/docs"} + }; +</script> + +<style> + .menu { + position: absolute; + height: calc(100% - var(--theme-phone-header-height)); + top: var(--theme-phone-header-height); + overflow-y: auto; + padding: var(--theme-padding); + font-size: 20px; + width: 100%; + box-sizing: border-box; + } + .menu a { + display: block; + text-decoration: none; + margin-bottom: 10px; + color: var(--grey-300); + } + .menu a:hover { + color: var(--grey-400); + } + .menu a:active { + color: var(--grey-600); + } + .menu hr { + border: 0.1px solid var(--grey-700); + } + @media (min-width: 900px) { + .menu { + position: fixed; + background-color: #f7f7f7; + top: 0; + right: 0; + font-size: 12px; + width: 180px; + height: 100%; + padding-top: 65px; + } + .menu a { + color: var(--grey-600); + text-transform: uppercase; + font-weight: bold; + margin-bottom: 20px; + } + .menu hr { + display: none; + border-color: var(--grey-100); + } + } +</style> + +<div class="menu"> + {#each Object.entries(menuItems) as [id, menuItem]} + {#if menuItem.type == "item"} + <a use:link use:active href={menuItem.href}>{menuItem.name}</a> + {:else if menuItem.type == "abslink"} + <a href={menuItem.href}>{menuItem.name}</a> + {:else if menuItem.type == "seperator"} + <hr /> + {/if} + {/each} +</div>
\ No newline at end of file |