JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 26017851
  • Score
    100M100P100Q251298F
  • License MIT

merge single level defaults over a config object

Package Exports

  • defaults
  • defaults/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (defaults) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

defaults

A simple one level options merge utility

Install

npm install defaults

Usage

const defaults = require('defaults');

const handle = (options, fn) => {
    options = defaults(options, {
        timeout: 100
    });

    setTimeout(() => {
        fn(options);
    }, options.timeout);
}

handle({timeout: 1000}, () => {
    // We're here 1000 ms later
});

handle({timeout: 10000}, () => {
    // We're here 10s later
});

Summary

this module exports a function that takes 2 arguments: options and defaults. When called, it overrides all of undefined properties in options with the clones of properties defined in defaults

Sidecases: if called with a falsy options value, options will be initialized to a new object before being merged onto.