// --------------------------------------------------------------------------- // Fabri-Ka — inline SVG icon set (no runtime dependency) // --------------------------------------------------------------------------- import { ReactElement, SVGProps } from 'react' type IconProps = SVGProps & { size?: number } function Svg({ size = 20, children, ...rest }: IconProps) { return ( ) } export function IconHome(props: IconProps) { return ( ) } export function IconGrid(props: IconProps) { return ( ) } export function IconStore(props: IconProps) { return ( ) } export function IconSearch(props: IconProps) { return ( ) } export function IconFilter(props: IconProps) { return ( ) } export function IconClose(props: IconProps) { return ( ) } export function IconChevronDown(props: IconProps) { return ( ) } export function IconArrowRight(props: IconProps) { return ( ) } export function IconExternal(props: IconProps) { return ( ) } export function IconLeaf(props: IconProps) { return ( ) } export function IconAlert(props: IconProps) { return ( ) } export function IconMapPin(props: IconProps) { return ( ) } export function IconDrop(props: IconProps) { return ( ) } export function IconShirt(props: IconProps) { return ( ) } export function IconGem(props: IconProps) { return ( ) } export function IconPalette(props: IconProps) { return ( ) } export function IconSparkle(props: IconProps) { return ( ) } export function IconCandle(props: IconProps) { return ( ) } export function IconInstagram(props: IconProps) { return ( ) } export function IconFacebook(props: IconProps) { return ( ) } export function IconDownload(props: IconProps) { return ( ) } export function IconTag(props: IconProps) { return ( ) } // --------------------------------------------------------------------------- // Category label → icon // --------------------------------------------------------------------------- const CATEGORY_ICONS: { keywords: string[]; icon: (p: IconProps) => ReactElement }[] = [ { keywords: ['érable', 'erable', 'miel', 'aliment', 'gourmand', 'épicerie', 'epicerie', 'café', 'cafe', 'thé', 'the ', 'boisson'], icon: IconLeaf }, { keywords: ['beauté', 'beaute', 'soin', 'savon', 'cosmét', 'cosmet', 'corps'], icon: IconDrop }, { keywords: ['maison', 'déco', 'deco', 'cuisine', 'meuble'], icon: IconHome }, { keywords: ['vêtement', 'vetement', 'mode', 'accessoire', 'textile'], icon: IconShirt }, { keywords: ['bijou', 'joaill'], icon: IconGem }, { keywords: ['art', 'papeterie', 'illustration', 'création', 'creation'], icon: IconPalette }, { keywords: ['bougie', 'chandelle', 'ambiance'], icon: IconCandle }, { keywords: ['enfant', 'jouet', 'bébé', 'bebe'], icon: IconSparkle }, ] export function categoryIcon(label: string, size = 16): ReactElement { const l = label.toLowerCase() const match = CATEGORY_ICONS.find((c) => c.keywords.some((k) => l.includes(k))) const Icon = match?.icon ?? IconTag return }