import React from "react"; import { Switch, Route, Redirect } from "react-router-dom"; import { ClusterModal } from "components/ClusterModal"; import { MessageBanner } from "components/MessageBanner"; import { Navbar } from "components/Navbar"; import { ClusterStatusBanner } from "components/ClusterStatusButton"; import { SearchBar } from "components/SearchBar"; import { AccountDetailsPage } from "pages/AccountDetailsPage"; import { TransactionInspectorPage } from "pages/inspector/InspectorPage"; import { ClusterStatsPage } from "pages/ClusterStatsPage"; import { SupplyPage } from "pages/SupplyPage"; import { TransactionDetailsPage } from "pages/TransactionDetailsPage"; import { BlockDetailsPage } from "pages/BlockDetailsPage"; import { EpochDetailsPage } from "pages/EpochDetailsPage"; const ADDRESS_ALIASES = ["account", "accounts", "addresses"]; const TX_ALIASES = ["txs", "txn", "txns", "transaction", "transactions"]; function App() { return ( <>
`/${tx}/:signature`)} render={({ match, location }) => { let pathname = `/tx/${match.params.signature}`; return ; }} /> { const signature = "signature" in match.params ? match.params.signature : undefined; return ; }} /> ( )} /> } /> { const tab = "tab" in match.params ? match.params.tab : undefined; return ; }} /> `/${path}/:address`), ...ADDRESS_ALIASES.map((path) => `/${path}/:address/:tab`), ]} render={({ match, location }) => { let pathname = `/address/${match.params.address}`; if (match.params.tab) { pathname += `/${match.params.tab}`; } return ; }} /> { const tab = "tab" in match.params ? match.params.tab : undefined; return ( ); }} /> ( )} />
); } export default App;