fabro/apps/fabro-web/app/components/auth-layout.tsx
Bryan Helmkamp b5f200d701
chore(web): namespace static images under /images and skip in HTTP logs
Move favicon, logo, logotype, and PNG icons from /public/ root to
/public/images/ so the HTTP log middleware can drop them by path
prefix. Extends the existing /assets/ skip in http_log_middleware to
cover /images/ as well, removing favicon/logo entries from the server
log without filtering by extension (which would risk muting future
extension-suffixed API routes).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 08:57:14 -04:00

38 lines
903 B
TypeScript

import type { ReactNode } from "react";
function FabroLogo({ className }: { className?: string }) {
return (
<img
src="/images/logo.svg"
alt="Fabro"
className={className}
draggable={false}
/>
);
}
export function AuthLayout({
children,
footer,
}: {
children: ReactNode;
footer?: ReactNode;
}) {
return (
<div className="flex min-h-screen flex-col items-center justify-center bg-atmosphere px-4">
<div className="w-full max-w-sm">
<div className="mb-8 flex justify-center">
<FabroLogo className="h-12 w-12" />
</div>
<div className="rounded-xl border border-line bg-panel/80 p-8 shadow-lg backdrop-blur-sm">
{children}
</div>
{footer && (
<div className="mt-4 text-center text-xs text-fg-muted">
{footer}
</div>
)}
</div>
</div>
);
}