summaryrefslogtreecommitdiffhomepage
path: root/gui/src/renderer/components
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2022-05-12 14:21:15 +0200
committerOskar Nyberg <oskar@mullvad.net>2022-05-13 10:49:25 +0200
commit5c99fdee273b54a26224c79ef839fc3d9f615707 (patch)
tree71d4c36555ed0de0184ec945a39f81f4c315ad2f /gui/src/renderer/components
parent64f206b034c9480ba21fe89472724121bac321e0 (diff)
downloadmullvadvpn-5c99fdee273b54a26224c79ef839fc3d9f615707.tar.xz
mullvadvpn-5c99fdee273b54a26224c79ef839fc3d9f615707.zip
Update to new device state rpc calls
Diffstat (limited to 'gui/src/renderer/components')
-rw-r--r--gui/src/renderer/components/Account.tsx14
1 files changed, 8 insertions, 6 deletions
diff --git a/gui/src/renderer/components/Account.tsx b/gui/src/renderer/components/Account.tsx
index af714273af..e0596a2b79 100644
--- a/gui/src/renderer/components/Account.tsx
+++ b/gui/src/renderer/components/Account.tsx
@@ -1,7 +1,7 @@
import * as React from 'react';
import { formatDate, hasExpired } from '../../shared/account-expiry';
-import { AccountToken, IDevice } from '../../shared/daemon-rpc-types';
+import { AccountToken, DeviceState } from '../../shared/daemon-rpc-types';
import { messages } from '../../shared/gettext';
import {
AccountContainer,
@@ -39,7 +39,7 @@ interface IProps {
onClose: () => void;
onBuyMore: () => Promise<void>;
updateAccountData: () => void;
- getDevice: () => Promise<IDevice | undefined>;
+ getDeviceState: () => Promise<DeviceState | undefined>;
}
interface IState {
@@ -189,10 +189,12 @@ export default class Account extends React.Component<IProps, IState> {
this.setState({ logoutDialogState: 'checking-ports' });
this.props.prepareLogout();
- const device = await this.props.getDevice();
- if (device === undefined) {
- this.onHideLogoutConfirmationDialog();
- } else if (device.ports !== undefined && device.ports.length > 0) {
+ const deviceState = await this.props.getDeviceState();
+ if (
+ deviceState?.type === 'logged in' &&
+ deviceState.accountAndDevice.device?.ports !== undefined &&
+ deviceState.accountAndDevice.device.ports.length > 0
+ ) {
this.setState({ logoutDialogState: 'confirm' });
} else {
this.props.onLogout();