From a82bd85a9c75fe48ee8e15e8bfe62b2c92978367 Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Sat, 12 Jan 2019 18:30:40 +0100 Subject: [PATCH] Add external account creation (#61) --- packages/ui-keyring/src/index.ts | 8 ++++++++ packages/ui-keyring/src/types.ts | 1 + 2 files changed, 9 insertions(+) diff --git a/packages/ui-keyring/src/index.ts b/packages/ui-keyring/src/index.ts index 84879dd8..cb3f9d96 100644 --- a/packages/ui-keyring/src/index.ts +++ b/packages/ui-keyring/src/index.ts @@ -44,6 +44,14 @@ class Keyring extends Base implements KeyringStruct { return pair; } + createAccountExternal (publicKey: Uint8Array, meta: KeyringPair$Meta = {}): KeyringPair { + const pair = this.keyring.addFromAddress(publicKey, { ...meta, isExternal: true }); + + this.saveAccount(pair); + + return pair; + } + createAccountMnemonic (seed: string, password?: string, meta: KeyringPair$Meta = {}): KeyringPair { const pair = this.keyring.addFromMnemonic(seed, meta); diff --git a/packages/ui-keyring/src/types.ts b/packages/ui-keyring/src/types.ts index 43a17135..5a8bea80 100644 --- a/packages/ui-keyring/src/types.ts +++ b/packages/ui-keyring/src/types.ts @@ -35,6 +35,7 @@ export interface KeyringStruct { addAccountPair: (pair: KeyringPair, password: string) => KeyringPair; backupAccount: (pair: KeyringPair, password: string) => KeyringPair$Json; createAccount: (seed: Uint8Array, password?: string, meta?: KeyringPair$Meta) => KeyringPair; + createAccountExternal: (publicKey: Uint8Array, meta?: KeyringPair$Meta) => KeyringPair; createAccountMnemonic: (seed: string, password?: string, meta?: KeyringPair$Meta) => KeyringPair; encryptAccount: (pair: KeyringPair, password: string) => void; forgetAccount: (address: string) => void;