diff options
Diffstat (limited to 'admin')
-rw-r--r-- | admin/public/assets/images/error.svg | 27 | ||||
-rw-r--r-- | admin/src/components/Error/Error.jsx | 29 | ||||
-rw-r--r-- | admin/src/components/Error/Error.module.css | 19 | ||||
-rw-r--r-- | admin/src/components/Spinner/Spinner.jsx | 16 | ||||
-rw-r--r-- | admin/src/components/Spinner/Spinner.module.css | 6 | ||||
-rw-r--r-- | admin/src/pages/UnverifiedUsers/UnverifiedUsers.jsx | 14 |
6 files changed, 109 insertions, 2 deletions
diff --git a/admin/public/assets/images/error.svg b/admin/public/assets/images/error.svg new file mode 100644 index 0000000..d77b45f --- /dev/null +++ b/admin/public/assets/images/error.svg @@ -0,0 +1,27 @@ +<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="256" height="256" viewBox="0 0 64 64" + style=" fill:#000000;"> + <path fill="#FAB400" d="M44,14v41c0,0.55-0.44,1-1,1H9c-0.55,0-1-0.45-1-1V5c0-0.55,0.45-1,1-1h25L44,14z"></path> + <path fill="#DC9600" + d="M44,46.307v8.28l-7.526-7.557c-0.361-0.351-0.403-0.919-0.103-1.342l-2.282-2.271 c-2.416,1.807-5.42,2.891-8.673,2.891c-7.981,0-14.454-6.484-14.454-14.454c0-7.991,6.473-14.454,14.454-14.454 S39.87,23.861,39.87,31.852c0,3.232-1.063,6.215-2.87,8.631v0.01l2.292,2.271c0.413-0.258,0.96-0.207,1.311,0.134L44,46.307z"> + </path> + <rect width="3.999" height="4.487" x="34.998" y="38.757" fill="#F0F0F0" transform="rotate(-45.001 36.997 41)"> + </rect> + <path fill="#0A5078" + d="M27.557,16.102c6.095,0.751,11.09,5.56,12.045,11.626c0.627,3.985-0.436,7.741-2.602,10.624v0.01 c-0.8,1.07-1.75,2.02-2.82,2.83c-2.893,2.163-6.657,3.257-10.669,2.62c-6.087-0.967-10.905-5.99-11.63-12.111 C10.804,22.609,18.458,14.981,27.557,16.102z"> + </path> + <path fill="#DC9600" d="M44.02,16H34c-1.105,0-2-0.895-2-2V4h2.003L44,13.98L44.02,16z"></path> + <path fill="#FAB400" d="M44,14h-9c-0.552,0-1-0.448-1-1V4L44,14z"></path> + <path fill="#00143C" + d="M25.009,10h-12c-0.552,0-1,0.448-1,1s0.448,1,1,1h12c0.552,0,1-0.448,1-1S25.561,10,25.009,10z"></path> + <path fill="#00143C" + d="M31.009,50h-18c-0.552,0-1,0.448-1,1s0.448,1,1,1h18c0.552,0,1-0.448,1-1S31.561,50,31.009,50z"></path> + <path fill="#00143C" d="M18.009,46h-5c-0.552,0-1,0.448-1,1s0.448,1,1,1h5c0.552,0,1-0.448,1-1S18.561,46,18.009,46z"> + </path> + <circle cx="26" cy="30" r="10" fill="#FAB400"></circle> + <path fill="#C80A50" + d="M29.009,29.993l2.293-2.293c0.391-0.391,0.391-1.024,0-1.414L29.716,24.7 c-0.391-0.391-1.024-0.391-1.414,0l-2.293,2.293L23.716,24.7c-0.391-0.391-1.024-0.391-1.414,0l-1.586,1.586 c-0.391,0.391-0.391,1.024,0,1.414l2.293,2.293l-2.293,2.293c-0.391,0.391-0.391,1.024,0,1.414l1.586,1.586 c0.391,0.391,1.024,0.391,1.414,0l2.293-2.293l2.293,2.293c0.391,0.391,1.024,0.391,1.414,0l1.586-1.586 c0.391-0.391,0.391-1.024,0-1.414L29.009,29.993z"> + </path> + <path fill="#0A5078" + d="M55.159,59.183c-1.1,1.1-2.89,1.1-4,0l-14.44-14.48c-0.35-0.35-0.39-0.9-0.1-1.3 c0.03-0.04,0.06-0.08,0.1-0.12l2.58-2.58c0.05-0.05,0.1-0.09,0.15-0.13c0.4-0.25,0.93-0.21,1.27,0.13l14.44,14.48 C56.249,56.253,56.289,58.063,55.159,59.183z"> + </path> +</svg>
\ No newline at end of file diff --git a/admin/src/components/Error/Error.jsx b/admin/src/components/Error/Error.jsx new file mode 100644 index 0000000..110999b --- /dev/null +++ b/admin/src/components/Error/Error.jsx @@ -0,0 +1,29 @@ +import React, { useEffect } from 'react' +import { useNavigate } from 'react-router-dom' +import { initialUserData } from '../../constants/userData' +import { userContext } from '../../context/User' + +import styles from './Error.module.css' + +const Error = ({ message }) => { + const navigate = useNavigate() + useEffect(() => { + setTimeout(() => { + navigate('/') + }, 3000) + }, []) + + return ( + <> + <div className={styles.error}> + <img + src={`${process.env.PUBLIC_URL}/assets/images/error.svg`} + className={styles.error__image} + /> + <h1 className={styles.error__title}>{message}</h1> + </div> + </> + ) +} + +export default Error diff --git a/admin/src/components/Error/Error.module.css b/admin/src/components/Error/Error.module.css new file mode 100644 index 0000000..d58d354 --- /dev/null +++ b/admin/src/components/Error/Error.module.css @@ -0,0 +1,19 @@ +.error { + display: flex; + height: 100vh; + width: 100vw; + flex-direction: column; + justify-content: center; + align-items: center; +} + +.error__title { + font-family: 'Barlow', sans-serif; + font-weight: 400; + font-size: var(--font-large); + text-align: center; +} + +.error__image { + margin-left: 40px; +} diff --git a/admin/src/components/Spinner/Spinner.jsx b/admin/src/components/Spinner/Spinner.jsx new file mode 100644 index 0000000..da16d0f --- /dev/null +++ b/admin/src/components/Spinner/Spinner.jsx @@ -0,0 +1,16 @@ +import React from 'react' +import CircularProgress from '@mui/material/CircularProgress' +import Header from '../Header/Header' +import styles from './Spinner.module.css' + +const Spinner = ({ heading }) => { + console.log(heading) + return ( + <div className={styles.spinner}> + <Header subheading={heading} /> + <CircularProgress /> + </div> + ) +} + +export default Spinner diff --git a/admin/src/components/Spinner/Spinner.module.css b/admin/src/components/Spinner/Spinner.module.css new file mode 100644 index 0000000..04197de --- /dev/null +++ b/admin/src/components/Spinner/Spinner.module.css @@ -0,0 +1,6 @@ +.spinner { + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +}
\ No newline at end of file diff --git a/admin/src/pages/UnverifiedUsers/UnverifiedUsers.jsx b/admin/src/pages/UnverifiedUsers/UnverifiedUsers.jsx index 67de506..0c3a57d 100644 --- a/admin/src/pages/UnverifiedUsers/UnverifiedUsers.jsx +++ b/admin/src/pages/UnverifiedUsers/UnverifiedUsers.jsx @@ -10,13 +10,23 @@ import { import {useQuery, useMutation} from 'react-query'; import styles from './UnverifiedUsers.module.css'; +import Spinner from '../../components/Spinner/Spinner'; const UnverifiedUsers = () => { - const {data} = useQuery('unverified', getUnverifiedUsers); + const {data, isLoading, isError} = useQuery('unverified', getUnverifiedUsers); const deleteUse = useMutation((id) => deleteUser(id)); const updateUse = useMutation((id) => updateUser(id, {verified: true})); - + useEffect(() => {}, [data]); + + if (isLoading) { + return <Spinner heading='Admin' /> + } + + if (isError) { + return <div>Error</div> + } + return ( <div className={styles.unverified_users}> |