mirror of
https://gitea.gofwd.group/dstrawsb/ballistic-builder.git
synced 2025-12-06 02:36:44 -05:00
132 lines
3.7 KiB
TypeScript
132 lines
3.7 KiB
TypeScript
|
|
import React from 'react';
|
||
|
|
import Avatar from '@mui/material/Avatar';
|
||
|
|
import Button from '@mui/material/Button';
|
||
|
|
import CssBaseline from '@mui/material/CssBaseline';
|
||
|
|
import TextField from '@mui/material/TextField';
|
||
|
|
import FormControlLabel from '@mui/material/FormControlLabel';
|
||
|
|
import Checkbox from '@mui/material/Checkbox';
|
||
|
|
import Link from '@mui/material/Link';
|
||
|
|
import Paper from '@mui/material/Paper';
|
||
|
|
import Box from '@mui/material/Box';
|
||
|
|
import Grid from '@mui/material/Grid';
|
||
|
|
import LockOutlinedIcon from '@material-ui/icons/LockOutlined';
|
||
|
|
import Typography from '@mui/material/Typography';
|
||
|
|
import { makeStyles } from '@mui/material/styles';
|
||
|
|
import styles from "./styles.module.css";
|
||
|
|
|
||
|
|
function Copyright() {
|
||
|
|
return (
|
||
|
|
<Typography variant="body2" color="textSecondary" align="center">
|
||
|
|
{'Copyright © '}
|
||
|
|
<Link color="inherit" href="https://material-ui.com/">
|
||
|
|
Your Website
|
||
|
|
</Link>{' '}
|
||
|
|
{new Date().getFullYear()}
|
||
|
|
{'.'}
|
||
|
|
</Typography>
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
const useStyles = makeStyles((theme) => ({
|
||
|
|
root: {
|
||
|
|
height: '100vh',
|
||
|
|
},
|
||
|
|
image: {
|
||
|
|
backgroundImage: 'url(https://source.unsplash.com/random)',
|
||
|
|
backgroundRepeat: 'no-repeat',
|
||
|
|
backgroundColor:
|
||
|
|
theme.palette.type === 'light' ? theme.palette.grey[50] : theme.palette.grey[900],
|
||
|
|
backgroundSize: 'cover',
|
||
|
|
backgroundPosition: 'center',
|
||
|
|
},
|
||
|
|
paper: {
|
||
|
|
margin: theme.spacing(8, 4),
|
||
|
|
display: 'flex',
|
||
|
|
flexDirection: 'column',
|
||
|
|
alignItems: 'center',
|
||
|
|
},
|
||
|
|
avatar: {
|
||
|
|
margin: theme.spacing(1),
|
||
|
|
backgroundColor: theme.palette.secondary.main,
|
||
|
|
},
|
||
|
|
form: {
|
||
|
|
width: '100%', // Fix IE 11 issue.
|
||
|
|
marginTop: theme.spacing(1),
|
||
|
|
},
|
||
|
|
submit: {
|
||
|
|
margin: theme.spacing(3, 0, 2),
|
||
|
|
},
|
||
|
|
}));
|
||
|
|
|
||
|
|
export default function SignInSide() {
|
||
|
|
const classes = useStyles();
|
||
|
|
|
||
|
|
return (
|
||
|
|
<Grid container component="main" className={classes.root}>
|
||
|
|
<CssBaseline />
|
||
|
|
<Grid item xs={false} sm={4} md={7} className={classes.image} />
|
||
|
|
<Grid item xs={12} sm={8} md={5} component={Paper} elevation={6} square>
|
||
|
|
<div className={classes.paper}>
|
||
|
|
<Avatar className={classes.avatar}>
|
||
|
|
<LockOutlinedIcon />
|
||
|
|
</Avatar>
|
||
|
|
<Typography component="h1" variant="h5">
|
||
|
|
Sign in
|
||
|
|
</Typography>
|
||
|
|
<form className={classes.form} noValidate>
|
||
|
|
<TextField
|
||
|
|
variant="outlined"
|
||
|
|
margin="normal"
|
||
|
|
required
|
||
|
|
fullWidth
|
||
|
|
id="email"
|
||
|
|
label="Email Address"
|
||
|
|
name="email"
|
||
|
|
autoComplete="email"
|
||
|
|
autoFocus
|
||
|
|
/>
|
||
|
|
<TextField
|
||
|
|
variant="outlined"
|
||
|
|
margin="normal"
|
||
|
|
required
|
||
|
|
fullWidth
|
||
|
|
name="password"
|
||
|
|
label="Password"
|
||
|
|
type="password"
|
||
|
|
id="password"
|
||
|
|
autoComplete="current-password"
|
||
|
|
/>
|
||
|
|
<FormControlLabel
|
||
|
|
control={<Checkbox value="remember" color="primary" />}
|
||
|
|
label="Remember me"
|
||
|
|
/>
|
||
|
|
<Button
|
||
|
|
type="submit"
|
||
|
|
fullWidth
|
||
|
|
variant="contained"
|
||
|
|
color="primary"
|
||
|
|
className={classes.submit}
|
||
|
|
>
|
||
|
|
Sign In
|
||
|
|
</Button>
|
||
|
|
<Grid container>
|
||
|
|
<Grid item xs>
|
||
|
|
<Link href="#" variant="body2">
|
||
|
|
Forgot password?
|
||
|
|
</Link>
|
||
|
|
</Grid>
|
||
|
|
<Grid item>
|
||
|
|
<Link href="#" variant="body2">
|
||
|
|
{"Don't have an account? Sign Up"}
|
||
|
|
</Link>
|
||
|
|
</Grid>
|
||
|
|
</Grid>
|
||
|
|
<Box mt={5}>
|
||
|
|
<Copyright />
|
||
|
|
</Box>
|
||
|
|
</form>
|
||
|
|
</div>
|
||
|
|
</Grid>
|
||
|
|
</Grid>
|
||
|
|
);
|
||
|
|
}
|