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 --- bun.lockb | Bin 186623 -> 186956 bytes package.json | 2 +- 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 ++++++++++++--------- 6 files changed, 39 insertions(+), 17 deletions(-) create mode 100644 src/routes/(app)/ecash/post/+server.ts diff --git a/bun.lockb b/bun.lockb index f42f489d..773d37b2 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index f152b00f..2208fcca 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "@capacitor/cli": "^6.0.0", "@capacitor/core": "^6.0.0", "@capacitor/ios": "^6.1.2", - "@cashu/cashu-ts": "^1.2.1", + "@cashu/cashu-ts": "^2.0.0-rc4", "@iconify/iconify": "^3.1.1", "@scure/base": "^1.1.8", "@scure/bip39": "^1.2.1", 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 @@