1import * as ob from 'urbit-ob'
3import AcceptTransfer from '../views/AcceptTransfer'
4import CancelTransfer from '../views/CancelTransfer'
5import CreateGalaxy from '../views/CreateGalaxy'
6import GenKeyfile from '../views/GenKeyfile'
7import IssueChild from '../views/IssueChild'
8import Landing from '../views/Landing'
9import Network from '../views/Network'
10import Mnemonic from '../views/Mnemonic'
11import Ledger from '../views/Ledger'
12import Trezor from '../views/Trezor'
13import PrivateKey from '../views/PrivateKey'
14import Keystore from '../views/Keystore'
15import ViewPoint from '../views/ViewPoint'
16import SentTransaction from '../views/SentTransaction'
17import SetKeys from '../views/SetKeys'
22 } from '../views/SetProxy'
23import Point from '../views/Point'
24import Points from '../views/Points'
25import Shards from '../views/Shards'
26import Ticket from '../views/Ticket'
27import Transfer from '../views/Transfer'
28import Wallet from '../views/Wallet'
30import { addressFromSecp256k1Public, EthereumWallet } from './wallet'
31import { renderNetworkType } from './network'
32import { BRIDGE_ERROR } from './error'
35 ACCEPT_TRANSFER: Symbol('ACCEPT_TRANSFER'),
36 CANCEL_TRANSFER: Symbol('CANCEL_TRANSFER'),
37 LANDING: Symbol('LANDING'),
38 NETWORK: Symbol('NETWORK'),
39 WALLET: Symbol('WALLET'),
40 MNEMONIC: Symbol('MNEMONIC'),
41 TICKET: Symbol('TICKET'),
42 SHARDS: Symbol('SHARDS'),
43 LEDGER: Symbol('LEDGER'),
44 TREZOR: Symbol('TREZOR'),
45 PRIVATE_KEY: Symbol('PRIVATE_KEY'),
46 KEYSTORE: Symbol('KEYSTORE'),
47 VIEW_SHIP: Symbol('VIEW_SHIP'),
48 SHIPS: Symbol('SHIPS'),
50 SET_MANAGEMENT_PROXY: Symbol('SET_MANAGEMENT_PROXY'),
51 SET_SPAWN_PROXY: Symbol('SET_SPAWN_PROXY'),
52 SET_TRANSFER_PROXY: Symbol('SET_TRANSFER_PROXY'),
53 CREATE_GALAXY: Symbol('CREATE_GALAXY'),
54 ISSUE_CHILD: Symbol('ISSUE_CHILD'),
55 SET_KEYS: Symbol('SET_KEYS'),
56 TRANSFER: Symbol('TRANSFER'),
57 SENT_TRANSACTION: Symbol('SENT_TRANSACTION'),
58 GEN_KEYFILE: Symbol('GEN_KEYFILE'),
59 DEFAULT: Symbol('DEFAULT')
62const createRoutes = () => {
64 routes[ROUTE_NAMES.ACCEPT_TRANSFER] = AcceptTransfer
65 routes[ROUTE_NAMES.CANCEL_TRANSFER] = CancelTransfer
66 routes[ROUTE_NAMES.LANDING] = Landing
67 routes[ROUTE_NAMES.NETWORK] = Network
68 routes[ROUTE_NAMES.WALLET] = Wallet
69 routes[ROUTE_NAMES.VIEW_SHIP] = ViewPoint
70 routes[ROUTE_NAMES.MNEMONIC] = Mnemonic
71 routes[ROUTE_NAMES.TICKET] = Ticket
72 routes[ROUTE_NAMES.SHARDS] = Shards
73 routes[ROUTE_NAMES.LEDGER] = Ledger
74 routes[ROUTE_NAMES.TREZOR] = Trezor
75 routes[ROUTE_NAMES.PRIVATE_KEY] = PrivateKey
76 routes[ROUTE_NAMES.KEYSTORE] = Keystore
77 routes[ROUTE_NAMES.SHIPS] = Points
78 routes[ROUTE_NAMES.SHIP] = Point
79 routes[ROUTE_NAMES.SET_MANAGEMENT_PROXY] = SetManagementProxy
80 routes[ROUTE_NAMES.SET_SPAWN_PROXY] = SetSpawnProxy
81 routes[ROUTE_NAMES.SET_TRANSFER_PROXY] = SetTransferProxy
82 routes[ROUTE_NAMES.CREATE_GALAXY] = CreateGalaxy
83 routes[ROUTE_NAMES.ISSUE_CHILD] = IssueChild
84 routes[ROUTE_NAMES.SET_KEYS] = SetKeys
85 routes[ROUTE_NAMES.TRANSFER] = Transfer
86 routes[ROUTE_NAMES.SENT_TRANSACTION] = SentTransaction
87 routes[ROUTE_NAMES.DEFAULT] = Landing
88 routes[ROUTE_NAMES.GEN_KEYFILE] = GenKeyfile
92const ROUTES = createRoutes()
94const renderRoute = (props, route) => {
95 const { wallet, networkType, pointCursor } = props
97 route === ROUTE_NAMES.LANDING
100 : route === ROUTE_NAMES.NETWORK
101 ? `${renderNetworkType(networkType)}`
103 : route === ROUTE_NAMES.WALLET
105 Nothing: () => 'Wallet',
107 wal.value instanceof EthereumWallet
109 : addressFromSecp256k1Public(wal.value.publicKey)
112 : route === ROUTE_NAMES.MNEMONIC
115 : route === ROUTE_NAMES.TICKET
118 : route === ROUTE_NAMES.SHARDS
121 : route === ROUTE_NAMES.LEDGER
124 : route === ROUTE_NAMES.TREZOR
127 : route === ROUTE_NAMES.PRIVATE_KEY
130 : route === ROUTE_NAMES.KEYSTORE
133 : route === ROUTE_NAMES.SHIPS
136 : route === ROUTE_NAMES.VIEW_SHIP
139 : route === ROUTE_NAMES.SHIP
140 ? pointCursor.matchWith({
141 Just: (cursor) => ob.patp(cursor.value),
143 throw BRIDGE_ERROR.MISSING_POINT
147 : route === ROUTE_NAMES.SET_TRANSFER_PROXY
148 || route === ROUTE_NAMES.SET_MANAGEMENT_PROXY
149 || route === ROUTE_NAMES.SET_SPAWN_PROXY
152 : route === ROUTE_NAMES.CREATE_GALAXY
155 : route === ROUTE_NAMES.ISSUE_CHILD
158 : route === ROUTE_NAMES.TRANSFER
161 : route === ROUTE_NAMES.ACCEPT_TRANSFER
164 : route === ROUTE_NAMES.CANCEL_TRANSFER
167 : route === ROUTE_NAMES.GEN_KEYFILE
170 : route === ROUTE_NAMES.SET_KEYS
173 : route === ROUTE_NAMES.SENT_TRANSACTION
180const router = (route) =>
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