diff --git a/node_modules/eth-keyring-controller/index.js b/node_modules/eth-keyring-controller/index.js index 250ab98..38615aa 100644 --- a/node_modules/eth-keyring-controller/index.js +++ b/node_modules/eth-keyring-controller/index.js @@ -84,15 +84,20 @@ class KeyringController extends EventEmitter { * * @emits KeyringController#unlock * @param {string} password - The password to encrypt the vault with - * @param {string} seed - The BIP44-compliant seed phrase. + * @param {string|Array} seedPhrase - The BIP39-compliant seed phrase, + * either as a string or an array of UTF-8 bytes that represent the string. * @returns {Promise} A Promise that resolves to the state. */ - createNewVaultAndRestore (password, seed) { + createNewVaultAndRestore(password, seedPhrase) { + const seedPhraseAsBuffer = typeof seedPhrase === 'string' + ? Buffer.from(seedPhrase, 'utf8') + : Buffer.from(seedPhrase) + if (typeof password !== 'string') { return Promise.reject(new Error('Password must be text.')) } - if (!bip39.validateMnemonic(seed)) { + if (!bip39.validateMnemonic(seedPhraseAsBuffer)) { return Promise.reject(new Error('Seed phrase is invalid.')) } @@ -101,7 +106,7 @@ class KeyringController extends EventEmitter { return this.persistAllKeyrings(password) .then(() => { return this.addNewKeyring('HD Key Tree', { - mnemonic: seed, + mnemonic: seedPhraseAsBuffer, numberOfAccounts: 1, }) })