Untitled

 avatar
unknown
plain_text
a month ago
1.6 kB
1
Indexable
import { signUpAction } from "@/app/actions";
import { FormMessage, Message } from "@/components/form-message";
import { SubmitButton } from "@/components/submit-button";
import { Input } from "@/components/ui/input";
import Link from "next/link";

export default async function Signup(props: {
  searchParams: Promise<Message>;
}) {
  const searchParams = await props.searchParams;
  if ("message" in searchParams) {
    return (
      <div className="w-full flex-1 flex items-center h-screen sm:max-w-md justify-center gap-2 p-4">
        <FormMessage message={searchParams} />
      </div>
    );
  }

  return (
    <>
      <form className="flex flex-col">
        <h1 className="text-3xl text-center font-medium">Create an account</h1>
        <div className="flex flex-col gap-2 [&>input]:mb-3 mt-8">
          <Input name="email" placeholder="Email address" required className="placeholder:normal placeholder:text-neutral-400" />
          <Input
            type="password"
            name="password"
            placeholder="Password"
            minLength={6}
            required
            className="font-normal placeholder:normal placeholder:text-neutral-400"
          />
          <SubmitButton formAction={signUpAction} pendingText="Signing up...">
            Sign up
          </SubmitButton>
          <p className="text-sm text text-center py-6">
          Already have an account?{" "}
          <Link className="text-primary font-medium underline" href="/sign-in">
            Log in
          </Link>
        </p>
          <FormMessage message={searchParams} />
        </div>
      </form>
    </>
  );
}
Editor is loading...
Leave a Comment