From 8584957a9b6eb3b9edcd05fd537d493ecc5cc899 Mon Sep 17 00:00:00 2001 From: aftermath2 Date: Sat, 1 Apr 2023 12:00:00 +0000 Subject: [PATCH] Support prefixed invoices --- .../TradeBox/Forms/LightningPayout.tsx | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/TradeBox/Forms/LightningPayout.tsx b/frontend/src/components/TradeBox/Forms/LightningPayout.tsx index c8853f02..01423afc 100644 --- a/frontend/src/components/TradeBox/Forms/LightningPayout.tsx +++ b/frontend/src/components/TradeBox/Forms/LightningPayout.tsx @@ -34,7 +34,11 @@ import { systemClient } from '../../../services/System'; import lnproxies from '../../../../static/lnproxies.json'; import { type UseAppStoreType, AppContext } from '../../../contexts/AppContext'; + let filteredProxies: Array> = []; + +const lightningPrefix: string = 'lightning:'; + export interface LightningForm { invoice: string; amount: number; @@ -132,18 +136,26 @@ export const LightningPayoutForm = ({ useEffect(() => { if (lightning.invoice !== '') { + const invoice = lightning.invoice.startsWith(lightningPrefix) ? + lightning.invoice.slice(lightningPrefix.length) : lightning.invoice; + setLightning({ ...lightning, - badInvoice: validateInvoice(lightning.invoice, lightning.amount), + invoice: invoice, + badInvoice: validateInvoice(invoice, lightning.amount), }); } }, [lightning.invoice, lightning.amount]); useEffect(() => { if (lightning.lnproxyInvoice !== '') { + const invoice = lightning.lnproxyInvoice.startsWith(lightningPrefix) ? + lightning.lnproxyInvoice.slice(lightningPrefix.length) : lightning.lnproxyInvoice; + setLightning({ ...lightning, - badLnproxy: validateInvoice(lightning.lnproxyInvoice, lightning.lnproxyAmount), + lnproxyInvoice: invoice, + badLnproxy: validateInvoice(invoice, lightning.lnproxyAmount), }); } }, [lightning.lnproxyInvoice, lightning.lnproxyAmount]);