Skip to content
This repository has been archived by the owner on Jan 16, 2024. It is now read-only.

Commit

Permalink
feat(page:problemNum): render SubmissionLanguageRadarChart component
Browse files Browse the repository at this point in the history
  ## what
  - render `SubmissionLanguageRadarChart` component

  ## how

  ## why

  ## where
  - ./src/app/problems/[problemNum]/page.tsx

  ## usage
  • Loading branch information
Clumsy-Coder committed Jan 9, 2024
1 parent 72ed5d3 commit bc4d96d
Showing 1 changed file with 21 additions and 3 deletions.
24 changes: 21 additions & 3 deletions src/app/problems/[problemNum]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,12 @@ import {
CardHeader,
CardTitle,
} from "@/components/ui/card"
import { useFetchProblemNum, useFetchSubmissionCount } from "@/hooks";
import { useFetchProblemNum, useFetchSubmissionCount, useFetchSubmissionLang } from "@/hooks";
import { problemNumSchema } from "@/schema";
import { processProblemNumBarChartData } from "@/utils/dataProcessing";
import ProblemVerdictChart from "@/components/charts/ProblemVerdictChart";
import SubmissionsOvertimeChart from "@/components/charts/SubmissionsOvertimeChart";
import SubmissionLanguageRadarChart from "@/components/charts/SubmissionLanguageRadarChart";

type problemPageProps = {
params: z.infer<typeof problemNumSchema>;
Expand All @@ -35,9 +36,19 @@ const ProblemPage = ({ params }: problemPageProps) => {
data: submissionCountData,
error: submissionCountError,
} = useFetchSubmissionCount(params.problemNum)
const {
isLoading: submissionLangIsLoading,
isSuccess: submissionLangIsSuccess,
isError: submissionLangIsError,
data: submissionLangData,
error: submissionLangError,
} = useFetchSubmissionLang(params.problemNum);


if (( problemNumIsLoading || !problemNumData || problemNumData.data === undefined ) ||
( submissionCountIsLoading || !submissionCountData)) {
( submissionCountIsLoading || !submissionCountData) ||
( submissionLangIsLoading || !submissionLangData)
) {
return (
<section>
<h1 className="text-3xl">Loading: {params.problemNum}</h1>
Expand Down Expand Up @@ -100,7 +111,14 @@ const ProblemPage = ({ params }: problemPageProps) => {
</Card>
</div>
<div className="w-full">
{/* <ChartCard title="Submission by language" /> */}
<Card>
<CardHeader>
<CardTitle>Submissions by language</CardTitle>
</CardHeader>
<CardContent className="h-[400px]">
<SubmissionLanguageRadarChart data={submissionLangData} />
</CardContent>
</Card>
</div>
</div>
<div className="flex flex-col gap-4">
Expand Down

0 comments on commit bc4d96d

Please sign in to comment.