aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/qr/create
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2024-11-07 21:16:25 -0800
committerAdam Soltys <[email protected]>2024-11-08 09:27:40 -0800
commit32fcc461cd43c8907df5e306d520bb671307eab1 (patch)
tree0253780c569998b6c1a5f43026586e94916c3fee /src/routes/(app)/qr/create
parentbe5aa52cea1d57c875cfb22d25c6a866b8de2239 (diff)
downloadcoinos-ui-32fcc461cd43c8907df5e306d520bb671307eab1.tar.gz
coinos-ui-32fcc461cd43c8907df5e306d520bb671307eab1.zip
svelte 5
Diffstat (limited to 'src/routes/(app)/qr/create')
-rw-r--r--src/routes/(app)/qr/create/+page.svelte18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/routes/(app)/qr/create/+page.svelte b/src/routes/(app)/qr/create/+page.svelte
index fd99a54b..74316ba9 100644
--- a/src/routes/(app)/qr/create/+page.svelte
+++ b/src/routes/(app)/qr/create/+page.svelte
@@ -1,9 +1,11 @@
<script>
+ import { run, preventDefault } from 'svelte/legacy';
+
import { goto } from "$app/navigation";
import { browser } from "$app/environment";
import { t } from "$lib/translations";
import Icon from "$comp/Icon.svelte";
- let el, text, pasted;
+ let el = $state(), text = $state(), pasted = $state();
let keypress = (e) =>
e.key === "Enter" ? e.preventDefault() || el.click() : (pasted = false);
@@ -15,7 +17,9 @@
let submit = () => goto(`/qr/${encodeURIComponent(text)}`);
- $: if (browser && pasted && text) el.click() && (pasted = false);
+ run(() => {
+ if (browser && pasted && text) el.click() && (pasted = false);
+ });
</script>
<div class="container px-4 max-w-lg mx-auto space-y-5 mt-20">
@@ -23,25 +27,25 @@
Create QR
</h1>
- <form on:submit|preventDefault={submit} class="space-y-2 text-xl">
+ <form onsubmit={preventDefault(submit)} class="space-y-2 text-xl">
<div class="mb-2">
<textarea
use:focus
name="text"
placeholder="Enter some text or a URL to put in a QR"
- on:keypress={keypress}
+ onkeypress={keypress}
class="w-full p-4 border rounded-xl h-32 text-xl"
bind:value={text}
- on:paste={() => (pasted = true)}
+ onpaste={() => (pasted = true)}
autocapitalize="none"
- />
+></textarea>
</div>
<div class="flex gap-2">
<button
type="button"
class="flex border rounded-2xl px-6 py-5 font-bold hover:opacity-80 w-full bg-primary justify-center gap-2"
- on:click={paste}
+ onclick={paste}
>
<Icon icon="paste" style="w-8 my-auto" />
<div class="my-auto">{$t("user.send.paste")}</div>