@digitsole/blackburn-configuration v1.1.0
@digitsole/blackburn-configuration
Installation
pnpm install @digitsole/blackburn-configuration
Overview
This is a utility for retrieving and validate environment variables.
Usage
Factories
configFactory
Create a configuration object
import { configFactory, get } from '@digitsole/blackburn-configuration';
const config = configFactory({
thing: get('thing', 'string'),
});configFactoryWithComputed
Create a configuration object with the ability to process computed values
import { configFactoryWithComputed, get } from '@digitsole/blackburn-configuration';
const config = configFactoryWithComputed({
thing: get('thing', 'string'),
another: get('another', 'string'),
}, ({ something }) => ({
combo: thing + another
}));Retrievers
The variables must be declared as follows :
CONFIG_THING=lorem
Warning : the
CONFIGprefix is mandatory
A retriever will check if the value exist and, if declared, do a validation related to the validation type.
get
Retrieve the value of an environment variable and throw if the variable isn't found AND if default value isn't defined
Usage examples :
// Check if `CONFIG_THING` exist and verify if this value is a `string`
const thing = get('thing', 'string');
// Check if `CONFIG_THING2` exist and verify if this value is a `boolean`
const thing2 = get('thing2', 'boolean');
// Check if `CONFIG_THING3` exist and don't verify the type (not recommended)
const thing3 = get('thing3');
// Check if `CONFIG_THING` exist, if not use the default value instead
const thing4 = get('thing4', 'string', 'ipsum');
// Check if `CONFIG_THING_NESTED` exist and verify if this value is a `boolean`
const thingNested = get('thing.nested', 'boolean');getOrThrow (mostly recommended)
Retrieve the value of an environment variable and throw if the variable isn't found.
It's the same behaviour as get, except that the default value disappears.
Errors
ConfigNotFoundError
ConfigTypeError