EmbedV2Builder
Vue d'ensemble
EmbedV2Builder construit des messages Discord Components V2 — le nouveau système de mise en page qui remplace les embeds classiques.
const embed = new EmbedV2Builder()
.container({ accentColor: 0x5865F2 })
.textDisplay("# Bonjour !")
.end()
.build()
await ctx.reply({ ...embed })
EmbedV2Builder est disponible globalement — aucun import nécessaire.EmbedV2Builder
Builder racine — les composants de premier niveau se placent ici.
Méthodes
| Méthode | Retourne | Description |
|---|---|---|
.container(opts?) | ContainerBuilder | Ajoute un container |
.textDisplay(content) | this | Ajoute un texte au niveau racine |
.separator(opts?) | this | Ajoute un séparateur au niveau racine |
.mediaGallery(items) | this | Ajoute une galerie média au niveau racine |
.actionRow() | RootActionRowBuilder | Ajoute une action row au niveau racine |
.build() | object | Construit et retourne le payload du message |
.build()
Retourne { flags: 32768, components: [...] } — spreadez-le directement dans votre reply :
await ctx.reply({ ...embed.build() })
Lève une erreur si aucun composant n'a été ajouté ou si plus de 25 composants sont présents.
ContainerBuilder
Retourné par .container(). Utilisez .end() pour revenir à EmbedV2Builder.
ContainerOptions
| Option | Type | Description |
|---|---|---|
accentColor | number | Couleur de la bordure gauche en nombre |
spoiler | boolean | Floute le contenu jusqu'au clic |
Méthodes
| Méthode | Retourne | Description |
|---|---|---|
.textDisplay(content) | this | Ajoute du texte markdown |
.separator(opts?) | this | Ajoute un séparateur |
.mediaGallery(items) | this | Ajoute une galerie média |
.file(url, spoiler?) | this | Ajoute une pièce jointe |
.section() | SectionBuilder | Ajoute une section |
.actionRow() | ActionRowBuilder | Ajoute une action row |
.end() | EmbedV2Builder | Ferme le container et retourne à la racine |
theme.embedV2.footer.text est défini dans glyria.config.ts, un footer est automatiquement ajouté lors de l'appel à .end().SectionBuilder
Retourné par .section(). Associe du texte à un accessoire. Utilisez .end() pour revenir à ContainerBuilder.
Méthodes
| Méthode | Retourne | Description |
|---|---|---|
.textDisplay(content) | this | Ajoute du texte (au moins un requis) |
.buttonAccessory(opts) | this | Définit un bouton comme accessoire |
.thumbnailAccessory(url, desc?) | this | Définit une miniature comme accessoire |
.end() | ContainerBuilder | Ferme la section |
.textDisplay() et exactement un accessoire. L'absence de l'un ou l'autre lève une erreur.ActionRowBuilder
Retourné par .actionRow() à l'intérieur d'un container. Utilisez .end() pour revenir à ContainerBuilder.
Méthodes
| Méthode | Retourne | Description |
|---|---|---|
.button(opts) | this | Ajoute un bouton |
.end() | ContainerBuilder | Ferme l'action row |
RootActionRowBuilder
Retourné par .actionRow() au niveau racine. Utilisez .end() pour revenir à EmbedV2Builder.
Méthodes
| Méthode | Retourne | Description |
|---|---|---|
.button(opts) | this | Ajoute un bouton |
.end() | EmbedV2Builder | Ferme l'action row |
ButtonOptions
| Option | Type | Description |
|---|---|---|
label | string | Texte du bouton |
customId | string | Identifiant pour l'interaction — requis pour les boutons non-link |
style | string | Style du bouton |
url | string | URL — requis pour le style link |
emoji | object | Emoji du bouton (name, id, animated) |
disabled | boolean | Désactive le bouton |
Styles de boutons
| Style | Cas d'usage |
|---|---|
primary | Action principale — nécessite customId |
secondary | Action secondaire — nécessite customId |
success | Action positive — nécessite customId |
danger | Action destructive — nécessite customId |
link | URL externe — nécessite url |
premium | Mise en avant premium |
SeparatorOptions
| Option | Type | Description |
|---|---|---|
divider | boolean | Affiche une ligne de séparation visible |
spacing | "small" | "large" | Taille de l'espacement |
MediaGalleryItem
| Option | Type | Description |
|---|---|---|
url | string | URL de l'image |
description | string | Légende (optionnel) |
spoiler | boolean | Floute jusqu'au clic (optionnel) |

