]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - bip39-standalone.html
Public key column in table, shown as hex
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / bip39-standalone.html
index bb3ea38798d01a2b67582f9adc86b5a5b7de6d17..62bd43c7a17c8c21d7d804c1766fb8d291eef5b6 100644 (file)
                                     <button class="address-toggle">Toggle</button>
                                 </div>
                             </th>
+                            <th>
+                                <div class="input-group">
+                                    Public Key&nbsp;&nbsp;
+                                    <button class="public-key-toggle">Toggle</button>
+                                </div>
+                            </th>
                             <th>
                                 <div class="input-group">
                                     Private Key&nbsp;&nbsp;
             <tr>
                 <td class="index"><span></span></td>
                 <td class="address"><span></span></td>
+                <td class="pubkey"><span></span></td>
                 <td class="privkey"><span></span></td>
             </tr>
         </script>
@@ -16172,6 +16179,7 @@ var Mnemonic = function(language) {
 
     var showIndex = true;
     var showAddress = true;
+    var showPubKey = true;
     var showPrivKey = true;
 
     var phraseChangeTimeoutEvent = null;
@@ -16206,6 +16214,7 @@ var Mnemonic = function(language) {
     DOM.tab = $(".derivation-type a");
     DOM.indexToggle = $(".index-toggle");
     DOM.addressToggle = $(".address-toggle");
+    DOM.publicKeyToggle = $(".public-key-toggle");
     DOM.privateKeyToggle = $(".private-key-toggle");
     DOM.languages = $(".languages a");
 
@@ -16226,6 +16235,7 @@ var Mnemonic = function(language) {
         DOM.hardenedAddresses.on("change", calcForDerivationPath);
         DOM.indexToggle.on("click", toggleIndexes);
         DOM.addressToggle.on("click", toggleAddresses);
+        DOM.publicKeyToggle.on("click", togglePublicKeys);
         DOM.privateKeyToggle.on("click", togglePrivateKeys);
         DOM.languages.on("click", languageChanged);
         disableForms();
@@ -16362,6 +16372,11 @@ var Mnemonic = function(language) {
         $("td.address span").toggleClass("invisible");
     }
 
+    function togglePublicKeys() {
+        showPubKey = !showPubKey;
+        $("td.pubkey span").toggleClass("invisible");
+    }
+
     function togglePrivateKeys() {
         showPrivKey = !showPrivKey;
         $("td.privkey span").toggleClass("invisible");
@@ -16560,11 +16575,12 @@ var Mnemonic = function(language) {
                 }
                 var address = key.getAddress().toString();
                 var privkey = key.privKey.toWIF(network);
+                var pubkey = key.pubKey.toHex();
                 var indexText = getDerivationPath() + "/" + index;
                 if (useHardenedAddresses) {
                     indexText = indexText + "'";
                 }
-                addAddressToList(indexText, address, privkey);
+                addAddressToList(indexText, address, pubkey, privkey);
             }, 50)
         }
 
@@ -16605,15 +16621,17 @@ var Mnemonic = function(language) {
         DOM.extendedPubKey.val("");
     }
 
-    function addAddressToList(indexText, address, privkey) {
+    function addAddressToList(indexText, address, pubkey, privkey) {
         var row = $(addressRowTemplate.html());
         // Elements
         var indexCell = row.find(".index span");
         var addressCell = row.find(".address span");
+        var pubkeyCell = row.find(".pubkey span");
         var privkeyCell = row.find(".privkey span");
         // Content
         indexCell.text(indexText);
         addressCell.text(address);
+        pubkeyCell.text(pubkey);
         privkeyCell.text(privkey);
         // Visibility
         if (!showIndex) {
@@ -16622,6 +16640,9 @@ var Mnemonic = function(language) {
         if (!showAddress) {
             addressCell.addClass("invisible");
         }
+        if (!showPubKey) {
+            pubkeyCell.addClass("invisible");
+        }
         if (!showPrivKey) {
             privkeyCell.addClass("invisible");
         }