import React from 'react';
import { ProposalContainer } from './governance/proposal';
import { ProposalsContainer } from './governance/proposals';
import Home from './home';
import NotFound from './not-found';
import NotPermitted from './not-permitted';
import { RedemptionInformation } from './redemption/home/redemption-information';
import { RedeemFromTranche } from './redemption/tranche';
import { AssociateContainer } from './staking/associate/associate-page-container';
import { DisassociateContainer } from './staking/disassociate/disassociate-page-container';
import { Staking } from './staking/staking';
import { StakingNodeContainer } from './staking/staking-node';
import { StakingNodesContainer } from './staking/staking-nodes-container';
import { Tranche } from './tranches/tranche';
import { Tranches } from './tranches/tranches';
export const Routes = {
HOME: '/',
TRANCHES: '/tranches',
CLAIM: '/claim',
STAKING: '/staking',
REWARDS: '/rewards',
WITHDRAW: '/withdraw',
WITHDRAWALS: '/withdrawals',
GOVERNANCE: '/governance',
VESTING: '/vesting',
NOT_PERMITTED: '/not-permitted',
NOT_FOUND: '/not-found',
CONTRACTS: '/contracts',
};
const LazyTranches = React.lazy(
() =>
import(
/* webpackChunkName: "route-tranches", webpackPrefetch: true */ './tranches'
)
);
const LazyClaim = React.lazy(
() =>
import(
/* webpackChunkName: "route-claim", webpackPrefetch: true */ './claim'
)
);
const LazyRedemption = React.lazy(
() =>
import(
/* webpackChunkName: "route-redemption", webpackPrefetch: true */ './redemption'
)
);
const LazyStaking = React.lazy(
() =>
import(
/* webpackChunkName: "route-staking", webpackPrefetch: true */ './staking'
)
);
const LazyGovernance = React.lazy(
() =>
import(
/* webpackChunkName: "route-governance", webpackPrefetch: true */ './governance'
)
);
const LazyRewards = React.lazy(
() =>
import(
/* webpackChunkName: "route-rewards", webpackPrefetch: true */ './rewards'
)
);
const LazyContracts = React.lazy(
() =>
import(
/* webpackChunkName: "route-tranches", webpackPrefetch: true */ './contracts'
)
);
const LazyWithdraw = React.lazy(
() =>
import(
/* webpackChunkName: "route-withdraw", webpackPrefetch: true */ './withdraw'
)
);
const LazyWithdrawals = React.lazy(
() =>
import(
/* webpackChunkName: "route-withdrawals", webpackPrefetch: true */ './withdrawals'
)
);
const routerConfig = [
{
path: Routes.HOME,
name: 'Home',
// Not lazy as loaded when a user first hits the site
component: Home,
},
{
path: Routes.TRANCHES,
name: 'Tranches',
component: LazyTranches,
children: [
{ index: true, element: },
{ path: ':trancheId', element: },
],
},
{
path: Routes.CLAIM,
name: 'Claim',
component: LazyClaim,
},
{
path: Routes.STAKING,
name: 'Staking',
component: LazyStaking,
children: [
{ path: 'associate', element: },
{ path: 'disassociate', element: },
{ path: ':node', element: },
{
index: true,
element: (
{({ data }) => }
),
},
],
},
{
path: Routes.REWARDS,
name: 'Rewards',
component: LazyRewards,
},
{
path: Routes.WITHDRAW,
name: 'Withdraw',
component: LazyWithdraw,
},
{
path: Routes.WITHDRAWALS,
name: 'Withdrawals',
component: LazyWithdrawals,
},
{
path: Routes.VESTING,
name: 'Vesting',
component: LazyRedemption,
children: [
{
index: true,
element: ,
},
{
path: ':id',
element: ,
},
],
},
{
path: Routes.GOVERNANCE,
name: 'Governance',
component: LazyGovernance,
children: [
{ path: ':proposalId', element: },
{ index: true, element: },
],
},
{
path: Routes.NOT_PERMITTED,
name: 'Not permitted',
// Not lazy as loaded when a user first hits the site
component: NotPermitted,
},
{
path: Routes.CONTRACTS,
name: 'Contracts',
component: LazyContracts,
},
{
path: '*',
name: 'NotFound',
// Not lazy as loaded when a user first hits the site
component: NotFound,
},
];
export default routerConfig;