1.0.2 • Published 5 years ago

@itemsjs/defaults v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
5 years ago

ItemsJS defaults options provider

Merge user options with the default options to make sure that no option remains null/undefined

NPM version NPM downloads

Installation

npm i @itemsjs/defaults --save

Usage

const defaultOptions = require('@itemsjs/defaults');

const appDefaultOptions = {

    port: 3000,
    version: '1.0',

    serialNumber: '1ge9457hsdflerewr' // demo serial number
};

function setupMyApp(options) {

    options = defaultOptions.sync(options, appDefaultOptions);

    const app = express(); // assume that included


    app.set('version', options.version); // set default serial number
    app.set('serial-number', options.serialNumber); // set user-specific serial number


    app.listen(options.port); // start listening on the default port

    return app;
}


const userOptions = {

    serialNumber: process.env.SERIAL_NUMBER || 'my-user-serial-number';
};

// create new app
const app = setupMyApp(userOptions);

// Now your app listens on the default port with the user-provided serial number

And you're good to go!

License

MIT