import { useEffect, useState } from "react"; // next import type { NextPage } from "next"; import { useRouter } from "next/router"; // cookies import Cookies from "js-cookie"; // react-hook-form import { Controller, useForm } from "react-hook-form"; // layouts import WebViewLayout from "layouts/web-view-layout"; // components import { TipTapEditor } from "components/tiptap"; import { PrimaryButton, Spinner } from "components/ui"; const Editor: NextPage = () => { const [isLoading, setIsLoading] = useState(false); const router = useRouter(); const { workspaceSlug, editable } = router.query; const isEditable = editable === "true"; const { watch, setValue, control, formState: { errors }, } = useForm({ defaultValues: { data: "", data_html: "", }, }); useEffect(() => { setIsLoading(true); if (!isEditable) return; setIsLoading(false); const data_html = Cookies.get("data_html"); setValue("data_html", data_html ?? ""); }, [isEditable, setValue]); return ( {isLoading ? (
) : ( <> ( { onChange(description_html); setValue("data_html", description_html); setValue("data", JSON.stringify(description)); }} /> )} /> {isEditable && ( { console.log( "submitted", JSON.stringify({ data_html: watch("data_html"), }) ); }} > Submit )} )}
); }; export default Editor;