Skip to content

Commit

Permalink
Added umdAugmentation template to allow Module Augmentation in the root
Browse files Browse the repository at this point in the history
  • Loading branch information
jherax committed Jul 19, 2017
1 parent 1568e31 commit c041284
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions templates/umdAugmentation.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// if the module has no dependencies
!(function umd(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
// Node. CommonJs2 environments that support module.exports.
module.exports = factory();
else if(typeof define === 'function' && define.amd)
// AMD. Register as an anonymous module.
define([], factory);
else if(typeof exports === 'object')
// CommonJs
exports.myLib = factory();
else {
// Browser. Allow Module Augmentation (root is window)
var ts = Object.prototype.toString,
obj = '[object Object]',
myLib = factory();
if (ts.call(root.myLib) === obj && ts.call(myLib) === obj) {
for (var p in myLib) root.myLib[p] = myLib[p];
// not used Object.assign(a,b) for compatibility
} else root.myLib = myLib;
}
}(this, function() {

// Just return a value to define the module export.
// This example returns an object, but the module
// can return a function as the exported value.
return {};
}));

0 comments on commit c041284

Please sign in to comment.