import { motion } from 'framer-motion' import { ArrowRightLeft } from 'lucide-react' import type { PropsWithChildren, ReactNode } from 'react' import { Card, CardContent, CardHeader, cn } from 'ui' import { ProfileImage } from '@/components/ui/ProfileImage' import { BASE_PATH } from '@/lib/constants' const MotionCard = motion.create(Card) interface InterstitialLayoutProps { logo?: ReactNode title?: ReactNode description?: ReactNode containerClassName?: string cardClassName?: string titleClassName?: string descriptionClassName?: string } export const InterstitialLayout = ({ logo, title, description, containerClassName, cardClassName, titleClassName, descriptionClassName, children, }: PropsWithChildren) => { const TitleElement = typeof title === 'string' ? 'h1' : 'div' const DescriptionElement = typeof description === 'string' ? 'p' : 'div' return (
{(logo || title || description) && ( {logo &&
{logo}
} {(title || description) && (
{title && ( {title} )} {description && ( {description} )}
)}
)} {children}
) } export const LogoBox = ({ children, className }: { children: ReactNode; className?: string }) => (
{children}
) export const LogoPair = ({ left, right }: { left: ReactNode; right: ReactNode }) => (
{left} {right}
) export const BrivenLogo = () => ( Briven ) export const PartnerLogo = ({ src, alt }: { src: string; alt: string }) => ( {alt} ) export const InterstitialAccountRow = ({ avatarUrl, displayName, action, className, }: { avatarUrl?: string displayName?: string action?: ReactNode className?: string }) => (

Signed in as

{displayName || Loading account}

{action}
)