// wf/category.jsx — Four directions for a category page (Restaurants) // Helper: faux address list data const ADDRESSES = [ { name:'Tuba', kind:'Plage & cuisine de la mer', dist:'12 min · Goudes', rating:'4.6', emoji:'arch' }, { name:'AM par Alexandre Mazzia', kind:'★★★ · Cuisine du monde', dist:'8 min · 13008', rating:'4.8', emoji:'circle' }, { name:'Chez Étienne', kind:'Pizza marseillaise', dist:'15 min · Panier', rating:'4.5', emoji:'rect' }, { name:'Livingston', kind:'Cocktails · bistronomie', dist:'6 min · Préfecture', rating:'4.7', emoji:'circle' }, { name:'La Mercerie', kind:'Bistrot moderne', dist:'10 min · Noailles', rating:'4.6', emoji:'arch' }, ]; // ─── A · Liste verticale avec photos rondes ───────────────────────────── const CatList = () => ( Restaurants mes adresses préférées {ADDRESSES.map((a,i) => ( {a.name} {a.kind} {a.dist} {a.rating} ))} ); // ─── B · Magazine éditorial (alternating photo + texte) ───────────────── const CatMagazine = () => ( Carnet d'adresses · 01 Restaurants. Cinq tables que j'aime, du comptoir simpleau grand restaurant. {ADDRESSES.slice(0, 3).map((a, i) => ( 0{i+1} · {a.kind.split(' · ')[0]} {a.name} S'Y RENDRE → ))} ); // ─── C · Carte + liste latérale ───────────────────────────────────────── const CatMap = () => ( Restaurants {['Tout','Bistrot','Plage','Étoilé','Pizza'].map((p,i) => ( {p} ))} {/* map placeholder */} Carte Google · épingles {/* pin dots */} {[[60,40],[140,80],[210,120],[100,160]].map(([x,y],i)=>( ))} {/* scroll list */} {ADDRESSES.slice(0,3).map((a,i) => ( {i+1} {a.name} {a.dist} ))} ); // ─── D · Mosaïque immersive (full-bleed images) ───────────────────────── const CatMosaic = () => ( Restaurants Mes tablespréférées. {/* asymmetric photo mosaic */} {ADDRESSES.slice(0, 4).map((a, i) => { const tall = i === 0 || i === 3; return ( {a.name} {a.dist.split(' · ')[1]} ); })} 15 adresses au total ); Object.assign(window, { CatList, CatMagazine, CatMap, CatMosaic });