import { FcGoogle } from "react-icons/fc";
import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";
interface Signup1Props {
heading?: string;
subheading?: string;
logo: {
url: string;
src: string;
alt: string;
title?: string;
};
signupText?: string;
googleText?: string;
loginText?: string;
loginUrl?: string;
}
const Signup1 = ({
heading = "Signup",
subheading = "Create a new account",
logo = {
url: "https://www.shadcnblocks.com",
src: "https://shadcnblocks.com/images/block/block-1.svg",
alt: "logo",
title: "shadcnblocks.com",
},
googleText = "Sign up with Google",
signupText = "Create an account",
loginText = "Already have an account?",
loginUrl = "#",
}: Signup1Props) => {
return (
<section className="h-screen bg-muted">
<div className="flex h-full items-center justify-center">
<div className="flex w-full max-w-sm flex-col items-center gap-y-8 rounded-md border border-muted bg-white px-6 py-12 shadow-md">
<div className="flex flex-col items-center gap-y-2">
{/* Logo */}
<div className="flex items-center gap-1 lg:justify-start">
<a href={logo.url}>
<img
src={logo.src}
alt={logo.alt}
title={logo.title}
className="h-12"
/>
</a>
</div>
<h1 className="text-3xl font-semibold">{heading}</h1>
{subheading && (
<p className="text-sm text-muted-foreground">{subheading}</p>
)}
</div>
<div className="flex w-full flex-col gap-8">
<div className="flex flex-col gap-4">
<div className="flex flex-col gap-2">
<Input
type="email"
placeholder="Email"
required
className="bg-white"
/>
</div>
<div className="flex flex-col gap-2">
<Input
type="password"
placeholder="Password"
required
className="bg-white"
/>
</div>
<div className="flex flex-col gap-4">
<Button type="submit" className="mt-2 w-full">
{signupText}
</Button>
<Button variant="outline" className="w-full">
<FcGoogle className="mr-2 size-5" />
{googleText}
</Button>
</div>
</div>
</div>
<div className="flex justify-center gap-1 text-sm text-muted-foreground">
<p>{loginText}</p>
<a
href={loginUrl}
className="font-medium text-primary hover:underline"
>
Login
</a>
</div>
</div>
</div>
</section>
);
};
export { Signup1 };