diff --git a/lib/6to5/transformation/modules/umd.js b/lib/6to5/transformation/modules/umd.js index ea2f668a8e..9bc27e6c31 100644 --- a/lib/6to5/transformation/modules/umd.js +++ b/lib/6to5/transformation/modules/umd.js @@ -5,9 +5,10 @@ var util = require("../../util"); var t = require("../../types"); var _ = require("lodash"); -function UMDFormatter(file) { +function UMDFormatter(file, opts) { this.file = file; this.ids = {}; + this.insertModuleId = opts.amdModuleId; } util.inherits(UMDFormatter, AMDFormatter); @@ -34,8 +35,11 @@ UMDFormatter.prototype.transform = function (ast) { var moduleName = this.getModuleName(); + var defineArgs = [t.arrayExpression([t.literal("exports")].concat(names))]; + if( this.insertModuleId ) defineArgs.unshift(t.literal(moduleName)); + var runner = util.template("umd-runner-body", { - AMD_ARGUMENTS: [t.literal(moduleName), t.arrayExpression([t.literal("exports")].concat(names))], + AMD_ARGUMENTS: defineArgs, COMMON_ARGUMENTS: names.map(function (name) { return t.callExpression(t.identifier("require"), [name]);