From e16bdb22a18e9bce50dab678a103eb8d738259dd Mon Sep 17 00:00:00 2001 From: Manus Sandbox Date: Sun, 23 Nov 2025 15:36:56 -0500 Subject: [PATCH] =?UTF-8?q?Checkpoint:=20Ajout=20d'un=20=C3=A9diteur=20de?= =?UTF-8?q?=20texte=20riche=20(React=20Quill)=20pour=20formater=20facileme?= =?UTF-8?q?nt=20le=20contenu=20des=20emails=20(gras,=20italique,=20listes,?= =?UTF-8?q?=20couleurs,=20liens).=20Ajout=20de=207=20boutons=20pour=20ins?= =?UTF-8?q?=C3=A9rer=20rapidement=20des=20variables=20dynamiques=20:=20{{n?= =?UTF-8?q?omApprenant}},=20{{prenomApprenant}},=20{{nomFormation}},=20{{n?= =?UTF-8?q?omSequence}},=20{{dateDebut}},=20{{lieu}},=20{{formateur}}.=20L?= =?UTF-8?q?a=20pr=C3=A9visualisation=20affiche=20le=20contenu=20HTML=20for?= =?UTF-8?q?mat=C3=A9=20en=20temps=20r=C3=A9el.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/src/pages/AdminEmailTemplates.tsx | 103 ++++++++++-- package.json | 1 + pnpm-lock.yaml | 204 +++++++++++++++++++++++ todo.md | 7 + 4 files changed, 305 insertions(+), 10 deletions(-) diff --git a/client/src/pages/AdminEmailTemplates.tsx b/client/src/pages/AdminEmailTemplates.tsx index 91be2de..3d875b1 100644 --- a/client/src/pages/AdminEmailTemplates.tsx +++ b/client/src/pages/AdminEmailTemplates.tsx @@ -1,4 +1,6 @@ -import { useState, useEffect } from "react"; +import { useState, useEffect, useRef } from "react"; +import ReactQuill from 'react-quill'; +import 'react-quill/dist/quill.snow.css'; import { trpc } from "@/lib/trpc"; import DashboardLayout from "@/components/DashboardLayout"; import { Button } from "@/components/ui/button"; @@ -20,7 +22,7 @@ import { SelectValue, } from "@/components/ui/select"; import { toast } from "sonner"; -import { Mail, Eye, Save, RotateCcw } from "lucide-react"; +import { Mail, Eye, Save, RotateCcw, Plus } from "lucide-react"; export default function AdminEmailTemplates() { const [selectedType, setSelectedType] = useState("inscription"); @@ -311,15 +313,96 @@ export default function AdminEmailTemplates() {
-