]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - src/js/index.js
Improve release process order and add details
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / src / js / index.js
index 80e66092c99fc8d8934a92deb5e10117136ce0d1..9bd77b956d491c117dcac0d6bb6d050a041b0d89 100644 (file)
@@ -73,6 +73,7 @@
     DOM.bip49change = $("#bip49 .change");
     DOM.generatedStrength = $(".generate-container .strength");
     DOM.hardenedAddresses = $(".hardened-addresses");
+    DOM.useP2wpkhNestedInP2sh = $(".p2wpkh-nested-in-p2sh");
     DOM.addresses = $(".addresses");
     DOM.rowsToAdd = $(".rows-to-add");
     DOM.more = $(".more");
         DOM.bip49change.on("input", calcForDerivationPath);
         DOM.tab.on("shown.bs.tab", calcForDerivationPath);
         DOM.hardenedAddresses.on("change", calcForDerivationPath);
+        DOM.useP2wpkhNestedInP2sh.on("change", calcForDerivationPath);
         DOM.indexToggle.on("click", toggleIndexes);
         DOM.addressToggle.on("click", toggleAddresses);
         DOM.publicKeyToggle.on("click", togglePublicKeys);
         var self = this;
         this.shouldGenerate = true;
         var useHardenedAddresses = DOM.hardenedAddresses.prop("checked");
-        var isP2wpkhNestedInP2sh = bip49TabSelected();
+        var isP2wpkhNestedInP2sh = bip49TabSelected() || (bip32TabSelected() && useP2wpkhNestedInP2sh());
         var p2wpkhNestedInP2shAvailable = networkHasBip49();
 
         function init() {
         return DOM.bip32tab.hasClass("active");
     }
 
+    function useP2wpkhNestedInP2sh() {
+        return DOM.useP2wpkhNestedInP2sh.prop("checked");
+    }
+
     function networkHasBip49() {
         return networks[DOM.network.val()].p2wpkhNestedInP2shAvailable;
     }
     function showP2wpkhNestedInP2shAvailable() {
         DOM.bip49unavailable.addClass("hidden");
         DOM.bip49available.removeClass("hidden");
+        DOM.useP2wpkhNestedInP2sh.prop("disabled", false);
     }
 
     function showP2wpkhNestedInP2shUnavailable() {
         DOM.bip49available.addClass("hidden");
         DOM.bip49unavailable.removeClass("hidden");
+        DOM.useP2wpkhNestedInP2sh.prop("disabled", true);
+        DOM.useP2wpkhNestedInP2sh.prop("checked", false);
     }
 
     var networks = [