add lnurl-pay and lightning address support
* bundles all payment identifiers into handle_payment_identifier * adds lnurl decoding * adds lightning address decoding
This commit is contained in:
@@ -18,7 +18,7 @@ from electrum.plugin import run_hook
|
||||
from electrum import util
|
||||
from electrum.util import (profiler, InvalidPassword, send_exception_to_crash_reporter,
|
||||
format_satoshis, format_satoshis_plain, format_fee_satoshis,
|
||||
maybe_extract_bolt11_invoice, parse_max_spend)
|
||||
maybe_extract_lightning_payment_identifier, parse_max_spend)
|
||||
from electrum.util import EventListener, event_listener
|
||||
from electrum.invoices import PR_PAID, PR_FAILED, Invoice
|
||||
from electrum import blockchain
|
||||
@@ -491,7 +491,7 @@ class ElectrumWindow(App, Logger, EventListener):
|
||||
if data.lower().startswith('channel_backup:'):
|
||||
self.import_channel_backup(data)
|
||||
return
|
||||
bolt11_invoice = maybe_extract_bolt11_invoice(data)
|
||||
bolt11_invoice = maybe_extract_lightning_payment_identifier(data)
|
||||
if bolt11_invoice is not None:
|
||||
self.set_ln_invoice(bolt11_invoice)
|
||||
return
|
||||
|
||||
@@ -16,7 +16,7 @@ from electrum.invoices import (PR_DEFAULT_EXPIRATION_WHEN_CREATING,
|
||||
pr_expiration_values, Invoice)
|
||||
from electrum import bitcoin, constants
|
||||
from electrum.transaction import tx_from_any, PartialTxOutput
|
||||
from electrum.util import (parse_URI, InvalidBitcoinURI, TxMinedInfo, maybe_extract_bolt11_invoice,
|
||||
from electrum.util import (parse_URI, InvalidBitcoinURI, TxMinedInfo, maybe_extract_lightning_payment_identifier,
|
||||
InvoiceError, format_time, parse_max_spend)
|
||||
from electrum.lnaddr import lndecode, LnInvoiceException
|
||||
from electrum.logging import Logger
|
||||
@@ -172,7 +172,7 @@ class SendScreen(CScreen, Logger):
|
||||
if not self.app.wallet:
|
||||
return
|
||||
# interpret as lighting URI
|
||||
bolt11_invoice = maybe_extract_bolt11_invoice(text)
|
||||
bolt11_invoice = maybe_extract_lightning_payment_identifier(text)
|
||||
if bolt11_invoice:
|
||||
self.set_ln_invoice(bolt11_invoice)
|
||||
# interpret as BIP21 URI
|
||||
@@ -287,7 +287,7 @@ class SendScreen(CScreen, Logger):
|
||||
self.app.tx_dialog(tx)
|
||||
return
|
||||
# try to decode as URI/address
|
||||
bolt11_invoice = maybe_extract_bolt11_invoice(data)
|
||||
bolt11_invoice = maybe_extract_lightning_payment_identifier(data)
|
||||
if bolt11_invoice is not None:
|
||||
self.set_ln_invoice(bolt11_invoice)
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user