Version de développement
Cette documentation décrit la version « next » (develop), non encore publiée. Pour la version stable, basculez sur « v5 » dans l'en-tête.
Composants UI

Carte de statistique (stat_card)

Afficher un indicateur déjà calculé, avec son libellé, sa tendance ou une légende, grâce au composant JavaScript frappe.ui.stat_card.

Carte de statistique (stat_card)

frappe.ui.stat_card affiche un indicateur : un libellé, une valeur en grand, puis une tendance ou une légende. La page appelante fournit la valeur déjà calculée. Contrairement à une Carte numérique (Number Card), la carte n'est liée à aucun document et ne lance aucune requête.

Le composant est disponible dans le desk. Il renvoie un élément jQuery.

Les anciens composants frappe.ui.bar_list et frappe.ui.donut n'existent plus. Pour des barres horizontales ou un anneau, utilisez frappe.ui.chart (type bar avec barOptions.horizontal, ou type donut). Voir Graphiques.

Afficher une carte

const $card = frappe.ui.stat_card({
    label: __("Net Sales"),
    value: format_currency(120000),
    delta: { value: 12, suffix: __("since last year") },
});
$(page.body).append($card);

La carte affiche « 120 000,00 € » et, en dessous, une flèche verte « +12% since last year ».

Options

OptionTypeRôle
labelstringTitre court au-dessus de la valeur. Affiché comme texte.
valuestring, number, Element ou jQueryValeur principale, déjà formatée. Avec null ou sans valeur, la carte affiche « — » et « Aucune donnée ». La valeur 0 est une valeur valide.
deltaObjectLigne de tendance sous la valeur. Elle remplace caption.
captionstring, Element ou jQueryLigne grisée sous la valeur.
dotstringCouleur CSS ou jeton de couleur d'une pastille avant le libellé. Elle relie la carte à une série d'un graphique.
iconstringIcône Lucide avant le libellé. Ignorée si dot est fourni.
loadingbooleanAffiche des squelettes de chargement à la place de la valeur. Le libellé reste visible.
onclickfunctionRend la carte cliquable : clic, touche Entrée ou Espace.
css_classstringClasses CSS supplémentaires sur l'élément racine.

Objet delta

CléTypeRôle
valuenumberVariation en pourcentage, avec son signe : 12.5 ou -4.
positive_is_goodbooleantrue par défaut. Mettez false quand une hausse est mauvaise (retards, résiliations) : une hausse s'affiche alors en rouge.
suffixstringTexte grisé après le pourcentage, par exemple « depuis l'an dernier ».

Une variation nulle affiche « 0% » en ton neutre. La valeur est arrondie à une décimale.

États de la carte

ÉtatConditionAffichage
Chargementloading: trueLibellé et squelettes. L'attribut aria-busy vaut true.
Videvalue vaut null ou est absent« — » et « Aucune donnée ».
Donnéesvalue est fourniValeur, puis delta ou caption.

Afficher un groupe de cartes

frappe.ui.stat_cards construit un groupe à partir d'une liste d'options.

frappe.ui.stat_cards({
    layout: "grid",
    items: [
        { label: __("Devis ouverts"), value: 14, icon: "file-text" },
        {
            label: __("Factures en retard"),
            value: 3,
            delta: { value: 50, positive_is_good: false, suffix: __("vs mois dernier") },
        },
        { label: __("Chiffre d'affaires"), loading: true },
    ],
});

Exemple fictif. La deuxième carte affiche « +50% » en rouge, car positive_is_good vaut false.

layoutDisposition
grid (défaut)Grille de cartes de même hauteur, avec retour à la ligne.
stackUne seule colonne.

Prévisualiser le composant

La page Component Explorer (/desk/component-explorer) montre la carte avec des données d'exemple. Voir Explorer les composants de Dodock.