Skip to content

Latest commit

 

History

History
51 lines (38 loc) · 1.32 KB

README.md

File metadata and controls

51 lines (38 loc) · 1.32 KB

Provide Modules

Greenkeeper badge

A babel plugin to Automatically load modules.

Module (value) is loaded and the identifier (key) is used as free variable. The identifier is filled with the exports of the loaded module.

Usage

npm install --save babel babel-plugin-provide-modules

The add plugin to .babelrc along with options.

{
  "plugins": [
    ["provide-modules", {
      "debug": "debug", // default
      "lodash": ["get", "assign"], // de-structured
      "react-dom": [{"findDOMNode" : "find"}], // de-structured with alias
      // both default and de-structured imports with alias
      "react": {
        default: "React",
        destructured: ["PropTypes", {"cloneElement": "clone" }],
      }
    }]
  ]
}

The above will inject the following into every file:

import debug from 'debug';
import {get, assign} from 'lodash';
import {findDOMNode as find} from 'react-dom';
import React, {PropTypes, cloneElement as clone} from 'react';

If any file already contains a binding defined in options, the binding will not be inserted.

For example, given the same options above and the following file:

const debug = 'some value';

Debug will not be automatically loaded for that file.