diff options
| author | Adam Soltys <[email protected]> | 2024-11-08 15:19:04 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2024-11-08 15:19:04 -0800 |
| commit | 84fb4b209a2650b2a93f3208ee9a23a44d8283c7 (patch) | |
| tree | 8687566bd8eac12de99439d448773d8ce5dc34b4 /src/components/Numpad.svelte | |
| parent | 32fcc461cd43c8907df5e306d520bb671307eab1 (diff) | |
| download | coinos-ui-84fb4b209a2650b2a93f3208ee9a23a44d8283c7.tar.gz coinos-ui-84fb4b209a2650b2a93f3208ee9a23a44d8283c7.zip | |
svelte 5 fixups
Diffstat (limited to 'src/components/Numpad.svelte')
| -rw-r--r-- | src/components/Numpad.svelte | 55 |
1 files changed, 19 insertions, 36 deletions
diff --git a/src/components/Numpad.svelte b/src/components/Numpad.svelte index 03c7c48f..07d1ef4c 100644 --- a/src/components/Numpad.svelte +++ b/src/components/Numpad.svelte @@ -1,33 +1,21 @@ -<script lang="ts"> - import { run, preventDefault, stopPropagation } from "svelte/legacy"; - +<script> import Left from "$comp/Left.svelte"; import Icon from "$comp/Icon.svelte"; import { f, s, focus, warning, sat, sats } from "$lib/utils"; import { t } from "$lib/translations"; - interface Props { - amount: any; - currency: any; - element: any; - fiat?: any; - rate: any; - submit?: any; - amountFiat?: number; - } - - let { - amount = $bindable(), + export let amount, currency, - element = $bindable(), - fiat = $bindable(!amount), - rate = $bindable(), - submit = undefined, - amountFiat = $bindable(0), - }: Props = $props(); + element, + fiat = !amount, + rate, + submit = undefined; + + export let amountFiat = 0; let arrow = "<"; + $: update(amount, amountFiat); let update = (a, f) => { if (fiat) { amount = Math.round(f / (rate / sats)); @@ -114,6 +102,8 @@ } }; + $: html = fiat ? amountFiat : s(amount); + let prev = ""; let input = (e) => { @@ -203,13 +193,6 @@ } fiat = !fiat; }; - run(() => { - update(amount, amountFiat); - }); - let html; - run(() => { - html = fiat ? amountFiat : s(amount); - }); </script> <div class="flex justify-center items-center"> @@ -225,17 +208,17 @@ use:focus contenteditable bind:innerHTML={html} - onfocus={select} - onblur={blur} - oninput={input} - onkeydown={keydown} + on:focus={select} + on:blur={blur} + on:input={input} + on:keydown={keydown} class="outline-none my-auto" bind:this={element} - ></div> + /> </div> <div class="flex items-center justify-center text-2xl cursor-pointer" - onclick={stopPropagation(preventDefault(swap))} + on:click|preventDefault|stopPropagation={swap} > {fiat ? "⚡️" + s(amount) : f(amountFiat, currency)} </div> @@ -247,7 +230,7 @@ <button type="button" class="btn" - onclick={stopPropagation(preventDefault(() => handleInput(value)))} + on:click|preventDefault|stopPropagation={() => handleInput(value)} > <Left /> </button> @@ -255,7 +238,7 @@ <button type="button" class="btn" - onclick={stopPropagation(preventDefault(() => handleInput(value)))} + on:click|preventDefault|stopPropagation={() => handleInput(value)} >{value}</button > {/if} |
