"use client"; import { BreadCrumbs } from "@/components/BreadCrumbs"; import { Spinner } from "@/components/Spinner"; import { useCanvasAssignmentsQuery, canvasAssignmentKeys, } from "@/features/canvas/hooks/canvasAssignmentHooks"; import { canvasCourseKeys } from "@/features/canvas/hooks/canvasCourseHooks"; import { useCanvasModulesQuery, canvasCourseModuleKeys, } from "@/features/canvas/hooks/canvasModuleHooks"; import { useCanvasPagesQuery, canvasPageKeys, } from "@/features/canvas/hooks/canvasPageHooks"; import { useCanvasQuizzesQuery, canvasQuizKeys, } from "@/features/canvas/hooks/canvasQuizHooks"; import { useLocalCourseSettingsQuery } from "@/features/local/course/localCoursesHooks"; import { useQueryClient } from "@tanstack/react-query"; export function CourseNavigation() { const { data: settings } = useLocalCourseSettingsQuery(); const queryClient = useQueryClient(); const canvasAssignmentsQuery = useCanvasAssignmentsQuery(); const canvasAssignmentGroupsQuery = useCanvasAssignmentsQuery(); const canvasModulesQuery = useCanvasModulesQuery(); const canvasPagesQuery = useCanvasPagesQuery(); const canvasQuizzesQuery = useCanvasQuizzesQuery(); return (
View in Canvas {canvasAssignmentsQuery.isFetching || canvasAssignmentGroupsQuery.isFetching || canvasModulesQuery.isFetching || canvasPagesQuery.isFetching || canvasQuizzesQuery.isFetching ? (
loading canvas data
) : ( )} {settings?.startDate && (
{getSemesterName(settings.startDate)}
)}
); } function getSemesterName(startDate: string) { const start = new Date(startDate); const year = start.getFullYear(); const month = start.getMonth(); if (month < 4) { return `Spring ${year}`; } else if (month < 7) { return `Summer ${year}`; } else { return `Fall ${year}`; } }