StudentCourseGrid component.
This component is responsible for displaying a grid of courses for a student.
It uses the courses, showEndedCourses, updateView, handleAddStudentToCourse, and handleRemoveStudentFromCourse props to determine the current state of the grid and to handle user interactions.
The component uses the useState hook from React to manage the state of the course name, course topics, modified topics, initial course topics, user course id, open state, new topic, selected course, course to delete, and delete modal open state.
The component also uses the useContext hook from React to access the user context, and the useNavigate hook from React Router to navigate between pages.
StudentCourseGrid component. This component is responsible for displaying a grid of courses for a student. It uses the courses, showEndedCourses, updateView, handleAddStudentToCourse, and handleRemoveStudentFromCourse props to determine the current state of the grid and to handle user interactions. The component uses the useState hook from React to manage the state of the course name, course topics, modified topics, initial course topics, user course id, open state, new topic, selected course, course to delete, and delete modal open state. The component also uses the useContext hook from React to access the user context, and the useNavigate hook from React Router to navigate between pages.