aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/shadcn/components
diff options
context:
space:
mode:
authorMurillo Pinheiro de Oliveira <[email protected]>2024-02-06 23:41:43 -0300
committerMurillo Pinheiro de Oliveira <[email protected]>2024-02-06 23:41:43 -0300
commita02ea8e85d789d5acca9922b61222233bbc09ec6 (patch)
treee89f53936e861bf50e8a7503c75723778570b538 /src/lib/shadcn/components
parent7e33d06f2952f64815d8c7669f0f057cde20d280 (diff)
downloadcoinos-ui-a02ea8e85d789d5acca9922b61222233bbc09ec6.tar.gz
coinos-ui-a02ea8e85d789d5acca9922b61222233bbc09ec6.zip
layout fixes
Diffstat (limited to 'src/lib/shadcn/components')
-rw-r--r--src/lib/shadcn/components/ui/accordion/accordion-content.svelte22
-rw-r--r--src/lib/shadcn/components/ui/accordion/accordion-item.svelte11
-rw-r--r--src/lib/shadcn/components/ui/accordion/accordion-trigger.svelte22
-rw-r--r--src/lib/shadcn/components/ui/accordion/index.js16
-rw-r--r--src/lib/shadcn/components/ui/separator/index.js6
-rw-r--r--src/lib/shadcn/components/ui/separator/separator.svelte19
6 files changed, 96 insertions, 0 deletions
diff --git a/src/lib/shadcn/components/ui/accordion/accordion-content.svelte b/src/lib/shadcn/components/ui/accordion/accordion-content.svelte
new file mode 100644
index 00000000..14328e88
--- /dev/null
+++ b/src/lib/shadcn/components/ui/accordion/accordion-content.svelte
@@ -0,0 +1,22 @@
+<script>
+ import { Accordion as AccordionPrimitive } from "bits-ui";
+ import { cn } from "$lib/shadcn/utils";
+ import { slide } from "svelte/transition";
+ let className = undefined;
+ export let transition = slide;
+ export let transitionConfig = {
+ duration: 200,
+ };
+ export { className as class };
+</script>
+
+<AccordionPrimitive.Content
+ class={cn("overflow-hidden text-sm transition-all", className)}
+ {transition}
+ {transitionConfig}
+ {...$$restProps}
+>
+ <div class="pb-4 pt-0">
+ <slot />
+ </div>
+</AccordionPrimitive.Content>
diff --git a/src/lib/shadcn/components/ui/accordion/accordion-item.svelte b/src/lib/shadcn/components/ui/accordion/accordion-item.svelte
new file mode 100644
index 00000000..b0887d7e
--- /dev/null
+++ b/src/lib/shadcn/components/ui/accordion/accordion-item.svelte
@@ -0,0 +1,11 @@
+<script>
+ import { Accordion as AccordionPrimitive } from "bits-ui";
+ import { cn } from "$lib/shadcn/utils";
+ let className = undefined;
+ export let value;
+ export { className as class };
+</script>
+
+<AccordionPrimitive.Item {value} class={cn("border-b", className)} {...$$restProps}>
+ <slot />
+</AccordionPrimitive.Item>
diff --git a/src/lib/shadcn/components/ui/accordion/accordion-trigger.svelte b/src/lib/shadcn/components/ui/accordion/accordion-trigger.svelte
new file mode 100644
index 00000000..8acf4675
--- /dev/null
+++ b/src/lib/shadcn/components/ui/accordion/accordion-trigger.svelte
@@ -0,0 +1,22 @@
+<script>
+ import { Accordion as AccordionPrimitive } from "bits-ui";
+ import { ChevronDown } from "lucide-svelte";
+ import { cn } from "$lib/shadcn/utils";
+ let className = undefined;
+ export let level = 3;
+ export { className as class };
+</script>
+
+<AccordionPrimitive.Header {level} class="flex">
+ <AccordionPrimitive.Trigger
+ class={cn(
+ "flex flex-1 items-center justify-between py-2 font-medium transition-all [&[data-state=open]>svg]:rotate-180",
+ className
+ )}
+ {...$$restProps}
+ on:click
+ >
+ <slot />
+ <ChevronDown class="h-4 w-4 transition-transform duration-200" />
+ </AccordionPrimitive.Trigger>
+</AccordionPrimitive.Header>
diff --git a/src/lib/shadcn/components/ui/accordion/index.js b/src/lib/shadcn/components/ui/accordion/index.js
new file mode 100644
index 00000000..d75ea273
--- /dev/null
+++ b/src/lib/shadcn/components/ui/accordion/index.js
@@ -0,0 +1,16 @@
+import { Accordion as AccordionPrimitive } from "bits-ui";
+import Content from "./accordion-content.svelte";
+import Item from "./accordion-item.svelte";
+import Trigger from "./accordion-trigger.svelte";
+const Root = AccordionPrimitive.Root;
+export {
+ Root,
+ Content,
+ Item,
+ Trigger,
+ //
+ Root as Accordion,
+ Content as AccordionContent,
+ Item as AccordionItem,
+ Trigger as AccordionTrigger,
+};
diff --git a/src/lib/shadcn/components/ui/separator/index.js b/src/lib/shadcn/components/ui/separator/index.js
new file mode 100644
index 00000000..073c5c4c
--- /dev/null
+++ b/src/lib/shadcn/components/ui/separator/index.js
@@ -0,0 +1,6 @@
+import Root from "./separator.svelte";
+export {
+ Root,
+ //
+ Root as Separator,
+};
diff --git a/src/lib/shadcn/components/ui/separator/separator.svelte b/src/lib/shadcn/components/ui/separator/separator.svelte
new file mode 100644
index 00000000..b07c93ea
--- /dev/null
+++ b/src/lib/shadcn/components/ui/separator/separator.svelte
@@ -0,0 +1,19 @@
+<script>
+ import { Separator as SeparatorPrimitive } from "bits-ui";
+ import { cn } from "$lib/shadcn/utils";
+ let className = undefined;
+ export let orientation = "horizontal";
+ export let decorative = undefined;
+ export { className as class };
+</script>
+
+<SeparatorPrimitive.Root
+ class={cn(
+ "shrink-0 bg-border",
+ orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
+ className
+ )}
+ {orientation}
+ {decorative}
+ {...$$restProps}
+/>