]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - src/js/index.js
Updated Zcoin (XZC) Due to its rebrand fo Firo (FIRO)
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / src / js / index.js
index dc2496358c75b8f0bc5f8f8d3b3ead32a4f589b2..41b59c2bb03a1910d212958f588b7f8bb322ae53 100644 (file)
@@ -47,6 +47,8 @@
     DOM.entropyWeakEntropyOverrideWarning = DOM.entropyContainer.find(".weak-entropy-override-warning");
     DOM.entropyFilterWarning = DOM.entropyContainer.find(".filter-warning");
     DOM.phrase = $(".phrase");
+    DOM.splitMnemonic = $(".splitMnemonic");
+    DOM.showSplitMnemonic = $(".showSplitMnemonic");
     DOM.phraseSplit = $(".phraseSplit");
     DOM.phraseSplitWarn = $(".phraseSplitWarn");
     DOM.passphrase = $(".passphrase");
         DOM.entropyMnemonicLength.on("change", entropyChanged);
         DOM.entropyTypeInputs.on("change", entropyTypeChanged);
         DOM.phrase.on("input", delayedPhraseChanged);
+        DOM.showSplitMnemonic.on("change", toggleSplitMnemonic);
         DOM.passphrase.on("input", delayedPhraseChanged);
         DOM.generate.on("click", generateClicked);
         DOM.more.on("click", showMore);
         phraseChanged();
     }
 
+    function toggleSplitMnemonic() {
+        if (DOM.showSplitMnemonic.prop("checked")) {
+            DOM.splitMnemonic.removeClass("hidden");
+        }
+        else {
+            DOM.splitMnemonic.addClass("hidden");
+        }
+    }
+
     function calcForDerivationPath() {
         clearDerivedKeys();
         clearAddressesList();
                         privkey = libs.ethUtil.bufferToHex(keyPair.d.toBuffer());
                     }
                 }
+                //TRX is different
+                if (networks[DOM.network.val()].name == "TRX - Tron") {
+                    keyPair = new libs.bitcoin.ECPair(keyPair.d, null, { network: network, compressed: false });
+                    var pubkeyBuffer = keyPair.getPublicKeyBuffer();
+                    var ethPubkey = libs.ethUtil.importPublic(pubkeyBuffer);
+                    var addressBuffer = libs.ethUtil.publicToAddress(ethPubkey);
+                    address = libs.bitcoin.address.toBase58Check(addressBuffer, 0x41);
+                    if (hasPrivkey) {
+                        privkey = keyPair.d.toBuffer().toString('hex');
+                    }
+                }
 
                 // RSK values are different
                 if (networkIsRsk()) {
                     privkey = keypair.secret();
                     pubkey = address = keypair.publicKey();
                 }
+
+                // Nano currency
+                if (networks[DOM.network.val()].name == "NANO - Nano") {
+                    var nanoKeypair = libs.nanoUtil.getKeypair(index, seed);
+                    privkey = nanoKeypair.privKey;
+                    pubkey = nanoKeypair.pubKey;
+                    address = nanoKeypair.address;
+                }
+
                 if ((networks[DOM.network.val()].name == "NAS - Nebulas")) {
                     var privKeyBuffer = keyPair.d.toBuffer(32);
                     var nebulasAccount = libs.nebulas.Account.NewAccount();
                 setHdCoin(235);
             },
         },  
+        {
+            name: "FIRO - Firo (XZC - Zcoin)",
+            onSelect: function() {
+                network = libs.bitcoin.networks.firo;
+                setHdCoin(136);
+            },
+        },
         {
             name: "FIX - FIX",
             onSelect: function() {
                 setHdCoin(184);
             },
         },
+        {
+            name: "NANO - Nano",
+            onSelect: function() {
+                network = network = libs.nanoUtil.dummyNetwork;
+                setHdCoin(165);
+            },
+        },
         {
             name: "NAV - Navcoin",
             onSelect: function() {
                 setHdCoin(159);
             },
         },
+        {
+            name: "TRX - Tron",
+            onSelect: function() {
+                setHdCoin(195);
+            },
+        },
         {
             name: "TWINS - TWINS",
             onSelect: function() {
                 setHdCoin(155);
             },
         },
-        {
-            name: "XZC - Zcoin",
-            onSelect: function() {
-                network = libs.bitcoin.networks.zcoin;
-                setHdCoin(136);
-            },
-        },
         {
             name: "ZCL - Zclassic",
             onSelect: function() {