// ----------------------------------------------------------------------------- // Author: Simon-Pierre Boucher // Contact: contact@spboucher.ai // Project: Toit-Ka // components/Icons.tsx : iconographie MAISON — traits 1,7 px sur grille 24, // zéro emoji, zéro pack générique. Chaque icône est un tracé « stroke » net // qui hérite de la couleur du texte (currentColor). // ----------------------------------------------------------------------------- import { ReactNode } from "react"; const P: Record = { home: (<> ), key: (<> ), map: (<> ), chart: (<> ), building: (<> ), bed: (<> ), bath: (<> ), area: (<> ), land: (<> ), calendar: (<> ), tag: (<> ), camera: (<> ), paw: (<> ), sofa: (<> ), search: (<> ), arrow: (<> ), check: (), alert: (<> ), phone: (), external: (<> ), pin: (<> ), people: (<> ), instagram: (<> ), facebook: (<> ), x: (<> ), linkedin: (<> ), tiktok: (<> ), youtube: (<> ), }; export type IconName = keyof typeof P; export function Ico({ name, size = 18, className = "", stroke = 1.7 }: { name: IconName | string; size?: number; className?: string; stroke?: number }) { const paths = P[name as IconName]; if (!paths) return null; return ( ); } /** Cœur des favoris ♥ — seule icône « remplissable » (état on/off). */ export function IcoHeart({ size = 16, filled = false, className = "" }: { size?: number; filled?: boolean; className?: string }) { return ( ); }