import type { AppTour } from '../types';

/**
 * Visite des invitations à un événement.
 *
 * Trois faits vérifiés dans `EventInvitationController` :
 *
 *  - la liste des invités n'est pas gérée ici : elle est **relue depuis un
 *    fichier déposé sur le serveur à chaque ouverture de la page**
 *    (`syncFromFile`), et l'écran ne fait qu'y ajouter les nouveaux ;
 *  - l'envoi tourne **en direct, pas en arrière-plan** (`dispatchSync`) : la
 *    page reste bloquée jusqu'au dernier message, d'où la limite de temps
 *    d'exécution volontairement levée ;
 *  - l'envoi ne regarde PAS l'état : sélectionner une invitation déjà envoyée
 *    la renvoie.
 *
 * Écran réservé au siège (`role:admin`).
 *
 * Textes dans `lang/{fr,en}/tours.php`, clés `invitations.<key>.title|content`.
 */
export const eventInvitationsTour: AppTour = {
    id: 'invitations',
    components: ['event-invitations/index'],
    steps: [
        { anchor: 'invitations-stats', key: 'stats', order: 10 },
        { anchor: 'invitations-actions', key: 'actions', order: 20 },
        { anchor: 'invitations-table', key: 'table', order: 30 },
    ],
};
