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 80 | 1x 1x 1x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x 47x | 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="creationOption">
Create Repositories for
</Form.Label>
<Form.Control
as="select"
id="creationOption"
defaultValue="STUDENTS_ONLY"
data-testid="IndividualAssignmentForm-creationOption"
{...register("creationOption")}
>
<option value="STUDENTS_ONLY">Students Only</option>
<option value="STAFF_ONLY">Staff Only</option>
<option value="STUDENTS_AND_STAFF">Students and Staff</option>
</Form.Control>
</Form.Group>
<Form.Group>
<Button type="submit" data-testid="IndividualAssignmentForm-submit">
Create
</Button>
</Form.Group>
</Form>
);
}
|