diff --git a/lnbits/extensions/watchonly/static/components/payment/payment.js b/lnbits/extensions/watchonly/static/components/payment/payment.js
index 900eb7de..92d69cbd 100644
--- a/lnbits/extensions/watchonly/static/components/payment/payment.js
+++ b/lnbits/extensions/watchonly/static/components/payment/payment.js
@@ -163,7 +163,7 @@ async function payment(path) {
this.selectChangeAddress(this.changeWallet)
},
handleOutputsChange: function () {
- this.$refs.utxoList.applyUtxoSelectionMode()
+ this.$refs.utxoList.refreshUtxoSelection(this.totalPayedAmount)
},
getTotalPaymentAmount: function () {
return this.sendToList.reduce((t, a) => t + (a.amount || 0), 0)
diff --git a/lnbits/extensions/watchonly/static/components/send-to/send-to.js b/lnbits/extensions/watchonly/static/components/send-to/send-to.js
index 3329ef06..9b6cf348 100644
--- a/lnbits/extensions/watchonly/static/components/send-to/send-to.js
+++ b/lnbits/extensions/watchonly/static/components/send-to/send-to.js
@@ -67,7 +67,6 @@ async function sendTo(path) {
0,
inputAmount - payedAmount - feeValue
)
- this.handleOutputsChange()
},
handleOutputsChange: function () {
this.$emit('update:outputs')
diff --git a/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.html b/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.html
index d5a9e353..52643d20 100644
--- a/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.html
+++ b/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.html
@@ -9,7 +9,7 @@
v-model="utxoSelectionMode"
:options="utxoSelectionModes"
label="Selection Mode"
- @input="applyUtxoSelectionMode"
+ @input="updateUtxoSelection"
>
@@ -17,7 +17,7 @@
outline
icon="refresh"
color="grey"
- @click="applyUtxoSelectionMode"
+ @click="updateUtxoSelection"
class="q-ml-sm"
>
@@ -130,23 +130,6 @@
-
-
-
-
-
-
- Selected Amount:
-
- {{satBtc(getTotalSelectedUtxoAmount())}}
-
-
-
-
-
-
-
diff --git a/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.js b/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.js
index 3b5c3974..a1418e74 100644
--- a/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.js
+++ b/lnbits/extensions/watchonly/static/components/utxo-list/utxo-list.js
@@ -75,7 +75,8 @@ async function utxoList(path) {
'Smaller Inputs First',
'Larger Inputs First'
],
- utxoSelectionMode: 'Random'
+ utxoSelectionMode: 'Random',
+ utxoSelectAmount: 0
}
},
@@ -101,7 +102,16 @@ async function utxoList(path) {
.reduce((t, a) => t + (a.amount || 0), 0)
return total
},
+ refreshUtxoSelection: function (totalPayedAmount) {
+ this.utxoSelectAmount = totalPayedAmount
+ this.applyUtxoSelectionMode()
+ },
+ updateUtxoSelection: function () {
+ this.utxoSelectAmount = this.payedAmount
+ this.applyUtxoSelectionMode()
+ },
applyUtxoSelectionMode: function () {
+ console.log('### this.utxoSelectAmount', this.utxoSelectAmount)
const mode = this.utxoSelectionMode
const isSelectAll = mode === 'Select All'
if (isSelectAll) {
@@ -111,11 +121,10 @@ async function utxoList(path) {
this.utxos.forEach(u => (u.selected = false))
const isManual = mode === 'Manual'
- if (isManual || !this.payedAmount) return
+ if (isManual || !this.utxoSelectAmount) return
const isSmallerFirst = mode === 'Smaller Inputs First'
const isLargerFirst = mode === 'Larger Inputs First'
-
let selectedUtxos = this.utxos.slice()
if (isSmallerFirst || isLargerFirst) {
const sortFn = isSmallerFirst
@@ -127,7 +136,7 @@ async function utxoList(path) {
selectedUtxos = _.shuffle(selectedUtxos)
}
selectedUtxos.reduce((total, utxo) => {
- utxo.selected = total < this.payedAmount
+ utxo.selected = total < this.utxoSelectAmount
total += utxo.amount
return total
}, 0)