mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 07:52:24 +00:00
Include LNURL hint in NWC zap payments
This commit is contained in:
1 parent
be6162f5cd
commit
18ffde2147
3 files changed
+16
-3
No files matched your search
@@ -1083,7 +1083,7 @@ function sanitizeAmount(amount) {
|
||||
return Math.max(0, rounded);
|
||||
}
|
||||
|
||||
function buildPayInvoiceParams({ invoice, amountSats, zapRequest }) {
|
||||
function buildPayInvoiceParams({ invoice, amountSats, zapRequest, lnurl }) {
|
||||
const params = { invoice };
|
||||
|
||||
const amount = sanitizeAmount(amountSats);
|
||||
@@ -1095,13 +1095,23 @@ function buildPayInvoiceParams({ invoice, amountSats, zapRequest }) {
|
||||
params.zap_request = zapRequest;
|
||||
}
|
||||
|
||||
if (typeof lnurl === "string") {
|
||||
const trimmed = lnurl.trim();
|
||||
if (trimmed) {
|
||||
params.lnurl = trimmed;
|
||||
}
|
||||
}
|
||||
|
||||
return params;
|
||||
}
|
||||
|
||||
export async function sendPayment(bolt11, { settings, amountSats, zapRequest, timeoutMs } = {}) {
|
||||
export async function sendPayment(
|
||||
bolt11,
|
||||
{ settings, amountSats, zapRequest, lnurl, timeoutMs } = {}
|
||||
) {
|
||||
const context = await ensureWallet({ settings });
|
||||
const invoice = sanitizeInvoice(bolt11);
|
||||
const params = buildPayInvoiceParams({ invoice, amountSats, zapRequest });
|
||||
const params = buildPayInvoiceParams({ invoice, amountSats, zapRequest, lnurl });
|
||||
const payload = {
|
||||
id: `req-${Date.now()}-${++requestCounter}`,
|
||||
method: "pay_invoice",
|
||||
|
||||
@@ -370,6 +370,7 @@ async function processShare({
|
||||
const payment = await deps.wallet.sendPayment(invoice.invoice, {
|
||||
amountSats,
|
||||
zapRequest,
|
||||
lnurl: resolved.url,
|
||||
});
|
||||
|
||||
return {
|
||||
|
||||
@@ -13,11 +13,13 @@ await (async () => {
|
||||
invoice: "bolt11-invoice",
|
||||
amountSats: 123,
|
||||
zapRequest: "zap-request-json",
|
||||
lnurl: " https://pay.example/lnurlp/test ",
|
||||
});
|
||||
|
||||
assert.equal(params.invoice, "bolt11-invoice");
|
||||
assert.equal(params.amount, 123_000);
|
||||
assert.equal(params.zap_request, "zap-request-json");
|
||||
assert.equal(params.lnurl, "https://pay.example/lnurlp/test");
|
||||
})();
|
||||
|
||||
await (async () => {
|
||||
|
||||
Reference in new issue
Block a user