oyster/packages/metavinci/src/routes.tsx

80 lines
2.7 KiB
TypeScript
Raw Normal View History

2021-03-31 13:05:26 -07:00
import { HashRouter, Route, Switch } from 'react-router-dom';
import React from 'react';
import { contexts } from '@oyster/common';
import {
MarketProvider,
2021-04-05 12:16:25 -07:00
MetaProvider,
2021-03-31 13:05:26 -07:00
} from './contexts';
import { AppLayout } from './components/Layout';
2021-04-03 19:29:44 -07:00
import { ArtCreateView, ArtistsView, ArtistView, ArtView, AuctionCreateView, AuctionView, HomeView, UserView } from './views';
2021-03-31 13:05:26 -07:00
import { UseWalletProvider } from 'use-wallet';
const { WalletProvider } = contexts.Wallet;
const { ConnectionProvider } = contexts.Connection;
const { AccountsProvider } = contexts.Accounts;
export function Routes() {
return (
<>
<HashRouter basename={'/'}>
<ConnectionProvider>
<WalletProvider>
<UseWalletProvider chainId={5}>
<AccountsProvider>
<MarketProvider>
2021-04-05 12:16:25 -07:00
<MetaProvider>
2021-04-03 08:08:12 -07:00
<AppLayout>
<Switch>
<Route
exact
path="/"
component={() => <HomeView />}
/>
2021-04-03 19:29:44 -07:00
<Route
exact
path="/art/create"
component={() => <ArtCreateView />}
/>
<Route
exact
path="/user/:id"
component={() => <UserView />}
/>
<Route
exact
path="/art/:id"
component={() => <ArtView />}
/>
<Route
2021-04-03 08:08:12 -07:00
exact
2021-04-03 19:29:44 -07:00
path="/artist/:id"
component={() => <ArtistView />}
/>
<Route
exact
path="/artists"
component={() => <ArtistsView />}
/>
<Route
exact
path="/auction/:id"
component={() => <AuctionView />}
/>
<Route
exact
path="/auction/create"
component={() => <AuctionCreateView />}
/>
2021-04-03 08:08:12 -07:00
</Switch>
</AppLayout>
2021-04-05 12:16:25 -07:00
</MetaProvider>
2021-03-31 13:05:26 -07:00
</MarketProvider>
</AccountsProvider>
</UseWalletProvider>
</WalletProvider>
</ConnectionProvider>
</HashRouter>
</>
);
}