Refactored NavBar

This commit is contained in:
qowevisa 2024-11-08 19:22:32 +02:00
parent 589f9f1a36
commit a581480ae1

View File

@ -2,6 +2,7 @@
import '../app.css'; import '../app.css';
let { children } = $props(); let { children } = $props();
import { page } from '$app/stores'; import { page } from '$app/stores';
const currentPath = $derived($page.url.pathname);
// import { goto } from '$app/navigation'; // import { goto } from '$app/navigation';
// $effect(()=>{ // $effect(()=>{
@ -9,15 +10,61 @@
// // goto("/login") // // goto("/login")
// } // }
// }); // });
const paths = [
{
Path: "/ping",
Name: "ping",
},
{
Path: "/test",
Name: "test",
},
{
Path: "/test2",
Name: "test2",
}
]
</script> </script>
{#if $page.url.pathname != "/login"} {#if $page.url.pathname != "/login"}
<nav> <nav class="bg-gray-900 p-4 flex justify-between items-center">
<a href="/ping">ping</a> <div class="flex flex-col space-y-2 w-full">
<a href="/test">test</a> <!-- <div class="flex flex-grow justify-center px-4"> -->
<a href="/test2">test2</a> <!-- <input type="text" placeholder="Search" class="w-2/5 bg-gray-800 text-gray-400 rounded-full px-4 py-2 focus:outline-none focus:ring-2 focus:ring-indigo-500"> -->
<a href="/login">login</a> <!-- </div> -->
<!-- <div class="border-t border-gray-700 my-2"></div> -->
<div class="flex text-white space-x-4">
{#each paths as path}
<a class="button-link {currentPath === path.Path ? 'onPath' : ''}" href="{path.Path}">{path.Name}</a>
{/each}
</div>
</div>
</nav> </nav>
{/if} {/if}
<style>
.button-link {
background-color: #4f46e5; /* Indigo-600 */
color: white;
padding: 0.5rem 1rem; /* Tailwind's py-2 and px-4 */
border-radius: 0.5rem; /* Rounded-lg */
text-align: center;
display: inline-block;
transition: background-color 0.2s;
}
.button-link:hover {
background-color: #4338ca; /* Indigo-700 */
}
.button-link:focus {
outline: none;
box-shadow: 0 0 0 2px #c7d2fe; /* Tailwind's ring color */
}
.onPath {
background-color: #aaa;
}
</style>
{@render children()} {@render children()}