From 8354d9b81c4d736c61019b0558f1917a80610e42 Mon Sep 17 00:00:00 2001 From: Tiago Vasconcelos Date: Wed, 22 Jan 2025 10:16:14 +0000 Subject: [PATCH] show error if not valid amount can't actually prevent the input to deny letters --- lnbits/core/templates/core/wallet.html | 3 +++ lnbits/static/js/wallet.js | 11 +++++++++++ 2 files changed, 14 insertions(+) diff --git a/lnbits/core/templates/core/wallet.html b/lnbits/core/templates/core/wallet.html index ced8c8fc0..4375f0fbe 100644 --- a/lnbits/core/templates/core/wallet.html +++ b/lnbits/core/templates/core/wallet.html @@ -330,6 +330,7 @@ :min="receive.minMax[0]" :max="receive.minMax[1]" :readonly="receive.lnurl && receive.lnurl.fixed" + inputmode="numeric" > @@ -355,6 +356,8 @@ :min="receive.minMax[0]" :max="receive.minMax[1]" :readonly="receive.lnurl && receive.lnurl.fixed" + error-message="Not a valid amount" + :error="!isValid" >
diff --git a/lnbits/static/js/wallet.js b/lnbits/static/js/wallet.js index 08994364b..57553eed8 100644 --- a/lnbits/static/js/wallet.js +++ b/lnbits/static/js/wallet.js @@ -97,6 +97,17 @@ window.WalletPageLogic = { .formatCurrency(0, this.receive.unit) .replace(/[\d.\s]/g, '') .trim() + }, + isValid() { + if (!this.receive.data.amount) return true + return ( + this.receive.data.amount >= this.receive.minMax[0] && + this.receive.data.amount <= this.receive.minMax[1] && + !isNaN(this.receive.data.amount) && + this.receive.data.amount > 0 && + !isNaN(parseFloat(this.receive.data.amount)) && + /^\d*\.?\d*$/.test(this.receive.data.amount) + ) } }, methods: {