Skip to content

Update ALL ${ } usages across the file + feature requests 14, 25 & 26#27

Open
DoktorShift wants to merge 14 commits into
lnbits:mainfrom
DoktorShift:working_on_fr
Open

Update ALL ${ } usages across the file + feature requests 14, 25 & 26#27
DoktorShift wants to merge 14 commits into
lnbits:mainfrom
DoktorShift:working_on_fr

Conversation

@DoktorShift
Copy link
Copy Markdown

  1. Did a refactor to update ALL ${ } usages across the file to use v-text and remove delimiters entirely.

  2. [Bug] Should display all connections by default #14 Default select the first Wallet when opening the extension

Bildschirmfoto 2026-01-14 um 18 00 54
  1. Feature: Include lightning address in NWC connection string if the wallet has a receive paylink #25 Added lud16 to nwc string and table
Bildschirmfoto 2026-01-14 um 18 00 03 Bildschirmfoto 2026-01-14 um 18 00 14 Bildschirmfoto 2026-01-14 um 17 59 15
  1. Feature: Include comment/payment note for payments received #26 added comment/memo/description

if a payer sends an LNURL comment (like "Thanks for the coffee!"), it will appear as the description in list_transactions. If no comment exists, it falls back to the payment memo, then to the BOLT11 invoice description.
instead of taking the name of receive wallet.

Copy link
Copy Markdown

@talvasconcelos talvasconcelos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

still some linting issues

Comment thread views_api.py Outdated

try:
# Import lnurlp crud - may not be installed
from lnbits.extensions.lnurlp.crud import get_pay_links # type: ignore
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

import at the top of the file

inside the try/except

return if get_pay_links is undefined, on the endpoint!

@DoktorShift
Copy link
Copy Markdown
Author

#14

Updated behaviour for mentioned Issue.

  1. New Selector "All Wallets". Shows on default all wallets with all connections. Wallet Name Clickable with forward.
Bildschirmfoto 2026-02-03 um 17 37 19
  1. Wallet Selector shows small pill with amount of connections
Bildschirmfoto 2026-02-03 um 17 42 38
  1. Empty Screen with CTA for creating a connection
  2. Info Modal updated with less confusing information
Bildschirmfoto 2026-02-03 um 17 44 50

@blackcoffeexbt
Copy link
Copy Markdown

A few points from me:
Could you change text strings:

  • "Connect only with app you trust!" to "Connect only an with app that you trust!"
  • "Limit the spendable amount" to "Set a spending limit"
  • "Authorize the app to" to "Authorize the connected app to"

What is the "lightning address" field for?
Could you add a line below the lightning address field explaining its purpose?

The pairing URL now encodes the relay with quote(), but the test
NWCWallet client was using the encoded value directly to connect,
causing 'scheme isn't ws or wss' errors.
Comment thread views_api.py Outdated
from .permission import nwc_permissions

try:
from lnbits.extensions.lnurlp.crud import ( # type: ignore[import-not-found]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we do not do imports between extensions, only calls via the API

@DoktorShift DoktorShift requested a review from motorina0 May 12, 2026 13:38
Comment thread static/js/index.js
return lud16 && lud16.trim() ? lud16.trim() : null
},
async showPairingDialog(secret, lud16) {
let url = `/nwcprovider/api/v1/pairing/${secret}`
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The previous code used the placeholder {SECRET} with client-side replacement to avoid sending the secret to the server, this is changing that, unless it is a required change, I'd suggest reverting to the old behavior

Comment thread crud.py
permissions=" ".join(data.permissions),
created_at=int(time.time()),
last_used=int(time.time()),
lud16=data.lud16,
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should add some validation for lud16

Comment thread poetry.lock
@@ -1,4072 +0,0 @@
# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't think this should be deleted

@bitcoin3us
Copy link
Copy Markdown

👍 — the lud16 piece (per #25) is the missing bit that unblocks Lightning Piggy (ESP32 NWC display wallet) from rendering a persistent receive QR. Without it the client has to fall back to a manually-typed override field.

Happy to give the merged change a real-device test against an LNBits instance running nwcprovider. Anything blocking review on the maintainer side, or just waiting for cycles?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants