diff --git a/client/src/components/FormateurCombobox.tsx b/client/src/components/FormateurCombobox.tsx index 891312a..6378f92 100644 --- a/client/src/components/FormateurCombobox.tsx +++ b/client/src/components/FormateurCombobox.tsx @@ -29,8 +29,8 @@ import { trpc } from "@/lib/trpc"; import { toast } from "sonner"; interface FormateurComboboxProps { - value?: string | null; - onChange: (value: string) => void; + value?: string | number | null; + onChange: (value: number | null) => void; placeholder?: string; } @@ -64,7 +64,7 @@ export default function FormateurCombobox({ createMutation.mutate({ nom: newFormateurNom.trim() }); }; - const selectedFormateur = formateurs?.find((f) => f.id.toString() === value); + const selectedFormateur = formateurs?.find((f) => f.id === value || f.id.toString() === value?.toString()); return ( <> @@ -90,15 +90,15 @@ export default function FormateurCombobox({ { - onChange(currentValue === value ? "" : currentValue); + onSelect={() => { + onChange(value === formateur.id ? null : formateur.id); setOpen(false); }} > {formateur.nom} diff --git a/client/src/pages/AdminSequenceInscrits.tsx b/client/src/pages/AdminSequenceInscrits.tsx index 39b1f1b..d1c9cfb 100644 --- a/client/src/pages/AdminSequenceInscrits.tsx +++ b/client/src/pages/AdminSequenceInscrits.tsx @@ -49,7 +49,7 @@ export default function AdminSequenceInscrits() { const [filterFonction, setFilterFonction] = useState("all"); const [sortBy, setSortBy] = useState<"date" | "nom">("date"); const [showPreviewModal, setShowPreviewModal] = useState(false); - const [previewType, setPreviewType] = useState<"teaser" | "rappel">("teaser"); + const [previewType, setPreviewType] = useState<"teaser" | "rappel" | "rappel_j1">("teaser"); const utils = trpc.useUtils(); const { data: sequence, isLoading: loadingSequence } = trpc.sequences.getById.useQuery({ id: sequenceId }); diff --git a/client/src/pages/AdminSequences.tsx b/client/src/pages/AdminSequences.tsx index f3acd7c..4a92b62 100644 --- a/client/src/pages/AdminSequences.tsx +++ b/client/src/pages/AdminSequences.tsx @@ -38,10 +38,11 @@ export default function AdminSequences() { formationId: "", nom: "", lieu: "", - publicCible: "autre" as "directeur" | "chef_service" | "autre", + publicCible: "autre" as "directeur" | "chef_service" | "autre" | "tous", capaciteMax: "12", dateBlocage: "", statut: "ouverte" as "ouverte" | "bloquee" | "terminee", + formateur: null as number | null, dates: [ { dateDebut: "", dateFin: "", ordre: 1 } ] as DateFormation[], @@ -95,6 +96,7 @@ export default function AdminSequences() { capaciteMax: "12", dateBlocage: "", statut: "ouverte", + formateur: null, dates: [{ dateDebut: "", dateFin: "", ordre: 1 }], }); }; @@ -183,7 +185,7 @@ export default function AdminSequences() { capaciteMax: parseInt(formData.capaciteMax), dateBlocage: convertLocalToUTC(formData.dateBlocage), statut: formData.statut, - formateurId: formData.formateur ? parseInt(formData.formateur) : null, + formateurId: formData.formateur, dates: formData.dates.map(d => ({ ...d, dateDebut: convertLocalToUTC(d.dateDebut), diff --git a/client/src/pages/QuestionnaireReponse.tsx b/client/src/pages/QuestionnaireReponse.tsx index 10707b7..8aa9f50 100644 --- a/client/src/pages/QuestionnaireReponse.tsx +++ b/client/src/pages/QuestionnaireReponse.tsx @@ -113,8 +113,8 @@ export default function QuestionnaireReponse() { {APP_LOGO && ( {APP_TITLE} )} -

{data.questionnaire.nom}

- {data.questionnaire.description && ( +

{data.questionnaire?.nom || 'Questionnaire'}

+ {data.questionnaire?.description && (

{data.questionnaire.description}

)} diff --git a/todo.md b/todo.md index 649e9ae..2d1ec21 100644 --- a/todo.md +++ b/todo.md @@ -632,3 +632,7 @@ ## Bug à corriger - [x] Corriger l'affichage du menu latéral pour les formateurs (menu invisible actuellement) + +## Erreurs TypeScript à corriger pour publication +- [x] Corriger l'erreur dans AdminSequences.tsx (propriété formateur manquante) +- [x] Corriger les erreurs dans QuestionnaireReponse.tsx (questionnaire possibly null)