diff --git a/src/components/run-code.tsx b/src/components/run-code.tsx index afbdd47..03d2ec6 100644 --- a/src/components/run-code.tsx +++ b/src/components/run-code.tsx @@ -5,18 +5,19 @@ import { useState } from "react"; import { judge } from "@/app/actions/judge"; import { Button } from "@/components/ui/button"; import { LoaderCircleIcon, PlayIcon } from "lucide-react"; -import { useCodeEditorStore } from "@/store/useCodeEditorStore"; -import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "./ui/tooltip"; +import { useProblemEditor } from "@/hooks/use-problem-editor"; +import { showExitCodeToast } from "@/lib/show-exit-code-toast"; +import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip"; interface RunCodeProps { className?: string; } -export default function RunCode({ +export function RunCode({ className, ...props }: RunCodeProps) { - const { language, editor, setResult } = useCodeEditorStore(); + const { currentLang, editor } = useProblemEditor(); const [isLoading, setIsLoading] = useState(false); const handleJudge = async () => { @@ -26,8 +27,8 @@ export default function RunCode({ setIsLoading(true); try { - const result = await judge(language, code); - setResult(result); + const result = await judge(currentLang, code); + showExitCodeToast({ exitCode: result.exitCode }); } catch (error) { console.error("Error occurred while judging the code:"); console.error(error); @@ -54,7 +55,11 @@ export default function RunCode({ aria-hidden="true" /> ) : ( -