mirror of
https://github.com/shadcn-ui/ui.git
synced 2026-06-23 20:55:47 +00:00
34 lines
622 B
TypeScript
34 lines
622 B
TypeScript
"use client"
|
|
|
|
import { cn } from "@/lib/utils"
|
|
import { useConfig } from "@/hooks/use-config"
|
|
|
|
interface ThemeWrapperProps extends React.ComponentProps<"div"> {
|
|
defaultTheme?: string
|
|
}
|
|
|
|
export function ThemeWrapper({
|
|
defaultTheme,
|
|
children,
|
|
className,
|
|
}: ThemeWrapperProps) {
|
|
const [config] = useConfig()
|
|
|
|
return (
|
|
<div
|
|
className={cn(
|
|
`theme-${defaultTheme || config.theme}`,
|
|
"w-full",
|
|
className
|
|
)}
|
|
style={
|
|
{
|
|
"--radius": `${defaultTheme ? 0.5 : config.radius}rem`,
|
|
} as React.CSSProperties
|
|
}
|
|
>
|
|
{children}
|
|
</div>
|
|
)
|
|
}
|