import * as React from "react"; import * as z from "zod"; import { useForm, zodResolver } from "@mantine/form"; import { Container, Title, TextInput, Button, PasswordInput, Box, Anchor, Text, } from "@mantine/core"; import { ISetupWorkspace } from "@/features/auth/types/auth.types"; import useAuth from "@/features/auth/hooks/use-auth"; import classes from "@/features/auth/components/auth.module.css"; import { useTranslation } from "react-i18next"; import SsoCloudSignup from "@/ee/components/sso-cloud-signup.tsx"; import { isCloud } from "@/lib/config.ts"; import { Link } from "react-router-dom"; import APP_ROUTE from "@/lib/app-route.ts"; const formSchema = z.object({ workspaceName: z.string().trim().min(3).max(50), name: z.string().min(1).max(50), email: z .string() .min(1, { message: "email is required" }) .email({ message: "Invalid email address" }), password: z.string().min(8), }); export function SetupWorkspaceForm() { const { t } = useTranslation(); const { setupWorkspace, isLoading } = useAuth(); // useRedirectIfAuthenticated(); const form = useForm({ validate: zodResolver(formSchema), initialValues: { workspaceName: "", name: "", email: "", password: "", }, }); async function onSubmit(data: ISetupWorkspace) { await setupWorkspace(data); } return (
{t("Create workspace")} {isCloud() && }
{isCloud() && ( {t("Already part of an existing workspace?")}{" "} {t("Sign-in")} )}
); }