Réglages
Ce que prend createGrid, ce que le <dz-grid> d’Angular prend en entrées et le Web Component en attributs ou en
propriétés : les mêmes réglages partout. Chaque page donne les faits du réglage (son type, sa valeur par défaut, si
update() le change), ce qu’il fait, un exemple dans les trois saveurs et, quand il montre quelque chose, une grille
vivante.
Trois sont obligatoires : getRowId, columns et messages. Les autres sont facultatifs.
| Nom | Type | Rôle |
|---|---|---|
rows | Iterable<T> | Les lignes que montre la grille, quand le navigateur les a toutes. |
getRowId (obligatoire) | (row: T) => RowIdInput | Comment la grille distingue une ligne d’une autre : obligatoire. |
columns (obligatoire) | readonly ColumnOrGroup<T>[] | Les colonnes, ou leurs groupes : obligatoire. |
messages (obligatoire) | GridMessages | Tous les textes que la grille affiche ou dit, dans une langue : obligatoire, la grille n’en embarque aucun. |
locale | string | L’écriture des nombres et des dates et l’ordre du texte trié, à part de la langue des textes. |
timeZone | string | Le fuseau horaire où les instants sont affichés, filtrés et modifiés. |
numerals | 'latn' | 'locale' | Les chiffres latins partout, ou ceux de la langue. |
direction | 'auto' | 'ltr' | 'rtl' | De gauche à droite, de droite à gauche, ou le sens de la page et ses changements. |
density | 'compact' | 'comfortable' | 'spacious' | La hauteur des lignes et la place prise sur les côtés des cellules. |
headers | 'shown' | 'hidden' | Les titres de colonnes à l’écran, ou cachés aux yeux et gardés pour les lecteurs d’écran. |
multiSort | boolean | Laisser l’utilisateur trier par plusieurs colonnes, ou par une seule. |
sameRow | (a: T, b: T) => boolean | Lors d’un rechargement complet, garder telle quelle une ligne qui n’a pas vraiment changé. |
rowHeight | number | La hauteur des lignes en pixels, au-dessus de celle de la densité. |
headerHeight | number | HeaderHeights | La hauteur des lignes d’en-tête en pixels : les titres de colonnes, et les lignes de groupes au-dessus. |
selection | { readonly mode: 'none' | 'single' | 'multi'; readonly ch… | Laisser l’utilisateur sélectionner des lignes : une ou plusieurs, par cases ou par clics, selon vos règles. |
context | unknown | Le contexte propre à l’application, transmis à chaque fonction de rappel et à chaque partie. |
rowClass | (c: RowClassContext<T>) => string | null | undefined | Des classes CSS pour une ligne de données, d’après ses données. |
overlay | 'loading' | 'error' | null | Couvrir les lignes de « Chargement… » ou du message d’erreur, ou laisser la grille décider. |
busy | boolean | Dire que les lignes à l’écran se rechargent, sans les couvrir. |
label | string | Le nom accessible de la grille, déjà traduit. |
tooltips | { readonly delayMs?: number } | Combien de temps le pointeur reste avant qu’une infobulle apparaisse. |
onEvent | (e: GridEvent<T>) => void | Une fonction qui entend chaque événement de la grille. |
injectStyles | boolean | Si la grille écrit elle-même son CSS de mise en page dans la page, ou si votre page le charge. |
nonce | string | Le nonce que la grille met sur les éléments <style> qu’elle écrit, pour une politique de sécurité du contenu stricte. |
overscan | { readonly rows?: number; readonly cols?: number } | Combien de lignes et de colonnes la grille dessine au-delà de la vue. |
searchWarmup | 'idle' | 'off' | Préparer la recherche rapide pendant les temps morts, pour que la première frappe soit instantanée. |
parts | Readonly<Record<string, SlotPart>> | Votre propre dessin pour une cellule, un titre, une infobulle, le message : des parties par nom. |
source | SourceBinding<T> | Des lignes qui vivent sur un serveur : la grille demande ce qu’elle montre. |
operations | OperationsInput | Où se font les filtres, la recherche, le tri et les pages : le navigateur ou le serveur. |
pagination | PageOptions | Montrer les lignes page par page : la taille d’une page et les tailles proposées. |
filterKinds | readonly AnyFilterKind[] | Vos propres sortes de filtre de colonne, pour le navigateur et pour un serveur. |
clock | () => number | Le « maintenant » d’où comptent les raccourcis de date et « aujourd’hui ». |
fullWidth | (row: Readonly<T>) => boolean | { readonly part?: string } | Des lignes dessinées en une seule cellule sur toute la largeur : un titre, une note. |
motion | boolean | Couper tout mouvement de la grille, quoi que demande le système du lecteur. |
theme | GridTheme | Les variables CSS du thème, réglées par le code pour une grille, par clés typées. |
icons | GridIcons | Vos propres icônes pour les marques de la grille : tri, filtre, menu, bouton d’ouverture, sous-menu, poignée. |
features | readonly GridFeature[] | Les fonctions facultatives avec lesquelles la grille est faite : filtres, pages, édition, export… |