diff options
| author | Adam Soltys <[email protected]> | 2023-01-24 09:53:40 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-01-24 09:53:40 -0800 |
| commit | c8b250bc216b190e913fab27d599b40518d7e748 (patch) | |
| tree | 191e56d4d6671c9e24f7db9a7c268461a76bb11d /src/routes/(app)/send | |
| parent | 29ed3a4366eb9719d32dac390764bf119c40afff (diff) | |
| download | coinos-ui-c8b250bc216b190e913fab27d599b40518d7e748.tar.gz coinos-ui-c8b250bc216b190e913fab27d599b40518d7e748.zip | |
lnurl pay
Diffstat (limited to 'src/routes/(app)/send')
4 files changed, 36 insertions, 25 deletions
diff --git a/src/routes/(app)/send/[...text]/+page.server.js b/src/routes/(app)/send/[...text]/+page.server.js index f0c8b892..3cc9f73d 100644 --- a/src/routes/(app)/send/[...text]/+page.server.js +++ b/src/routes/(app)/send/[...text]/+page.server.js @@ -15,20 +15,17 @@ let parse = async (t, host) => { options: { amount } } = bip21.decode(t)); - // ln address if (t.includes('@') && t.includes('.')) { - let [name, domain] = t.split('@'); - if (domain === host) t = name; - else { - try { - t = await get(`/encode?domain=${domain}&name=${name}`); - } catch (e) {} - } + try { + t = await get(`/encode?address=${t}`); + } catch (e) {} } - if (t.includes('/voucher')) throw redirect(307, t.substring(t.indexOf('/voucher'))); + if (t.includes('/pot')) throw redirect(307, t.substring(t.indexOf('/pot'))); + console.log('LNURL?'); if (t.toLowerCase().startsWith('lnurl')) throw redirect(307, `/ln/${t}`); + console.log('NOPE'); if (t.includes(':')) t = t.split(':')[1]; // lightning diff --git a/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.server.js b/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.server.js index 066043e7..901d90a8 100644 --- a/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.server.js +++ b/src/routes/(app)/send/bitcoin/[address]/[...amount]/+page.server.js @@ -4,9 +4,13 @@ import { auth, post } from '$lib/utils'; export const actions = { default: async ({ cookies, request }) => { try { - let feeRate, subtract; + let feeRate, subtract; let { address, amount, pin } = Object.fromEntries(await request.formData()); - let { tx } = await post('/bitcoin/fee', { address, amount, feeRate, subtract }, auth(cookies)); + let { tx } = await post( + '/bitcoin/fee', + { address, amount, feeRate, subtract }, + auth(cookies) + ); await post('/bitcoin/send', { pin, tx }, auth(cookies)); } catch (e) { return invalid(400, { message: e.message }); diff --git a/src/routes/(app)/send/lightning/[payreq]/+page.server.js b/src/routes/(app)/send/lightning/[payreq]/+page.server.js index a72e1c07..def7651c 100644 --- a/src/routes/(app)/send/lightning/[payreq]/+page.server.js +++ b/src/routes/(app)/send/lightning/[payreq]/+page.server.js @@ -15,7 +15,7 @@ export const actions = { let body = Object.fromEntries(await request.formData()); let { amount, confirmed } = body; - console.log("AMOUNT", amount); + console.log('AMOUNT', amount); if (!confirmed) { return invalid(403, { amount, confirm: true }); diff --git a/src/routes/(app)/send/lightning/[payreq]/+page.svelte b/src/routes/(app)/send/lightning/[payreq]/+page.svelte index 76ab432f..a88a0aec 100644 --- a/src/routes/(app)/send/lightning/[payreq]/+page.svelte +++ b/src/routes/(app)/send/lightning/[payreq]/+page.svelte @@ -24,6 +24,9 @@ if (form?.message?.includes('pin')) $pin = undefined; loading = false; }; + + let show; + let toggle = () => (show = !show); </script> <button class="ml-5 md:ml-20 mt-5 md:mt-10 hover:opacity-80" on:click={back}> @@ -41,10 +44,10 @@ <div class="text-center mb-8"> <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('payments.send')}</h1> <p class="text-6xl break-words mb-4"> - {s(amount)} <span class="text-xl md:text-2xl text-secondary">sats</span> + ⚡️{s(amount)} </p> <h1 class="text-xl md:text-2xl text-secondary mb-2">{$t('payments.to')}</h1> - <p class="text-6xl break-words">{alias}</p> + <p class="text-4xl break-words">{alias}</p> </div> <form method="POST" use:enhance on:submit={submit} action="?/send" class="space-y-5"> @@ -52,17 +55,7 @@ <input name="amount" value={amount} type="hidden" /> <input name="confirmed" value={form?.confirm} type="hidden" /> <input name="pin" value={$pin} type="hidden" /> - - <div class="relative w-96 mx-auto"> - <label>Max fee</label> - <input name="maxfee" value={maxfee} /> - - <div - class="absolute right-[2px] top-[25px] text-gray-600 rounded-r-2xl p-4 h-[54px] my-auto border-l " - > - sats - </div> - </div> + <input name="maxfee" value={maxfee} type="hidden" /> <div class="flex w-full"> <button @@ -78,6 +71,23 @@ </button> </div> </form> + + {#if show} + <div class="relative w-96 mx-auto"> + <label>Max fee</label> + <input name="maxfee" value={maxfee} /> + + <div + class="absolute right-[2px] top-[25px] text-gray-600 rounded-r-2xl p-4 h-[54px] my-auto border-l " + > + ⚡️ + </div> + </div> + {:else} + <div class="flex w-full mt-5"> + <button class="mx-auto" on:click={toggle}>Settings</button> + </div> + {/if} {:else} <form method="POST" action="?/setAmount" class="w-[300px] mx-auto"> <input type="hidden" value={a} name="amount" /> |
