diff --git a/index.html b/index.html index 003bb93..f8a54d6 100644 --- a/index.html +++ b/index.html @@ -221,9 +221,7 @@ - Enter a private key in WIF format for any supported blockchain - (DOGE, BTC, FLO, LTC). All equivalent blockchain addresses will - be recovered. + Enter a private key (DOGE, BTC, FLO, LTC). @@ -1141,103 +1139,103 @@ return true; } + function translateAddress() { + const wif = document.getElementById("translateWIF").value.trim(); + if (!wif) { + notify("Please enter a private key", "error"); + return; + } - function translateAddress() { - const wif = document.getElementById("translateWIF").value.trim(); - if (!wif) { - notify("Please enter a private key", "error"); - return; - } + // Validate private key format before attempting to use it + if (!isValidPrivateKeyFormat(wif)) { + document.getElementById("translateResult").innerHTML = createErrorUI( + "Invalid Private Key Format", + "The text entered doesn't appear to be a valid private key for DOGE, BTC, FLO, or LTC.
Please check your input and try again." + ); + notify("Invalid private key format", "error"); + return; + } - // Validate private key format before attempting to use it - if (!isValidPrivateKeyFormat(wif)) { - document.getElementById("translateResult").innerHTML = createErrorUI( - "Invalid Private Key Format", - "The text entered doesn't appear to be a valid private key for DOGE, BTC, FLO, or LTC.
Please check your input and try again." - ); - notify("Invalid private key format", "error"); - return; - } + setButtonLoading("recoverBtn", true); - setButtonLoading("recoverBtn", true); + try { + const result = dogeCrypto.generateMultiChain(wif); - try { - const result = dogeCrypto.generateMultiChain(wif); + let formattedResult = ` +
+
+ +
+
+

Addresses Recovered Successfully!

+

All blockchain addresses have been recovered from your private key.

+
+
`; - let formattedResult = ` -
-
- + for (const chain of ["DOGE", "FLO", "BTC", "LTC"]) { + if (result[chain]) { + + const badgeClass = chain === "DOGE" ? "PRIMARY" : "SECONDARY"; + const badgeStyle = chain === "DOGE" ? "primary" : "secondary"; + + formattedResult += ` +
+
+

${chain}

+
${badgeClass}
-
-

Addresses Recovered Successfully!

-

All blockchain addresses have been recovered from your private key.

+
+ +
+ ${result[chain].address} + +
+
+
+ +
+ ${result[chain].privateKey} + +
`; - - for (const chain of ["DOGE", "FLO", "BTC", "LTC"]) { - if (result[chain]) { - formattedResult += ` -
-
-

${chain}

-
PRIMARY
-
-
- -
- ${result[chain].address} - -
-
-
- -
- ${result[chain].privateKey} - -
-
-
`; - } - } - - document.getElementById("translateResult").innerHTML = - formattedResult; - - storedTranslateResults.recoverTranslate = formattedResult; - notify("Addresses recovered successfully!", "success"); - } catch (err) { - console.error("Recovery error:", err); - - let errorMessage = "Invalid private key or format not supported."; - if (err.message && err.message.includes("Invalid")) { - errorMessage = err.message; - } - - document.getElementById("translateResult").innerHTML = ` -
-
- -
-
-

Recovery Failed

-

${errorMessage}

-

Please ensure you've entered a valid private key for DOGE, BTC, FLO, or LTC.

- -
-
`; - notify("Failed to recover addresses: " + errorMessage, "error"); - } finally { - setButtonLoading("recoverBtn", false); } } + document.getElementById("translateResult").innerHTML = formattedResult; + storedTranslateResults.recoverTranslate = formattedResult; + notify("Addresses recovered successfully!", "success"); + } catch (err) { + console.error("Recovery error:", err); + + let errorMessage = "Invalid private key or format not supported."; + if (err.message && err.message.includes("Invalid")) { + errorMessage = err.message; + } + + document.getElementById("translateResult").innerHTML = ` +
+
+ +
+
+

Recovery Failed

+

${errorMessage}

+

Please ensure you've entered a valid private key for DOGE, BTC, FLO, or LTC.

+ +
+
`; + notify("Failed to recover addresses: " + errorMessage, "error"); + } finally { + setButtonLoading("recoverBtn", false); + } + } function translateDirectAddress() { const address = document .getElementById("addressToTranslate")