initial commit taken from gitlab.lrz.de

This commit is contained in:
privatereese
2018-08-24 18:09:42 +02:00
parent ae54ed4c48
commit fc05486403
28494 changed files with 2159823 additions and 0 deletions

View File

@@ -0,0 +1,142 @@
# babel-plugin-transform-es2015-modules-commonjs
> This plugin transforms ES2015 modules to [CommonJS](http://wiki.commonjs.org/wiki/Modules/1.1).
>
> #### Babel 6 Changes
>
> Babel 6 changed some behavior by not doing `module.exports = exports['default']` anymore in the modules transforms.
>
> There are some caveats, but you can use [babel-plugin-add-module-exports](https://www.npmjs.com/package/babel-plugin-add-module-exports), so that updating to Babel 6 isn't a breaking change since users that don't use ES modules don't have to do `require("your-module").default`.
>
> However, it may not match how Node eventually implements ES modules natively given the [the current proposal](https://github.com/nodejs/node-eps/blob/master/002-es-modules.md#46-es-consuming-commonjs).
## Example
**In**
```javascript
export default 42;
```
**Out**
```javascript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = 42;
```
## Installation
```sh
npm install --save-dev babel-plugin-transform-es2015-modules-commonjs
```
## Usage
### Via `.babelrc` (Recommended)
**.babelrc**
```js
// without options
{
"plugins": ["transform-es2015-modules-commonjs"]
}
// with options
{
"plugins": [
["transform-es2015-modules-commonjs", {
"allowTopLevelThis": true
}]
]
}
```
### Via CLI
```sh
babel --plugins transform-es2015-modules-commonjs script.js
```
### Via Node API
```javascript
require("babel-core").transform("code", {
plugins: ["transform-es2015-modules-commonjs"]
});
```
## Options
### `loose`
`boolean`, defaults to `false`.
As per the spec, `import` and `export` are only allowed to be used at the top
level. When in loose mode these are allowed to be used anywhere.
And by default, when using exports with babel a non-enumerable `__esModule` property
is exported.
```javascript
var foo = exports.foo = 5;
Object.defineProperty(exports, "__esModule", {
value: true
});
```
In environments that don't support this you can enable loose mode on `babel-plugin-transform-es2015-modules-commonjs`
and instead of using `Object.defineProperty` an assignment will be used instead.
```javascript
var foo = exports.foo = 5;
exports.__esModule = true;
```
### `strict`
`boolean`, defaults to `false`
By default, when using exports with babel a non-enumerable `__esModule` property
is exported. In some cases this property is used to determine if the import _is_ the
default export or if it _contains_ the default export.
```javascript
var foo = exports.foo = 5;
Object.defineProperty(exports, "__esModule", {
value: true
});
```
In order to prevent the `__esModule` property from being exported, you can set
the `strict` option to `true`.
### `noInterop`
`boolean`, defaults to `false`
By default, when using exports with babel a non-enumerable `__esModule` property
is exported. This property is then used to determine if the import _is_ the default
export or if it _contains_ the default export.
```javascript
"use strict";
var _foo = require("foo");
var _foo2 = _interopRequireDefault(_foo);
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : { default: obj };
}
```
In cases where the auto-unwrapping of `default` is not needed, you can set the
`noInterop` option to `true` to avoid the usage of the `interopRequireDefault`
helper (shown in inline form above).

View File

@@ -0,0 +1,613 @@
"use strict";
exports.__esModule = true;
var _keys = require("babel-runtime/core-js/object/keys");
var _keys2 = _interopRequireDefault(_keys);
var _create = require("babel-runtime/core-js/object/create");
var _create2 = _interopRequireDefault(_create);
var _getIterator2 = require("babel-runtime/core-js/get-iterator");
var _getIterator3 = _interopRequireDefault(_getIterator2);
var _symbol = require("babel-runtime/core-js/symbol");
var _symbol2 = _interopRequireDefault(_symbol);
exports.default = function () {
var REASSIGN_REMAP_SKIP = (0, _symbol2.default)();
var reassignmentVisitor = {
ReferencedIdentifier: function ReferencedIdentifier(path) {
var name = path.node.name;
var remap = this.remaps[name];
if (!remap) return;
if (this.scope.getBinding(name) !== path.scope.getBinding(name)) return;
var replacement = t.cloneDeep(remap);
replacement.loc = path.node.loc;
if (path.parentPath.isCallExpression({ callee: path.node })) {
path.replaceWith(t.sequenceExpression([t.numericLiteral(0), replacement]));
} else if (path.isJSXIdentifier() && t.isMemberExpression(replacement)) {
var object = replacement.object,
property = replacement.property;
path.replaceWith(t.JSXMemberExpression(t.JSXIdentifier(object.name), t.JSXIdentifier(property.name)));
} else {
path.replaceWith(replacement);
}
this.requeueInParent(path);
},
AssignmentExpression: function AssignmentExpression(path) {
var node = path.node;
if (node[REASSIGN_REMAP_SKIP]) return;
var left = path.get("left");
if (left.isIdentifier()) {
var name = left.node.name;
var exports = this.exports[name];
if (!exports) return;
if (this.scope.getBinding(name) !== path.scope.getBinding(name)) return;
node[REASSIGN_REMAP_SKIP] = true;
for (var _iterator = exports, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : (0, _getIterator3.default)(_iterator);;) {
var _ref;
if (_isArray) {
if (_i >= _iterator.length) break;
_ref = _iterator[_i++];
} else {
_i = _iterator.next();
if (_i.done) break;
_ref = _i.value;
}
var reid = _ref;
node = buildExportsAssignment(reid, node).expression;
}
path.replaceWith(node);
this.requeueInParent(path);
} else if (left.isObjectPattern()) {
for (var _iterator2 = left.node.properties, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : (0, _getIterator3.default)(_iterator2);;) {
var _ref2;
if (_isArray2) {
if (_i2 >= _iterator2.length) break;
_ref2 = _iterator2[_i2++];
} else {
_i2 = _iterator2.next();
if (_i2.done) break;
_ref2 = _i2.value;
}
var property = _ref2;
var _name = property.value.name;
var _exports = this.exports[_name];
if (!_exports) continue;
if (this.scope.getBinding(_name) !== path.scope.getBinding(_name)) return;
node[REASSIGN_REMAP_SKIP] = true;
path.insertAfter(buildExportsAssignment(t.identifier(_name), t.identifier(_name)));
}
} else if (left.isArrayPattern()) {
for (var _iterator3 = left.node.elements, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : (0, _getIterator3.default)(_iterator3);;) {
var _ref3;
if (_isArray3) {
if (_i3 >= _iterator3.length) break;
_ref3 = _iterator3[_i3++];
} else {
_i3 = _iterator3.next();
if (_i3.done) break;
_ref3 = _i3.value;
}
var element = _ref3;
if (!element) continue;
var _name2 = element.name;
var _exports2 = this.exports[_name2];
if (!_exports2) continue;
if (this.scope.getBinding(_name2) !== path.scope.getBinding(_name2)) return;
node[REASSIGN_REMAP_SKIP] = true;
path.insertAfter(buildExportsAssignment(t.identifier(_name2), t.identifier(_name2)));
}
}
},
UpdateExpression: function UpdateExpression(path) {
var arg = path.get("argument");
if (!arg.isIdentifier()) return;
var name = arg.node.name;
var exports = this.exports[name];
if (!exports) return;
if (this.scope.getBinding(name) !== path.scope.getBinding(name)) return;
var node = t.assignmentExpression(path.node.operator[0] + "=", arg.node, t.numericLiteral(1));
if (path.parentPath.isExpressionStatement() && !path.isCompletionRecord() || path.node.prefix) {
path.replaceWith(node);
this.requeueInParent(path);
return;
}
var nodes = [];
nodes.push(node);
var operator = void 0;
if (path.node.operator === "--") {
operator = "+";
} else {
operator = "-";
}
nodes.push(t.binaryExpression(operator, arg.node, t.numericLiteral(1)));
path.replaceWithMultiple(t.sequenceExpression(nodes));
}
};
return {
inherits: _babelPluginTransformStrictMode2.default,
visitor: {
ThisExpression: function ThisExpression(path, state) {
if (this.ranCommonJS) return;
if (state.opts.allowTopLevelThis !== true && !path.findParent(function (path) {
return !path.is("shadow") && THIS_BREAK_KEYS.indexOf(path.type) >= 0;
})) {
path.replaceWith(t.identifier("undefined"));
}
},
Program: {
exit: function exit(path) {
this.ranCommonJS = true;
var strict = !!this.opts.strict;
var noInterop = !!this.opts.noInterop;
var scope = path.scope;
scope.rename("module");
scope.rename("exports");
scope.rename("require");
var hasExports = false;
var hasImports = false;
var body = path.get("body");
var imports = (0, _create2.default)(null);
var exports = (0, _create2.default)(null);
var nonHoistedExportNames = (0, _create2.default)(null);
var topNodes = [];
var remaps = (0, _create2.default)(null);
var requires = (0, _create2.default)(null);
function addRequire(source, blockHoist) {
var cached = requires[source];
if (cached) return cached;
var ref = path.scope.generateUidIdentifier((0, _path2.basename)(source, (0, _path2.extname)(source)));
var varDecl = t.variableDeclaration("var", [t.variableDeclarator(ref, buildRequire(t.stringLiteral(source)).expression)]);
if (imports[source]) {
varDecl.loc = imports[source].loc;
}
if (typeof blockHoist === "number" && blockHoist > 0) {
varDecl._blockHoist = blockHoist;
}
topNodes.push(varDecl);
return requires[source] = ref;
}
function addTo(obj, key, arr) {
var existing = obj[key] || [];
obj[key] = existing.concat(arr);
}
for (var _iterator4 = body, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : (0, _getIterator3.default)(_iterator4);;) {
var _ref4;
if (_isArray4) {
if (_i4 >= _iterator4.length) break;
_ref4 = _iterator4[_i4++];
} else {
_i4 = _iterator4.next();
if (_i4.done) break;
_ref4 = _i4.value;
}
var _path = _ref4;
if (_path.isExportDeclaration()) {
hasExports = true;
var specifiers = [].concat(_path.get("declaration"), _path.get("specifiers"));
for (var _iterator6 = specifiers, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : (0, _getIterator3.default)(_iterator6);;) {
var _ref6;
if (_isArray6) {
if (_i6 >= _iterator6.length) break;
_ref6 = _iterator6[_i6++];
} else {
_i6 = _iterator6.next();
if (_i6.done) break;
_ref6 = _i6.value;
}
var _specifier2 = _ref6;
var ids = _specifier2.getBindingIdentifiers();
if (ids.__esModule) {
throw _specifier2.buildCodeFrameError("Illegal export \"__esModule\"");
}
}
}
if (_path.isImportDeclaration()) {
var _importsEntry$specifi;
hasImports = true;
var key = _path.node.source.value;
var importsEntry = imports[key] || {
specifiers: [],
maxBlockHoist: 0,
loc: _path.node.loc
};
(_importsEntry$specifi = importsEntry.specifiers).push.apply(_importsEntry$specifi, _path.node.specifiers);
if (typeof _path.node._blockHoist === "number") {
importsEntry.maxBlockHoist = Math.max(_path.node._blockHoist, importsEntry.maxBlockHoist);
}
imports[key] = importsEntry;
_path.remove();
} else if (_path.isExportDefaultDeclaration()) {
var declaration = _path.get("declaration");
if (declaration.isFunctionDeclaration()) {
var id = declaration.node.id;
var defNode = t.identifier("default");
if (id) {
addTo(exports, id.name, defNode);
topNodes.push(buildExportsAssignment(defNode, id));
_path.replaceWith(declaration.node);
} else {
topNodes.push(buildExportsAssignment(defNode, t.toExpression(declaration.node)));
_path.remove();
}
} else if (declaration.isClassDeclaration()) {
var _id = declaration.node.id;
var _defNode = t.identifier("default");
if (_id) {
addTo(exports, _id.name, _defNode);
_path.replaceWithMultiple([declaration.node, buildExportsAssignment(_defNode, _id)]);
} else {
_path.replaceWith(buildExportsAssignment(_defNode, t.toExpression(declaration.node)));
_path.parentPath.requeue(_path.get("expression.left"));
}
} else {
_path.replaceWith(buildExportsAssignment(t.identifier("default"), declaration.node));
_path.parentPath.requeue(_path.get("expression.left"));
}
} else if (_path.isExportNamedDeclaration()) {
var _declaration = _path.get("declaration");
if (_declaration.node) {
if (_declaration.isFunctionDeclaration()) {
var _id2 = _declaration.node.id;
addTo(exports, _id2.name, _id2);
topNodes.push(buildExportsAssignment(_id2, _id2));
_path.replaceWith(_declaration.node);
} else if (_declaration.isClassDeclaration()) {
var _id3 = _declaration.node.id;
addTo(exports, _id3.name, _id3);
_path.replaceWithMultiple([_declaration.node, buildExportsAssignment(_id3, _id3)]);
nonHoistedExportNames[_id3.name] = true;
} else if (_declaration.isVariableDeclaration()) {
var declarators = _declaration.get("declarations");
for (var _iterator7 = declarators, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : (0, _getIterator3.default)(_iterator7);;) {
var _ref7;
if (_isArray7) {
if (_i7 >= _iterator7.length) break;
_ref7 = _iterator7[_i7++];
} else {
_i7 = _iterator7.next();
if (_i7.done) break;
_ref7 = _i7.value;
}
var decl = _ref7;
var _id4 = decl.get("id");
var init = decl.get("init");
var exportsToInsert = [];
if (!init.node) init.replaceWith(t.identifier("undefined"));
if (_id4.isIdentifier()) {
addTo(exports, _id4.node.name, _id4.node);
init.replaceWith(buildExportsAssignment(_id4.node, init.node).expression);
nonHoistedExportNames[_id4.node.name] = true;
} else if (_id4.isObjectPattern()) {
for (var _i8 = 0; _i8 < _id4.node.properties.length; _i8++) {
var prop = _id4.node.properties[_i8];
var propValue = prop.value;
if (t.isAssignmentPattern(propValue)) {
propValue = propValue.left;
} else if (t.isRestProperty(prop)) {
propValue = prop.argument;
}
addTo(exports, propValue.name, propValue);
exportsToInsert.push(buildExportsAssignment(propValue, propValue));
nonHoistedExportNames[propValue.name] = true;
}
} else if (_id4.isArrayPattern() && _id4.node.elements) {
for (var _i9 = 0; _i9 < _id4.node.elements.length; _i9++) {
var elem = _id4.node.elements[_i9];
if (!elem) continue;
if (t.isAssignmentPattern(elem)) {
elem = elem.left;
} else if (t.isRestElement(elem)) {
elem = elem.argument;
}
var name = elem.name;
addTo(exports, name, elem);
exportsToInsert.push(buildExportsAssignment(elem, elem));
nonHoistedExportNames[name] = true;
}
}
_path.insertAfter(exportsToInsert);
}
_path.replaceWith(_declaration.node);
}
continue;
}
var _specifiers = _path.get("specifiers");
var nodes = [];
var _source = _path.node.source;
if (_source) {
var ref = addRequire(_source.value, _path.node._blockHoist);
for (var _iterator8 = _specifiers, _isArray8 = Array.isArray(_iterator8), _i10 = 0, _iterator8 = _isArray8 ? _iterator8 : (0, _getIterator3.default)(_iterator8);;) {
var _ref8;
if (_isArray8) {
if (_i10 >= _iterator8.length) break;
_ref8 = _iterator8[_i10++];
} else {
_i10 = _iterator8.next();
if (_i10.done) break;
_ref8 = _i10.value;
}
var _specifier3 = _ref8;
if (_specifier3.isExportNamespaceSpecifier()) {} else if (_specifier3.isExportDefaultSpecifier()) {} else if (_specifier3.isExportSpecifier()) {
if (!noInterop && _specifier3.node.local.name === "default") {
topNodes.push(buildExportsFrom(t.stringLiteral(_specifier3.node.exported.name), t.memberExpression(t.callExpression(this.addHelper("interopRequireDefault"), [ref]), _specifier3.node.local)));
} else {
topNodes.push(buildExportsFrom(t.stringLiteral(_specifier3.node.exported.name), t.memberExpression(ref, _specifier3.node.local)));
}
nonHoistedExportNames[_specifier3.node.exported.name] = true;
}
}
} else {
for (var _iterator9 = _specifiers, _isArray9 = Array.isArray(_iterator9), _i11 = 0, _iterator9 = _isArray9 ? _iterator9 : (0, _getIterator3.default)(_iterator9);;) {
var _ref9;
if (_isArray9) {
if (_i11 >= _iterator9.length) break;
_ref9 = _iterator9[_i11++];
} else {
_i11 = _iterator9.next();
if (_i11.done) break;
_ref9 = _i11.value;
}
var _specifier4 = _ref9;
if (_specifier4.isExportSpecifier()) {
addTo(exports, _specifier4.node.local.name, _specifier4.node.exported);
nonHoistedExportNames[_specifier4.node.exported.name] = true;
nodes.push(buildExportsAssignment(_specifier4.node.exported, _specifier4.node.local));
}
}
}
_path.replaceWithMultiple(nodes);
} else if (_path.isExportAllDeclaration()) {
var exportNode = buildExportAll({
OBJECT: addRequire(_path.node.source.value, _path.node._blockHoist)
});
exportNode.loc = _path.node.loc;
topNodes.push(exportNode);
_path.remove();
}
}
for (var source in imports) {
var _imports$source = imports[source],
specifiers = _imports$source.specifiers,
maxBlockHoist = _imports$source.maxBlockHoist;
if (specifiers.length) {
var uid = addRequire(source, maxBlockHoist);
var wildcard = void 0;
for (var i = 0; i < specifiers.length; i++) {
var specifier = specifiers[i];
if (t.isImportNamespaceSpecifier(specifier)) {
if (strict || noInterop) {
remaps[specifier.local.name] = uid;
} else {
var varDecl = t.variableDeclaration("var", [t.variableDeclarator(specifier.local, t.callExpression(this.addHelper("interopRequireWildcard"), [uid]))]);
if (maxBlockHoist > 0) {
varDecl._blockHoist = maxBlockHoist;
}
topNodes.push(varDecl);
}
wildcard = specifier.local;
} else if (t.isImportDefaultSpecifier(specifier)) {
specifiers[i] = t.importSpecifier(specifier.local, t.identifier("default"));
}
}
for (var _iterator5 = specifiers, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : (0, _getIterator3.default)(_iterator5);;) {
var _ref5;
if (_isArray5) {
if (_i5 >= _iterator5.length) break;
_ref5 = _iterator5[_i5++];
} else {
_i5 = _iterator5.next();
if (_i5.done) break;
_ref5 = _i5.value;
}
var _specifier = _ref5;
if (t.isImportSpecifier(_specifier)) {
var target = uid;
if (_specifier.imported.name === "default") {
if (wildcard) {
target = wildcard;
} else if (!noInterop) {
target = wildcard = path.scope.generateUidIdentifier(uid.name);
var _varDecl = t.variableDeclaration("var", [t.variableDeclarator(target, t.callExpression(this.addHelper("interopRequireDefault"), [uid]))]);
if (maxBlockHoist > 0) {
_varDecl._blockHoist = maxBlockHoist;
}
topNodes.push(_varDecl);
}
}
remaps[_specifier.local.name] = t.memberExpression(t.cloneWithoutLoc(target), t.cloneWithoutLoc(_specifier.imported));
}
}
} else {
var requireNode = buildRequire(t.stringLiteral(source));
requireNode.loc = imports[source].loc;
topNodes.push(requireNode);
}
}
if (hasImports && (0, _keys2.default)(nonHoistedExportNames).length) {
var maxHoistedExportsNodeAssignmentLength = 100;
var nonHoistedExportNamesArr = (0, _keys2.default)(nonHoistedExportNames);
var _loop = function _loop(currentExportsNodeAssignmentLength) {
var nonHoistedExportNamesChunk = nonHoistedExportNamesArr.slice(currentExportsNodeAssignmentLength, currentExportsNodeAssignmentLength + maxHoistedExportsNodeAssignmentLength);
var hoistedExportsNode = t.identifier("undefined");
nonHoistedExportNamesChunk.forEach(function (name) {
hoistedExportsNode = buildExportsAssignment(t.identifier(name), hoistedExportsNode).expression;
});
var node = t.expressionStatement(hoistedExportsNode);
node._blockHoist = 3;
topNodes.unshift(node);
};
for (var currentExportsNodeAssignmentLength = 0; currentExportsNodeAssignmentLength < nonHoistedExportNamesArr.length; currentExportsNodeAssignmentLength += maxHoistedExportsNodeAssignmentLength) {
_loop(currentExportsNodeAssignmentLength);
}
}
if (hasExports && !strict) {
var buildTemplate = buildExportsModuleDeclaration;
if (this.opts.loose) buildTemplate = buildLooseExportsModuleDeclaration;
var declar = buildTemplate();
declar._blockHoist = 3;
topNodes.unshift(declar);
}
path.unshiftContainer("body", topNodes);
path.traverse(reassignmentVisitor, {
remaps: remaps,
scope: scope,
exports: exports,
requeueInParent: function requeueInParent(newPath) {
return path.requeue(newPath);
}
});
}
}
}
};
};
var _path2 = require("path");
var _babelTemplate = require("babel-template");
var _babelTemplate2 = _interopRequireDefault(_babelTemplate);
var _babelPluginTransformStrictMode = require("babel-plugin-transform-strict-mode");
var _babelPluginTransformStrictMode2 = _interopRequireDefault(_babelPluginTransformStrictMode);
var _babelTypes = require("babel-types");
var t = _interopRequireWildcard(_babelTypes);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var buildRequire = (0, _babelTemplate2.default)("\n require($0);\n");
var buildExportsModuleDeclaration = (0, _babelTemplate2.default)("\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n");
var buildExportsFrom = (0, _babelTemplate2.default)("\n Object.defineProperty(exports, $0, {\n enumerable: true,\n get: function () {\n return $1;\n }\n });\n");
var buildLooseExportsModuleDeclaration = (0, _babelTemplate2.default)("\n exports.__esModule = true;\n");
var buildExportsAssignment = (0, _babelTemplate2.default)("\n exports.$0 = $1;\n");
var buildExportAll = (0, _babelTemplate2.default)("\n Object.keys(OBJECT).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n Object.defineProperty(exports, key, {\n enumerable: true,\n get: function () {\n return OBJECT[key];\n }\n });\n });\n");
var THIS_BREAK_KEYS = ["FunctionExpression", "FunctionDeclaration", "ClassProperty", "ClassMethod", "ObjectMethod"];
module.exports = exports["default"];

View File

@@ -0,0 +1,102 @@
{
"_args": [
[
"babel-plugin-transform-es2015-modules-commonjs@^6.8.0",
"/home/bernhard/freifunk-app/node_modules/babel-preset-fbjs"
]
],
"_from": "babel-plugin-transform-es2015-modules-commonjs@>=6.8.0 <7.0.0",
"_id": "babel-plugin-transform-es2015-modules-commonjs@6.26.2",
"_inCache": true,
"_installable": true,
"_location": "/babel-plugin-transform-es2015-modules-commonjs",
"_nodeVersion": "9.4.0",
"_npmOperationalInternal": {
"host": "s3://npm-registry-packages",
"tmp": "tmp/babel-plugin-transform-es2015-modules-commonjs_6.26.2_1524761013398_0.8491911130152716"
},
"_npmUser": {
"email": "loganfsmyth@gmail.com",
"name": "loganfsmyth"
},
"_npmVersion": "5.6.0",
"_phantomChildren": {},
"_requested": {
"name": "babel-plugin-transform-es2015-modules-commonjs",
"raw": "babel-plugin-transform-es2015-modules-commonjs@^6.8.0",
"rawSpec": "^6.8.0",
"scope": null,
"spec": ">=6.8.0 <7.0.0",
"type": "range"
},
"_requiredBy": [
"/babel-preset-es2015-node",
"/babel-preset-fbjs",
"/babel-preset-react-native"
],
"_resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
"_shasum": "58a793863a9e7ca870bdc5a881117ffac27db6f3",
"_shrinkwrap": null,
"_spec": "babel-plugin-transform-es2015-modules-commonjs@^6.8.0",
"_where": "/home/bernhard/freifunk-app/node_modules/babel-preset-fbjs",
"dependencies": {
"babel-plugin-transform-strict-mode": "^6.24.1",
"babel-runtime": "^6.26.0",
"babel-template": "^6.26.0",
"babel-types": "^6.26.0"
},
"description": "This plugin transforms ES2015 modules to CommonJS",
"devDependencies": {
"babel-helper-plugin-test-runner": "^6.24.1",
"babel-plugin-syntax-object-rest-spread": "^6.13.0"
},
"directories": {},
"dist": {
"fileCount": 3,
"integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==",
"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4gG1CRA9TVsSAnZWagAA5h8QAIFZNrkSToxujndP3gvf\nUS3GQ+efYJANxMVm3cCOavaycGDgV6UsA3aMTfJ+039gAnadYMjawyF6PxfM\nIwJr68Kr7uMikLffi8ry3SwdanoNAPofpa/ukNa67I3CK6uu6dASSXRvavj0\ntCNRqHklK3+eVqgTc4bOoM1XNtIXTIKTc8CzV/QTiqz7KX4cubxe2vCf+gbP\nagUwQvFP2WbUjEPY2M1G4EoVfM2unfubiH1mANpgnJMmadK1AKaLDvD6gV+O\n40+NlYGlSA9HmPIJtxVGrRVGdRHPQ1o99uEbVFzhy3EW4I47xQPP522fppN9\nEWMMhfGGiSKw+YS6FU1tIS2W1/QI3gAHFykUE9m9xw7b8EI0LPB1E+C/Yf2U\ndcVidoniz67hrit+uApKwlbf9dY1Azl77m4dxTMhCt/tdyPO6dhYKXjqqFIq\nFv9POEVCrefdwB/Q+WqU6RTrpK1qZsIFpiP/sG+R0sz7ssPVjP4s10yyYx7Z\nFKdnj/hfHR9cddpm+GTziqRZFNjX5QwMvleEBfUU9vZt/gIeUpwNRnC1lf/W\nGv9EZj2Gh6zyJM0aoG4LmiTix7M9HfHxgRXdhhmV0piSsKyYnkoZ/ZECFa5/\nxd2X7q7VQ5bFaCJhfTsX1sDXkqjUcRGf43V/6T5gCHNBGf6SGU2fz2ua4NEa\ncUG+\r\n=MDo3\r\n-----END PGP SIGNATURE-----\r\n",
"shasum": "58a793863a9e7ca870bdc5a881117ffac27db6f3",
"tarball": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
"unpackedSize": 28366
},
"keywords": [
"babel-plugin"
],
"license": "MIT",
"main": "lib/index.js",
"maintainers": [
{
"name": "danez",
"email": "daniel@tschinder.de"
},
{
"name": "existentialism",
"email": "bng412@gmail.com"
},
{
"name": "hzoo",
"email": "hi@henryzoo.com"
},
{
"name": "loganfsmyth",
"email": "loganfsmyth@gmail.com"
},
{
"name": "sebmck",
"email": "sebmck@gmail.com"
},
{
"name": "thejameskyle",
"email": "me@thejameskyle.com"
}
],
"name": "babel-plugin-transform-es2015-modules-commonjs",
"optionalDependencies": {},
"readme": "# babel-plugin-transform-es2015-modules-commonjs\n\n> This plugin transforms ES2015 modules to [CommonJS](http://wiki.commonjs.org/wiki/Modules/1.1).\n>\n> #### Babel 6 Changes\n> \n> Babel 6 changed some behavior by not doing `module.exports = exports['default']` anymore in the modules transforms.\n> \n> There are some caveats, but you can use [babel-plugin-add-module-exports](https://www.npmjs.com/package/babel-plugin-add-module-exports), so that updating to Babel 6 isn't a breaking change since users that don't use ES modules don't have to do `require(\"your-module\").default`.\n> \n> However, it may not match how Node eventually implements ES modules natively given the [the current proposal](https://github.com/nodejs/node-eps/blob/master/002-es-modules.md#46-es-consuming-commonjs).\n\n## Example\n\n**In**\n\n```javascript\nexport default 42;\n```\n\n**Out**\n\n```javascript\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = 42;\n```\n\n## Installation\n\n```sh\nnpm install --save-dev babel-plugin-transform-es2015-modules-commonjs\n```\n\n## Usage\n\n### Via `.babelrc` (Recommended)\n\n**.babelrc**\n\n```js\n// without options\n{\n \"plugins\": [\"transform-es2015-modules-commonjs\"]\n}\n\n// with options\n{\n \"plugins\": [\n [\"transform-es2015-modules-commonjs\", {\n \"allowTopLevelThis\": true\n }]\n ]\n}\n```\n\n### Via CLI\n\n```sh\nbabel --plugins transform-es2015-modules-commonjs script.js\n```\n\n### Via Node API\n\n```javascript\nrequire(\"babel-core\").transform(\"code\", {\n plugins: [\"transform-es2015-modules-commonjs\"]\n});\n```\n\n## Options\n\n### `loose`\n\n`boolean`, defaults to `false`.\n\nAs per the spec, `import` and `export` are only allowed to be used at the top\nlevel. When in loose mode these are allowed to be used anywhere.\n\nAnd by default, when using exports with babel a non-enumerable `__esModule` property\nis exported.\n\n```javascript\nvar foo = exports.foo = 5;\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n```\n\nIn environments that don't support this you can enable loose mode on `babel-plugin-transform-es2015-modules-commonjs`\nand instead of using `Object.defineProperty` an assignment will be used instead.\n\n```javascript\nvar foo = exports.foo = 5;\nexports.__esModule = true;\n```\n\n### `strict`\n\n`boolean`, defaults to `false`\n\nBy default, when using exports with babel a non-enumerable `__esModule` property\nis exported. In some cases this property is used to determine if the import _is_ the\ndefault export or if it _contains_ the default export.\n\n```javascript\nvar foo = exports.foo = 5;\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n```\n\nIn order to prevent the `__esModule` property from being exported, you can set\nthe `strict` option to `true`.\n\n### `noInterop`\n\n`boolean`, defaults to `false`\n\nBy default, when using exports with babel a non-enumerable `__esModule` property\nis exported. This property is then used to determine if the import _is_ the default\nexport or if it _contains_ the default export.\n\n```javascript\n\"use strict\";\n\nvar _foo = require(\"foo\");\n\nvar _foo2 = _interopRequireDefault(_foo);\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n```\n\nIn cases where the auto-unwrapping of `default` is not needed, you can set the\n`noInterop` option to `true` to avoid the usage of the `interopRequireDefault`\nhelper (shown in inline form above).\n",
"readmeFilename": "README.md",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-es2015-modules-commonjs"
},
"version": "6.26.2"
}