1
- import React from 'react'
1
+ import React from 'react' ;
2
+
3
+ import { BrowserRouter as Router , Switch , Route , useHistory } from 'react-router-dom' ;
2
4
3
- import { BrowserRouter as Router , Switch , Route } from 'react-router-dom' ;
4
5
import Header , { AdminHeader } from "./components/Header" ;
5
6
6
7
import HomePage from './pages/Home' ;
7
8
import Admin from './pages/Admin' ;
8
- import DataView from './pages/DataView360/DataView360' ;
9
+ import Search360 from './pages/DataView360/Search/Search' ;
10
+ import View360 from './pages/DataView360/View/View' ;
9
11
import About from './pages/About' ;
10
12
import Login from './components/Login/Login' ;
11
13
import RefreshDlg from './components/RefreshDlg' ;
@@ -15,9 +17,10 @@ import Refresh from './components/Refresh';
15
17
import useToken from './components/Login/useToken' ;
16
18
var jwt = require ( 'jsonwebtoken' ) ;
17
19
18
- // Triggers token expiration check
20
+
21
+ // Triggers token expiration check
19
22
const sleep = time => new Promise ( resolve => setTimeout ( resolve , time ) )
20
- const expTimer = ( ) => sleep ( 500 ) . then ( ( ) => ( { } ) )
23
+ const expTimer = ( ) => sleep ( 500 ) . then ( ( ) => ( { } ) )
21
24
22
25
const AuthContext = React . createContext ( )
23
26
@@ -29,7 +32,7 @@ function AuthProvider({children}) {
29
32
30
33
React . useEffect ( ( ) => {
31
34
expTimer ( ) . then (
32
- user => setState ( { status : 'success' , error : null , user} ) //
35
+ user => setState ( { status : 'success' , error : null , user} ) //
33
36
)
34
37
} , )
35
38
@@ -72,7 +75,7 @@ function AuthenticatedApp() {
72
75
const { access_token, setToken } = useToken ( ) ;
73
76
74
77
var decoded = jwt . decode ( access_token , { complete : true } ) ;
75
-
78
+
76
79
const userRole = decoded ?. payload . role ;
77
80
var expTime = decoded ?. payload . exp - Date . now ( ) / 1000 ;
78
81
const jwtExpired = expTime <= 0
@@ -81,6 +84,8 @@ function AuthenticatedApp() {
81
84
82
85
const hdr = userRole === 'admin' ? < AdminHeader /> : < Header /> // If we're going to display a header, which one?
83
86
87
+ const history = useHistory ( ) ;
88
+
84
89
return (
85
90
< >
86
91
< Router >
@@ -92,30 +97,35 @@ function AuthenticatedApp() {
92
97
{ jwtExpired && < RefreshDlg shouldOpen = { false } setToken = { setToken } /> } { /* Too late, expired: close the dialog */ }
93
98
94
99
100
+
95
101
{ /* If not logged in, show login screen */
96
- ( ! access_token | jwtExpired ) ? < Login setToken = { setToken } /> : < Switch >
102
+ ( ! access_token | jwtExpired ) ? < Login setToken = { setToken } /> : < Switch >
97
103
98
104
< Route exact path = "/" >
99
105
< HomePage />
100
106
</ Route >
101
107
102
108
103
109
{ /* If an admin, render Upload page */
104
- userRole === 'admin' &&
110
+ userRole === 'admin' &&
105
111
< Route path = "/admin" >
106
112
< Admin />
107
113
</ Route >
108
- }
114
+ }
109
115
110
116
111
117
< Route path = "/about" >
112
118
< About />
113
119
</ Route >
114
120
115
- < Route path = "/dataView " >
116
- < DataView />
121
+ < Route path = "/360view/search " >
122
+ < Search360 />
117
123
</ Route >
118
124
125
+ < Route path = "/360view/view" >
126
+ < View360 />
127
+ </ Route >
128
+
119
129
< Route path = "/check" >
120
130
< Check access_token = { access_token } />
121
131
</ Route >
@@ -141,7 +151,7 @@ function Home() {
141
151
}
142
152
143
153
function App ( ) {
144
-
154
+
145
155
return (
146
156
< AuthProvider >
147
157
< div >
0 commit comments