diff options
| -rw-r--r-- | src/routes/send/[...text]/+page.server.js | 6 | ||||
| -rw-r--r-- | src/routes/send/user/[username]/[...amount]/+page.server.js (renamed from src/routes/send/user/[username]/+page.server.js) | 3 | ||||
| -rw-r--r-- | src/routes/send/user/[username]/[...amount]/+page.svelte (renamed from src/routes/send/user/[username]/+page.svelte) | 14 |
3 files changed, 14 insertions, 9 deletions
diff --git a/src/routes/send/[...text]/+page.server.js b/src/routes/send/[...text]/+page.server.js index 6e1fd188..58a0b9f1 100644 --- a/src/routes/send/[...text]/+page.server.js +++ b/src/routes/send/[...text]/+page.server.js @@ -11,12 +11,14 @@ let parse = async (t) => { if (t.startsWith('ln')) { try { ({ user } = await get(`/invoice/${t}`)); - console.log("USER", user.username); } catch (e) { throw redirect(303, `/send/lightning/${t}`); } - if (user) throw redirect(303, `/send/user/${user.username}`); + if (user) { + let { amount } = await post('/lightning/parse', params); + throw redirect(303, `/send/user/${user.username}/amount`); + } } // bitcoin diff --git a/src/routes/send/user/[username]/+page.server.js b/src/routes/send/user/[username]/[...amount]/+page.server.js index 37a8d594..d878fe2f 100644 --- a/src/routes/send/user/[username]/+page.server.js +++ b/src/routes/send/user/[username]/[...amount]/+page.server.js @@ -3,9 +3,10 @@ import { btc as asset, auth, get, post } from '$lib/utils'; export async function load({ params, parent }) { let { user } = await parent(); + let { amount } = params; let recipient = await get(`/users/${params.username}`); if (recipient.username === user.username) throw error(500, { message: 'Cannot send to self' }); - return { recipient }; + return { amount, recipient }; } export const actions = { diff --git a/src/routes/send/user/[username]/+page.svelte b/src/routes/send/user/[username]/[...amount]/+page.svelte index ed6a9f17..21460342 100644 --- a/src/routes/send/user/[username]/+page.svelte +++ b/src/routes/send/user/[username]/[...amount]/+page.svelte @@ -1,4 +1,5 @@ <script> + import { goto } from "$app/navigation"; import { selectedRate } from '$lib/store'; import { enhance } from '$app/forms'; import { Icon, Numpad, Spinner } from '$comp'; @@ -13,18 +14,19 @@ let amount = form?.amount || data.amount; let a, af, - amountFiat, - fiat = true; + amountFiat = amount * ($selectedRate / sats), + fiat = !amount; let setAmount = () => { - console.log('setting', a, af); amount = a; amountFiat = af; }; let handleBack = () => { - if (amount) amount = undefined; - else back(); + if (amount) { + amount = undefined; + goto(`/send/user/${recipient.username}`); + } else back(); }; let loading; @@ -40,7 +42,7 @@ <div class="text-center mb-8"> <h1 class="text-xl md:text-2xl text-secondary mb-2">Send</h1> <p class="text-6xl break-words mb-4"> - {fiat ? f(amountFiat, currency) : s(a)} + {fiat ? f(amountFiat, currency) : s(amount)} {#if !fiat} <span class="text-xl md:text-2xl text-secondary">sats</span> {/if} |
