aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/send/lightning
diff options
context:
space:
mode:
authorsecondl1ght <[email protected]>2022-10-25 18:01:56 -0600
committersecondl1ght <[email protected]>2022-10-25 18:01:56 -0600
commita67b375473f1f40e1c0febfac16d7e36e0d72561 (patch)
tree10a5fa750f2ccb53cff3510ab8fbbce108a35eb6 /src/routes/send/lightning
parentaa6debcd83c0b4067e0f8ce9a11d9c9ac02476ad (diff)
parent5a5ea3ccc327ff52fb1c313998d90e4bfefea90a (diff)
downloadcoinos-ui-a67b375473f1f40e1c0febfac16d7e36e0d72561.tar.gz
coinos-ui-a67b375473f1f40e1c0febfac16d7e36e0d72561.zip
Merge branch 'master' of github.com:coinos/coinos-ui-v2
Diffstat (limited to 'src/routes/send/lightning')
-rw-r--r--src/routes/send/lightning/[payreq]/+page.server.js16
-rw-r--r--src/routes/send/lightning/[payreq]/+page.svelte14
2 files changed, 25 insertions, 5 deletions
diff --git a/src/routes/send/lightning/[payreq]/+page.server.js b/src/routes/send/lightning/[payreq]/+page.server.js
index f17d6a60..49ebac1c 100644
--- a/src/routes/send/lightning/[payreq]/+page.server.js
+++ b/src/routes/send/lightning/[payreq]/+page.server.js
@@ -7,14 +7,20 @@ export async function load({ params }) {
export const actions = {
default: async ({ cookies, request }) => {
- let body = Object.fromEntries(await request.formData());
- let { amount, confirmed } = body;
+ try {
+ let body = Object.fromEntries(await request.formData());
+ let { amount, confirmed } = body;
- if (!confirmed) {
- return invalid(403, { amount, confirm: true });
+ if (!confirmed) {
+ return invalid(403, { amount, confirm: true });
+ }
+
+ await post('/lightning/send', body, auth(cookies));
+ } catch (e) {
+ if (e.message.includes("unusable")) e.message = "Failed to route payment, try sending a lower amount"
+ return invalid(400, { message: e.message });
}
- await post('/lightning/send', body, auth(cookies));
throw redirect(307, '/sent');
}
};
diff --git a/src/routes/send/lightning/[payreq]/+page.svelte b/src/routes/send/lightning/[payreq]/+page.svelte
index 973550f6..bda10038 100644
--- a/src/routes/send/lightning/[payreq]/+page.svelte
+++ b/src/routes/send/lightning/[payreq]/+page.svelte
@@ -3,6 +3,8 @@
import { Icon, Numpad, Spinner } from '$comp';
import { page } from '$app/stores';
import { back, s } from '$lib/utils';
+ import { pin } from '$lib/store';
+
export let data;
export let form;
@@ -14,12 +16,23 @@
let loading;
let submit = () => (loading = true);
+ $: update(form);
+ let update = () => {
+ if (form?.message.includes('pin')) $pin = undefined;
+ loading = false;
+ };
</script>
<button class="ml-5 md:ml-20 mt-5 md:mt-10 hover:opacity-80" on:click={back}>
<Icon icon="arrow-left" style="w-10" />
</button>
+{#if form?.message}
+ <div class="text-red-600 text-center">
+ {form.message}
+ </div>
+{/if}
+
<div class="container px-4 mt-20 max-w-xl mx-auto">
{#if amount}
<div class="text-center mb-8">
@@ -38,6 +51,7 @@
<input name="payreq" value={payreq} type="hidden" />
<input name="amount" value={amount} type="hidden" />
<input name="confirmed" value={form?.confirm} type="hidden" />
+ <input name="pin" value={$pin} type="hidden" />
<div class="flex w-full">
<button