From 0f91147464ad2668632eb61098f21eaf54245417 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 22 Nov 2024 21:17:05 -0800 Subject: ecash post req --- src/lib/parse.ts | 1 - src/routes/(app)/ecash/post/+server.ts | 10 ++++++++ .../(app)/send/ecash/[request]/+page.server.ts | 13 +++++++--- src/routes/(app)/send/ecash/[request]/+page.svelte | 30 +++++++++++++--------- 4 files changed, 38 insertions(+), 16 deletions(-) create mode 100644 src/routes/(app)/ecash/post/+server.ts (limited to 'src') diff --git a/src/lib/parse.ts b/src/lib/parse.ts index 5082cc16..6483aaa0 100644 --- a/src/lib/parse.ts +++ b/src/lib/parse.ts @@ -65,7 +65,6 @@ export default async (s, host) => { redirect(307, `/ecash/${id}`); } - console.log("HI", t); if (t.startsWith("creq")) redirect(307, `/send/ecash/${t}`); // user diff --git a/src/routes/(app)/ecash/post/+server.ts b/src/routes/(app)/ecash/post/+server.ts new file mode 100644 index 00000000..0e5ae605 --- /dev/null +++ b/src/routes/(app)/ecash/post/+server.ts @@ -0,0 +1,10 @@ +import { json } from "@sveltejs/kit"; + +export async function POST({ fetch, request }) { + const { target, payload } = await request.json(); + const res = await fetch(target, { + method: "POST", + body: JSON.stringify(payload), + }); + return json(res); +} diff --git a/src/routes/(app)/send/ecash/[request]/+page.server.ts b/src/routes/(app)/send/ecash/[request]/+page.server.ts index 5ab3e9c0..6cc593cc 100644 --- a/src/routes/(app)/send/ecash/[request]/+page.server.ts +++ b/src/routes/(app)/send/ecash/[request]/+page.server.ts @@ -7,9 +7,16 @@ export async function load({ cookies, params, url }) { redirect(307, `/login?redirect=${encodeURIComponent(url.pathname)}`); const req = { ...decodePaymentRequest(params.request) }; - const { target } = req.transport[0]; - const recipient = await get(`/profile/${target}`); - return { req, recipient }; + const [{ target, type }] = req.transport; + + let recipient = { name: "", pubkey: null }; + if (type === "nostr") { + recipient = await get(`/profile/${target}`); + } else if (type === "post") { + recipient.name = new URL(target).hostname; + } + + return { req, recipient, type, target }; } export const actions = { diff --git a/src/routes/(app)/send/ecash/[request]/+page.svelte b/src/routes/(app)/send/ecash/[request]/+page.svelte index 2f58d78c..1f950de0 100644 --- a/src/routes/(app)/send/ecash/[request]/+page.svelte +++ b/src/routes/(app)/send/ecash/[request]/+page.svelte @@ -1,6 +1,6 @@