"use client"; import { useState } from "react"; import { observer } from "mobx-react"; import Image from "next/image"; import Link from "next/link"; // plane imports import { useTranslation } from "@plane/i18n"; import { Button, getButtonStyling } from "@plane/propel/button"; import { PlaneLogo } from "@plane/propel/icons"; import type { IWorkspace } from "@plane/types"; // components import { CreateWorkspaceForm } from "@/components/workspace/create-workspace-form"; // hooks import { useUser, useUserProfile } from "@/hooks/store/user"; import { useAppRouter } from "@/hooks/use-app-router"; // wrappers import { AuthenticationWrapper } from "@/lib/wrappers/authentication-wrapper"; // plane web helpers import { getIsWorkspaceCreationDisabled } from "@/plane-web/helpers/instance.helper"; // images import WorkspaceCreationDisabled from "@/public/workspace/workspace-creation-disabled.png"; const CreateWorkspacePage = observer(() => { const { t } = useTranslation(); // router const router = useAppRouter(); // store hooks const { data: currentUser } = useUser(); const { updateUserProfile } = useUserProfile(); // states const [defaultValues, setDefaultValues] = useState>({ name: "", slug: "", organization_size: "", }); // derived values const isWorkspaceCreationDisabled = getIsWorkspaceCreationDisabled(); // methods const getMailtoHref = () => { const subject = t("workspace_creation.request_email.subject"); const body = t("workspace_creation.request_email.body", { firstName: currentUser?.first_name || "", lastName: currentUser?.last_name || "", email: currentUser?.email || "", }); return `mailto:?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`; }; const onSubmit = async (workspace: IWorkspace) => { await updateUserProfile({ last_workspace_id: workspace.id }).then(() => router.push(`/${workspace.slug}`)); }; return (
{currentUser?.email}
{isWorkspaceCreationDisabled ? (
Workspace creation disabled
{t("workspace_creation.errors.creation_disabled.title")}

{t("workspace_creation.errors.creation_disabled.description")}

) : (

{t("workspace_creation.heading")}

)}
); }); export default CreateWorkspacePage;