lnbits-legend/lnbits
Vlad Stan d72cf40439
[feat] Pay to enable extension (#2516)
* feat: add payment tab

* feat: add buttons

* feat: persist `pay to enable` changes

* fix: do not disable extension on upgrade

* fix: show releases tab first

* feat: extract `enableExtension` logic

* refactor: rename routes

* feat: show dialog for paying extension

* feat: create invoice to enable

* refactor: extract enable/disable extension logic

* feat: add extra info to UserExtensions

* feat: check payment for extension enable

* fix: parsing

* feat: admins must not pay

* fix: code checks

* fix: test

* refactor: extract extension activate/deactivate to the `api` side

* feat: add `get_user_extensions `

* feat: return explicit `requiresPayment`

* feat: add `isPaymentRequired` to extension list

* fix: `paid_to_enable` status

* fix: ui layout

* feat: show QR Code

* feat: wait for invoice to be paid

* test: removed deprecated test and dead code

* feat: add re-check button

* refactor: rename paths for endpoints

* feat: i18n

* feat: add `{"success": True}`

* test: fix listener

* fix: rebase errors

* chore: update bundle

* fix: return error status code for the HTML error pages

* fix: active extension loading from file system

* chore: temp commit

* fix: premature optimisation

* chore: make check

* refactor: remove extracted logic

* chore: code format

* fix: enable by default after install

* fix: use `discard` instead of `remove` for `set`

* chore: code format

* fix: better error code

* fix: check for stop function before invoking

* feat: check if the wallet belongs to the admin user

* refactor: return 402 Requires Payment

* chore: more typing

* chore: temp checkout different branch for tests

* fix: too much typing

* fix: remove try-except

* fix: typo

* fix: manual format

* fix: merge issue

* remove this line

---------

Co-authored-by: dni  <office@dnilabs.com>
2024-05-28 12:07:33 +01:00
..
core [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
nodes feat: adhere to ruff's B rules (#2423) 2024-04-17 13:11:51 +02:00
static [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
templates feat: usermanager (#2139) 2024-05-10 12:06:46 +02:00
utils refactor: move logger function from app.py to utils/logger.py (#2454) 2024-05-09 17:51:18 +01:00
wallets fix: add cln unspecified error code bolt11 error to errorcodes (#2503) 2024-05-16 09:59:54 +02:00
__init__.py refactor: clean up __init__ file following some Flask conventions 2020-09-06 21:06:01 -03:00
__main__.py overall fixes 2022-10-25 09:23:30 +02:00
app.py [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
bolt11.py adding bolt11 lib and removing bolt11.py from the codebase (#1817) 2023-09-25 12:06:54 +02:00
commands.py [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
db.py chore: adhere to ruff's UP 2024-04-15 13:38:04 +02:00
decorators.py [feat] Check payment tag (#2522) 2024-05-24 17:24:59 +03:00
exceptions.py [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
extension_manager.py [feat] Pay to enable extension (#2516) 2024-05-28 12:07:33 +01:00
helpers.py [fix] editable fields with default=None must be Optional (#2530) 2024-05-22 14:03:52 +01:00
jinja2_templating.py chore: update to latest fastapi (#2240) 2024-02-06 11:47:36 -03:00
lnurl.py feat: lnurl library update 2023-12-06 12:55:01 +01:00
middleware.py chore: adhere to ruff's RUF rules, 2nd try (#2420) 2024-04-17 07:36:22 +02:00
py.typed feat: add PEP561 marker for types (#2415) 2024-04-16 16:16:45 +02:00
requestvars.py I want them to turn black 2021-10-17 18:33:29 +01:00
server.py feat: remove magic argument parser from lnbits command (#2448) 2024-04-19 13:23:56 +02:00
settings.py [fix] editable fields with default=None must be Optional (#2530) 2024-05-22 14:03:52 +01:00
tasks.py [fix] editable fields with default=None must be Optional (#2530) 2024-05-22 14:03:52 +01:00