mirror of
https://github.com/OneKeyHQ/bip39.git
synced 2026-04-18 08:22:16 +00: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>
|
<a href="https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki#change" target="_blank">External / Internal</a>
|
||||||
</label>
|
</label>
|
||||||
<div class="col-sm-10">
|
<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>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
var showPrivKey = true;
|
var showPrivKey = true;
|
||||||
var showQr = false;
|
var showQr = false;
|
||||||
var litecoinUseLtub = true;
|
var litecoinUseLtub = true;
|
||||||
|
var isDefaultBip44ChangeValue = true;
|
||||||
|
|
||||||
var entropyChangeTimeoutEvent = null;
|
var entropyChangeTimeoutEvent = null;
|
||||||
var phraseChangeTimeoutEvent = null;
|
var phraseChangeTimeoutEvent = null;
|
||||||
@@ -69,6 +70,7 @@
|
|||||||
DOM.bip44accountXprv = $("#bip44 .account-xprv");
|
DOM.bip44accountXprv = $("#bip44 .account-xprv");
|
||||||
DOM.bip44accountXpub = $("#bip44 .account-xpub");
|
DOM.bip44accountXpub = $("#bip44 .account-xpub");
|
||||||
DOM.bip44change = $("#bip44 .change");
|
DOM.bip44change = $("#bip44 .change");
|
||||||
|
DOM.defaultBip44ChangeValue = $("#bip44 .default-bip44-change-value");
|
||||||
DOM.bip49unavailable = $("#bip49 .unavailable");
|
DOM.bip49unavailable = $("#bip49 .unavailable");
|
||||||
DOM.bip49available = $("#bip49 .available");
|
DOM.bip49available = $("#bip49 .available");
|
||||||
DOM.bip49path = $("#bip49-path");
|
DOM.bip49path = $("#bip49-path");
|
||||||
@@ -134,7 +136,9 @@
|
|||||||
DOM.litecoinUseLtub.on("change", litecoinUseLtubChanged);
|
DOM.litecoinUseLtub.on("change", litecoinUseLtubChanged);
|
||||||
DOM.bip32path.on("input", calcForDerivationPath);
|
DOM.bip32path.on("input", calcForDerivationPath);
|
||||||
DOM.bip44account.on("input", calcForDerivationPath);
|
DOM.bip44account.on("input", calcForDerivationPath);
|
||||||
|
DOM.bip44change.on("input", modifiedDefaultBip44ChangeValue);
|
||||||
DOM.bip44change.on("input", calcForDerivationPath);
|
DOM.bip44change.on("input", calcForDerivationPath);
|
||||||
|
DOM.defaultBip44ChangeValue.on("click", resetDefaultBip44ChangeValue);
|
||||||
DOM.bip49account.on("input", calcForDerivationPath);
|
DOM.bip49account.on("input", calcForDerivationPath);
|
||||||
DOM.bip49change.on("input", calcForDerivationPath);
|
DOM.bip49change.on("input", calcForDerivationPath);
|
||||||
DOM.bip84account.on("input", calcForDerivationPath);
|
DOM.bip84account.on("input", calcForDerivationPath);
|
||||||
@@ -726,12 +730,14 @@
|
|||||||
var purpose = parseIntNoNaN(DOM.bip44purpose.val(), 44);
|
var purpose = parseIntNoNaN(DOM.bip44purpose.val(), 44);
|
||||||
var coin = parseIntNoNaN(DOM.bip44coin.val(), 0);
|
var coin = parseIntNoNaN(DOM.bip44coin.val(), 0);
|
||||||
var account = parseIntNoNaN(DOM.bip44account.val(), 0);
|
var account = parseIntNoNaN(DOM.bip44account.val(), 0);
|
||||||
var change = parseIntNoNaN(DOM.bip44change.val(), 0);
|
var change = parseIntNoNaN(DOM.bip44change.val(), "");
|
||||||
var path = "m/";
|
var path = "m";
|
||||||
path += purpose + "'/";
|
path += "/" + purpose + "'";
|
||||||
path += coin + "'/";
|
path += "/" + coin + "'";
|
||||||
path += account + "'/";
|
path += "/" + account + "'";
|
||||||
path += change;
|
if (change !== "") {
|
||||||
|
path += "/" + change;
|
||||||
|
}
|
||||||
DOM.bip44path.val(path);
|
DOM.bip44path.val(path);
|
||||||
var derivationPath = DOM.bip44path.val();
|
var derivationPath = DOM.bip44path.val();
|
||||||
console.log("Using derivation path from BIP44 tab: " + derivationPath);
|
console.log("Using derivation path from BIP44 tab: " + derivationPath);
|
||||||
@@ -1008,19 +1014,7 @@
|
|||||||
indexText = indexText + "'";
|
indexText = indexText + "'";
|
||||||
}
|
}
|
||||||
// Ethereum values are different
|
// Ethereum values are different
|
||||||
if ((networks[DOM.network.val()].name == "ETH - Ethereum")
|
if (networkIsEthereum()) {
|
||||||
|| (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")
|
|
||||||
) {
|
|
||||||
var privKeyBuffer = keyPair.d.toBuffer(32);
|
var privKeyBuffer = keyPair.d.toBuffer(32);
|
||||||
privkey = privKeyBuffer.toString('hex');
|
privkey = privKeyBuffer.toString('hex');
|
||||||
var addressBuffer = ethUtil.privateToAddress(privKeyBuffer);
|
var addressBuffer = ethUtil.privateToAddress(privKeyBuffer);
|
||||||
@@ -1636,6 +1630,22 @@
|
|||||||
return DOM.bip32tab.hasClass("active");
|
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() {
|
function networkHasSegwit() {
|
||||||
var n = network;
|
var n = network;
|
||||||
if ("baseNetwork" in network) {
|
if ("baseNetwork" in network) {
|
||||||
@@ -1665,10 +1675,30 @@
|
|||||||
return DOM.bip141tab.hasClass("active");
|
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) {
|
function setHdCoin(coinValue) {
|
||||||
DOM.bip44coin.val(coinValue);
|
DOM.bip44coin.val(coinValue);
|
||||||
DOM.bip49coin.val(coinValue);
|
DOM.bip49coin.val(coinValue);
|
||||||
DOM.bip84coin.val(coinValue);
|
DOM.bip84coin.val(coinValue);
|
||||||
|
setBip44ChangeValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
function showSegwitAvailable() {
|
function showSegwitAvailable() {
|
||||||
|
|||||||
Reference in New Issue
Block a user