babel-plugin-transform-es2015-modules-simple-amd

0.3.0 • Public • Published

babel-plugin-transform-es2015-modules-simple-amd npm version

Limited transformer for ECMAScript 2015 modules (AMD)

Converts this code:

import x from '/path/to/x';
import y from '/path/to/y';
doSomething();
export default x + y;

Into this one:

define(['/path/to/x', '/path/to/y'], function (x, y) {
  doSomething();
  return x + y;
});

Instead of this one (generated with babel-plugin-transform-es2015-modules-amd):

define(['exports', '/path/to/x', '/path/to/y'], function (exports, _x, _y) {
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
 
  var _x2 = _interopRequireDefault(_x);
 
  var _y2 = _interopRequireDefault(_y);
 
  function _interopRequireDefault(obj) {
    return obj && obj.__esModule ? obj : {
      'default': obj
    };
  }
 
  doSomething();
  exports.default = _x2.default + _y2.default;
});

Other features (like import x as y from 'X' or import * from 'X' etc) aren't supported. Just import VARIABLE from 'PATH' and import 'PATH'.

Warning. If no import or export are presented in JavaScript file, the plugin does nothing (means it doesn't wrap code with define).

Installation

$ npm install --save-dev babel-plugin-transform-es2015-modules-simple-amd

Usage

Via .babelrc (Recommended)

.babelrc

{
  "plugins": ["transform-es2015-modules-simple-amd"]
}

Via Node API

require('babel').transform('code', {
  plugins: ['transform-es2015-modules-simple-amd']
});

The same thing for CommonJS.

Thanks to RReverser.

/babel-plugin-transform-es2015-modules-simple-amd/

    Package Sidebar

    Install

    npm i babel-plugin-transform-es2015-modules-simple-amd

    Weekly Downloads

    187

    Version

    0.3.0

    License

    MIT

    Last publish

    Collaborators

    • finom