import { useId } from "react"; import clsx from "clsx"; import { InstallationIcon } from "@/components/shared/icons/InstallationIcon"; import { LightbulbIcon } from "@/components/shared/icons/LightbulbIcon"; import { PluginsIcon } from "@/components/shared/icons/PluginsIcon"; import { PresetsIcon } from "@/components/shared/icons/PresetsIcon"; import { ThemingIcon } from "@/components/shared/icons/ThemingIcon"; import { WarningIcon } from "@/components/shared/icons/WarningIcon"; const icons = { installation: InstallationIcon, presets: PresetsIcon, plugins: PluginsIcon, theming: ThemingIcon, lightbulb: LightbulbIcon, warning: WarningIcon, }; const iconStyles = { slate: "[--icon-foreground:theme(colors.slate.900)] [--icon-background:theme(colors.white)]", amber: "[--icon-foreground:theme(colors.amber.900)] [--icon-background:theme(colors.amber.100)]", }; export function Icon({ color = "slate", icon, className, ...props }) { let id = useId(); let IconComponent = icons[icon]; return ( ); } const gradients = { slate: [ { stopColor: "#0EA5E9" }, { stopColor: "#22D3EE", offset: ".527" }, { stopColor: "#818CF8", offset: 1 }, ], amber: [ { stopColor: "#FDE68A", offset: ".08" }, { stopColor: "#F59E0B", offset: ".837" }, ], }; export function Gradient({ color = "slate", ...props }) { return ( {gradients[color].map((stop, stopIndex) => ( ))} ); } export function LightMode({ className, ...props }) { return ; } export function DarkMode({ className, ...props }) { return ; }