feat(fiche): bouton « Télécharger la fiche (PDF) » dans le héro — CTA secondaire + icône download
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
3 changed files +16 −0
modified
frontend/src/components/Icons.tsx
+5 −0
@@ -103,6 +103,11 @@ const P: Record<string, ReactNode> = { | ||
| 103 | 103 | <path d="M12 21.2S5.4 15.7 5.4 10.8a6.6 6.6 0 0 1 13.2 0c0 4.9-6.6 10.4-6.6 10.4z" /> |
| 104 | 104 | <circle cx="12" cy="10.6" r="2.3" /> |
| 105 | 105 | </>), |
| 106 | + download: (<> | |
| 107 | + <path d="M12 3.6v11.2" /> | |
| 108 | + <path d="m7.2 10.4 4.8 4.8 4.8-4.8" /> | |
| 109 | + <path d="M4.4 19.2h15.2" /> | |
| 110 | + </>), | |
| 106 | 111 | |
| 107 | 112 | // --- quartier --------------------------------------------------------------------- |
| 108 | 113 | leaf: (<> |
modified
frontend/src/pages/Listing.tsx
+3 −0
@@ -377,6 +377,9 @@ export default function ListingPage() { | ||
| 377 | 377 | <a className="cta" href={l.url} target="_blank" rel="noopener noreferrer"> |
| 378 | 378 | Voir l'annonce chez {sourceName(l.source)} <Ico name="external" size={15} /> |
| 379 | 379 | </a> |
| 380 | + <a className="cta cta-pdf" href={`/api/listings/${l.uid}/pdf`} download> | |
| 381 | + Télécharger la fiche (PDF) <Ico name="download" size={15} /> | |
| 382 | + </a> | |
| 380 | 383 | <div className="fine"> |
| 381 | 384 | Agrégé par Immo-Ka — {sourceName(l.source)}{updated ? ` · synchronisé le ${updated}` : ""}. |
| 382 | 385 | </div> |
modified
frontend/src/styles.css
+8 −0
@@ -1064,3 +1064,11 @@ table.rooms tbody tr:hover td { background: var(--accent-soft); } | ||
| 1064 | 1064 | margin-top: 12px; padding-top: 9px; |
| 1065 | 1065 | border-top: 1px dashed var(--line); |
| 1066 | 1066 | } |
| 1067 | + | |
| 1068 | +/* --- CTA secondaire : téléchargement de la fiche PDF --- */ | |
| 1069 | +.cta-pdf { | |
| 1070 | + background: var(--surface); color: var(--ink); | |
| 1071 | + box-shadow: 4px 4px 0 rgba(26, 18, 20, 0.12); | |
| 1072 | + margin-top: 10px; | |
| 1073 | +} | |
| 1074 | +.cta-pdf:hover { background: var(--ink); color: var(--paper); } | |
| 1067 | 1075 | |