24 lines
1.0 KiB
Svelte
24 lines
1.0 KiB
Svelte
<script>
|
|
import { page } from '$app/state';
|
|
let { children } = $props();
|
|
/** @param {String} str **/
|
|
const isActive = str => page.url.pathname === str;
|
|
/** @param {String} str **/
|
|
const isSelected = str => isActive(str) ? 'selected' : '';
|
|
</script>
|
|
|
|
<nav>
|
|
<ul>
|
|
<li class="{isSelected('/')}"><a href="/" aria-current={isActive('/')}>Home</a></li>
|
|
<li class="{isSelected('/views/weekly')}"><a href="/views/weekly" aria-current={isActive('/views/weekly')}>Wochenansicht</a></li>
|
|
<li class="{isSelected('/views/monthly')}"><a href="/views/monthly" aria-current={isActive('/views/monthly')}>Monatsansicht</a></li>
|
|
<li class="{isSelected('/views/yearly')}"><a href="/views/yearly" aria-current={isActive('/views/yearly')}>Jahresansicht</a></li>
|
|
<li class="{isSelected('/working-hours')}"><a href="/working-hours" aria-current={isActive('/working-hours')}>Einträge</a></li>
|
|
</ul>
|
|
</nav>
|
|
|
|
<main>
|
|
{@render children()}
|
|
</main>
|
|
|
|
<footer><p>© Torsten Lücke 2021</p></footer> |