diff --git a/docs/3.autres/6.variables.md b/docs/3.autres/6.variables.md index bd262ddd7..b369b7687 100644 --- a/docs/3.autres/6.variables.md +++ b/docs/3.autres/6.variables.md @@ -8,11 +8,19 @@ updatedAt: '2025-10-23' ## Syntaxe générale +Les variables s'utilisent toujours entre accolades `{}` et suivent l'une des structures suivantes : + - `{variable}` : Variable simple - `{variable:paramètres}` : Variable avec paramètres - `{variable?modifieur}` : Variable avec modificateur - `{variable:paramètres?modifieur}` : Variable avec paramètres et modificateur +**Exemple :** + +- `{user.username}` +- `{user.created_at:format=DD/MM/YYYY}` +- `{level.rank?ordinal}` + ## Paramètres Les paramètres permettent d'affiner le comportement d'une variable en lui transmettant des informations complémentaires. Ils s'ajoutent après le nom de la variable, chacun étant précédé du symbole deux-points `:`. @@ -24,6 +32,75 @@ Chaque paramètre suit la structure `nom=valeur`. Lorsque vous souhaitez utilise - `{level.rank:user_id=123456789012345678}` - `{user.created_at:user_id=123456789012345678:format=DD MMMM YYYY}` +## Paramètres communs + +Cette section regroupe les paramètres utilisés par plusieurs variables. Lorsqu'un paramètre est mentionné plus loin sans explication détaillée, référez-vous à cette section. + +### user_id + +Identifiant Discord d'un utilisateur ciblé par la variable. + +- **Type :** ID Discord +- **Obligatoire :** Selon la variable + +### role_id + +Identifiant Discord d'un rôle. + +- **Type :** ID Discord +- **Obligatoire :** Pour les variables liées aux rôles + +::hint{ type="warning" } + Ce paramètre est obligatoire pour toutes les variables de rôle. +:: + +### channel_id + +Identifiant Discord d'un salon. + +- **Type :** ID Discord +- **Obligatoire :** selon la variable + +### format + +Définit le format d'affichage des dates et heures. + +- **Valeur par défaut :** `L` (date) ou `LT` (heure) + +- **Valeurs acceptées :** + + - `relative` → affichage relatif (ex : il y a 2 heures) + + - format personnalisé (ex : DD/MM/YYYY, HH:mm) + + ::hint{ type="info" } + La liste des différents formats est disponible sur la [documentation](https://day.js.org/docs/en/display/format) de la bibliothèque **dayjs**. + :: + +| Variable | Exemple format | Exemple réponse | +|----------|----------------|-----------------| +| stream.start_at | Le stream débutera le `{stream.start_at:format=DD/MM/YYYY}`. | Le stream débutera le 31/12/2025. +| date | Il est `{date:format=DD/MM/YYYY,HH:mm}`. | Il est . | + +### separator + +Caractère(s) utilisés pour séparer plusieurs valeurs. + +- **Valeur par défaut :** `, ` + +### style + +::card +--- +title: Timestamps +icon: material-symbols:schedule +to: /docs/autres/timestamps#paramètre-style +target: _blank +color: '#D1D5DB' +--- + Découvrez les différents paramètres de styles +:: + ## Modificateurs Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajoutent après le nom de la variable ou après le ou les paramètres, précédés du symbole point d'interrogation `?`. @@ -58,8 +135,12 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{user.joined_at}` | Date d'arrivée sur le serveur | 11/03/2018 | **Paramètres :** -- `user_id` : Identifiant d'un utilisateur. -- `format` : Format d'affichage de la date (par défaut : `L`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY`. +- `user_id` +- `format` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Serveur @@ -79,7 +160,11 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{server.created_at}` | Date de création du serveur | 10/03/2018 | **Paramètres :** -- `format` : Format d'affichage de la date (par défaut : `L`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY`. +- `format` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Salon @@ -95,8 +180,12 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{channel.parent.created_at}` | Date de création parent | 16/04/2020 | **Paramètres :** -- `channel_id` : Identifiant d'un salon. -- `format` : Format d'affichage de la date (par défaut : `L`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY`. +- `channel_id` +- `format` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Rôle @@ -111,11 +200,11 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{role.created_at}` | Date de création | 12/04/2020 | **Paramètres :** -- `role_id` : Identifiant d'un rôle. -- `format` : Format d'affichage de la date (par défaut : `L`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY`. +- `role_id` +- `format` -::hint{ type="warning" } - Le paramètre `role_id` est obligatoire. +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). :: ### Temporalité @@ -126,11 +215,13 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{time}` | Heure actuelle | 11:01 | | `{timestamp}` | Timestamp Discord | 1495962098 | -**Paramètres (date et time) :** -- `format` : Format d'affichage de la date ou de l'heure (par défaut : `L` ou `LT`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY` ou `hh:mm a`. La liste des différents formats est disponible sur la [documentation](https://day.js.org/docs/en/display/format) de la bibliothèque **dayjs**. +**Paramètres :** +- `format` (date et time) +- `style` (timestamp) -**Paramètres (timestamp) :** -- `style` : Style d'affichage du timestamp. Vous pouvez retrouver la liste complète sur la [documentation](https://discord.com/developers/docs/reference#message-formatting-timestamp-styles) de Discord. +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ## Variables par modules @@ -149,7 +240,11 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{money.to_position:position=N}` | Argent nécessaire pour atteindre la position N dans le classement | 1 200 | **Paramètres :** -- `user_id` : Identifiant d'un utilisateur. +- `user_id` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Niveaux @@ -171,7 +266,11 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{xp.to_position:position=N}` | Expérience nécessaire pour atteindre la position N dans le classement | 5,000 | **Paramètres :** -- `user_id` : Identifiant d'un utilisateur. +- `user_id` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Récompenses de niveaux @@ -217,7 +316,11 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{age}` | Âge de l'utilisateur | 25 ans | **Paramètres :** -- `user_id` : Identifiant d'un utilisateur. +- `user_id` + +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ::hint{ type="info" } Les variables d'[économie](#economie) et de [niveaux](#niveaux) sont aussi disponibles dans les commandes personnalisées. @@ -318,12 +421,13 @@ Les modificateurs permettent de transformer l'affichage des variables. Ils s'ajo | `{stream.start_at}` | Date de début | il y a 2 heures | | `{stream.tags}` | Tags du live | français, développement | -**Paramètres (start_at) :** -- `format` : Format d'affichage de la date ou de l'heure (par défaut : `relative`). Accepte `relative` pour un affichage relatif (ex : "il y a 2 heures") ou un format personnalisé comme `DD/MM/YYYY` ou `hh:mm a`. La liste des différents formats est disponible sur la [documentation](https://day.js.org/docs/en/display/format) de la bibliothèque **dayjs**. - -**Paramètres (tags) :** +**Paramètres :** +- `format` +- `separator` -- `separator` : Caractères de séparation des différents tags du stream (par défaut : `, `) +::hint{ type="info" } + Pour le détail des paramètres, [`cliquez ici`](#paramètres-communs). +:: ### Reddit