Create LoginFields component

This commit is contained in:
Mathias Wagner
2024-07-20 13:01:43 +02:00
parent c535650158
commit bf2aa62ad5
2 changed files with 27 additions and 0 deletions

View File

@ -0,0 +1,26 @@
import {IconButton, InputAdornment, TextField} from "@mui/material";
import {Key, Person, Visibility, VisibilityOff} from "@mui/icons-material";
import {useState} from "react";
export const LoginFields = ({username, setUsername, password, setPassword}) => {
const [passwordShown, setPasswordShown] = useState(false);
return (
<>
<TextField label="Username" variant="outlined" sx={{width: "20rem"}} type="text"
placeholder="Username" autoComplete="username" value={username}
onChange={(e) => setUsername(e.target.value)}
InputProps={{startAdornment: <InputAdornment position="start"><Person/></InputAdornment>}}/>
<TextField label="Password" variant="outlined" sx={{width: "20rem"}} placeholder="Password"
InputProps={{
startAdornment: <InputAdornment position="start"><Key/></InputAdornment>,
endAdornment: <InputAdornment position="end"
onClick={() => setPasswordShown(!passwordShown)}>
<IconButton>{passwordShown ? <VisibilityOff/> : <Visibility/>}</IconButton>
</InputAdornment>
}} type={passwordShown ? "text" : "password"} autoComplete="current-password"
value={password} onChange={(e) => setPassword(e.target.value)}/>
</>
)
}

View File

@ -0,0 +1 @@
export {LoginFields as default} from "./LoginFields.jsx";