validateConfig
expérimentaldepuis 0.1.0@legba-core/core
validateConfig
Ce que ça fait
Valide une configuration @legba-core/core et la normalise (applique les valeurs par défaut).
Signature
function validateConfig(config: LegbaCoreConfig): ResolvedLegbaCoreConfig
Paramètres
| Nom | Type | Requis | Défaut | Description |
|---|---|---|---|---|
config.appName | string | oui | — | Non vide, espaces seuls refusés |
config.logLevel | LogLevel | non | "info" | Doit être une des cinq valeurs de LOG_LEVELS |
Retour
ResolvedLegbaCoreConfig : la configuration avec toutes les valeurs par défaut appliquées.
Erreurs
| Code | Quand | Comment corriger |
|---|---|---|
LEGBA_INVALID_CONFIG | appName vide/espaces, ou logLevel inconnu | Le message cite la valeur reçue et les valeurs acceptées |
Exemple minimal
import { validateConfig } from "@legba-core/core";
const config = validateConfig({ appName: "mon-app" });
// { appName: "mon-app", logLevel: "info" }
Exemple complet
import { validateConfig, LegbaConfigError } from "@legba-core/core";
function loadConfig(raw: unknown) {
try {
return validateConfig(raw as { appName: string });
} catch (error) {
if (error instanceof LegbaConfigError) {
throw new Error(`Configuration @legba-core invalide : ${error.message}`);
}
throw error;
}
}
Pièges
createLegbaCoreappelle déjàvalidateConfigen interne : ne pas la rappeler soi-même avant, ça ne fait que dupliquer la validation.