# Story 6-5 — PPTX Export Watermark (PLG Viral Loop) **Epic:** 6 — Croissance & Activation (PLG) **Status:** done ## User Story **En tant qu'** utilisateur qui partage une présentation exportée depuis Memento, **Je veux** que chaque slide porte discrètement la mention "memento-note.com", **Afin que** les destinataires découvrent l'outil et s'inscrivent (boucle virale PLG). ## Acceptance Criteria - [x] **AC-1** : Chaque slide du PPTX brainstorm contient "memento-note.com" en bas-droite - [x] **AC-2** : Chaque slide du PPTX IA (generate_pptx) contient "memento-note.com" en bas-droite - [x] **AC-3** : Le watermark est subtil (7pt, gris clair `#B8B0A8`, italique) — visible mais non intrusif - [x] **AC-4** : Zéro régression sur la mise en page existante des slides ## Tasks - [x] T1 — Ajouter helper `addWatermark(slide)` + `withWatermark(pres)` dans `lib/brainstorm/export-pptx.ts` - [x] T2 — Appliquer `withWatermark` dans `generateBrainstormPptx` (monkey-patch `pres.addSlide`) - [x] T3 — Ajouter helper `addWatermark(slide)` + `withWatermark(pres)` dans `lib/ai/tools/pptx.tool.ts` - [x] T4 — Appliquer `withWatermark` dans `buildPresentation` (monkey-patch `pres.addSlide`) - [x] T5 — Vérifier TypeScript + 174 tests unitaires passent ## Files Modified - `memento-note/lib/brainstorm/export-pptx.ts` — helpers `addWatermark` + `withWatermark`, monkey-patch dans `generateBrainstormPptx` - `memento-note/lib/ai/tools/pptx.tool.ts` — helpers `addWatermark` + `withWatermark`, monkey-patch dans `buildPresentation` ## Technical Notes **Pattern monkey-patch :** ```ts function withWatermark(pres: PptxGenJSModule): PptxGenJSModule { const original = pres.addSlide.bind(pres) ;(pres as any).addSlide = (...args: any[]) => { const slide = original(...args) addWatermark(slide) return slide } return pres } ``` Ce pattern garantit que le watermark est ajouté sur **toutes** les slides sans modifier les 14+ fonctions de construction de slides. **Design watermark :** - Position : `x: 7.0, y: 5.35, w: 2.7, h: 0.2` (bas-droite, slide 10"×5.63") - Style : 7pt Arial, couleur `B8B0A8`, italique, alignement droite