Skip to content

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éfaut false) : autorise les valeurs de fichier à remplacer les valeurs runtime existantes.
  • params.justRead (boolean, défaut false) : 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 ​

Diffusé sous licence MIT.