32 lines
619 B
TypeScript
32 lines
619 B
TypeScript
import type { ReactNode } from 'react';
|
|
import { cn } from '@/lib/utils';
|
|
|
|
const widths = {
|
|
default: 'max-w-7xl',
|
|
narrow: 'max-w-5xl',
|
|
} as const;
|
|
|
|
type ContainerProps = {
|
|
size?: keyof typeof widths;
|
|
className?: string;
|
|
children: ReactNode;
|
|
};
|
|
|
|
export default function Container({
|
|
size = 'default',
|
|
className,
|
|
children,
|
|
}: ContainerProps) {
|
|
return (
|
|
<div
|
|
className={cn(
|
|
'relative mx-auto w-full px-5 sm:px-6 lg:px-8',
|
|
widths[size],
|
|
className,
|
|
)}
|
|
>
|
|
{children}
|
|
</div>
|
|
);
|
|
}
|