mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-07-29 21:21:23 +00:00
build
config
core
crypto
api
bitcoin
deps
transactions
utils
wallet
PhraseWallet.js
api.js
constants.js
createTransaction.js
createWallet.js
decryptStoredWallet.js
fetch-request.js
kdf.js
registerUsername.js
storeWallet.js
tradeRequest.js
api.js
api_deps.js
config.js
img
lib
locales
plugins
scripts
snap
splash
.editorconfig
.eslintrc.json
.gitattributes
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE
README.md
build-setup.js
build.bat
build.js
build.sh
electron-builder.yml
electron.js
install-dependencies.sh
package-lock.json
package.json
push-updates-with-travis-build.sh
run_server.bat
server.js
set-up-snap.sh
watch-inline.js
watch.js
30 lines
787 B
JavaScript
30 lines
787 B
JavaScript
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
|
|
}
|