30112023
This commit is contained in:
4
.env.development
Normal file
4
.env.development
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
|
||||||
|
REACT_APP_URL='https://jupiter.nearle.app/live/api/v1'
|
||||||
|
REACT_APP_URL2=''
|
||||||
|
REACT_APP_STAFF_TOKEN=''
|
||||||
3
.env.staging
Normal file
3
.env.staging
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
REACT_APP_URL=''
|
||||||
|
REACT_APP_URL2=''
|
||||||
|
REACT_APP_STAFF_TOKEN=''
|
||||||
1
nearlexpressbuild
Submodule
1
nearlexpressbuild
Submodule
Submodule nearlexpressbuild added at dcb5535260
40
package-lock.json
generated
40
package-lock.json
generated
@@ -22,6 +22,7 @@
|
|||||||
"buffer": "^6.0.3",
|
"buffer": "^6.0.3",
|
||||||
"chance": "^1.1.11",
|
"chance": "^1.1.11",
|
||||||
"crypto-browserify": "^3.12.0",
|
"crypto-browserify": "^3.12.0",
|
||||||
|
"env-cmd": "^10.1.0",
|
||||||
"formik": "^2.2.9",
|
"formik": "^2.2.9",
|
||||||
"framer-motion": "^10.12.4",
|
"framer-motion": "^10.12.4",
|
||||||
"jsonwebtoken": "^9.0.0",
|
"jsonwebtoken": "^9.0.0",
|
||||||
@@ -7687,6 +7688,29 @@
|
|||||||
"url": "https://github.com/fb55/entities?sponsor=1"
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/env-cmd": {
|
||||||
|
"version": "10.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz",
|
||||||
|
"integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==",
|
||||||
|
"dependencies": {
|
||||||
|
"commander": "^4.0.0",
|
||||||
|
"cross-spawn": "^7.0.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"env-cmd": "bin/env-cmd.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/env-cmd/node_modules/commander": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/error-ex": {
|
"node_modules/error-ex": {
|
||||||
"version": "1.3.2",
|
"version": "1.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
||||||
@@ -24645,6 +24669,22 @@
|
|||||||
"resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
|
||||||
"integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="
|
"integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="
|
||||||
},
|
},
|
||||||
|
"env-cmd": {
|
||||||
|
"version": "10.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz",
|
||||||
|
"integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==",
|
||||||
|
"requires": {
|
||||||
|
"commander": "^4.0.0",
|
||||||
|
"cross-spawn": "^7.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"commander": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA=="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"error-ex": {
|
"error-ex": {
|
||||||
"version": "1.3.2",
|
"version": "1.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
"buffer": "^6.0.3",
|
"buffer": "^6.0.3",
|
||||||
"chance": "^1.1.11",
|
"chance": "^1.1.11",
|
||||||
"crypto-browserify": "^3.12.0",
|
"crypto-browserify": "^3.12.0",
|
||||||
|
"env-cmd": "^10.1.0",
|
||||||
"formik": "^2.2.9",
|
"formik": "^2.2.9",
|
||||||
"framer-motion": "^10.12.4",
|
"framer-motion": "^10.12.4",
|
||||||
"jsonwebtoken": "^9.0.0",
|
"jsonwebtoken": "^9.0.0",
|
||||||
@@ -49,7 +50,11 @@
|
|||||||
"start": "react-app-rewired start",
|
"start": "react-app-rewired start",
|
||||||
"build": "react-app-rewired build",
|
"build": "react-app-rewired build",
|
||||||
"test": "react-scripts test",
|
"test": "react-scripts test",
|
||||||
"eject": "react-scripts eject"
|
"eject": "react-scripts eject",
|
||||||
|
"start:dev": "env-cmd -f .env.development react-app-rewired start",
|
||||||
|
"start:staging": "env-cmd -f .env.staging react-app-rewired start",
|
||||||
|
"build:dev": "env-cmd -f .env.development react-app-rewired build",
|
||||||
|
"build:staging": "env-cmd -f .env.staging react-app-rewired build"
|
||||||
},
|
},
|
||||||
"eslintConfig": {
|
"eslintConfig": {
|
||||||
"extends": [
|
"extends": [
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<link rel="icon" href="%PUBLIC_URL%/favicon.png" />
|
<link rel="icon" href="%PUBLIC_URL%/favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<meta name="theme-color" content="#000000" />
|
<meta name="theme-color" content="#000000" />
|
||||||
<meta name="description" content="Web site created using create-react-app" />
|
<meta name="description" content="Nearle" />
|
||||||
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
|
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|||||||
10
src/App.js
10
src/App.js
@@ -16,11 +16,11 @@ import { useEffect } from 'react';
|
|||||||
const App = () =>{
|
const App = () =>{
|
||||||
let navigate=useNavigate()
|
let navigate=useNavigate()
|
||||||
|
|
||||||
// useEffect(()=>{
|
useEffect(()=>{
|
||||||
// if (!localStorage.getItem("firstname")) {
|
if (!localStorage.getItem("authname")) {
|
||||||
// navigate('/login')
|
navigate('/login')
|
||||||
// }
|
}
|
||||||
// },[])
|
},[])
|
||||||
|
|
||||||
|
|
||||||
return <>
|
return <>
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.1 KiB |
BIN
src/assets/images/logo-nearle1.png
Normal file
BIN
src/assets/images/logo-nearle1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.4 KiB |
@@ -36,19 +36,19 @@ const ProfileTab = ({ handleLogout }) => {
|
|||||||
<ListItemIcon>
|
<ListItemIcon>
|
||||||
<ProfileOutlined />
|
<ProfileOutlined />
|
||||||
</ListItemIcon>
|
</ListItemIcon>
|
||||||
<ListItemText primary="Social Profile" />
|
<ListItemText primary="Account Settings" />
|
||||||
</ListItemButton>
|
</ListItemButton>
|
||||||
<ListItemButton selected={selectedIndex === 4} onClick={(event) => handleListItemClick(event, 4)}>
|
{/* <ListItemButton selected={selectedIndex === 4} onClick={(event) => handleListItemClick(event, 4)}>
|
||||||
<ListItemIcon>
|
<ListItemIcon>
|
||||||
<WalletOutlined />
|
<WalletOutlined />
|
||||||
</ListItemIcon>
|
</ListItemIcon>
|
||||||
<ListItemText primary="Billing" />
|
<ListItemText primary="Billing" />
|
||||||
</ListItemButton>
|
</ListItemButton> */}
|
||||||
<ListItemButton selected={selectedIndex === 2}
|
<ListItemButton selected={selectedIndex === 2}
|
||||||
// onClick={handleLogout}
|
onClick={handleLogout}
|
||||||
onClick={()=>{
|
// onClick={()=>{
|
||||||
navigate('/login')
|
// navigate('/login')
|
||||||
}}
|
// }}
|
||||||
>
|
>
|
||||||
<ListItemIcon>
|
<ListItemIcon>
|
||||||
<LogoutOutlined />
|
<LogoutOutlined />
|
||||||
|
|||||||
@@ -52,12 +52,20 @@ const Profile = () => {
|
|||||||
// const { logout, user } = useAuth();
|
// const { logout, user } = useAuth();
|
||||||
const handleLogout = async () => {
|
const handleLogout = async () => {
|
||||||
try {
|
try {
|
||||||
await logout();
|
// await logout();
|
||||||
navigate(`/login`, {
|
|
||||||
state: {
|
// navigate(`/login`, {
|
||||||
from: ''
|
// state: {
|
||||||
}
|
// from: ''
|
||||||
});
|
// }
|
||||||
|
// });
|
||||||
|
localStorage.removeItem('firstname');
|
||||||
|
localStorage.removeItem('appuserid');
|
||||||
|
localStorage.removeItem('authname');
|
||||||
|
localStorage.removeItem('roleid');
|
||||||
|
|
||||||
|
navigate('/login')
|
||||||
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err);
|
console.error(err);
|
||||||
}
|
}
|
||||||
@@ -153,14 +161,20 @@ const Profile = () => {
|
|||||||
{/* {user?.name} */}
|
{/* {user?.name} */}
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="body2" color="textSecondary">
|
<Typography variant="body2" color="textSecondary">
|
||||||
UI/UX Designer
|
{/* UI/UX Designer */}
|
||||||
|
user
|
||||||
</Typography>
|
</Typography>
|
||||||
</Stack>
|
</Stack>
|
||||||
</Stack>
|
</Stack>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<Tooltip title="Logout">
|
<Tooltip title="Logout">
|
||||||
<IconButton size="large" sx={{ color: 'text.primary' }} onClick={handleLogout}>
|
<IconButton size="large" sx={{ color: 'text.primary' }}
|
||||||
|
// onClick={handleLogout}>
|
||||||
|
onClick={()=>{
|
||||||
|
handleLogout()
|
||||||
|
}}>
|
||||||
|
|
||||||
<LogoutOutlined />
|
<LogoutOutlined />
|
||||||
</IconButton>
|
</IconButton>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
@@ -182,7 +196,7 @@ const Profile = () => {
|
|||||||
label="Profile"
|
label="Profile"
|
||||||
{...a11yProps(0)}
|
{...a11yProps(0)}
|
||||||
/>
|
/>
|
||||||
<Tab
|
{/* <Tab
|
||||||
sx={{
|
sx={{
|
||||||
display: 'flex',
|
display: 'flex',
|
||||||
flexDirection: 'row',
|
flexDirection: 'row',
|
||||||
@@ -193,7 +207,7 @@ const Profile = () => {
|
|||||||
icon={<SettingOutlined style={{ marginBottom: 0, marginRight: '10px' }} />}
|
icon={<SettingOutlined style={{ marginBottom: 0, marginRight: '10px' }} />}
|
||||||
label="Setting"
|
label="Setting"
|
||||||
{...a11yProps(1)}
|
{...a11yProps(1)}
|
||||||
/>
|
/> */}
|
||||||
</Tabs>
|
</Tabs>
|
||||||
</Box>
|
</Box>
|
||||||
<TabPanel value={value} index={0} dir={theme.direction}>
|
<TabPanel value={value} index={0} dir={theme.direction}>
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ const HeaderContent = () => {
|
|||||||
{matchesXs && <Box sx={{ width: '100%', ml: 1 }} />}
|
{matchesXs && <Box sx={{ width: '100%', ml: 1 }} />}
|
||||||
|
|
||||||
<Notification />
|
<Notification />
|
||||||
<Message />
|
{/* <Message /> */}
|
||||||
{!matchesXs && <Profile />}
|
{!matchesXs && <Profile />}
|
||||||
{matchesXs && <MobileSection />}
|
{matchesXs && <MobileSection />}
|
||||||
</Stack>
|
</Stack>
|
||||||
|
|||||||
@@ -63,11 +63,13 @@ const Login = () => {
|
|||||||
// }, [toast])
|
// }, [toast])
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (localStorage.getItem("firstname") || localStorage.getItem("appuserid")) {
|
if (localStorage.getItem("authname")
|
||||||
|
// || localStorage.getItem("appuserid")
|
||||||
|
) {
|
||||||
navigate('/dashboard')
|
navigate('/dashboard')
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(alertmessage)
|
// console.log(alertmessage)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const usernamecheck = async (e) => {
|
const usernamecheck = async (e) => {
|
||||||
@@ -78,17 +80,20 @@ const Login = () => {
|
|||||||
// await axios.post(`${process.env.REACT_APP_URL}/auth/login`, {
|
// await axios.post(`${process.env.REACT_APP_URL}/auth/login`, {
|
||||||
// "authname": e.target.value
|
// "authname": e.target.value
|
||||||
// })
|
// })
|
||||||
await axios.post(`${process.env.REACT_APP_URL2}/users/login`, {
|
await axios.post(`${process.env.REACT_APP_URL}/users/login`, {
|
||||||
"authname": e.target.value,
|
"authname": e.target.value,
|
||||||
"configid":3,
|
"configid":1,
|
||||||
// "password":'admi'
|
"password":'admin'
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log(res.data);
|
console.log(res.data)
|
||||||
if (res.data.userinfo.authname === e.target.value) {
|
if (res.data.details.authname === e.target.value) {
|
||||||
|
|
||||||
setUsername(e.target.value);
|
setUsername(e.target.value);
|
||||||
setCheckusername(false);
|
setCheckusername(false);
|
||||||
|
}else{
|
||||||
|
setCheckusername(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
// if (res.data.authname === e.target.value) {
|
// if (res.data.authname === e.target.value) {
|
||||||
|
|
||||||
@@ -96,10 +101,10 @@ const Login = () => {
|
|||||||
// setCheckusername(false);
|
// setCheckusername(false);
|
||||||
// }
|
// }
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
if (err.response.data.message === 'No user found') {
|
// if (err.response.data.message === 'No user found') {
|
||||||
|
|
||||||
setCheckusername(true);
|
setCheckusername(true);
|
||||||
}
|
// }
|
||||||
})
|
})
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err)
|
console.log(err)
|
||||||
@@ -115,13 +120,13 @@ const Login = () => {
|
|||||||
if (password && username) {
|
if (password && username) {
|
||||||
setSubmitting(true)
|
setSubmitting(true)
|
||||||
try {
|
try {
|
||||||
await axios.post(`${process.env.REACT_APP_URL2}/users/login`, {
|
await axios.post(`${process.env.REACT_APP_URL}/users/login`, {
|
||||||
"authname": username,
|
"authname": username,
|
||||||
"configid":3,
|
"configid":1,
|
||||||
"password": password
|
"password": password
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
console.log(res.data)
|
console.log(res.data)
|
||||||
if (res.data.userinfo.authname === username) {
|
if (res.data.details.authname === username) {
|
||||||
// setAlertmessage('login Successfull');
|
// setAlertmessage('login Successfull');
|
||||||
setLoading(false)
|
setLoading(false)
|
||||||
// dispatch(
|
// dispatch(
|
||||||
@@ -141,12 +146,14 @@ const Login = () => {
|
|||||||
})
|
})
|
||||||
setUsername('');
|
setUsername('');
|
||||||
setPassword('');
|
setPassword('');
|
||||||
localStorage.setItem("firstname", res.data.userinfo.firstname);
|
localStorage.setItem("firstname", res.data.details.firstname);
|
||||||
localStorage.setItem("appuserid", res.data.userinfo.userid);
|
localStorage.setItem("authname", res.data.details.authname);
|
||||||
localStorage.setItem("roleid", res.data.userinfo.roleid);
|
|
||||||
|
localStorage.setItem("appuserid", res.data.details.userid);
|
||||||
|
localStorage.setItem("roleid", res.data.details.roleid);
|
||||||
|
|
||||||
|
|
||||||
navigate('/dashboard', { state: { firstname: res.data.userinfo.firstname } });
|
navigate('/dashboard');
|
||||||
setSubmitting(false)
|
setSubmitting(false)
|
||||||
}
|
}
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
@@ -226,7 +233,9 @@ const Login = () => {
|
|||||||
container
|
container
|
||||||
justifyContent="center"
|
justifyContent="center"
|
||||||
alignItems="center"
|
alignItems="center"
|
||||||
sx={{ minHeight: { xs: 'calc(100vh - 210px)', sm: 'calc(100vh - 134px)', md: 'calc(100vh - 112px)' } }}
|
// sx={{ minHeight: { xs: 'calc(100vh - 210px)', sm: 'calc(100vh - 134px)', md: 'calc(100vh - 112px)' } }}
|
||||||
|
sx={{ minHeight: { xs: 'calc(100vh - 210px)', sm: 'calc(100vh - 134px)', md: 'calc(100vh - 132px)' } }}
|
||||||
|
|
||||||
>
|
>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
{/* <AuthCard>{children}</AuthCard> */}
|
{/* <AuthCard>{children}</AuthCard> */}
|
||||||
@@ -398,8 +407,8 @@ const Login = () => {
|
|||||||
disabled={submitting}
|
disabled={submitting}
|
||||||
|
|
||||||
onClick={()=>{
|
onClick={()=>{
|
||||||
// loginsend()
|
loginsend()
|
||||||
navigate('/dashboard')
|
// navigate('/dashboard')
|
||||||
}}
|
}}
|
||||||
fullWidth size="large" type="submit" variant="contained" color="primary">
|
fullWidth size="large" type="submit" variant="contained" color="primary">
|
||||||
Login
|
Login
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
// import { lazy } from 'react';
|
import { lazy } from 'react';
|
||||||
|
|
||||||
// project import
|
// project import
|
||||||
// import GuestGuard from 'utils/route-guard/GuestGuard';
|
// import GuestGuard from 'utils/route-guard/GuestGuard';
|
||||||
import CommonLayout from 'layout/CommonLayout';
|
import CommonLayout from 'layout/CommonLayout';
|
||||||
// import Loadable from 'components/Loadable';
|
import Loadable from 'components/Loadable';
|
||||||
|
|
||||||
// render - login
|
// render - login
|
||||||
// const AuthLogin = Loadable(lazy(() => import('pages/auth/login')));
|
// const AuthLogin = Loadable(lazy(() => import('pages/auth/login')));
|
||||||
@@ -12,6 +12,7 @@ import CommonLayout from 'layout/CommonLayout';
|
|||||||
// const AuthCheckMail = Loadable(lazy(() => import('pages/auth/check-mail')));
|
// const AuthCheckMail = Loadable(lazy(() => import('pages/auth/check-mail')));
|
||||||
// const AuthResetPassword = Loadable(lazy(() => import('pages/auth/reset-password')));
|
// const AuthResetPassword = Loadable(lazy(() => import('pages/auth/reset-password')));
|
||||||
// const AuthCodeVerification = Loadable(lazy(() => import('pages/auth/code-verification')));
|
// const AuthCodeVerification = Loadable(lazy(() => import('pages/auth/code-verification')));
|
||||||
|
const Login = Loadable(lazy(() => import('pages/nearle/login')));
|
||||||
|
|
||||||
// ==============================|| AUTH ROUTING ||============================== //
|
// ==============================|| AUTH ROUTING ||============================== //
|
||||||
|
|
||||||
@@ -26,6 +27,14 @@ const LoginRoutes = {
|
|||||||
// </GuestGuard>
|
// </GuestGuard>
|
||||||
),
|
),
|
||||||
children: [
|
children: [
|
||||||
|
{
|
||||||
|
path: '/',
|
||||||
|
element: <Login />
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'login',
|
||||||
|
element: <Login />
|
||||||
|
},
|
||||||
// {
|
// {
|
||||||
// path: '/',
|
// path: '/',
|
||||||
// element: <AuthLogin />
|
// element: <AuthLogin />
|
||||||
@@ -55,7 +64,8 @@ const LoginRoutes = {
|
|||||||
// element: <AuthCodeVerification />
|
// element: <AuthCodeVerification />
|
||||||
// }
|
// }
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -32,10 +32,10 @@ const MainRoutes = {
|
|||||||
// </AuthGuard>
|
// </AuthGuard>
|
||||||
),
|
),
|
||||||
children: [
|
children: [
|
||||||
{
|
// {
|
||||||
path: 'sample-page',
|
// path: 'sample-page',
|
||||||
element: <SamplePage />
|
// element: <SamplePage />
|
||||||
},
|
// },
|
||||||
{
|
{
|
||||||
path: 'dashboard',
|
path: 'dashboard',
|
||||||
element: <Dashboard />
|
element: <Dashboard />
|
||||||
@@ -43,6 +43,7 @@ const MainRoutes = {
|
|||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
path:'/login',
|
path:'/login',
|
||||||
element:<Login />
|
element:<Login />
|
||||||
|
|||||||
15
yarn.lock
15
yarn.lock
@@ -3758,6 +3758,11 @@ commander@^2.20.0:
|
|||||||
resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
|
resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
|
||||||
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
||||||
|
|
||||||
|
commander@^4.0.0:
|
||||||
|
version "4.1.1"
|
||||||
|
resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz"
|
||||||
|
integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
|
||||||
|
|
||||||
commander@^7.2.0:
|
commander@^7.2.0:
|
||||||
version "7.2.0"
|
version "7.2.0"
|
||||||
resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz"
|
resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz"
|
||||||
@@ -3932,7 +3937,7 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
|
|||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
sha.js "^2.4.8"
|
sha.js "^2.4.8"
|
||||||
|
|
||||||
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
||||||
version "7.0.3"
|
version "7.0.3"
|
||||||
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
|
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
|
||||||
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
|
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
|
||||||
@@ -4635,6 +4640,14 @@ entities@^4.4.0:
|
|||||||
resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
|
resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
|
||||||
integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
|
integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
|
||||||
|
|
||||||
|
env-cmd@^10.1.0:
|
||||||
|
version "10.1.0"
|
||||||
|
resolved "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz"
|
||||||
|
integrity sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==
|
||||||
|
dependencies:
|
||||||
|
commander "^4.0.0"
|
||||||
|
cross-spawn "^7.0.0"
|
||||||
|
|
||||||
error-ex@^1.3.1:
|
error-ex@^1.3.1:
|
||||||
version "1.3.2"
|
version "1.3.2"
|
||||||
resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
|
resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz"
|
||||||
|
|||||||
Reference in New Issue
Block a user