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 | 26x 2x 26x 2x 26x 26x 26x 2x 26x 26x 26x 2x 26x | import IndividualAssignmentForm from "main/components/Assignments/IndividualAssignmentForm";
import TeamRepositoryAssignmentForm from "main/components/Assignments/TeamRepositoryAssignmentForm";
import { Card, Row, Col } from "react-bootstrap";
import { useBackendMutation } from "main/utils/useBackend";
import { toast } from "react-toastify";
export default function AssignmentTabComponent({ courseId }) {
const onSuccessAssignment = () => {
toast("Repository creation successfully started.");
};
const onSuccessTeamAssignment = () => {
toast("Team repository creation successfully started.");
};
const objectToAxiosParamsIndividualAssignment = (assignment) => ({
url: `/api/repos/createRepos`,
method: "POST",
params: {
courseId: courseId,
repoPrefix: assignment.repoPrefix,
isPrivate: assignment.assignmentPrivacy,
permissions: assignment.permissions,
creationOption: assignment.creationOption,
},
});
const indvidiualAssignmentMutation = useBackendMutation(
objectToAxiosParamsIndividualAssignment,
{ onSuccess: onSuccessAssignment },
);
const postIndividualAssignment = (assignment) => {
indvidiualAssignmentMutation.mutate(assignment);
};
const objectToAxiosParamsTeamAssignment = (teamAssignment) => ({
url: `/api/repos/createTeamRepos`,
method: "POST",
params: {
courseId: courseId,
repoPrefix: teamAssignment.repoPrefix,
isPrivate: teamAssignment.assignmentPrivacy,
permissions: teamAssignment.permissions,
},
});
const teamAssignmentMutation = useBackendMutation(
objectToAxiosParamsTeamAssignment,
{ onSuccess: onSuccessTeamAssignment },
);
const postTeamAssignment = (teamAssignment) => {
teamAssignmentMutation.mutate(teamAssignment);
};
return (
<Row md={2} className="g-2 mb-2" data-testid={"AssignmentTabComponent"}>
<Col md={6}>
<Card className="h-100">
<Card.Header>Individual Repository Assignment</Card.Header>
<Card.Body>
<IndividualAssignmentForm submitAction={postIndividualAssignment} />
</Card.Body>
</Card>
</Col>
<Col md={6}>
<Card className="h-100">
<Card.Header>Team Repository Assignment</Card.Header>
<Card.Body>
<TeamRepositoryAssignmentForm submitAction={postTeamAssignment} />
</Card.Body>
</Card>
</Col>
</Row>
);
}
|