diff options
author | Elizabeth Hunt <me@liz.coffee> | 2025-06-29 19:46:30 -0700 |
---|---|---|
committer | Elizabeth Hunt <me@liz.coffee> | 2025-06-29 19:46:30 -0700 |
commit | 5eb1e7e8808d4de353c1a0bc87b2f5d078882d3a (patch) | |
tree | 8e33c9abc0ce0bdc2534249f7167cd620fcda277 /u/process/env.ts | |
parent | 61c671f186615ef69235ddb0e3f7b127ee8449fe (diff) | |
download | ci-5eb1e7e8808d4de353c1a0bc87b2f5d078882d3a.tar.gz ci-5eb1e7e8808d4de353c1a0bc87b2f5d078882d3a.zip |
Deployment fixes
Diffstat (limited to 'u/process/env.ts')
-rw-r--r-- | u/process/env.ts | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/u/process/env.ts b/u/process/env.ts index 9a55488..76961c9 100644 --- a/u/process/env.ts +++ b/u/process/env.ts @@ -1,11 +1,13 @@ import { IOptional, Either, Optional, type IEither } from '@emprespresso/pengueno'; -export const getEnv = <V extends string>(name: string): IOptional<V> => Optional.from(<V>process.env[name]); +export const getEnv = <V extends string>(name: string): IOptional<V> => + Optional.from(<V>process.env[name]).filter((val) => val.trim() !== ''); export const getRequiredEnv = <V extends string>(name: string): IEither<Error, V> => - Either.fromFailable(() => getEnv<V>(name).get()).mapLeft( - () => new Error(`environment variable "${name}" is required D:`), - ); + getEnv<V>(name) + .map((envVal) => Either.right<Error, V>(<V>envVal)) + .orSome(() => Either.left<Error, V>(new Error(`environment variable "${name}" is required D:`))) + .get(); type ObjectFromList<T extends ReadonlyArray<string>, V = string> = { [K in T extends ReadonlyArray<infer U> ? U : never]: V; |