53 lines
1.8 KiB
TypeScript
53 lines
1.8 KiB
TypeScript
"use client";
|
|
|
|
import React from "react";
|
|
import Image from "next/image";
|
|
import { Link } from "@/i18n/routing";
|
|
import { AuthLayoutProps } from "@/types/auth";
|
|
import { cn } from "@/lib/utils";
|
|
|
|
export const AuthLayout: React.FC<AuthLayoutProps> = ({
|
|
children,
|
|
showSidebar = true,
|
|
className
|
|
}) => {
|
|
return (
|
|
<div className="flex w-full items-center overflow-hidden min-h-dvh h-dvh basis-full">
|
|
<div className="overflow-y-auto flex flex-wrap w-full h-dvh">
|
|
{showSidebar && (
|
|
<div className="lg:block hidden flex-1 overflow-hidden text-[40px] leading-[48px] text-default-600 relative z-[1] bg-default-50">
|
|
<div className="max-w-[520px] pt-16 ps-20">
|
|
<Link href="/" className="mb-6 inline-block">
|
|
<Image
|
|
src="/assets/mediahub-logo.png"
|
|
alt="MediaHub Logo"
|
|
width={250}
|
|
height={250}
|
|
className="mb-10 w-full h-full"
|
|
priority
|
|
/>
|
|
</Link>
|
|
</div>
|
|
<div className="absolute left-0 2xl:bottom-[-160px] bottom-[-130px] h-full w-full z-[-1]">
|
|
<Image
|
|
src="/assets/vector-login.svg"
|
|
alt="Login background"
|
|
width={300}
|
|
height={300}
|
|
className="mb-10 w-full h-full"
|
|
priority
|
|
/>
|
|
</div>
|
|
</div>
|
|
)}
|
|
<div className={cn("flex-1 relative", className)}>
|
|
<div className="h-full flex flex-col dark:bg-default-100 bg-white">
|
|
<div className="max-w-[524px] md:px-[42px] md:py-[44px] p-7 mx-auto w-full text-2xl text-default-900 mb-3 h-full flex flex-col justify-center">
|
|
{children}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
};
|