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

Readme

Keywords

none

Package Sidebar

Install

npm i module-igniter

Weekly Downloads

1

Version

1.1.0

License

MIT

Unpacked Size

9.89 kB

Total Files

6

Last publish

Collaborators

  • ekoeryanto