From cc3899a4fa8d0744777457d59fb4c9f3a2a37cd0 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 15 Jan 2025 12:45:04 -0800 Subject: sign page --- src/components/InvoiceTypes.svelte | 12 ++++++--- src/routes/(app)/[username]/receive/+page.svelte | 6 ++++- src/routes/(app)/sign/+page.server.ts | 19 ++++++++++++++ src/routes/(app)/sign/+page.svelte | 33 ++++++++++++++++++++++++ 4 files changed, 66 insertions(+), 4 deletions(-) create mode 100644 src/routes/(app)/sign/+page.server.ts create mode 100644 src/routes/(app)/sign/+page.svelte (limited to 'src') diff --git a/src/components/InvoiceTypes.svelte b/src/components/InvoiceTypes.svelte index b3367c90..c4d7fa77 100644 --- a/src/components/InvoiceTypes.svelte +++ b/src/components/InvoiceTypes.svelte @@ -1,6 +1,7 @@ @@ -16,7 +17,8 @@ class="bg-black rounded-full w-8 h-8 items-center justify-center flex" >
- @@ -61,7 +63,8 @@
@@ -74,7 +77,10 @@ >
-
diff --git a/src/routes/(app)/[username]/receive/+page.svelte b/src/routes/(app)/[username]/receive/+page.svelte index 9f3a3fd8..e02d6651 100644 --- a/src/routes/(app)/[username]/receive/+page.svelte +++ b/src/routes/(app)/[username]/receive/+page.svelte @@ -24,6 +24,7 @@ import SetMemo from "$comp/SetMemo.svelte"; import { t } from "$lib/translations"; import { goto, invalidate } from "$app/navigation"; + import { page } from "$app/stores"; let { data } = $props(); @@ -67,11 +68,12 @@ } }; - let setType = async (type) => { + let setType = async (type, address_type) => { $showQr = true; if (type === types.lightning && !amount) goto(`/${username}/receive`, { invalidateAll: true, noScroll: true }); else { + invoice.address_type = address_type; invoice.type = type; await update(); } @@ -118,6 +120,8 @@ onMount(() => { if ($amountPrompt && !amount) toggleAmount(); + let address_type = $page.url.searchParams.get("address_type"); + if (address_type) setType(types.bitcoin, address_type); }); diff --git a/src/routes/(app)/sign/+page.server.ts b/src/routes/(app)/sign/+page.server.ts new file mode 100644 index 00000000..c10f183c --- /dev/null +++ b/src/routes/(app)/sign/+page.server.ts @@ -0,0 +1,19 @@ +import { auth, fd, post, types } from "$lib/utils"; + +export async function load({ cookies }) { + const invoice = { + address_type: "legacy", + type: types.bitcoin, + }; + + const { text: address } = await post("/invoice", { invoice }, auth(cookies)); + + return { address }; +} + +export const actions = { + default: async ({ cookies, request }) => { + const body = await fd(request); + return post("/sign", body, auth(cookies)); + }, +}; diff --git a/src/routes/(app)/sign/+page.svelte b/src/routes/(app)/sign/+page.svelte new file mode 100644 index 00000000..819ba27c --- /dev/null +++ b/src/routes/(app)/sign/+page.svelte @@ -0,0 +1,33 @@ + + +
+

+ Sign message with address +

+ + {#if form} +
{signature}
+ + + {:else} +
{address}
+
+ + + +
+ {/if} +
-- cgit v1.2.3