From 4f5617ca59141a8bf64e131a8b2e6d39aa9cab4c Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Sat, 16 Nov 2024 23:27:32 -0800 Subject: parse offers --- routes/payments.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'routes') diff --git a/routes/payments.ts b/routes/payments.ts index bf3f65c0..dfd9ad36 100644 --- a/routes/payments.ts +++ b/routes/payments.ts @@ -181,8 +181,16 @@ export default { await s("nodes", nodes); } - const decoded = await ln.decodepay(payreq); - const { amount_msat, payee } = decoded; + const decoded = await ln.decode(payreq); + + let amount_msat; + let payee; + + if (decoded.type.includes("bolt12")) { + ({ invoice_amount_msat: amount_msat, invoice_node_id: payee } = + decoded); + } else ({ amount_msat, payee } = decoded); + const node = nodes.find((n) => n.nodeid === payee); const alias = node ? node.alias : payee.substr(0, 12); @@ -194,6 +202,7 @@ export default { res.send({ alias, amount, ourfee }); } catch (e) { + err("problem parsing", e.message); bail(res, e.message); } }, @@ -538,4 +547,9 @@ export default { const { bolt11 } = req.params; res.send(await ln.decode(bolt11)); }, + + async offer(req, res) { + const { offer } = req.params; + res.send(await ln.fetchinvoice(offer)); + }, }; -- cgit v1.2.3