import * as React from 'react';
import { Switch } from 'react-router';
import { Link, Route } from 'react-router-dom';

import { Main } from './containers/Main';
import { Login as MemberLogin } from './containers/member/Login';
import { Regist as MemberRegist } from './containers/member/Regist';
import NotFound from './NotFound';

import { AgentDetail } from './containers/agent/AgentDetail';
import { Agents } from './containers/agent/Agents';
import { WaitForAuth } from './containers/agent/WaitForAuth';
import { WaitForAuthDetail } from './containers/agent/WaitForAuthDetail';
import { SensorConfig } from './containers/config/SensorConfig';
import { MemberEmailConfirm } from './containers/member/EmailConfirm';
import { MemberRegistResult } from './containers/member/RegistResult';
import { ProveDownload } from './containers/prove/Download';

import { TargetList } from './containers/target/TargetList';
import { DiscoveryResult } from './containers/discovery/DiscoveryResult';

export class Routes extends React.Component<any, any> {
  render() {
    return (
      <div>
        <h1>React Redux sample</h1>
        <li><Link to='/' >Home</Link></li>
        <li><Link to='/member/regist' >Member Regist</Link></li>
        <li><Link to='/member/login' >Member Login</Link></li>

        <li><Link to='/member/result' >MemberRegistResult</Link></li>
        <li><Link to='/member/emailconfirm' >MemberEmailConfirm</Link></li>
        <li><Link to='/agent/waitauth' >WaitForAuth</Link></li>
        <li><Link to='/agent/waitauthDetail' >WaitForAuthDetail</Link></li>

        <li><Link to='/config/sensorconfig' >SensorConfig</Link></li>
        <li><Link to='/prove/download' >ProveDownload</Link></li>
        <li><Link to='/agent/agents' >Agents</Link></li>
        <li><Link to='/agent/agentDetail' >AgentDetail</Link></li>
        <li><Link to='/target/targetList' >TargetList</Link></li>
        <li><Link to='/discovery/DiscoveryResult' >DiscoveryResult</Link></li>


        <Switch>
          <Route exact path='/' component={Main} />
          <Route exact path='/member/regist' component={MemberRegist} />
          <Route exact path='/member/login' component={MemberLogin} />
          <Route exact path='/member/result' component={MemberRegistResult} />
          <Route exact path='/member/emailconfirm' component={MemberEmailConfirm} />

          <Route exact path='/agent/waitauth' component={WaitForAuth} />
          <Route exact path='/agent/waitauthDetail' component={WaitForAuthDetail} />
          <Route exact path='/config/sensorconfig' component={SensorConfig} />
          <Route exact path='/prove/download' component={ProveDownload} />
          <Route exact path='/agent/agents' component={Agents} />
          <Route exact path='/agent/agentDetail' component={AgentDetail} />

          <Route exact path='/target/targetList' component={TargetList} />
          <Route exact path='/discovery/DiscoveryResult' component={DiscoveryResult} />

          <Route component={NotFound} />
        </Switch>

      </div>
    );
  }
}
