Aller au contenu
Design system @paulperigault

Composants

Diff

À quoi il sert

Diff affiche une différence de texte ligne à ligne, en chasse fixe, avec un signe par ligne.

Quand l’utiliser

Quand ne pas l’utiliser

Exemples

Calcul du total d’un panier
function total(items) {  return items.length;  return items.reduce((sum, item) => sum + item.price, 0);}
---
import Diff from '@paulperigault/astro/Diff.astro';

const lines: { kind: 'add' | 'del' | 'ctx'; text: string }[] = [
  { kind: 'del', text: '  return items.length;' },
  { kind: 'add', text: '  return items.reduce((sum, item) => sum + item.price, 0);' },
];
---

<Diff
  caption="Calcul du total d’un panier"
  lines={lines}
  addedLabel="Ligne ajoutée"
  removedLabel="Ligne supprimée"
/>

Accessibilité

Clavier

Lecteur d’écran

Garanti par le composant

À la charge de l’intégrateur

Propriétés

Propriétés de Diff
PropriétéTypeDéfautDescription
caption (obligatoire)string—Légende visible, reprise comme nom accessible de la région défilante.
lines (obligatoire)Line[]—Lignes du diff : `{ kind: 'added' | 'removed' | 'context', text }`.
addedLabel (obligatoire)string—Libellé lu avant chaque ligne ajoutée.
removedLabel (obligatoire)string—Libellé lu avant chaque ligne supprimée.
classstring—Réservé au placement du composant dans son parent.

Jetons utilisés

Preuves et décisions