Command Palette

Search for a command to run...

Paramètres

Ajoutez des paramètres typés par présence avec des contrôles booléens, de saisie, de sélection et de curseur.

Que sont les paramètres

Les paramètres permettent aux utilisateurs de personnaliser le comportement d'une présence sans modifier le code.

Types de paramètres pris en charge

Nowly prend en charge les paramètres booléens, de saisie, de sélection et de curseur.

ChampTypeDescriptionPar défaut
booleanbooleanInterrupteur pour les options activées/désactivées.-
inputstringValeur textuelle libre.-
selectstringUne valeur sélectionnée parmi des options prédéfinies.-
slidernumberValeur numérique avec minimum, maximum et pas facultatifs.-

Définir des paramètres

Définissez les paramètres séparément du script de présence :

À partir du CLI 1.7.0, préférez un fichier settings.ts avec un export par défaut, à côté de presence.ts. Il remplace entièrement les définitions inline legacy Presence.Settings({ ... }), sans fusion. Un fichier invalide fait échouer le build. En son absence, le format legacy reste pris en charge.

import type { PresenceSetting } from "@nowly/sdk"

export default {
  showButtons: {
    type: "boolean",
    default: true,
    label: {
      "en-US": "Afficher les boutons"
    }
  }
} satisfies Record<string, PresenceSetting>
const presence = new Presence()

Le CLI détecte automatiquement settings.ts : aucun import ni appel à Presence.Settings n’est nécessaire dans presence.ts. Il produit toujours settings.json et enregistre les valeurs par défaut. Les valeurs enregistrées par l’utilisateur restent prioritaires. Gardez le fichier déclaratif et compatible JSON, sans API du navigateur ou de Node. Utilisez getSetting<boolean>("showButtons") pour une lecture explicitement typée.

Lire les paramètres

Utilisez getSetting au moment de l'exécution. Les valeurs viennent des réglages enregistrés de l'utilisateur, avec repli sur les valeurs par défaut de Presence.Settings. Les changements depuis le panneau latéral arrivent via SETTINGS_UPDATED et mettent à jour la même correspondance.

Vous pouvez aussi lire ctx.settings dans UpdateData :

presence.on("UpdateData", async (ctx) => {
  const showButtons = await presence.getSetting<boolean>("showButtons")
  // même valeur : ctx.settings.showButtons
})

Étiquettes localisées

Les étiquettes et descriptions des paramètres utilisent les mêmes clés de langue que les métadonnées.

Valeurs par défaut

Choisissez des valeurs par défaut sûres. Une présence devrait fonctionner immédiatement après l'installation, sans configuration.