MIF_E31221222/sigap-website/app/(pages)/(auth)/sign-in/page.tsx

78 lines
3.4 KiB
TypeScript

import { SignInForm } from "@/app/(pages)/(auth)/_components/signin-form";
import { Message } from "@/app/_components/form-message";
import { Button } from "@/app/_components/ui/button";
import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from "@/app/_components/ui/carousal";
import { GalleryVerticalEnd, Globe, QuoteIcon } from "lucide-react";
const carouselContent = [
{
quote: "Tried @supabase for the first time yesterday. Amazing tool! I was able to get my Posgres DB up in no time and their documentation on operating on the DB is super easy! 👏 Can't wait for Cloud functions to arrive! It's gonna be a great Firebase alternative!",
author: "@codewithbhargav",
image: "https://github.com/shadcn.png",
},
{
quote: "Check out this amazing product @supabase. A must give try #newidea #opportunity",
author: "@techenthusiast",
image: "https://github.com/shadcn.png",
},
{
quote: "Check out this amazing product @supabase. A must give try #newidea #opportunity",
author: "@dataguru",
image: "https://github.com/shadcn.png",
},
];
export default async function Login(props: { searchParams: Promise<Message> }) {
return (
<div className="grid min-h-svh lg:grid-cols-5">
<div className="flex flex-col gap-4 p-6 md:p-10 bg-[#171717] lg:col-span-2 relative border border-r-2 border-r-gray-400 border-opacity-20">
<div className="flex justify-between items-center">
<a href="#" className="flex items-center gap-2 font-medium">
<div className="flex h-6 w-6 items-center justify-center rounded-md bg-primary text-primary-foreground">
<GalleryVerticalEnd className="size-4" />
</div>
Sigap Tech.
</a>
</div>
<div className="flex flex-1 items-center justify-center">
<div className="w-full max-w-md">
<SignInForm />
</div>
</div>
</div>
<div className="relative hidden bg-[#0a0a0a] lg:flex items-center justify-center lg:col-span-3">
<Button
variant="outline"
size="sm"
className="absolute top-6 right-6 text-white bg-[#242424] border-gray-700 hover:bg-gray-800"
>
<Globe className="mr-0 h-4 w-4" />
Showcase
</Button>
<Carousel showDots autoPlay autoPlayInterval={10000} className="w-full max-w-md" >
<CarouselContent className="py-8">
{carouselContent.map((item, index) => (
<CarouselItem key={index} className="flex flex-col items-center justify-center">
<div className="relative flex flex-col items-start text-start">
<QuoteIcon className="absolute h-20 w-20 text-primary opacity-10 -z-10 top-[-30px] transform rotate-180 " />
<h2 className="text-3xl font-medium text-white mb-8">{item.quote}</h2>
<div className="flex items-center gap-4">
<img
src={item.image}
alt="Profile"
className="w-12 h-12 rounded-full"
/>
<div>
<p className="text-white font-medium">{item.author}</p>
</div>
</div>
</div>
</CarouselItem>
))}
</CarouselContent>
</Carousel>
</div>
</div>
);
}