Skip to main content
Voir en Markdown

Champs de sélection

Quatre types de champs permettent aux enregistrements de choisir parmi des options prédéfinies. Tous partagent les propriétés de base des champs.

Type Stocke
checkbox Une valeur booléenne vrai/faux.
single-select Une option choisie dans une liste prédéfinie.
multi-select Plusieurs options choisies dans une liste prédéfinie.
status Une option, nommée comme un état de workflow.

Grammaire des options

single-select, multi-select et status partagent une même grammaire pour options. Chaque option est soit une simple chaîne, soit un objet — et les deux formes se mélangent librement dans une même liste.

Forme À utiliser lorsque
Draft La valeur stockée sert aussi de libellé affiché, et aucune couleur n'est nécessaire.
{ value, label?, color? } L'option a besoin d'un libellé, d'une clé de traduction, d'une couleur, ou de plusieurs à la fois.
Clé Description
value Obligatoire. La valeur stockée en base et imposée par la contrainte de colonne. Les valeurs doivent être uniques dans la liste des options.
label Texte affiché, optionnel. Peut être une $t: clé de traduction. Vaut value par défaut.
color Code hexadécimal #RRGGBB optionnel, peint comme fond de la puce de l'option.
app.yaml
options:
  - Draft # simple chaîne
  - { value: review, label: En revue }
  - { value: published, label: 'statusPublished', color: '#10B981' }

Modifier le label ou la color d'une option ne réécrit jamais les données stockées : seule value est persistée.

Rendu de color

Une color déclarée est le fond de la puce de l'option, jamais la couleur de son texte. Sovrium dérive les deux compagnons que l'auteur n'a pas déclarés : un premier plan respectant le contraste WCAG AA (4,5:1) sur ce fond, et une bordure dans la même teinte pour qu'une puce claire reste délimitée sur une surface claire. Le code hexadécimal déclaré est rendu exactement tel quel — il n'est jamais écrêté ni rejeté au motif d'un contraste insuffisant — et comme la paire est dérivée, la puce se lit à l'identique en mode clair et en mode sombre.

Une option qui ne déclare aucune color conserve l'habillage neutre par défaut, inchangé. La couleur s'active option par option : une liste peut donc en peindre certaines et laisser les autres neutres.

checkbox

Champ booléen, généralement rendu sous forme de case à cocher. Il ne prend pas d'options.

Propriété Description
default Valeur booléenne par défaut (true / false).
app.yaml
- { id: 1, name: is_active, type: checkbox, required: true, default: false }

single-select

Un choix unique dans une liste d'options déclarée.

Propriété Description
options Les choix disponibles, dans la grammaire des options. Au moins un est requis.
default Option sélectionnée par défaut (une chaîne correspondant à l'une des valeurs d'option).
conditions Conditions comportementales optionnelles : [{ when: <option>, then: { …changements de propriétés } }] — applique des changements de propriétés (par ex. readOnly) lorsqu'une option spécifique est sélectionnée.
app.yaml
- id: 2
  name: category
  type: single-select
  options:
    - { value: Electronics, color: '#3B82F6' }
    - { value: Clothing, color: '#8B5CF6' }
    - Food
  default: Electronics

multi-select

Plusieurs choix dans une liste d'options déclarée. Chaque option retenue peint sa propre puce : une même cellule peut donc afficher plusieurs couleurs.

Propriété Description
options Les choix disponibles, dans la grammaire des options. Au moins un est requis.
maxSelections Nombre maximal de choix (entier ≥ 1 ; ne peut dépasser options.length).
default Sélections par défaut (un tableau de chaînes).
app.yaml
- id: 3
  name: tags
  type: multi-select
  options:
    - { value: Urgent, color: '#EF4444' }
    - { value: Important, color: '#F59E0B' }
    - Review
  maxSelections: 3

status

Une option unique, nommée comme un état de workflow — le type de champ à privilégier lorsque la valeur pilote des colonnes Kanban ou des étapes de pipeline.

Propriété Description
options Les états disponibles, dans la grammaire des options. Au moins un est requis.
default Valeur de statut par défaut (une chaîne correspondant à l'une des valeurs d'option).
app.yaml
- id: 4
  name: status
  type: status
  options:
    - { value: todo, label: À faire, color: '#94A3B8' }
    - { value: in_progress, label: En cours, color: '#3B82F6' }
    - { value: done, label: Terminé, color: '#10B981' }
  default: todo

Dernière mise à jour 11 août 2026

Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta. Les contributions et corrections sont les bienvenues.

Construit avec Sovrium