mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-11-13 11:09:00 +00:00
Redsign qortal-ui repo
This commit is contained in:
29
crypto/api/createWallet.js
Normal file
29
crypto/api/createWallet.js
Normal file
@@ -0,0 +1,29 @@
|
||||
import { kdf } from './kdf.js'
|
||||
import PhraseWallet from './PhraseWallet.js'
|
||||
import Base58 from './deps/Base58.js'
|
||||
import { decryptStoredWallet } from './decryptStoredWallet.js'
|
||||
|
||||
export const createWallet = async (sourceType, source, statusUpdateFn) => {
|
||||
let version, seed
|
||||
|
||||
switch (sourceType) {
|
||||
case 'phrase':
|
||||
version = 2
|
||||
seed = await kdf(source.seedPhrase, void 0, statusUpdateFn)
|
||||
break
|
||||
case 'seed':
|
||||
version = 1
|
||||
seed = Base58.decode(source.seed)
|
||||
break
|
||||
case 'storedWallet':
|
||||
case 'backedUpSeed':
|
||||
version = source.wallet.version
|
||||
seed = await decryptStoredWallet(source.password, source.wallet, statusUpdateFn)
|
||||
break
|
||||
default:
|
||||
throw 'sourceType ' + sourceType + ' not recognized'
|
||||
}
|
||||
|
||||
const wallet = new PhraseWallet(seed, version)
|
||||
return wallet
|
||||
}
|
||||
Reference in New Issue
Block a user