diff options
Diffstat (limited to 'u/process/env.ts')
-rw-r--r-- | u/process/env.ts | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/u/process/env.ts b/u/process/env.ts index 0e41b4f..c0d893c 100644 --- a/u/process/env.ts +++ b/u/process/env.ts @@ -1,17 +1,15 @@ import { Either, type IEither } from "@emprespresso/pengueno"; export const getRequiredEnv = <V extends string>(name: V): IEither<Error, V> => - Either - .fromFailable<Error, V>(() => Deno.env.get(name) as V) // could throw when no permission. - .flatMap((v) => - (v && Either.right(v)) || - Either.left( - new Error(`environment variable "${name}" is required D:`), - ) + Either.fromFailable<Error, V>(() => Deno.env.get(name) as V) // could throw when no permission. + .flatMap( + (v) => + (v && Either.right(v)) || + Either.left(new Error(`environment variable "${name}" is required D:`)), ); type ObjectFromList<T extends ReadonlyArray<string>, V = string> = { - [K in (T extends ReadonlyArray<infer U> ? U : never)]: V; + [K in T extends ReadonlyArray<infer U> ? U : never]: V; }; export const getRequiredEnvVars = <V extends string>(vars: ReadonlyArray<V>) => @@ -24,11 +22,12 @@ export const getRequiredEnvVars = <V extends string>(vars: ReadonlyArray<V>) => ) => { const [envVar, eitherVal] = x; return acc.flatMap((args) => { - return eitherVal.mapRight((envValue) => - ({ - ...args, - [envVar]: envValue, - }) as ObjectFromList<typeof vars> + return eitherVal.mapRight( + (envValue) => + ({ + ...args, + [envVar]: envValue, + }) as ObjectFromList<typeof vars>, ); }); }, |