Skip to main content
Voir en Markdown

Sources système

Les composants de données se lient normalement à une table. Certains ne le font pas : une grille d'exécutions, un journal d'audit ou une liste de résultats de recherche globale lit depuis un point de terminaison de la plateforme qui n'est pas l'une de vos tables.

Vous pouvez lier un tel composant en ligne avec dataSource: { system: { endpoint: … } }. Dès l'instant où deux composants lisent le même point de terminaison, ce chemin brut est dupliqué dans votre configuration. app.systemSources déclare chaque point de terminaison une seule fois, sous un nom :

systemSources:
  - name: runs
    endpoint: /api/admin/automations/runs
  - name: failed-runs
    endpoint: /api/admin/automations/runs
    query:
      status: failed

Les composants référencent ensuite le nom :

- type: data-table
  dataSource:
    systemSource: runs

Propriétés d'une entrée

Propriété Description
name Nom de référence utilisé par { systemSource: <name> }. En kebab-case minuscule, unique au sein du catalogue.
endpoint Le point de terminaison de lecture depuis lequel récupérer les lignes (par ex. /api/admin/automations/runs).
rowsKey Clé du tableau de lignes dans l'enveloppe de réponse. Vaut items par défaut.
idKey Clé de l'identifiant unique de chaque ligne. Vaut id par défaut.
totalKey Clé du compte total dans l'enveloppe. À défaut, le nombre de lignes renvoyées fait office de repli.
query Paramètres de requête statiques fusionnés dans chaque requête vers le point de terminaison.

Une entrée de catalogue remplace directement la forme system en ligne — un composant qui la référence lit exactement les mêmes champs qu'il aurait lus en ligne, de sorte que passer de l'une à l'autre ne change jamais le composant.

Deux sources, un point de terminaison

query est ce qui rend les sources nommées dignes d'être déclarées. Le même point de terminaison, avec des paramètres statiques différents, devient deux sources distinctes et auto-descriptives :

systemSources:
  - name: open-tickets
    endpoint: /api/admin/tickets
    query:
      status: open
  - name: closed-tickets
    endpoint: /api/admin/tickets
    query:
      status: closed

Chacune tient alors en un mot à l'endroit de la liaison, et le filtre vit à un seul endroit au lieu d'être redit dans chaque composant.

Quels composants en acceptent une

N'importe quel composant lié à des données : data-table, list, gallery, kanban, calendar, chart, kpi et data-timeline. Voir Composants de données pour ce que chacun rend.

Validation

  • Le catalogue doit déclarer au moins une source lorsqu'il est présent.
  • Chaque name doit être unique — un doublon rendrait une référence ambiguë.
  • Chaque référence { systemSource: <name> } doit pointer vers une entrée déclarée.

Les trois sont vérifiées au décodage de la configuration : sovrium validate attrape donc une référence mal orthographiée hors ligne, avant que l'application ne démarre.

Pages connexes

Dernière mise à jour 27 juillet 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