Alphabetical messages (#189)

This commit is contained in:
Jaco Greeff 2019-10-25 10:14:15 +02:00 committed by GitHub
parent 91184ab5cc
commit 98f0a0f3fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 36 deletions

View File

@ -62,14 +62,14 @@ export async function editAccount (address: string, name: string): Promise<boole
return sendMessage('pri(accounts.edit)', { address, name });
}
export async function forgetAccount (address: string): Promise<boolean> {
return sendMessage('pri(accounts.forget)', { address });
}
export async function exportAccount (address: string, password: string): Promise<{ exportedJson: string }> {
return sendMessage('pri(accounts.export)', { address, password });
}
export async function forgetAccount (address: string): Promise<boolean> {
return sendMessage('pri(accounts.forget)', { address });
}
export async function rejectAuthRequest (id: string): Promise<boolean> {
return sendMessage('pri(authorize.reject)', { id });
}

View File

@ -3,35 +3,14 @@
// of the Apache-2.0 license. See the LICENSE file for details.
import { SubjectInfo } from '@polkadot/ui-keyring/observable/types';
import {
AccountJson,
AuthorizeRequest,
RequestAccountCreateExternal,
RequestAccountCreateSuri,
RequestAccountEdit,
RequestAuthorizeApprove,
RequestAuthorizeReject,
RequestSigningApprovePassword,
RequestSigningApproveSignature,
RequestSigningCancel,
RequestSeedCreate,
ResponseSeedCreate,
RequestSeedValidate,
ResponseSeedValidate,
RequestAccountForget,
SigningRequest,
RequestTypes,
ResponseTypes,
MessageTypes,
RequestAccountExport, ResponseAccountExport
} from '../types';
import { AccountJson, AuthorizeRequest, MessageTypes, RequestAccountCreateExternal, RequestAccountCreateSuri, RequestAccountEdit, RequestAccountExport, RequestAuthorizeApprove, RequestAuthorizeReject, RequestSigningApprovePassword, RequestSigningApproveSignature, RequestSigningCancel, RequestSeedCreate, RequestTypes, ResponseAccountExport, RequestAccountForget, ResponseSeedCreate, RequestSeedValidate, ResponseSeedValidate, ResponseTypes, SigningRequest } from '../types';
import extension from 'extensionizer';
import keyring from '@polkadot/ui-keyring';
import accountsObservable from '@polkadot/ui-keyring/observable/accounts';
import { createType } from '@polkadot/types';
import { keyExtractSuri, mnemonicGenerate, mnemonicValidate } from '@polkadot/util-crypto';
import { assert } from '@polkadot/util';
import { keyExtractSuri, mnemonicGenerate, mnemonicValidate } from '@polkadot/util-crypto';
import State from './State';
import { createSubscription, unsubscribe } from './subscriptions';
@ -75,16 +54,16 @@ export default class Extension {
return true;
}
private accountsExport ({ address, password }: RequestAccountExport): ResponseAccountExport {
return { exportedJson: JSON.stringify(keyring.backupAccount(keyring.getPair(address), password)) };
}
private accountsForget ({ address }: RequestAccountForget): boolean {
keyring.forgetAccount(address);
return true;
}
private accountsExport ({ address, password }: RequestAccountExport): ResponseAccountExport {
return { exportedJson: JSON.stringify(keyring.backupAccount(keyring.getPair(address), password), null, 2) };
}
// FIXME This looks very much like what we have in Tabs
private accountsSubscribe (id: string, port: chrome.runtime.Port): boolean {
const cb = createSubscription<'pri(accounts.subscribe)'>(id, port);
@ -255,14 +234,14 @@ export default class Extension {
case 'pri(accounts.create.suri)':
return this.accountsCreateSuri(request as RequestAccountCreateSuri);
case 'pri(accounts.forget)':
return this.accountsForget(request as RequestAccountForget);
case 'pri(accounts.edit)':
return this.accountsEdit(request as RequestAccountEdit);
case 'pri(accounts.export)':
return this.accountsExport(request as RequestAccountExport);
case 'pri(accounts.edit)':
return this.accountsEdit(request as RequestAccountEdit);
case 'pri(accounts.forget)':
return this.accountsForget(request as RequestAccountForget);
case 'pri(accounts.subscribe)':
return this.accountsSubscribe(id, port);

View File

@ -46,8 +46,8 @@ export interface RequestSignatures {
'pri(accounts.create.external)': [RequestAccountCreateExternal, boolean];
'pri(accounts.create.suri)': [RequestAccountCreateSuri, boolean];
'pri(accounts.edit)': [RequestAccountEdit, boolean];
'pri(accounts.forget)': [RequestAccountForget, boolean];
'pri(accounts.export)': [RequestAccountExport, ResponseAccountExport];
'pri(accounts.forget)': [RequestAccountForget, boolean];
'pri(accounts.subscribe)': [RequestAccountSubscribe, boolean, AccountJson[]];
'pri(authorize.approve)': [RequestAuthorizeApprove, boolean];
'pri(authorize.reject)': [RequestAuthorizeReject, boolean];