Gestion de bibliothèque personnelle auto-hébergée : catalogue, prêts, scan de code-barres, consultation hors-ligne. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
23 lines
1.0 KiB
C#
23 lines
1.0 KiB
C#
namespace MaBibli.Client.Services;
|
|
|
|
/// <summary>
|
|
/// Les états ARIA, écrits en toutes lettres.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// ⚠️ <b><c>aria-expanded="@_ouvert"</c> ne fait pas ce qu'on croit.</b> Blazor traite un booléen
|
|
/// comme un attribut de <i>présence</i> — à la manière de <c>disabled</c> ou <c>hidden</c> : vrai
|
|
/// rend <c>aria-expanded=""</c>, faux <b>retire l'attribut</b>. Or ARIA attend les chaînes
|
|
/// « true » et « false », et un lecteur d'écran ne sait lire ni l'une ni l'autre de ces deux
|
|
/// formes : replié, le bouton ne s'annonce plus comme repliable du tout.
|
|
/// <para>
|
|
/// Le défaut est passé inaperçu cinq fois (2026-08-22) parce qu'il ne se voit pas à l'écran et
|
|
/// qu'aucun test ne rend de balisage. D'où cette fonction : elle se remarque à la relecture là
|
|
/// où un booléen nu se lit comme correct.
|
|
/// </para>
|
|
/// </remarks>
|
|
public static class Aria
|
|
{
|
|
/// <summary>« true » ou « false », jamais un attribut de présence.</summary>
|
|
public static string Etat(bool valeur) => valeur ? "true" : "false";
|
|
}
|