2022-05-27 14:39:05 +03:00
|
|
|
import React, { Suspense, lazy, useEffect, useState } from 'react'
|
2021-08-04 13:04:05 +03:00
|
|
|
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom'
|
2021-08-18 18:16:57 +03:00
|
|
|
import { useSelector } from 'react-redux'
|
2021-09-28 12:46:16 +03:00
|
|
|
import { selectAuth } from './redux/outstaffingSlice'
|
2021-08-04 13:04:05 +03:00
|
|
|
import 'bootstrap/dist/css/bootstrap.min.css'
|
|
|
|
import './fonts/stylesheet.css'
|
2021-09-28 12:46:16 +03:00
|
|
|
import { ProtectedRoute } from './components/ProtectedRoute/ProtectedRoute'
|
2021-05-25 14:50:01 +03:00
|
|
|
|
2022-05-27 14:39:05 +03:00
|
|
|
|
2021-09-28 12:46:16 +03:00
|
|
|
import { YMInitializer } from 'react-yandex-metrika'
|
2021-08-20 11:52:23 +03:00
|
|
|
|
2021-09-28 12:46:16 +03:00
|
|
|
import AuthPageForDevelopers from './pages/AuthPageForDevelopers'
|
|
|
|
import AuthPageForPartners from './pages/AuthPageForPartners'
|
|
|
|
import HomePage from './pages/HomePage'
|
|
|
|
import CandidatePage from './pages/CandidatePage'
|
|
|
|
import CalendarPage from './pages/CalendarPage'
|
|
|
|
import ReportPage from './pages/ReportFormPage.js'
|
|
|
|
import FormPage from './pages/FormPage.js'
|
|
|
|
import SingleReportPage from './pages/SingleReportPage'
|
2022-05-27 14:39:05 +03:00
|
|
|
import { Highlighter } from './pages/CodeSnippetPage'
|
|
|
|
import { QuizPage } from './pages/quiz/QuizPage'
|
|
|
|
import { InterjacentPage } from './pages/quiz/InterjacentPage'
|
|
|
|
import { QuizTestPage } from './pages/quiz/QuizTestPage'
|
|
|
|
import { Instruction } from './components/features/quiz/Instructions'
|
|
|
|
import { InstructionPage } from './pages/quiz/InstructionPage'
|
|
|
|
import {ResultPage} from "./pages/quiz/ResultPage";
|
2021-05-26 13:35:57 +03:00
|
|
|
|
2021-08-18 18:16:57 +03:00
|
|
|
const App = (props) => {
|
|
|
|
const isAuth = useSelector(selectAuth)
|
2021-09-28 12:46:16 +03:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<h1>IT Аутстаффинг в России</h1>
|
|
|
|
<Router>
|
2021-08-04 13:04:05 +03:00
|
|
|
<Switch>
|
2021-08-04 18:17:33 +03:00
|
|
|
<Route path='/authdev' exact>
|
2021-07-02 16:02:47 +03:00
|
|
|
<AuthPageForDevelopers />
|
2021-05-31 18:23:25 +03:00
|
|
|
</Route>
|
2021-08-04 18:17:33 +03:00
|
|
|
<Route path='/auth' exact>
|
|
|
|
<AuthPageForPartners />
|
|
|
|
</Route>
|
2021-08-17 13:05:13 +03:00
|
|
|
<ProtectedRoute exact path='/' component={HomePage} />
|
2021-09-28 12:46:16 +03:00
|
|
|
<ProtectedRoute
|
|
|
|
exact
|
|
|
|
path='/candidate/:id'
|
|
|
|
component={CandidatePage}
|
|
|
|
/>
|
2021-11-30 17:00:58 +03:00
|
|
|
<ProtectedRoute path='/:userId/calendar' component={CalendarPage} />
|
2021-09-28 12:46:16 +03:00
|
|
|
<ProtectedRoute
|
|
|
|
exact
|
|
|
|
path='/candidate/:id/form'
|
|
|
|
component={FormPage}
|
|
|
|
/>
|
|
|
|
<ProtectedRoute exact path='/report' component={ReportPage} />
|
|
|
|
<ProtectedRoute path='/report/:id' component={SingleReportPage} />
|
2022-05-27 14:39:05 +03:00
|
|
|
<ProtectedRoute path='/quiz' component={QuizPage} />
|
|
|
|
<ProtectedRoute path='/quiz-interjacent' component={InterjacentPage} />
|
|
|
|
<ProtectedRoute path='/quiz-test' component={QuizTestPage} />
|
|
|
|
<ProtectedRoute path='/quiz-instruction' component={InstructionPage} />
|
|
|
|
<ProtectedRoute path='/quiz-result' component={ResultPage} />
|
2021-09-28 12:46:16 +03:00
|
|
|
<ProtectedRoute component={() => <div>Page not found</div>} />
|
2021-08-04 13:04:05 +03:00
|
|
|
</Switch>
|
2021-09-28 12:46:16 +03:00
|
|
|
</Router>
|
|
|
|
|
|
|
|
{/* <YMInitializer
|
2021-08-20 11:52:23 +03:00
|
|
|
accounts={[84188125]}
|
|
|
|
options={{
|
|
|
|
clickmap:true,
|
|
|
|
trackLinks:true,
|
|
|
|
accurateTrackBounce:true,
|
|
|
|
webvisor:true
|
|
|
|
}}
|
|
|
|
version="2"
|
2021-08-20 13:49:18 +03:00
|
|
|
/> */}
|
2021-08-12 12:40:47 +03:00
|
|
|
</>
|
2021-08-04 13:04:05 +03:00
|
|
|
)
|
|
|
|
}
|
2021-05-25 14:50:01 +03:00
|
|
|
|
2021-08-04 13:04:05 +03:00
|
|
|
export default App
|
2022-05-27 14:39:05 +03:00
|
|
|
|
|
|
|
|