using MaBibli.Shared.Entites;
namespace MaBibli.Shared.Catalogue;
///
/// Critères de consultation du catalogue.
///
///
/// Il n'existe volontairement aucun critère sur AjoutePar. La bibliothèque est
/// commune à tout le foyer : filtrer les lectures sur ce champ serait un bug de conception.
/// L'absence de ce critère est l'endroit où l'invariant est le plus visible.
///
public record CritereLivres
{
/// Texte cherché dans le titre ou l'auteur. Insensible à la casse.
public string? Recherche { get; init; }
/// Physique ou numérique. null = les deux : le catalogue est unique.
public Format? Format { get; init; }
/// Statut de lecture. null = tous.
public Statut? Statut { get; init; }
}