summaryrefslogtreecommitdiffhomepage
path: root/gui/src/main
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2020-04-03 13:50:55 +0200
committerOskar Nyberg <oskar@mullvad.net>2020-04-03 13:50:55 +0200
commit7dfa5ae6ec5c4bdbb70d6ef0d3baff01048859dd (patch)
tree852db24d05f71d440983a17b2e72c6ac47726973 /gui/src/main
parentba31bee6e84bea28ee0e01cf4da414b15826f985 (diff)
parent83d212b8cca484bd4b694e45e132341ca0c26768 (diff)
downloadmullvadvpn-7dfa5ae6ec5c4bdbb70d6ef0d3baff01048859dd.tar.xz
mullvadvpn-7dfa5ae6ec5c4bdbb70d6ef0d3baff01048859dd.zip
Merge branch 'create-account-in-app'
Diffstat (limited to 'gui/src/main')
-rw-r--r--gui/src/main/daemon-rpc.ts5
-rw-r--r--gui/src/main/index.ts10
2 files changed, 15 insertions, 0 deletions
diff --git a/gui/src/main/daemon-rpc.ts b/gui/src/main/daemon-rpc.ts
index b4147ff821..02b9deceec 100644
--- a/gui/src/main/daemon-rpc.ts
+++ b/gui/src/main/daemon-rpc.ts
@@ -452,6 +452,11 @@ export class DaemonRpc {
}
}
+ public async createNewAccount(): Promise<string> {
+ const response = await this.transport.send('create_new_account');
+ return validate(string, response);
+ }
+
public async setAccount(accountToken?: AccountToken): Promise<void> {
await this.transport.send('set_account', [accountToken]);
}
diff --git a/gui/src/main/index.ts b/gui/src/main/index.ts
index 417a6648cb..2dd41afbb3 100644
--- a/gui/src/main/index.ts
+++ b/gui/src/main/index.ts
@@ -985,6 +985,7 @@ class ApplicationMain {
this.didChangeLocale();
});
+ IpcMainEventChannel.account.handleCreate(() => this.createNewAccount());
IpcMainEventChannel.account.handleLogin((token: AccountToken) => this.login(token));
IpcMainEventChannel.account.handleLogout(() => this.logout());
IpcMainEventChannel.account.handleWwwAuthToken(() => this.daemonRpc.getWwwAuthToken());
@@ -1080,6 +1081,15 @@ class ApplicationMain {
);
}
+ private async createNewAccount(): Promise<string> {
+ try {
+ return await this.daemonRpc.createNewAccount();
+ } catch (error) {
+ log.error(`Failed to create account: ${error.message}`);
+ throw error;
+ }
+ }
+
private async login(accountToken: AccountToken): Promise<void> {
try {
const verification = await this.verifyAccount(accountToken);