import { z } from 'zod/v4' import { AlignEnum, ArrangementEnum, BorderEnum, HeightEnum, JustifyEnum, OverflowEnum, RoundedEnum, SizeEnum, WidthEnum, WrapEnum } from './general' export const ContainerVariantEnum = z.enum(['primary', 'secondary', 'ghost']) // Does not container children as that is extended in the root type export const ContainerPropsSchema = z.object({ align: AlignEnum.default('start'), arrangement: ArrangementEnum.default('column'), border: BorderEnum.default('none'), gap: SizeEnum.default('xs'), height: HeightEnum.default('fit'), justify: JustifyEnum.default('start'), overflow: OverflowEnum.default('hidden'), padding: SizeEnum.default('none'), rounded: RoundedEnum.default('default'), variant: ContainerVariantEnum.default('ghost'), width: WidthEnum.default('full'), wrap: WrapEnum.default('nowrap') }) export type ContainerProps = { id?: string // additional 'data-slot'?: string // additional (needed for dialogs) children: React.ReactNode arrangement?: z.infer variant?: z.infer gap?: z.infer padding?: z.infer border?: z.infer justify?: z.infer align?: z.infer rounded?: z.infer height?: z.infer width?: z.infer overflow?: z.infer wrap?: z.infer className?: string // additional }