namespace MaBibli.Shared.Entites;

/// <summary>
/// Rôle d'un auteur <b>sur un livre donné</b>, et non une propriété de la personne.
/// </summary>
/// <remarks>
/// Le même auteur scénarise un album et dessine le suivant : le rôle vit donc sur le lien
/// <see cref="LivreAuteur"/>, jamais sur <see cref="Auteur"/>. C'est ce qui permet aussi de
/// garder <b>une seule fiche</b> par personne, à laquelle tous ses livres se rattachent.
/// <para>
/// ⚠️ <see cref="NonPrecise"/> est la valeur par défaut, et ne veut pas dire « auteur du
/// texte » : la quasi-totalité des livres n'a qu'un signataire dont le rôle ne se pose pas.
/// Même règle que <see cref="TypeDocument"/> — l'interface n'affiche que ce qui a été choisi.
/// </para>
/// <para>
/// Liste volontairement courte : le besoin remonté est la <b>bande dessinée</b>, où l'on veut
/// savoir qui écrit et qui dessine. Une valeur s'ajoute sans migration, la renommer une fois
/// posée sur des centaines de liens, non.
/// </para>
/// </remarks>
public enum RoleAuteur
{
    /// <summary>Aucun rôle particulier — le cas de l'immense majorité des livres.</summary>
    NonPrecise = 0,

    Scenario = 1,

    Dessin = 2,

    /// <summary>Mise en couleurs : un troisième nom figure souvent sur un album.</summary>
    Couleurs = 3,
}
