From 0825788e86809f10bb83d664084328dff0b47146 Mon Sep 17 00:00:00 2001
From: ivarlovlie <git@ivarlovlie.no>
Date: Sat, 15 Oct 2022 16:40:01 +0800
Subject: feat: Add combobox and textarea

---
 code/app/src/routes/book/inputs/+page.svelte | 57 +++++++++++++++++++---------
 1 file changed, 39 insertions(+), 18 deletions(-)

(limited to 'code/app/src/routes/book/inputs/+page.svelte')

diff --git a/code/app/src/routes/book/inputs/+page.svelte b/code/app/src/routes/book/inputs/+page.svelte
index a693f69..e4d19ff 100644
--- a/code/app/src/routes/book/inputs/+page.svelte
+++ b/code/app/src/routes/book/inputs/+page.svelte
@@ -1,48 +1,69 @@
 <script lang="ts">
-    import Input from "$lib/components/input.svelte";
+    import { TextArea, Input, Combobox } from "$lib/components";
     import { DatabaseIcon } from "$lib/components/icons";
+
+    let value;
+    let i = 0;
+    let options = [];
+    let tempOptions = [];
+    while (i < 101) {
+        tempOptions.push({
+            id: crypto.randomUUID(),
+            name: "Option " + i,
+        });
+        options = tempOptions;
+        i++;
+    }
+
+    async function add({ name }) {
+        const copy = options;
+        copy.push({
+            id: crypto.randomUUID(),
+            name: name,
+        });
+        options = copy;
+    }
 </script>
 
+<section>
+    <h2>Combobox</h2>
+    <Combobox {options} label="Wiii" multiple createable on_create_async={add} />
+</section>
+
 <section>
     <h2>Default</h2>
-    <Input label="Input me" placeholder="Hello" />
+    <Input label="Input me" placeholder="Hello" bind:value />
 </section>
 
 <section>
     <h2>With icon</h2>
-    <Input label="Input me" placeholder="Hello" icon={DatabaseIcon} />
+    <Input label="Input me" placeholder="Hello" icon={DatabaseIcon} bind:value />
 </section>
 
 <section>
     <h2>With corner hint</h2>
-    <Input label="Input me ->" placeholder="Hello" cornerHint="Hint hint" />
+    <Input label="Input me ->" placeholder="Hello" cornerHint="Hint hint" bind:value />
 </section>
 
 <section>
     <h2>Disabled</h2>
-    <Input label="No" placeholder="Sorry" disabled />
+    <Input label="No" placeholder="Sorry" disabled bind:value />
 </section>
 
 <section>
     <h2>Errored</h2>
-    <Input
-        label="No"
-        placeholder="Sorry"
-        errorText="That's not right"
-        icon={DatabaseIcon}
-    />
+    <Input label="No" placeholder="Sorry" errorText="That's not right" bind:value icon={DatabaseIcon} />
 </section>
 
 <section>
     <h2>Help</h2>
-    <Input label="Go ahead" placeholder="Write here" helpText="Write above" />
+    <Input label="Go ahead" placeholder="Write here" helpText="Write above" bind:value />
 </section>
 <section>
     <h2>Addon</h2>
-    <Input
-        label="Go ahead"
-        placeholder="Write here"
-        helpText="Write above"
-        addon="To the right"
-    />
+    <Input label="Go ahead" placeholder="Write here" bind:value helpText="Write above" addon="To the right" />
+</section>
+<section>
+    <h2>Textarea</h2>
+    <TextArea bind:value errorText="oh no" label="Hi" />
 </section>
-- 
cgit v1.3

