/**
* Affichage du sujet d'examen (consigne + documents) — purement présentationnel.
*
* Depuis la refonte /sujets (2026-04-21), le choix du sujet se fait sur une
* page dédiée (SujetsPage). Ce composant n'affiche que le sujet sélectionné.
*
* Le contenu est admin-curé (pas du texte IA) → plain-text avec whitespace-pre-wrap,
* pas de react-markdown.
*
* Règle H : purement présentationnel — le sujet vient du parent.
* Règle L : tokens Direction H exclusivement.
*/
import { Badge } from '@/shared/ui/Badge'
import { Card } from '@/shared/ui/Card'
import type { SujetData } from '@/entities/production/types'
interface Props {
sujet: SujetData | null
}
function DocumentBlock({ titre, texte }: { titre: string | null; texte: string | null }) {
if (!titre && !texte) return null
return (
{titre && {titre}
}
{texte && {texte}
}
)
}
export function SujetDisplay({ sujet }: Props) {
if (!sujet) return null
return (
{sujet.role && (
Rôle
{sujet.role}
)}
{sujet.contexte && (
{sujet.contexte}
)}
Consigne
{sujet.consigne}
)
}