@@ -13,6 +13,7 @@ import { NETWORK_TYPES } from 'lib/network';
1313import { walletFromMnemonic } from 'lib/wallet';
1414import { isDevelopment } from 'lib/flags';
1515import { hasDisclaimed } from 'lib/disclaimerCookie';
16+import useImpliedTicket from 'lib/useImpliedTicket';
1617
1718import 'style/index.scss';
1819
@@ -23,16 +24,6 @@ const INITIAL_NETWORK_TYPE = isDevelopment
2324// NB(shrugs): modify these variables to change the default local state.
2425const SHOULD_STUB_LOCAL = process.env.REACT_APP_STUB_LOCAL === 'true';
2526const IS_STUBBED = isDevelopment && SHOULD_STUB_LOCAL;
26−const INITIAL_ROUTES = IS_STUBBED
27− ? [
28− { key: ROUTE_NAMES.LANDING },
29− { key: ROUTE_NAMES.LOGIN },
30− { key: ROUTE_NAMES.POINTS },
31− { key: ROUTE_NAMES.POINT },
32− ]
33− : hasDisclaimed()
34− ? [{ key: ROUTE_NAMES.LANDING }]
35− : [{ key: ROUTE_NAMES.DISCLAIMER }];
3627
3728const INITIAL_WALLET = IS_STUBBED
3829 ? walletFromMnemonic(
@@ -46,11 +37,24 @@ const INITIAL_MNEMONIC = IS_STUBBED
4637const INITIAL_POINT_CURSOR = IS_STUBBED ? Just(65792) : Nothing();
4738
4839function Bridge() {
40+ const landingPage = !!useImpliedTicket()
41+ ? ROUTE_NAMES.ACTIVATE
42+ : ROUTE_NAMES.LOGIN;
43+ const initialRoutes = IS_STUBBED
44+ ? [
45+ { key: ROUTE_NAMES.LOGIN },
46+ { key: ROUTE_NAMES.POINTS },
47+ { key: ROUTE_NAMES.POINT },
48+ ]
49+ : hasDisclaimed()
50+ ? [{ key: landingPage }]
51+ : [{ key: landingPage }, { key: ROUTE_NAMES.DISCLAIMER }];
52+
4953 return (
5054 <Provider
5155 views={ROUTES}
5256 names={ROUTE_NAMES}
53− initialRoutes={INITIAL_ROUTES}
57+ initialRoutes={initialRoutes}
5458 initialNetworkType={INITIAL_NETWORK_TYPE}
5559 initialWallet={INITIAL_WALLET}
5660 initialMnemonic={INITIAL_MNEMONIC}