summaryrefslogtreecommitdiffhomepage
path: root/gui
diff options
context:
space:
mode:
Diffstat (limited to 'gui')
-rw-r--r--gui/packages/desktop/src/renderer/errors.js6
-rw-r--r--gui/packages/desktop/src/renderer/lib/daemon-rpc.js13
2 files changed, 17 insertions, 2 deletions
diff --git a/gui/packages/desktop/src/renderer/errors.js b/gui/packages/desktop/src/renderer/errors.js
index ddf0c239bb..b333f66221 100644
--- a/gui/packages/desktop/src/renderer/errors.js
+++ b/gui/packages/desktop/src/renderer/errors.js
@@ -11,6 +11,12 @@ export class BlockedError extends Error {
case 'start_tunnel_error':
super('Failed to start tunnel connection');
break;
+ case 'no_matching_relay':
+ super('No relay server matches the current settings');
+ break;
+ case 'no_account_token':
+ super('No account token configured');
+ break;
default:
super(`Unknown error: ${(reason: empty)}`);
}
diff --git a/gui/packages/desktop/src/renderer/lib/daemon-rpc.js b/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
index ae2e501268..0408017d5a 100644
--- a/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
+++ b/gui/packages/desktop/src/renderer/lib/daemon-rpc.js
@@ -41,7 +41,11 @@ const LocationSchema = object({
mullvad_exit_ip: boolean,
});
-export type BlockReason = 'set_security_policy_error' | 'start_tunnel_error';
+export type BlockReason =
+ | 'set_security_policy_error'
+ | 'start_tunnel_error'
+ | 'no_matching_relay'
+ | 'no_account_token';
export type DisconnectedState = {
state: 'disconnected',
};
@@ -218,7 +222,12 @@ const AccountDataSchema = object({
expiry: string,
});
-const allBlockReasons: Array<BlockReason> = ['set_security_policy_error', 'start_tunnel_error'];
+const allBlockReasons: Array<BlockReason> = [
+ 'set_security_policy_error',
+ 'start_tunnel_error',
+ 'no_matching_relay',
+ 'no_account_token',
+];
const BlockedStateSchema = object({
state: enumeration('blocked'),
details: enumeration(...allBlockReasons),