module-igniter

1.1.0 • Public • Published

JavaScript Style Guide Codecov Build Status Build status CircleCI

NodeJS Module Igniter

Automatic call nodejs module, originally created for load rollup-plugins.

Install

Using NPM

npm i module-igniter

Using Yarn

yarn add module-igniter

Usage

Without Argument

const igniter = require("module-igniter");
const plug = igniter({ prefix: "rollup-plugin-" });
plug("commonjs", "node-resolve");
// or plug(['commonjs', 'node-resolve'])
// result [require('rollup-plugin-commonjs')(), require('rollup-plugin-node-resolve')()]

With Single Argument

const igniter = require("module-igniter");
const plug = igniter({prefix: 'rollup-plugin-'})
 
// single array argument
plug({ foo: [["hello"]] });
// result [require('foo')(['hello])]
plug({replace: {'process.env.NODE_ENV': JSON.stringify(environment)})
// result [require('rollup-plugin-replace')({'process.env.NODE_ENV': JSON.stringify(environment)})]

With multiple Arguments

const igniter = require("module-igniter");
const plug = igniter();
 
// single array argument
plug({ foo: [["hello"], { bar: "baz" }] });
// result [require('foo')(['hello], {bar: 'baz'})]

Optional Environment (Last Boolean Parameter)

const igniter = require('module-igniter')
const plug = igniter({prefix: 'rollup-plugin-'})
plug({replace: {'process.env.NODE_ENV': JSON.stringify(environment)}, false)
// result []

Class Based Plugin (Webpack)

const igniter = require("module-igniter");
const plug = igniter({ classic: true });
plug({
  "html-webpack-plugin": {
    filename: "assets/admin.html"
  }
});
// result [new require('html-webpack-plugin')({filename: 'assets/admin.html'})]

Example

See here for real usage example

License

MIT

/module-igniter/

    Package Sidebar

    Install

    npm i module-igniter

    Weekly Downloads

    8

    Version

    1.1.0

    License

    MIT

    Unpacked Size

    9.89 kB

    Total Files

    6

    Last publish

    Collaborators

    • ekoeryanto