diff options
Diffstat (limited to 'gui/src/renderer/components')
| -rw-r--r-- | gui/src/renderer/components/AppRouter.tsx | 6 | ||||
| -rw-r--r-- | gui/src/renderer/components/MainView.tsx | 56 |
2 files changed, 4 insertions, 58 deletions
diff --git a/gui/src/renderer/components/AppRouter.tsx b/gui/src/renderer/components/AppRouter.tsx index 59cace598d..aa474e30d5 100644 --- a/gui/src/renderer/components/AppRouter.tsx +++ b/gui/src/renderer/components/AppRouter.tsx @@ -7,6 +7,7 @@ import { useAppContext } from '../context'; import { ITransitionSpecification, transitions, useHistory } from '../lib/history'; import { RoutePath } from '../lib/routes'; import Account from './Account'; +import Connect from './Connect'; import Debug from './Debug'; import { DeviceRevokedView } from './DeviceRevokedView'; import { @@ -15,10 +16,10 @@ import { VoucherInput, VoucherVerificationSuccess, } from './ExpiredAccountAddTime'; +import ExpiredAccountErrorView from './ExpiredAccountErrorView'; import Filter from './Filter'; import Focus, { IFocusHandle } from './Focus'; import Launch from './Launch'; -import MainView from './MainView'; import OpenVpnSettings from './OpenVpnSettings'; import ProblemReport from './ProblemReport'; import SelectLanguage from './SelectLanguage'; @@ -65,7 +66,8 @@ export default function AppRouter() { <Route exact path={RoutePath.login} component={LoginPage} /> <Route exact path={RoutePath.tooManyDevices} component={TooManyDevices} /> <Route exact path={RoutePath.deviceRevoked} component={DeviceRevokedView} /> - <Route exact path={RoutePath.main} component={MainView} /> + <Route exact path={RoutePath.main} component={Connect} /> + <Route exact path={RoutePath.expired} component={ExpiredAccountErrorView} /> <Route exact path={RoutePath.redeemVoucher} component={VoucherInput} /> <Route exact path={RoutePath.voucherSuccess} component={VoucherVerificationSuccess} /> <Route exact path={RoutePath.timeAdded} component={TimeAdded} /> diff --git a/gui/src/renderer/components/MainView.tsx b/gui/src/renderer/components/MainView.tsx deleted file mode 100644 index 9269013732..0000000000 --- a/gui/src/renderer/components/MainView.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import { useEffect, useState } from 'react'; - -import { hasExpired } from '../../shared/account-expiry'; -import { AuthFailedError, ErrorStateCause } from '../../shared/daemon-rpc-types'; -import Connect from '../components/Connect'; -import { useAppContext } from '../context'; -import { useHistory } from '../lib/history'; -import { RoutePath } from '../lib/routes'; -import { useSelector } from '../redux/store'; -import ExpiredAccountErrorView from './ExpiredAccountErrorView'; - -type ExpiryData = { show: false } | { show: true; expiry: string | undefined }; - -export default function MainView() { - const { updateAccountData } = useAppContext(); - const history = useHistory(); - const accountExpiry = useSelector((state) => state.account.expiry); - const accountHasExpired = accountExpiry !== undefined && hasExpired(accountExpiry); - const isNewAccount = useSelector( - (state) => state.account.status.type === 'ok' && state.account.status.method === 'new_account', - ); - const tunnelState = useSelector((state) => state.connection.status); - - const [showAccountExpired, setShowAccountExpired] = useState<ExpiryData>(() => - isNewAccount || accountHasExpired ? { show: true, expiry: accountExpiry } : { show: false }, - ); - - useEffect(() => { - updateAccountData(); - }, []); - - useEffect(() => { - if ( - (!showAccountExpired.show || showAccountExpired.expiry !== accountExpiry) && - (accountHasExpired || - (tunnelState.state === 'error' && - tunnelState.details.cause === ErrorStateCause.authFailed && - tunnelState.details.authFailedError === AuthFailedError.expiredAccount)) - ) { - setShowAccountExpired({ show: true, expiry: accountExpiry }); - } else if ( - showAccountExpired.show && - accountExpiry && - accountExpiry !== showAccountExpired.expiry && - !accountHasExpired - ) { - history.push(RoutePath.timeAdded); - } - }, [showAccountExpired, accountHasExpired, tunnelState.state]); - - if (showAccountExpired.show) { - return <ExpiredAccountErrorView />; - } else { - return <Connect />; - } -} |
