1import React from 'react';
2import * as ob from 'urbit-ob';
3import * as need from './need';
5import Landing from '../views/Landing';
6import InviteTicket from '../views/InviteTicket';
7import InvitesSend from '../views/InvitesSend.js';
8import InvitesManage from '../views/InvitesManage.js';
9import AcceptTransfer from '../views/AcceptTransfer';
10import CancelTransfer from '../views/CancelTransfer';
11import CreateGalaxy from '../views/CreateGalaxy';
12import GenKeyfile from '../views/GenKeyfile';
13import IssueChild from '../views/IssueChild';
14import Network from '../views/Network';
15import Mnemonic from '../views/Mnemonic';
16import Ledger from '../views/Ledger';
17import Trezor from '../views/Trezor';
18import PrivateKey from '../views/PrivateKey';
19import Keystore from '../views/Keystore';
20import ViewPoint from '../views/ViewPoint';
21import SentTransaction from '../views/SentTransaction';
22import SetKeys from '../views/SetKeys';
27} from '../views/SetProxy';
28import Point from '../views/Point';
29import Points from '../views/Points';
30import Shards from '../views/Shards';
31import Ticket from '../views/Ticket';
32import Transfer from '../views/Transfer';
33import Wallet from '../views/Wallet';
35import { EthereumWallet } from './wallet';
36import { renderNetworkType } from './network';
37import { ROUTE_NAMES } from './routeNames';
40 [ROUTE_NAMES.DEFAULT]: Landing,
41 [ROUTE_NAMES.LANDING]: Landing,
42 [ROUTE_NAMES.INVITE_TICKET]: InviteTicket,
43 [ROUTE_NAMES.INVITES_SEND]: InvitesSend,
44 [ROUTE_NAMES.INVITES_MANAGE]: InvitesManage,
45 [ROUTE_NAMES.ACCEPT_TRANSFER]: AcceptTransfer,
46 [ROUTE_NAMES.CANCEL_TRANSFER]: CancelTransfer,
47 [ROUTE_NAMES.NETWORK]: Network,
48 [ROUTE_NAMES.WALLET]: Wallet,
49 [ROUTE_NAMES.VIEW_SHIP]: ViewPoint,
50 [ROUTE_NAMES.MNEMONIC]: Mnemonic,
51 [ROUTE_NAMES.TICKET]: Ticket,
52 [ROUTE_NAMES.SHARDS]: Shards,
53 [ROUTE_NAMES.LEDGER]: Ledger,
54 [ROUTE_NAMES.TREZOR]: Trezor,
55 [ROUTE_NAMES.PRIVATE_KEY]: PrivateKey,
56 [ROUTE_NAMES.KEYSTORE]: Keystore,
57 [ROUTE_NAMES.SHIPS]: Points,
58 [ROUTE_NAMES.SHIP]: Point,
59 [ROUTE_NAMES.SET_MANAGEMENT_PROXY]: SetManagementProxy,
60 [ROUTE_NAMES.SET_SPAWN_PROXY]: SetSpawnProxy,
61 [ROUTE_NAMES.SET_TRANSFER_PROXY]: SetTransferProxy,
62 [ROUTE_NAMES.CREATE_GALAXY]: CreateGalaxy,
63 [ROUTE_NAMES.ISSUE_CHILD]: IssueChild,
64 [ROUTE_NAMES.SET_KEYS]: SetKeys,
65 [ROUTE_NAMES.TRANSFER]: Transfer,
66 [ROUTE_NAMES.SENT_TRANSACTION]: SentTransaction,
67 [ROUTE_NAMES.GEN_KEYFILE]: GenKeyfile,
70export const getRouteBreadcrumb = ({
76 case ROUTE_NAMES.INVITE_TICKET:
78 case ROUTE_NAMES.INVITE_TRANSACTIONS:
79 return 'Setting up new wallet';
80 case ROUTE_NAMES.INVITES_SEND:
81 return 'Send invites';
82 case ROUTE_NAMES.INVITES_MANAGE:
83 return 'Manage invites';
84 case ROUTE_NAMES.NETWORK:
85 return renderNetworkType(networkType);
86 case ROUTE_NAMES.WALLET:
87 return wallet.matchWith({
88 Nothing: () => 'Wallet',
90 wal.value instanceof EthereumWallet ? (
91 <span className="text-mono">{wal.value.address}</span>
93 <span className="text-mono">{wal.value.address}</span>
96 case ROUTE_NAMES.MNEMONIC:
98 case ROUTE_NAMES.TICKET:
99 return 'Urbit Ticket';
100 case ROUTE_NAMES.SHARDS:
101 return 'Urbit Ticket';
102 case ROUTE_NAMES.LEDGER:
104 case ROUTE_NAMES.TREZOR:
106 case ROUTE_NAMES.PRIVATE_KEY:
107 return 'Private Key';
108 case ROUTE_NAMES.KEYSTORE:
109 return 'Keystore File';
110 case ROUTE_NAMES.SHIPS:
112 case ROUTE_NAMES.VIEW_SHIP:
114 case ROUTE_NAMES.SHIP:
115 return ob.patp(need.pointCursor({ pointCursor }));
116 case ROUTE_NAMES.SET_TRANSFER_PROXY:
117 case ROUTE_NAMES.SET_MANAGEMENT_PROXY:
118 case ROUTE_NAMES.SET_SPAWN_PROXY:
120 case ROUTE_NAMES.CREATE_GALAXY:
121 return 'Create Galaxy';
122 case ROUTE_NAMES.ISSUE_CHILD:
123 return 'Issue Child';
124 case ROUTE_NAMES.TRANSFER:
126 case ROUTE_NAMES.ACCEPT_TRANSFER:
127 return 'Accept Transfer';
128 case ROUTE_NAMES.CANCEL_TRANSFER:
129 return 'Cancel Transfer';
130 case ROUTE_NAMES.GEN_KEYFILE:
132 case ROUTE_NAMES.SET_KEYS:
133 return 'Configure Keys';
134 case ROUTE_NAMES.SENT_TRANSACTION:
136 case ROUTE_NAMES.LANDING:
142export const router = route => ROUTES[route.name];
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list