/* @flow */ export type Route = { +name: string; +pattern: string; fields: Array; } export const routes: Array = [ { name: 'landing-home', pattern: '/', fields: [] }, { name: 'landing-bridge', pattern: '/bridge', fields: ['bridge'] }, { name: 'landing-import', pattern: '/import', fields: ['import'] }, { name: 'wallet-setting', pattern: '/settings', fields: ['settings'] }, { name: 'wallet-acquire', pattern: '/device/:device/acquire', fields: ['device', 'acquire'] }, { name: 'wallet-unreadable', pattern: '/device/:device/unreadable', fields: ['device', 'unreadable'] }, { name: 'wallet-bootloader', pattern: '/device/:device/bootloader', fields: ['device', 'bootloader'] }, { name: 'wallet-initialize', pattern: '/device/:device/initialize', fields: ['device', 'initialize'] }, { name: 'wallet-device-settings', pattern: '/device/:device/settings', fields: ['device', 'settings'] }, { name: 'wallet-dashboard', pattern: '/device/:device', fields: ['device'] }, { name: 'wallet-account-summary', pattern: '/device/:device/network/:network/account/:account', fields: ['device', 'network', 'account'] }, { name: 'wallet-account-send', pattern: '/device/:device/network/:network/account/:account/send', fields: ['device', 'network', 'account', 'send'] }, { name: 'wallet-account-send-override', pattern: '/device/:device/network/:network/account/:account/send/override', fields: ['device', 'network', 'account', 'send'] }, { name: 'wallet-account-receive', pattern: '/device/:device/network/:network/account/:account/receive', fields: ['device', 'network', 'account', 'receive'] }, { name: 'wallet-account-signverify', pattern: '/device/:device/network/:network/account/:account/signverify', fields: ['device', 'network', 'account', 'signverify'] } ]; export const getPattern = (name: string): string => { const entry = routes.find(r => r.name === name); if (!entry) { console.error(`Route for ${ name } not found`); return '/'; } return entry.pattern; }