Custom privKeyInput is made promisified

privKeyInput now uses given key when resolved and generates random key when rejected
This commit is contained in:
sairajzero 2020-02-06 13:38:09 +05:30
parent cdeab33c20
commit 7a6a2dc9ea

View File

@ -8490,8 +8490,13 @@ Bitcoin.Util = {
},
privKeyInput: function(){
return new Promise((resolve, reject) => {
var privKey = prompt("Enter Private Key: ")
return privKey
if(privKey === null)
reject(null)
else
resolve(privKey)
})
},
startUpFunctions:{
@ -8597,16 +8602,21 @@ Bitcoin.Util = {
.then(result => resolve(result))
.catch(error => reject(error))
}else{
var privKey;
floDapps.util.privKeyInput().then(result => {
try{
var privKey = floDapps.util.privKeyInput();
if(!privKey)
privKey = floCrypto.generateNewID().privKey
var floID = floCrypto.getFloIDfromPubkeyHex(floCrypto.getPubKeyHex(privKey))
if(!result)
return reject("Empty Private Key")
var floID = floCrypto.getFloIDfromPubkeyHex(floCrypto.getPubKeyHex(result))
console.log(floID)
}catch(error){
console.error(error)
return reject("Invalid Private Key")
}
}).catch(error => {
console.log(error, "Generating Random Keys")
privKey = floCrypto.generateNewID().privKey
}).finally(_ => {
var threshold = floCrypto.randInt(10,20)
writeSharesToIDB(floCrypto.createShamirsSecretShares(privKey, threshold, threshold)).then(resultIndexes =>{
//store index keys in localStorage
@ -8618,6 +8628,7 @@ Bitcoin.Util = {
//resolve private Key
resolve(privKey)
}).catch(error => reject(error))
})
}
})
}