Fix UMD header to work with r.js

This commit is contained in:
Ron Buckton 2016-12-27 15:26:49 -08:00 committed by rbuckton
parent 3eabf97941
commit 708f9e5604
24 changed files with 298 additions and 207 deletions

View File

@ -670,8 +670,6 @@ namespace ts {
// Transformation nodes
case SyntaxKind.PartiallyEmittedExpression:
return emitPartiallyEmittedExpression(<PartiallyEmittedExpression>node);
case SyntaxKind.RawExpression:
return writeLines((<RawExpression>node).text);
}
}

View File

@ -1529,19 +1529,6 @@ namespace ts {
return node;
}
/**
* Creates a node that emits a string of raw text in an expression position. Raw text is never
* transformed, should be ES3 compliant, and should have the same precedence as
* PrimaryExpression.
*
* @param text The raw text of the node.
*/
export function createRawExpression(text: string) {
const node = <RawExpression>createNode(SyntaxKind.RawExpression);
node.text = text;
return node;
}
// Compound nodes
export function createComma(left: Expression, right: Expression) {

View File

@ -102,28 +102,7 @@ namespace ts {
function transformAMDModule(node: SourceFile) {
const define = createIdentifier("define");
const moduleName = tryGetModuleNameFromFile(node, host, compilerOptions);
return transformAsynchronousModule(node, define, moduleName, /*includeNonAmdDependencies*/ true);
}
/**
* Transforms a SourceFile into a UMD module.
*
* @param node The SourceFile node.
*/
function transformUMDModule(node: SourceFile) {
const define = createRawExpression(umdHelper);
return transformAsynchronousModule(node, define, /*moduleName*/ undefined, /*includeNonAmdDependencies*/ false);
}
/**
* Transforms a SourceFile into an AMD or UMD module.
*
* @param node The SourceFile node.
* @param define The expression used to define the module.
* @param moduleName An expression for the module name, if available.
* @param includeNonAmdDependencies A value indicating whether to incldue any non-AMD dependencies.
*/
function transformAsynchronousModule(node: SourceFile, define: Expression, moduleName: Expression, includeNonAmdDependencies: boolean) {
// An AMD define function has the following shape:
//
// define(id?, dependencies?, factory);
@ -145,7 +124,7 @@ namespace ts {
//
// we need to add modules without alias names to the end of the dependencies list
const { aliasedModuleNames, unaliasedModuleNames, importAliasNames } = collectAsynchronousDependencies(node, includeNonAmdDependencies);
const { aliasedModuleNames, unaliasedModuleNames, importAliasNames } = collectAsynchronousDependencies(node, /*includeNonAmdDependencies*/ true);
// Create an updated SourceFile:
//
@ -194,6 +173,137 @@ namespace ts {
);
}
/**
* Transforms a SourceFile into a UMD module.
*
* @param node The SourceFile node.
*/
function transformUMDModule(node: SourceFile) {
const { aliasedModuleNames, unaliasedModuleNames, importAliasNames } = collectAsynchronousDependencies(node, /*includeNonAmdDependencies*/ false);
const umdHeader = createFunctionExpression(
/*modifiers*/ undefined,
/*asteriskToken*/ undefined,
/*name*/ undefined,
/*typeParameters*/ undefined,
[createParameter(/*decorators*/ undefined, /*modifiers*/ undefined, /*dotDotDotToken*/ undefined, "factory")],
/*type*/ undefined,
createBlock(
[
createIf(
createLogicalAnd(
createTypeCheck(createIdentifier("module"), "object"),
createTypeCheck(createPropertyAccess(createIdentifier("module"), "exports"), "object")
),
createBlock([
createVariableStatement(
/*modifiers*/ undefined,
[
createVariableDeclaration(
"v",
/*type*/ undefined,
createCall(
createIdentifier("factory"),
/*typeArguments*/ undefined,
[
createIdentifier("require"),
createIdentifier("exports")
]
)
)
]
),
setEmitFlags(
createIf(
createStrictInequality(
createIdentifier("v"),
createIdentifier("undefined")
),
createStatement(
createAssignment(
createPropertyAccess(createIdentifier("module"), "exports"),
createIdentifier("v")
)
)
),
EmitFlags.SingleLine
)
]),
createIf(
createLogicalAnd(
createTypeCheck(createIdentifier("define"), "function"),
createPropertyAccess(createIdentifier("define"), "amd")
),
createBlock([
createStatement(
createCall(
createIdentifier("define"),
/*typeArguments*/ undefined,
[
createArrayLiteral([
createLiteral("require"),
createLiteral("exports"),
...aliasedModuleNames,
...unaliasedModuleNames
]),
createIdentifier("factory")
]
)
)
])
)
)
],
/*location*/ undefined,
/*multiLine*/ true
)
);
// Create an updated SourceFile:
//
// (function (factory) {
// if (typeof module === "object" && typeof module.exports === "object") {
// var v = factory(require, exports);
// if (v !== undefined) module.exports = v;
// }
// else if (typeof define === 'function' && define.amd) {
// define(["require", "exports"], factory);
// }
// })(function ...)
return updateSourceFileNode(
node,
createNodeArray(
[
createStatement(
createCall(
umdHeader,
/*typeArguments*/ undefined,
[
// Add the module body function argument:
//
// function (require, exports) ...
createFunctionExpression(
/*modifiers*/ undefined,
/*asteriskToken*/ undefined,
/*name*/ undefined,
/*typeParameters*/ undefined,
[
createParameter(/*decorators*/ undefined, /*modifiers*/ undefined, /*dotDotDotToken*/ undefined, "require"),
createParameter(/*decorators*/ undefined, /*modifiers*/ undefined, /*dotDotDotToken*/ undefined, "exports"),
...importAliasNames
],
/*type*/ undefined,
transformAsynchronousModuleBody(node)
)
]
)
)
],
/*location*/ node.statements
)
);
}
/**
* Collect the additional asynchronous dependencies for the module.
*
@ -1333,15 +1443,4 @@ namespace ts {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}`
};
// emit output for the UMD helper function.
const umdHelper = `
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
}
})`;
}

View File

@ -370,7 +370,6 @@ namespace ts {
PartiallyEmittedExpression,
MergeDeclarationMarker,
EndOfDeclarationMarker,
RawExpression,
// Enum value count
Count,
@ -1520,16 +1519,6 @@ namespace ts {
kind: SyntaxKind.EndOfDeclarationMarker;
}
/**
* Emits a string of raw text in an expression position. Raw text is never transformed, should
* be ES3 compliant, and should have the same precedence as PrimaryExpression.
*/
/* @internal */
export interface RawExpression extends PrimaryExpression {
kind: SyntaxKind.RawExpression;
text: string;
}
/**
* Marks the beginning of a merged transformed declaration.
*/

View File

@ -2118,7 +2118,6 @@ namespace ts {
case SyntaxKind.TemplateExpression:
case SyntaxKind.ParenthesizedExpression:
case SyntaxKind.OmittedExpression:
case SyntaxKind.RawExpression:
return 19;
case SyntaxKind.TaggedTemplateExpression:
@ -2342,13 +2341,11 @@ namespace ts {
* Note that this doesn't actually wrap the input in double quotes.
*/
export function escapeString(s: string): string {
s = escapedCharsRegExp.test(s) ? s.replace(escapedCharsRegExp, getReplacement) : s;
return s.replace(escapedCharsRegExp, getReplacement);
}
return s;
function getReplacement(c: string) {
return escapedCharsMap[c] || get16BitUnicodeEscapeSequence(c.charCodeAt(0));
}
function getReplacement(c: string) {
return escapedCharsMap[c] || get16BitUnicodeEscapeSequence(c.charCodeAt(0));
}
export function isIntrinsicJsxName(name: string) {
@ -3865,8 +3862,7 @@ namespace ts {
|| kind === SyntaxKind.ThisKeyword
|| kind === SyntaxKind.TrueKeyword
|| kind === SyntaxKind.SuperKeyword
|| kind === SyntaxKind.NonNullExpression
|| kind === SyntaxKind.RawExpression;
|| kind === SyntaxKind.NonNullExpression;
}
export function isLeftHandSideExpression(node: Node): node is LeftHandSideExpression {
@ -3896,7 +3892,6 @@ namespace ts {
|| kind === SyntaxKind.SpreadElement
|| kind === SyntaxKind.AsExpression
|| kind === SyntaxKind.OmittedExpression
|| kind === SyntaxKind.RawExpression
|| isUnaryExpressionKind(kind);
}

View File

@ -7,14 +7,15 @@ export default class {}
export default function() {}
//// [a.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
class default_1 {
}
@ -22,14 +23,15 @@ export default function() {}
exports.default = default_1;
});
//// [b.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
function default_1() { }
Object.defineProperty(exports, "__esModule", { value: true });

View File

@ -20,14 +20,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var decorator;
let Foo = class Foo {
@ -45,14 +46,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var decorator;
let default_1 = class {

View File

@ -13,14 +13,15 @@ import x from './a';
//// [a.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
const x = new Promise((resolve, reject) => { resolve({}); });
Object.defineProperty(exports, "__esModule", { value: true });
@ -35,14 +36,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "./a"], factory);
}
})(["require", "exports", "./a"], function (require, exports) {
})(function (require, exports) {
"use strict";
const a_1 = require("./a");
(function () {

View File

@ -8,14 +8,15 @@ export default function foo() {}
//// [a.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
class Foo {
}
@ -23,14 +24,15 @@ export default function foo() {}
exports.default = Foo;
});
//// [b.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
function foo() { }
Object.defineProperty(exports, "__esModule", { value: true });

View File

@ -6,14 +6,15 @@ export let { toString } = 1;
//// [destructuringInVariableDeclarations5.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
exports.toString = (1).toString;
{

View File

@ -7,14 +7,15 @@ export {};
//// [destructuringInVariableDeclarations6.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
let { toString } = 1;
{

View File

@ -15,14 +15,15 @@ export class A
//// [es5-umd2.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var A = (function () {
function A() {

View File

@ -15,14 +15,15 @@ export default class A
//// [es5-umd3.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var A = (function () {
function A() {

View File

@ -17,14 +17,15 @@ export = A;
//// [es5-umd4.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var A = (function () {
function A() {

View File

@ -14,14 +14,15 @@ export class A
}
//// [es6-umd2.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
class A {
constructor() {

View File

@ -2,14 +2,15 @@
export = { ["hi"]: "there" };
//// [exportEqualsUmd.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var _a;
return _a = {}, _a["hi"] = "there", _a;

View File

@ -35,14 +35,15 @@ export let h1: D = new D;
//// [exportNonInitializedVariablesUMD.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var ;
let;

View File

@ -5,14 +5,15 @@ run(1);
//// [isolatedModulesPlainFile-UMD.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
run(1);
});

View File

@ -4,14 +4,15 @@
export class Foo {}
//// [modulePrologueUmd.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
"use strict";
var Foo = (function () {
function Foo() {

View File

@ -3,13 +3,14 @@
export var x = 0;
//// [noImplicitUseStrict_umd.js]
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports"], factory);
}
})(["require", "exports"], function (require, exports) {
})(function (require, exports) {
exports.x = 0;
});

View File

@ -1,11 +1,12 @@
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "SomeOtherName"], factory);
}
})(["require", "exports", "SomeOtherName"], function (require, exports) {
})(function (require, exports) {
"use strict";
var SomeName_1 = require("SomeOtherName");
use(SomeName_1.foo);

View File

@ -7,14 +7,15 @@ m1.f();
//// [umdDependencyComment2.js]
///<amd-dependency path='bar'/>
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "bar", "m2"], factory);
}
})(["require", "exports", "bar", "m2"], function (require, exports) {
})(function (require, exports) {
"use strict";
var m1 = require("m2");
m1.f();

View File

@ -7,14 +7,15 @@ m1.f();
//// [umdDependencyCommentName1.js]
///<amd-dependency path='bar' name='b'/>
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "bar", "m2"], factory);
}
})(["require", "exports", "bar", "m2"], function (require, exports, b) {
})(function (require, exports, b) {
"use strict";
var m1 = require("m2");
m1.f();

View File

@ -11,14 +11,15 @@ m1.f();
///<amd-dependency path='bar' name='b'/>
///<amd-dependency path='foo'/>
///<amd-dependency path='goo' name='c'/>
(function (dependencies, factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports); if (v !== undefined) module.exports = v;
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === 'function' && define.amd) {
define(dependencies, factory);
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "bar", "goo", "foo", "m2"], factory);
}
})(["require", "exports", "bar", "goo", "foo", "m2"], function (require, exports, b, c) {
})(function (require, exports, b, c) {
"use strict";
var m1 = require("m2");
m1.f();