diff --git a/packages/contracts/src/env/env.ts b/packages/contracts/src/env/env.ts index 9086eb6b..941b8c49 100644 --- a/packages/contracts/src/env/env.ts +++ b/packages/contracts/src/env/env.ts @@ -21,7 +21,9 @@ export interface EnvStore { number (key: string, defaultValue: number): number /** - * Returns the environment variable identified by the given `key` as a boolean value. + * Returns the environment variable identified by the given `key` as a boolean + * value. The environment variable values `'true'` and `'1'` translate to a + * truthy value, every other value returns `false` or the default value. */ boolean (key: string): boolean boolean (key: string, defaultValue: boolean): boolean diff --git a/packages/env/src/env.ts b/packages/env/src/env.ts index 7c4aedbd..60db0941 100644 --- a/packages/env/src/env.ts +++ b/packages/env/src/env.ts @@ -44,15 +44,17 @@ export class Env implements EnvStore { } /** - * Returns the environment variable identified by the given `key` as a boolean value. + * Returns the environment variable identified by the given `key` as a boolean + * value. The environment variable values `'true'` and `'1'` translate to a + * truthy value, every other value returns `false` or the default value. */ boolean (key: string): boolean boolean (key: string, defaultValue: boolean): boolean boolean (key: string, defaultValue?: boolean): boolean { - const validTruthy = ['1', 'true'] + const truthyValues = ['1', 'true'] key = this.get(key).toLowerCase() - if (validTruthy.includes(key)) { + if (truthyValues.includes(key)) { return true }