aboutsummaryrefslogtreecommitdiffstats
path: root/code/frontend/src/components/ui/button/button.svelte
diff options
context:
space:
mode:
Diffstat (limited to 'code/frontend/src/components/ui/button/button.svelte')
-rw-r--r--code/frontend/src/components/ui/button/button.svelte25
1 files changed, 25 insertions, 0 deletions
diff --git a/code/frontend/src/components/ui/button/button.svelte b/code/frontend/src/components/ui/button/button.svelte
new file mode 100644
index 0000000..196ae77
--- /dev/null
+++ b/code/frontend/src/components/ui/button/button.svelte
@@ -0,0 +1,25 @@
+<script lang="ts">
+ import { Button as ButtonPrimitive } from 'bits-ui'
+ import { type Events, type Props, buttonVariants } from './index.js'
+ import { cn } from '$utils/ui.js'
+
+ type $$Props = Props
+ type $$Events = Events
+
+ let className: $$Props['class'] = undefined
+ export let variant: $$Props['variant'] = 'default'
+ export let size: $$Props['size'] = 'default'
+ export let builders: $$Props['builders'] = []
+ export { className as class }
+</script>
+
+<ButtonPrimitive.Root
+ {builders}
+ class={cn(buttonVariants({ variant, size, className }))}
+ type="button"
+ {...$$restProps}
+ on:click
+ on:keydown
+>
+ <slot />
+</ButtonPrimitive.Root>