mirror of
https://github.com/AtHeartEngineer/bip39.git
synced 2026-01-10 09:57:58 -05:00
Add a button to remove the "change" in the derivation path for ethereum
This commit is contained in:
@@ -273,7 +273,10 @@
|
||||
<a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#change" target="_blank">External / Internal</a>
|
||||
</label>
|
||||
<div class="col-sm-10">
|
||||
<input id="change-bip44" type="text" class="change form-control" value="0">
|
||||
<div class="input-group">
|
||||
<input id="change-bip44" type="text" class="change form-control" value="0">
|
||||
<a class="default-bip44-change-value btn btn-primary input-group-addon" role="button">Default</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
var showPrivKey = true;
|
||||
var showQr = false;
|
||||
var litecoinUseLtub = true;
|
||||
var isDefaultBip44ChangeValue = true;
|
||||
|
||||
var entropyChangeTimeoutEvent = null;
|
||||
var phraseChangeTimeoutEvent = null;
|
||||
@@ -69,6 +70,7 @@
|
||||
DOM.bip44accountXprv = $("#bip44 .account-xprv");
|
||||
DOM.bip44accountXpub = $("#bip44 .account-xpub");
|
||||
DOM.bip44change = $("#bip44 .change");
|
||||
DOM.defaultBip44ChangeValue = $("#bip44 .default-bip44-change-value");
|
||||
DOM.bip49unavailable = $("#bip49 .unavailable");
|
||||
DOM.bip49available = $("#bip49 .available");
|
||||
DOM.bip49path = $("#bip49-path");
|
||||
@@ -134,7 +136,9 @@
|
||||
DOM.litecoinUseLtub.on("change", litecoinUseLtubChanged);
|
||||
DOM.bip32path.on("input", calcForDerivationPath);
|
||||
DOM.bip44account.on("input", calcForDerivationPath);
|
||||
DOM.bip44change.on("input", modifiedDefaultBip44ChangeValue);
|
||||
DOM.bip44change.on("input", calcForDerivationPath);
|
||||
DOM.defaultBip44ChangeValue.on("click", resetDefaultBip44ChangeValue);
|
||||
DOM.bip49account.on("input", calcForDerivationPath);
|
||||
DOM.bip49change.on("input", calcForDerivationPath);
|
||||
DOM.bip84account.on("input", calcForDerivationPath);
|
||||
@@ -726,12 +730,14 @@
|
||||
var purpose = parseIntNoNaN(DOM.bip44purpose.val(), 44);
|
||||
var coin = parseIntNoNaN(DOM.bip44coin.val(), 0);
|
||||
var account = parseIntNoNaN(DOM.bip44account.val(), 0);
|
||||
var change = parseIntNoNaN(DOM.bip44change.val(), 0);
|
||||
var path = "m/";
|
||||
path += purpose + "'/";
|
||||
path += coin + "'/";
|
||||
path += account + "'/";
|
||||
path += change;
|
||||
var change = parseIntNoNaN(DOM.bip44change.val(), "");
|
||||
var path = "m";
|
||||
path += "/" + purpose + "'";
|
||||
path += "/" + coin + "'";
|
||||
path += "/" + account + "'";
|
||||
if (change !== "") {
|
||||
path += "/" + change;
|
||||
}
|
||||
DOM.bip44path.val(path);
|
||||
var derivationPath = DOM.bip44path.val();
|
||||
console.log("Using derivation path from BIP44 tab: " + derivationPath);
|
||||
@@ -1008,19 +1014,7 @@
|
||||
indexText = indexText + "'";
|
||||
}
|
||||
// Ethereum values are different
|
||||
if ((networks[DOM.network.val()].name == "ETH - Ethereum")
|
||||
|| (networks[DOM.network.val()].name == "ETC - Ethereum Classic")
|
||||
|| (networks[DOM.network.val()].name == "PIRL - Pirl")
|
||||
|| (networks[DOM.network.val()].name == "MIX - MIX")
|
||||
|| (networks[DOM.network.val()].name == "MUSIC - Musicoin")
|
||||
|| (networks[DOM.network.val()].name == "POA - Poa")
|
||||
|| (networks[DOM.network.val()].name == "EXP - Expanse")
|
||||
|| (networks[DOM.network.val()].name == "CLO - Callisto")
|
||||
|| (networks[DOM.network.val()].name == "DXN - DEXON")
|
||||
|| (networks[DOM.network.val()].name == "ELLA - Ellaism")
|
||||
|| (networks[DOM.network.val()].name == "ESN - Ethersocial Network")
|
||||
|| (networks[DOM.network.val()].name == "VET - VeChain")
|
||||
) {
|
||||
if (networkIsEthereum()) {
|
||||
var privKeyBuffer = keyPair.d.toBuffer(32);
|
||||
privkey = privKeyBuffer.toString('hex');
|
||||
var addressBuffer = ethUtil.privateToAddress(privKeyBuffer);
|
||||
@@ -1636,6 +1630,22 @@
|
||||
return DOM.bip32tab.hasClass("active");
|
||||
}
|
||||
|
||||
function networkIsEthereum() {
|
||||
var name = networks[DOM.network.val()].name;
|
||||
return (name == "ETH - Ethereum")
|
||||
|| (name == "ETC - Ethereum Classic")
|
||||
|| (name == "PIRL - Pirl")
|
||||
|| (name == "MIX - MIX")
|
||||
|| (name == "MUSIC - Musicoin")
|
||||
|| (name == "POA - Poa")
|
||||
|| (name == "EXP - Expanse")
|
||||
|| (name == "CLO - Callisto")
|
||||
|| (name == "DXN - DEXON")
|
||||
|| (name == "ELLA - Ellaism")
|
||||
|| (name == "ESN - Ethersocial Network")
|
||||
|| (name == "VET - VeChain")
|
||||
}
|
||||
|
||||
function networkHasSegwit() {
|
||||
var n = network;
|
||||
if ("baseNetwork" in network) {
|
||||
@@ -1665,10 +1675,30 @@
|
||||
return DOM.bip141tab.hasClass("active");
|
||||
}
|
||||
|
||||
function setBip44ChangeValue() {
|
||||
if (isDefaultBip44ChangeValue) {
|
||||
if (networkIsEthereum()) {
|
||||
DOM.bip44change.val("");
|
||||
} else {
|
||||
DOM.bip44change.val(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function modifiedDefaultBip44ChangeValue() {
|
||||
isDefaultBip44ChangeValue = false;
|
||||
}
|
||||
|
||||
function resetDefaultBip44ChangeValue() {
|
||||
isDefaultBip44ChangeValue = true;
|
||||
setBip44ChangeValue();
|
||||
}
|
||||
|
||||
function setHdCoin(coinValue) {
|
||||
DOM.bip44coin.val(coinValue);
|
||||
DOM.bip49coin.val(coinValue);
|
||||
DOM.bip84coin.val(coinValue);
|
||||
setBip44ChangeValue();
|
||||
}
|
||||
|
||||
function showSegwitAvailable() {
|
||||
|
||||
Reference in New Issue
Block a user