0.0.6 • Published 2 years ago
@eskawl/configger v0.0.6
Configger
Easily set default values and aliases for configurations
Installing
Using NPM:
npm i @eskawl/configgerUsing yarn:
yarn add @eskawl/configgerImporting
const configger = require('configger')or in ES6
import configger from 'configger';Usage
configger takes in an object with the following keys
defaults: (Optional, defaults to{}) An object containing default configuration values. If the original configuration already contains keys provided in default, they are not changed.aliases: (Optional, defaults to{}) An object containing keys for the aliases. This should be given in the form ofkeyToBeAliased: alias. If thekeyToBeAliasedis present in the original configuration, it will be replaced byalias. If you intend to provide a default for thealiasusealiasin thedefaultsconfiguration instead ofkeyToBeAliased.
returns a function which takes in an original configuration and sets defaults and aliases.
Example
Calling configger returns a function to which you can pass a configuration to which defaults are to be applied. Lets call that function getConfig.
const defaults = {
logging: false,
debug: false,
}
const getConfig = configger({
defaults,
});
const originalConfiguration = {
speed: 'fast',
debug: 'true',
}
const config = getConfig(originalConfiguration);
// config will be
// {
// speed: 'fast',
// debug: 'true',
// logging: false,
// }You can also set aliases for keys if needed
const defaults = {
logging: false,
debug: false,
}
const aliases = {
speed: 'velocity',
}
const getConfig = configger({
defaults,
aliases,
});
const originalConfiguration = {
speed: 'fast',
debug: 'true',
}
const config = getConfig(originalConfiguration);
// config will be
// {
// velocity: 'fast',
// debug: 'true',
// logging: false,
// }