on 8ca8b8a help sign in
bridge/src/views/Activate.js
39 lines 1.1 kB history raw
1import React from 'react';
3import useRouter from 'lib/useRouter';
5import { ActivateFlowProvider } from './Activate/ActivateFlow';
6import useActivateFlowState from './Activate/useActivateFlowState';
7import ActivateCode from './Activate/ActivateCode';
8import ActivateDisclaimer from './Activate/ActivateDisclaimer';
9import { LocalRouterProvider } from 'lib/LocalRouter';
10import ActivatePassport from './Activate/ActivatePassport';
12const kActivateNames = {
13 CODE: 'CODE',
14 DISCLAIMER: 'DISCLAIMER',
15 PASSPORT: 'PASSPORT',
16};
18const kActivateViews = {
19 [kActivateNames.CODE]: ActivateCode,
20 [kActivateNames.DISCLAIMER]: ActivateDisclaimer,
21 [kActivateNames.PASSPORT]: ActivatePassport,
22};
24export default function Activate() {
25 const state = useActivateFlowState();
26 const { Route, ...router } = useRouter({
27 names: kActivateNames,
28 views: kActivateViews,
29 initialRoutes: [{ key: kActivateNames.CODE }],
30 });
32 return (
33 <LocalRouterProvider value={router}>
34 <ActivateFlowProvider value={state}>
35 <Route />
36 </ActivateFlowProvider>
37 </LocalRouterProvider>
38 );