on a2a5eed help sign in
bridge/src/lib/router.js
101 lines 3.4 kB history raw
1import * as ob from 'urbit-ob';
2import * as need from './need';
4import Landing from '../views/Landing';
5import Login from '../views/Login.js';
6import InviteTicket from '../views/InviteTicket';
7import InvitesManage from '../views/InvitesManage.js';
8import Admin from '../views/Admin';
9import Reticket from '../views/Reticket';
10import AcceptTransfer from '../views/AcceptTransfer';
11import CancelTransfer from '../views/CancelTransfer';
12import CreateGalaxy from '../views/CreateGalaxy';
13import GenKeyfile from '../views/GenKeyfile';
14import IssueChild from '../views/IssueChild';
15import ViewPoint from '../views/ViewPoint';
16import SentTransaction from '../views/SentTransaction';
17import SetKeys from '../views/SetKeys';
18import {
19 SetManagementProxy,
20 SetSpawnProxy,
21 SetTransferProxy,
22} from '../views/SetProxy';
23import Point from '../views/Point';
24import Points from '../views/Points';
25import Transfer from '../views/Transfer';
26import Invite from 'views/Invite';
28import { ROUTE_NAMES } from './routeNames';
30export const ROUTES = {
31 [ROUTE_NAMES.DEFAULT]: Landing,
32 [ROUTE_NAMES.LANDING]: Landing,
33 [ROUTE_NAMES.INVITE_TICKET]: InviteTicket,
34 [ROUTE_NAMES.INVITE]: Invite,
35 [ROUTE_NAMES.INVITES_MANAGE]: InvitesManage,
36 [ROUTE_NAMES.LOGIN]: Login,
37 [ROUTE_NAMES.ADMIN]: Admin,
38 [ROUTE_NAMES.RETICKET]: Reticket,
39 [ROUTE_NAMES.ACCEPT_TRANSFER]: AcceptTransfer,
40 [ROUTE_NAMES.CANCEL_TRANSFER]: CancelTransfer,
41 [ROUTE_NAMES.VIEW_POINT]: ViewPoint,
42 [ROUTE_NAMES.POINTS]: Points,
43 [ROUTE_NAMES.POINT]: Point,
44 [ROUTE_NAMES.SET_MANAGEMENT_PROXY]: SetManagementProxy,
45 [ROUTE_NAMES.SET_SPAWN_PROXY]: SetSpawnProxy,
46 [ROUTE_NAMES.SET_TRANSFER_PROXY]: SetTransferProxy,
47 [ROUTE_NAMES.CREATE_GALAXY]: CreateGalaxy,
48 [ROUTE_NAMES.ISSUE_CHILD]: IssueChild,
49 [ROUTE_NAMES.SET_KEYS]: SetKeys,
50 [ROUTE_NAMES.TRANSFER]: Transfer,
51 [ROUTE_NAMES.SENT_TRANSACTION]: SentTransaction,
52 [ROUTE_NAMES.GEN_KEYFILE]: GenKeyfile,
53};
55export const getRouteBreadcrumb = ({ pointCursor }) => route => {
56 switch (route.name) {
57 case ROUTE_NAMES.INVITE_TICKET:
58 return 'Invite code';
59 case ROUTE_NAMES.INVITE_TRANSACTIONS:
60 return 'Setting up new wallet';
61 case ROUTE_NAMES.INVITE:
62 return 'Send invites';
63 case ROUTE_NAMES.INVITES_MANAGE:
64 return 'Manage invites';
65 case ROUTE_NAMES.LOGIN:
66 return 'Login to Bridge';
67 case ROUTE_NAMES.ADMIN:
68 return 'Admin';
69 case ROUTE_NAMES.RETICKET:
70 return 'Reticket';
71 case ROUTE_NAMES.POINT:
72 return `Overview: ${ob.patp(need.pointCursor(pointCursor))}`;
73 case ROUTE_NAMES.POINTS:
74 return 'Points';
75 case ROUTE_NAMES.VIEW_POINT:
76 return 'View';
77 case ROUTE_NAMES.SET_TRANSFER_PROXY:
78 case ROUTE_NAMES.SET_MANAGEMENT_PROXY:
79 case ROUTE_NAMES.SET_SPAWN_PROXY:
80 return 'Set Proxy';
81 case ROUTE_NAMES.CREATE_GALAXY:
82 return 'Create Galaxy';
83 case ROUTE_NAMES.ISSUE_CHILD:
84 return 'Issue Child';
85 case ROUTE_NAMES.TRANSFER:
86 return 'Transfer';
87 case ROUTE_NAMES.ACCEPT_TRANSFER:
88 return 'Accept Transfer';
89 case ROUTE_NAMES.CANCEL_TRANSFER:
90 return 'Cancel Transfer';
91 case ROUTE_NAMES.GEN_KEYFILE:
92 return 'Keyfile';
93 case ROUTE_NAMES.SET_KEYS:
94 return 'Configure Keys';
95 case ROUTE_NAMES.SENT_TRANSACTION:
96 return 'Txn';
97 case ROUTE_NAMES.LANDING:
98 default:
99 return 'Bridge';
100 }
101};