Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | 31x 31x | import { Button, Form } from "react-bootstrap";
import { useForm } from "react-hook-form";
export default function UpdateInstructorForm({
initialContents,
handleUpdateInstructor,
}) {
const {
register,
formState: { errors },
handleSubmit,
} = useForm({ defaultValues: initialContents || {} });
return (
<Form onSubmit={handleSubmit(handleUpdateInstructor)}>
<Form.Group>
<Form.Label htmlFor="courseName">Course Name</Form.Label>
<Form.Control
id="courseName"
type="text"
disabled
{...register("courseName")}
/>
<Form.Label htmlFor="instructorEmail">New Instructor Email</Form.Label>
<Form.Control
data-testid="update-instructor-email-input"
id="instructorEmail"
type="email"
isInvalid={Boolean(errors.instructorEmail)}
{...register("instructorEmail", {
required: "Instructor email is required.",
})}
/>
<Form.Control.Feedback type="invalid">
{errors.instructorEmail?.message}
</Form.Control.Feedback>
<Form.Text className="text-muted">
Email must belong to an existing instructor or admin.
</Form.Text>
</Form.Group>
<Button
type="submit"
variant="primary"
data-testid="update-instructor-submit-button"
>
Update Instructor
</Button>
</Form>
);
}
|