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 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | 1x 1x 1x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x 69x | import { useForm } from "react-hook-form";
import { Button, Form } from "react-bootstrap";
export default function IndividualAssignmentForm({ submitAction }) {
const {
register,
formState: { errors },
handleSubmit,
} = useForm();
return (
<Form
onSubmit={handleSubmit(submitAction)}
data-testid="IndividualAssignmentForm"
>
<Form.Group>
<Form.Label htmlFor="repoPrefix">Repository Prefix</Form.Label>
<Form.Control
id="repoPrefix"
type="text"
isInvalid={Boolean(errors.repoPrefix)}
data-testid="IndividualAssignmentForm-repoPrefix"
{...register("repoPrefix", {
required: "Repository Prefix is required.",
})}
/>
<Form.Control.Feedback type="invalid">
{errors.repoPrefix?.message}
</Form.Control.Feedback>
</Form.Group>
<Form.Group className="mb-3">
<Form.Label htmlFor="assignmentPrivacy">
Private Repositories?
</Form.Label>
<Form.Check
id="assignmentPrivacy"
type="checkbox"
data-testid="IndividualAssignmentForm-assignmentPrivacy"
{...register("assignmentPrivacy")}
/>
</Form.Group>
<Form.Group className="mb-3">
<Form.Label htmlFor="permissions">Student Permissions</Form.Label>
<Form.Control
as="select"
defaultValue={"MAINTAIN"}
data-testid={"IndividualAssignmentForm-permissions"}
{...register("permissions")}
>
<option value="READ">Read</option>
<option value="WRITE">Write</option>
<option value="MAINTAIN">Maintain</option>
<option value="ADMIN">Admin</option>
</Form.Control>
</Form.Group>
<Form.Group className="mb-3">
<Form.Label htmlFor="creationTarget">
Repository Creation Target
</Form.Label>
<Form.Control
as="select"
defaultValue={"STUDENTS_ONLY"}
data-testid={"IndividualAssignmentForm-creationTarget"}
{...register("creationTarget")}
>
<option value="STUDENTS_ONLY">Students Only</option>
<option value="STAFF_ONLY">Staff Only</option>
<option value="STUDENTS_AND_STAFF">Both Students and Staff</option>
</Form.Control>
</Form.Group>
<Form.Group>
<Button type="submit" data-testid="IndividualAssignmentForm-submit">
Create
</Button>
</Form.Group>
</Form>
);
}
|