remove commonStrict module formatter
This commit is contained in:
parent
6011db7ae1
commit
778b4e3a27
@ -19,7 +19,6 @@ to5.transform('import "foo";', { modules: "common" });
|
|||||||
|
|
||||||
* [AMD](#amd)
|
* [AMD](#amd)
|
||||||
* [Common (Default)](#common-default)
|
* [Common (Default)](#common-default)
|
||||||
* [Common Strict](#common-strict)
|
|
||||||
* [Ignore](#ignore)
|
* [Ignore](#ignore)
|
||||||
* [System](#system)
|
* [System](#system)
|
||||||
* [UMD](#umd)
|
* [UMD](#umd)
|
||||||
@ -71,46 +70,6 @@ var bar = require("foo").bar;
|
|||||||
var bar = require("foo").foo;
|
var bar = require("foo").foo;
|
||||||
```
|
```
|
||||||
|
|
||||||
### Common Strict
|
|
||||||
|
|
||||||
```sh
|
|
||||||
$ 6to5 --modules commonStrict
|
|
||||||
```
|
|
||||||
|
|
||||||
**In**
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
import "foo";
|
|
||||||
|
|
||||||
import foo from "foo";
|
|
||||||
import * as foo from "foo";
|
|
||||||
|
|
||||||
import {bar} from "foo";
|
|
||||||
import {foo as bar} from "foo";
|
|
||||||
|
|
||||||
export {test};
|
|
||||||
export var test = 5;
|
|
||||||
|
|
||||||
export default test;
|
|
||||||
```
|
|
||||||
|
|
||||||
**Out**
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
require("foo");
|
|
||||||
|
|
||||||
var foo = require("foo").default;
|
|
||||||
var foo = require("foo");
|
|
||||||
|
|
||||||
var bar = require("foo").bar;
|
|
||||||
var bar = require("foo").foo;
|
|
||||||
|
|
||||||
exports.test = test;
|
|
||||||
var test = 5; exports.test = test;
|
|
||||||
|
|
||||||
exports.default = test;
|
|
||||||
```
|
|
||||||
|
|
||||||
### AMD
|
### AMD
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
@ -131,9 +90,14 @@ export function bar() {
|
|||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
define(["exports", "foo"], function (exports, _foo) {
|
define(["exports", "foo"], function (exports, _foo) {
|
||||||
exports.bar = bar;
|
"use strict";
|
||||||
|
|
||||||
var foo = _foo.default;
|
var _interopRequire = function (obj) {
|
||||||
|
return obj && (obj["default"] || obj);
|
||||||
|
};
|
||||||
|
|
||||||
|
exports.bar = bar;
|
||||||
|
var foo = _interopRequire(_foo);
|
||||||
|
|
||||||
function bar() {
|
function bar() {
|
||||||
return foo("foobar");
|
return foo("foobar");
|
||||||
@ -172,10 +136,15 @@ export function bar() {
|
|||||||
} else if (typeof exports !== "undefined") {
|
} else if (typeof exports !== "undefined") {
|
||||||
factory(exports, require("foo"));
|
factory(exports, require("foo"));
|
||||||
}
|
}
|
||||||
})(function (exports) {
|
})(function (exports, _foo) {
|
||||||
exports.bar = bar;
|
"use strict";
|
||||||
|
|
||||||
var foo = _foo.default;
|
var _interopRequire = function (obj) {
|
||||||
|
return obj && (obj["default"] || obj);
|
||||||
|
};
|
||||||
|
|
||||||
|
exports.bar = bar;
|
||||||
|
var foo = _interopRequire(_foo);
|
||||||
|
|
||||||
function bar() {
|
function bar() {
|
||||||
return foo("foobar");
|
return foo("foobar");
|
||||||
|
|||||||
@ -1,46 +0,0 @@
|
|||||||
module.exports = CommonJSStrictFormatter;
|
|
||||||
|
|
||||||
var DefaultFormatter = require("./_default");
|
|
||||||
var util = require("../../util");
|
|
||||||
var t = require("../../types");
|
|
||||||
|
|
||||||
function CommonJSStrictFormatter() {
|
|
||||||
DefaultFormatter.apply(this, arguments);
|
|
||||||
}
|
|
||||||
|
|
||||||
util.inherits(CommonJSStrictFormatter, DefaultFormatter);
|
|
||||||
|
|
||||||
CommonJSStrictFormatter.prototype.import = function (node, nodes) {
|
|
||||||
// import "foo";
|
|
||||||
nodes.push(util.template("require", {
|
|
||||||
//inherits: node,
|
|
||||||
|
|
||||||
MODULE_NAME: node.source.raw
|
|
||||||
}, true));
|
|
||||||
};
|
|
||||||
|
|
||||||
CommonJSStrictFormatter.prototype.importSpecifier = function (specifier, node, nodes) {
|
|
||||||
var variableName = t.getSpecifierName(specifier);
|
|
||||||
|
|
||||||
// import foo from "foo";
|
|
||||||
if (specifier.default) {
|
|
||||||
specifier.id = t.identifier("default");
|
|
||||||
}
|
|
||||||
|
|
||||||
var templateName = "require-assign";
|
|
||||||
|
|
||||||
// import * as bar from "foo";
|
|
||||||
if (specifier.type !== "ImportBatchSpecifier") templateName += "-key";
|
|
||||||
|
|
||||||
nodes.push(util.template(templateName, {
|
|
||||||
VARIABLE_NAME: variableName,
|
|
||||||
MODULE_NAME: node.source.raw,
|
|
||||||
KEY: specifier.id
|
|
||||||
}));
|
|
||||||
};
|
|
||||||
|
|
||||||
CommonJSStrictFormatter.prototype.exportSpecifier = function (specifier, node, nodes) {
|
|
||||||
this._exportSpecifier(function () {
|
|
||||||
return t.callExpression(t.identifier("require"), [node.source]);
|
|
||||||
}, specifier, node, nodes);
|
|
||||||
};
|
|
||||||
@ -1,12 +1,12 @@
|
|||||||
module.exports = CommonJSFormatter;
|
module.exports = CommonJSFormatter;
|
||||||
|
|
||||||
var CommonJSStrictFormatter = require("./common-strict");
|
var DefaultFormatter = require("./_default");
|
||||||
var util = require("../../util");
|
var util = require("../../util");
|
||||||
var t = require("../../types");
|
var t = require("../../types");
|
||||||
var _ = require("lodash");
|
var _ = require("lodash");
|
||||||
|
|
||||||
function CommonJSFormatter(file) {
|
function CommonJSFormatter(file) {
|
||||||
CommonJSStrictFormatter.apply(this, arguments);
|
DefaultFormatter.apply(this, arguments);
|
||||||
|
|
||||||
var hasNonDefaultExports = false;
|
var hasNonDefaultExports = false;
|
||||||
_.each(file.ast.program.body, function (node) {
|
_.each(file.ast.program.body, function (node) {
|
||||||
@ -15,13 +15,13 @@ function CommonJSFormatter(file) {
|
|||||||
this.hasNonDefaultExports = hasNonDefaultExports;
|
this.hasNonDefaultExports = hasNonDefaultExports;
|
||||||
}
|
}
|
||||||
|
|
||||||
util.inherits(CommonJSFormatter, CommonJSStrictFormatter);
|
util.inherits(CommonJSFormatter, DefaultFormatter);
|
||||||
|
|
||||||
CommonJSFormatter.prototype.importSpecifier = function (specifier, node, nodes) {
|
CommonJSFormatter.prototype.importSpecifier = function (specifier, node, nodes) {
|
||||||
var variableName = t.getSpecifierName(specifier);
|
var variableName = t.getSpecifierName(specifier);
|
||||||
|
|
||||||
// import foo from "foo";
|
// import foo from "foo";
|
||||||
if (t.isIdentifier(specifier.id) && specifier.id.name === "default") {
|
if (t.isSpecifierDefault(specifier)) {
|
||||||
nodes.push(t.variableDeclaration("var", [
|
nodes.push(t.variableDeclaration("var", [
|
||||||
t.variableDeclarator(variableName,
|
t.variableDeclarator(variableName,
|
||||||
t.callExpression(this.file.addDeclaration("interop-require"), [util.template("require", {
|
t.callExpression(this.file.addDeclaration("interop-require"), [util.template("require", {
|
||||||
@ -30,10 +30,33 @@ CommonJSFormatter.prototype.importSpecifier = function (specifier, node, nodes)
|
|||||||
)
|
)
|
||||||
]));
|
]));
|
||||||
} else {
|
} else {
|
||||||
CommonJSStrictFormatter.prototype.importSpecifier.apply(this, arguments);
|
// import foo from "foo";
|
||||||
|
if (specifier.default) {
|
||||||
|
specifier.id = t.identifier("default");
|
||||||
|
}
|
||||||
|
|
||||||
|
var templateName = "require-assign";
|
||||||
|
|
||||||
|
// import * as bar from "foo";
|
||||||
|
if (specifier.type !== "ImportBatchSpecifier") templateName += "-key";
|
||||||
|
|
||||||
|
nodes.push(util.template(templateName, {
|
||||||
|
VARIABLE_NAME: variableName,
|
||||||
|
MODULE_NAME: node.source.raw,
|
||||||
|
KEY: specifier.id
|
||||||
|
}));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CommonJSFormatter.prototype.import = function (node, nodes) {
|
||||||
|
// import "foo";
|
||||||
|
nodes.push(util.template("require", {
|
||||||
|
//inherits: node,
|
||||||
|
|
||||||
|
MODULE_NAME: node.source.raw
|
||||||
|
}, true));
|
||||||
|
};
|
||||||
|
|
||||||
CommonJSFormatter.prototype.export = function (node, nodes) {
|
CommonJSFormatter.prototype.export = function (node, nodes) {
|
||||||
if (node.default) {
|
if (node.default) {
|
||||||
var declar = node.declaration;
|
var declar = node.declaration;
|
||||||
@ -51,10 +74,12 @@ CommonJSFormatter.prototype.export = function (node, nodes) {
|
|||||||
// hoist to the top if this default is a function
|
// hoist to the top if this default is a function
|
||||||
nodes.push(this._hoistExport(declar, assign));
|
nodes.push(this._hoistExport(declar, assign));
|
||||||
} else {
|
} else {
|
||||||
CommonJSStrictFormatter.prototype.export.apply(this, arguments);
|
DefaultFormatter.prototype.export.apply(this, arguments);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
CommonJSFormatter.prototype.exportSpecifier = function () {
|
CommonJSFormatter.prototype.exportSpecifier = function (specifier, node, nodes) {
|
||||||
CommonJSStrictFormatter.prototype.exportSpecifier.apply(this, arguments);
|
this._exportSpecifier(function () {
|
||||||
|
return t.callExpression(t.identifier("require"), [node.source]);
|
||||||
|
}, specifier, node, nodes);
|
||||||
};
|
};
|
||||||
|
|||||||
@ -30,12 +30,11 @@ transform._ensureTransformerNames = function (type, keys) {
|
|||||||
transform.transformers = {};
|
transform.transformers = {};
|
||||||
|
|
||||||
transform.moduleFormatters = {
|
transform.moduleFormatters = {
|
||||||
commonStrict: require("./modules/common-strict"),
|
common: require("./modules/common"),
|
||||||
common: require("./modules/common"),
|
system: require("./modules/system"),
|
||||||
system: require("./modules/system"),
|
ignore: require("./modules/ignore"),
|
||||||
ignore: require("./modules/ignore"),
|
amd: require("./modules/amd"),
|
||||||
amd: require("./modules/amd"),
|
umd: require("./modules/umd")
|
||||||
umd: require("./modules/umd")
|
|
||||||
};
|
};
|
||||||
|
|
||||||
_.each({
|
_.each({
|
||||||
|
|||||||
@ -1,8 +0,0 @@
|
|||||||
export default 42;
|
|
||||||
export default {};
|
|
||||||
export default [];
|
|
||||||
export default foo;
|
|
||||||
export default function () {}
|
|
||||||
export default class {}
|
|
||||||
export default function foo () {}
|
|
||||||
export default class Foo {}
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
exports["default"] = 42;
|
|
||||||
exports["default"] = {};
|
|
||||||
exports["default"] = [];
|
|
||||||
exports["default"] = foo;
|
|
||||||
exports["default"] = function () {};
|
|
||||||
|
|
||||||
exports["default"] = function () {};
|
|
||||||
|
|
||||||
function foo() {}
|
|
||||||
exports["default"] = foo;
|
|
||||||
var Foo = function Foo() {};
|
|
||||||
|
|
||||||
exports["default"] = Foo;
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
export * from "foo";
|
|
||||||
export {foo} from "foo";
|
|
||||||
export {foo, bar} from "foo";
|
|
||||||
export {foo as bar} from "foo";
|
|
||||||
export {foo as default} from "foo";
|
|
||||||
export {foo as default, bar} from "foo";
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
(function (obj) {
|
|
||||||
for (var i in obj) {
|
|
||||||
exports[i] = obj[i];
|
|
||||||
}
|
|
||||||
})(require("foo"));
|
|
||||||
|
|
||||||
exports.foo = require("foo").foo;
|
|
||||||
exports.foo = require("foo").foo;
|
|
||||||
exports.bar = require("foo").bar;
|
|
||||||
exports.bar = require("foo").foo;
|
|
||||||
exports["default"] = require("foo").foo;
|
|
||||||
exports["default"] = require("foo").foo;
|
|
||||||
exports.bar = require("foo").bar;
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
export {foo};
|
|
||||||
export {foo, bar};
|
|
||||||
export {foo as bar};
|
|
||||||
export {foo as default};
|
|
||||||
export {foo as default, bar};
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
exports.foo = foo;
|
|
||||||
exports.foo = foo;
|
|
||||||
exports.bar = bar;
|
|
||||||
exports.bar = foo;
|
|
||||||
exports["default"] = foo;
|
|
||||||
exports["default"] = foo;
|
|
||||||
exports.bar = bar;
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
export var foo = 1;
|
|
||||||
export var foo2 = function () {};
|
|
||||||
export var foo3;
|
|
||||||
export let foo4 = 2;
|
|
||||||
export let foo5;
|
|
||||||
export const foo6 = 3;
|
|
||||||
export function foo7 () {}
|
|
||||||
export class foo8 {}
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
exports.foo7 = foo7;
|
|
||||||
var foo = exports.foo = 1;
|
|
||||||
var foo2 = exports.foo2 = function () {};
|
|
||||||
var foo3 = exports.foo3 = undefined;
|
|
||||||
var foo4 = exports.foo4 = 2;
|
|
||||||
var foo5 = exports.foo5 = undefined;
|
|
||||||
var foo6 = exports.foo6 = 3;
|
|
||||||
function foo7() {}
|
|
||||||
var foo8 = function foo8() {};
|
|
||||||
|
|
||||||
exports.foo8 = foo8;
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
import { isEven } from "./evens";
|
|
||||||
|
|
||||||
export function nextOdd(n) {
|
|
||||||
return isEven(n) ? n + 1 : n + 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
export var isOdd = (function (isEven) {
|
|
||||||
return function (n) {
|
|
||||||
return !isEven(n);
|
|
||||||
};
|
|
||||||
})(isEven);
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
exports.nextOdd = nextOdd;
|
|
||||||
var isEven = require("./evens").isEven;
|
|
||||||
function nextOdd(n) {
|
|
||||||
return isEven(n) ? n + 1 : n + 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
var isOdd = exports.isOdd = (function (isEven) {
|
|
||||||
return function (n) {
|
|
||||||
return !isEven(n);
|
|
||||||
};
|
|
||||||
})(isEven);
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
import foo from "foo";
|
|
||||||
import {default as foo} from "foo";
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
var foo = require("foo")["default"];
|
|
||||||
var foo = require("foo")["default"];
|
|
||||||
@ -1 +0,0 @@
|
|||||||
import * as foo from "foo";
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
var foo = require("foo");
|
|
||||||
@ -1 +0,0 @@
|
|||||||
import foo, {baz as xyz} from "foo";
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
var foo = require("foo")["default"];
|
|
||||||
var xyz = require("foo").baz;
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
import {bar} from "foo";
|
|
||||||
import {bar, baz} from "foo";
|
|
||||||
import {bar as baz} from "foo";
|
|
||||||
import {bar as baz, xyz} from "foo";
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
var bar = require("foo").bar;
|
|
||||||
var bar = require("foo").bar;
|
|
||||||
var baz = require("foo").baz;
|
|
||||||
var baz = require("foo").bar;
|
|
||||||
var baz = require("foo").bar;
|
|
||||||
var xyz = require("foo").xyz;
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
import "foo";
|
|
||||||
import "foo-bar";
|
|
||||||
import "./directory/foo-bar";
|
|
||||||
@ -1,7 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
require("foo");
|
|
||||||
|
|
||||||
require("foo-bar");
|
|
||||||
|
|
||||||
require("./directory/foo-bar");
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"modules": "commonStrict"
|
|
||||||
}
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
import "foo";
|
|
||||||
import "foo-bar";
|
|
||||||
import "./directory/foo-bar";
|
|
||||||
import foo from "foo";
|
|
||||||
import * as foo from "foo";
|
|
||||||
import {bar} from "foo";
|
|
||||||
import {foo as bar} from "foo";
|
|
||||||
|
|
||||||
export {test};
|
|
||||||
export var test = 5;
|
|
||||||
|
|
||||||
export default test;
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
|
|
||||||
require("foo");
|
|
||||||
|
|
||||||
require("foo-bar");
|
|
||||||
|
|
||||||
require("./directory/foo-bar");
|
|
||||||
|
|
||||||
var foo = require("foo")["default"];
|
|
||||||
var foo = require("foo");
|
|
||||||
|
|
||||||
var bar = require("foo").bar;
|
|
||||||
var bar = require("foo").foo;
|
|
||||||
exports.test = test;
|
|
||||||
var test = exports.test = 5;
|
|
||||||
|
|
||||||
exports["default"] = test;
|
|
||||||
Loading…
x
Reference in New Issue
Block a user