re-enabling segwit and bech32 in UI

- re-enabled segwit and bech32 address shown in generation and retrieval (signing issue fixed in prev commit)
- view address details: remove duplicate address shown in same tx
This commit is contained in:
sairajzero 2022-06-17 04:11:56 +05:30
parent 842006cfc9
commit fb914d2ae7

View File

@ -82,16 +82,16 @@
let form = document.forms['generate-address']; let form = document.forms['generate-address'];
form['private'].value = newKeys.wif; form['private'].value = newKeys.wif;
form['address'].value = newKeys.address; form['address'].value = newKeys.address;
//form['segwit'].value = newKeys.segwitAddress; form['segwit'].value = newKeys.segwitAddress;
//form['bech32'].value = newKeys.bech32Address; form['bech32'].value = newKeys.bech32Address;
} }
function retrieveAddress() { function retrieveAddress() {
let form = document.forms['retrieve-address']; let form = document.forms['retrieve-address'];
let wif = form['private'].value; let wif = form['private'].value;
form['address'].value = btc_api.address(wif); form['address'].value = btc_api.address(wif);
//form['segwit'].value = btc_api.segwitAddress(wif); form['segwit'].value = btc_api.segwitAddress(wif);
//form['bech32'].value = btc_api.bech32Address(wif); form['bech32'].value = btc_api.bech32Address(wif);
} }
function checkBalance() { function checkBalance() {
@ -161,15 +161,16 @@
if (tx.outgoing) { if (tx.outgoing) {
d.type = "out"; d.type = "out";
d.amount = 0; d.amount = 0;
d.receiver = []; d.receiver = new Set();
let change = 0; let change = 0;
tx.outgoing.outputs.forEach(o => { tx.outgoing.outputs.forEach(o => {
if (o.address !== address) { if (o.address !== address) {
d.receiver.push(o.address) d.receiver.add(o.address)
d.amount += parseFloat(o.value) d.amount += parseFloat(o.value)
} else } else
change += parseFloat(o.value) change += parseFloat(o.value)
}); });
d.receiver = Array.from(d.receiver);
d.fee = parseFloat((tx.outgoing.value - (d.amount + change)).toFixed(8)) d.fee = parseFloat((tx.outgoing.value - (d.amount + change)).toFixed(8))
if (!d.amount && change > 0) { if (!d.amount && change > 0) {
d.type = "self"; d.type = "self";
@ -180,7 +181,7 @@
} else if (tx.incoming) { } else if (tx.incoming) {
d.type = "in"; d.type = "in";
d.amount = parseFloat(tx.incoming.value); d.amount = parseFloat(tx.incoming.value);
d.sender = tx.incoming.inputs.map(i => i.address) d.sender = Array.from(new Set(tx.incoming.inputs.map(i => i.address)));
} }
return d; return d;
}) })