SPB Git

Repository Public

FavButton.tsx 1.5 KB 35 lines tsx

1// -----------------------------------------------------------------------------2// Auto-Ka — Agrégateur de voitures usagées à vendre (province de Québec)3// Auteur : Simon-Pierre Boucher — contact@spboucher.ai4// FavButton.tsx : cœur rond « Mon univers Ka » en coin de photo — ajoute ou5//   retire le véhicule des favoris du hub Groupe KA (magasin central).6//   Non connecté : le clic redirige vers la connexion KA ID.7// -----------------------------------------------------------------------------8import { Vehicle } from "../api";9import { useAccount } from "../account";1011export default function FavButton({ v }: { v: Vehicle }) {12  const { enabled, favs, toggleFav } = useAccount();13  if (!enabled) return null;14  const fav = favs.has(v.uid);15  return (16    <button17      type="button"18      className={`fav-btn ${fav ? "on" : ""}`}19      aria-label={fav ? "Retirer des favoris" : "Ajouter aux favoris"}20      aria-pressed={fav}21      title={fav ? "Retirer des favoris" : "Ajouter aux favoris — Mon univers Ka"}22      onClick={(e) => { e.preventDefault(); e.stopPropagation(); toggleFav(v); }}23    >24      <svg25        width="16" height="16" viewBox="0 0 24 24"26        fill={fav ? "currentColor" : "none"} stroke="currentColor"27        strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"28        aria-hidden="true"29      >30        <path d="M12 20.5C7 16.5 3.5 13 3.5 9.3 3.5 6.8 5.5 5 7.8 5c1.7 0 3.2 1 4.2 2.6C13 6 14.5 5 16.2 5c2.3 0 4.3 1.8 4.3 4.3 0 3.7-3.5 7.2-8.5 11.2z" />31      </svg>32    </button>33  );34}35
Files main
Menu

Theme