navbar fixes

This commit is contained in:
Henri
2025-11-21 20:10:05 +02:00
parent 8c18827dc5
commit aae22efcaa
11 changed files with 358 additions and 112 deletions

View File

@@ -1,8 +1,10 @@
<script>
// Handler and presentation props
export let onClick = () => {};
export let border = false;
</script>
<button onclick={onClick} class="btn">
<button onclick={onClick} class="btn" class:borderless={!border} {...$$restProps}>
<slot />
</button>
@@ -12,15 +14,18 @@
color: var(--black);
border-radius: 8px;
border: 1.5px solid transparent;
border-color: var(--orange);
padding: 0.6em 1.2em;
font-weight: 500;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: 0.5em;
}
.btn:not(.borderless) {
border-color: var(--orange);
}
.btn:hover {
background: var(--orange);
}

View File

@@ -1,26 +0,0 @@
<script>
export let onClick = () => {};
</script>
<button onclick={onClick} class="btn">
<slot />
</button>
<style>
.btn {
background: var(--white);
color: var(--black);
border-radius: 8px;
border: 1.5px solid transparent;
padding: 0.6em 1.2em;
font-weight: 500;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: 0.5em;
}
.btn:hover {
background: var(--orange);
}
</style>

View File

@@ -2,6 +2,7 @@ export { default as Container } from './layout/Container.svelte'
export { default as Card } from './layout/Card.svelte'
export { default as Stack } from './layout/Stack.svelte'
export { default as Grid } from './layout/Grid.svelte'
export { default as Center } from './layout/Center.svelte'
export { default as Button } from './Button.svelte'
export { default as ButtonBorderless } from './ButtonBorderless.svelte'

View File

@@ -0,0 +1,16 @@
<script>
export let dir = "row"; // 'row' | 'col' (default: 'row')
export let gapClass = "gap-4";
export let className = "";
</script>
<div
class={"flex " +
(dir === "row" ? "flex-row" : "flex-col") +
" items-center justify-center " +
gapClass +
" " +
className}
>
<slot />
</div>