mirror of
https://github.com/lnbits/lnbits.git
synced 2025-09-28 21:02:31 +02:00
feat: toggle holdinvoice depending on fundingsource Feature
(#3262)
This commit is contained in:
@@ -662,6 +662,7 @@
|
||||
></q-input>
|
||||
{% endif %}
|
||||
<q-input
|
||||
v-if="has_holdinvoice"
|
||||
filled
|
||||
dense
|
||||
v-model="receive.data.payment_hash"
|
||||
|
@@ -104,6 +104,7 @@ def template_renderer(additional_folders: Optional[list] = None) -> Jinja2Templa
|
||||
if settings.lnbits_denomination == "FakeWallet"
|
||||
else "sats"
|
||||
),
|
||||
"has_holdinvoice": settings.has_holdinvoice,
|
||||
}
|
||||
|
||||
t.env.globals["WINDOW_SETTINGS"] = window_settings
|
||||
|
@@ -987,6 +987,7 @@ class TransientSettings(InstalledExtensionsSettings, ExchangeHistorySettings):
|
||||
|
||||
server_startup_time: int = Field(default=time())
|
||||
|
||||
has_holdinvoice: bool = Field(default=False)
|
||||
has_nodemanager: bool = Field(default=False)
|
||||
|
||||
@property
|
||||
|
@@ -40,6 +40,7 @@ def set_funding_source(class_name: str | None = None) -> None:
|
||||
global funding_source
|
||||
funding_source = funding_source_constructor()
|
||||
settings.has_nodemanager = funding_source.has_feature(Feature.nodemanager)
|
||||
settings.has_holdinvoice = funding_source.has_feature(Feature.holdinvoice)
|
||||
|
||||
|
||||
def get_funding_source() -> Wallet:
|
||||
|
@@ -17,7 +17,7 @@ if TYPE_CHECKING:
|
||||
|
||||
class Feature(Enum):
|
||||
nodemanager = "nodemanager"
|
||||
# hold = "hold"
|
||||
holdinvoice = "holdinvoice"
|
||||
# bolt12 = "bolt12"
|
||||
|
||||
|
||||
|
@@ -19,6 +19,7 @@ from lnbits.utils.crypto import random_secret_and_hash
|
||||
from lnbits.wallets.lnd_grpc_files.router_pb2_grpc import RouterStub
|
||||
|
||||
from .base import (
|
||||
Feature,
|
||||
InvoiceResponse,
|
||||
PaymentFailedStatus,
|
||||
PaymentPendingStatus,
|
||||
@@ -64,6 +65,8 @@ environ["GRPC_SSL_CIPHER_SUITES"] = "HIGH+ECDSA"
|
||||
|
||||
|
||||
class LndWallet(Wallet):
|
||||
features = [Feature.holdinvoice]
|
||||
|
||||
def __init__(self):
|
||||
if not settings.lnd_grpc_endpoint:
|
||||
raise ValueError("cannot initialize LndWallet: missing lnd_grpc_endpoint")
|
||||
|
@@ -31,7 +31,7 @@ class LndRestWallet(Wallet):
|
||||
"""https://api.lightning.community/#lnd-rest-api-reference"""
|
||||
|
||||
__node_cls__ = LndRestNode
|
||||
features = [Feature.nodemanager]
|
||||
features = [Feature.nodemanager, Feature.holdinvoice]
|
||||
|
||||
def __init__(self):
|
||||
if not settings.lnd_rest_endpoint:
|
||||
|
Reference in New Issue
Block a user