environmentVariable
Charge, développe et valide les variables d'environnement. Cette version retourne un résultat Either. Si vous préférez une version qui lance une erreur directement, utilisez environmentVariableOrThrow.
Exemple
ts
import { environmentVariable } from "@duplojs/server-utils";
import { DP, E, unwrap } from "@duplojs/utils";
const firstResult = await environmentVariable({
APPLICATION_NAME: DP.string(),
});
// firstResult: E.Success<{ APPLICATION_NAME: string }> | E.Left<unknown>
if (E.isRight(firstResult)) {
const parsedVariables = unwrap(firstResult);
// parsedVariables.APPLICATION_NAME: string
}
const secondResult = await environmentVariable(
{
APPLICATION_NAME: DP.string(),
API_URL: DP.string(),
},
{
paths: [".env", ".env.local"],
override: true,
justRead: true,
},
);
// secondResult: E.Success<{ APPLICATION_NAME: string; API_URL: string }> | E.Left<unknown>Autres exemples
Version throw
ts
import { environmentVariableOrThrow } from "@duplojs/server-utils";
import { DP } from "@duplojs/utils";
const parsedVariables = await environmentVariableOrThrow(
{
APPLICATION_NAME: DP.string(),
APPLICATION_PORT: DP.number(),
},
{
paths: [".env"],
override: false,
justRead: true,
},
);
// parsedVariables: { APPLICATION_NAME: string; APPLICATION_PORT: number }Syntaxe
typescript
function environmentVariable<
GenericShape extends DP.DataParserObjectShape
>(
shape: GenericShape,
params?: EnvironmentVariableParams
): Promise<
| E.Success<DP.DataParserObjectShapeOutput<GenericShape>>
| FileSystemLeft<"read-text-file">
| E.Error<DP.DataParserError>
>Paramètres
shape(GenericShape) : schéma utilisé pour parser et valider les variables d'environnement.params(EnvironmentVariableParams, optionnel) : options de comportement.params.paths(string[], optionnel) : chemins des fichiers env à lire.params.override(boolean, défautfalse) : autorise les valeurs de fichier à remplacer les valeurs runtime existantes.params.justRead(boolean, défautfalse) : lit et valide sans réécrire les variables dans l'environnement runtime.
Valeur de retour
E.Success<DP.DataParserObjectShapeOutput<GenericShape>>: variables parsées conformes au schéma.FileSystemLeft<"read-text-file">: si la lecture d'un fichier env échoue.E.Error<DP.DataParserError>: si la validation du schéma échoue.
Voir aussi
setCurrentWorkingDirectory- Change le répertoire de travail courant.
