diff --git a/src/components/features/dashboard/admin/problemset/new/components/description-form.tsx b/src/components/features/dashboard/admin/problemset/new/components/description-form.tsx index bab2549..531d763 100644 --- a/src/components/features/dashboard/admin/problemset/new/components/description-form.tsx +++ b/src/components/features/dashboard/admin/problemset/new/components/description-form.tsx @@ -10,18 +10,12 @@ import { FormLabel, FormMessage, } from "@/components/ui/form"; +import { useEffect } from "react"; import { useForm } from "react-hook-form"; -import type { editor } from "monaco-editor"; -import { useEffect, useState } from "react"; import { useRouter } from "next/navigation"; -import DockView from "@/components/dockview"; -import { ArrowRightIcon } from "lucide-react"; +import { Input } from "@/components/ui/input"; import { Button } from "@/components/ui/button"; -import MdxPreview from "@/components/mdx-preview"; import { zodResolver } from "@hookform/resolvers/zod"; -import { ScrollArea } from "@/components/ui/scroll-area"; -import MarkdownEditor from "@/components/markdown-editor"; -import type { DockviewApi, IDockviewPanelProps } from "dockview"; import { useNewProblemStore } from "@/app/(app)/dashboard/@admin/problemset/new/store"; import { problemSchema } from "@/components/features/dashboard/admin/problemset/new/schema"; import { newProblemMetadataSchema } from "@/components/features/dashboard/admin/problemset/new/components/metadata-form"; @@ -42,9 +36,7 @@ export default function NewProblemDescriptionForm() { description, setData, } = useNewProblemStore(); - const router = useRouter(); - const [dockApi, setDockApi] = useState(); const form = useForm({ resolver: zodResolver(newProblemDescriptionSchema), @@ -73,99 +65,20 @@ export default function NewProblemDescriptionForm() { } }, [difficulty, displayId, hydrated, published, router, title]); - const descriptionValue = form.watch("description"); - - useEffect(() => { - if (!dockApi) return; - - const mdxPanel = dockApi.getPanel("MdxPreview"); - if (mdxPanel) { - mdxPanel.api.updateParameters({ source: descriptionValue }); - } - - const editorPanel = dockApi.getPanel("MarkdownEditor"); - if (editorPanel) { - editorPanel.api.updateParameters({ value: descriptionValue }); - } - }, [dockApi, descriptionValue]); - return (
( - - - Description - - + + Description - - ) => ( -
-
- - - -
-
- ), - MarkdownEditor: ( - props: IDockviewPanelProps<{ - value: string; - onChange: ( - value: string | undefined, - ev: editor.IModelContentChangedEvent - ) => void; - }> - ) => ( - - ), - }} - options={[ - { - id: "MdxPreview", - component: "MdxPreview", - title: "Mdx Preview", - params: { source: field.value, icon: "FileTextIcon" }, - }, - { - id: "MarkdownEditor", - component: "MarkdownEditor", - title: "Markdown Editor", - params: { - value: field.value, - onChange: (value: string | undefined) => { - field.onChange(value); - }, - icon: "SquarePenIcon", - }, - position: { - referencePanel: "MdxPreview", - direction: "right", - }, - }, - ]} - onApiReady={setDockApi} - /> +
This is your problem description. @@ -174,6 +87,7 @@ export default function NewProblemDescriptionForm() {
)} /> + );