Bones/node_modules/systemjs/lib/alias.js

38 lines
998 B
JavaScript
Raw Normal View History

2017-05-17 13:45:25 -04:00
/*
* Alias Extension
*
* Allows a module to be a plain copy of another module by module name
*
* SystemJS.meta['mybootstrapalias'] = { alias: 'bootstrap' };
*
*/
(function() {
// aliases
hook('fetch', function(fetch) {
return function(load) {
var alias = load.metadata.alias;
var aliasDeps = load.metadata.deps || [];
if (alias) {
load.metadata.format = 'defined';
var entry = createEntry();
this.defined[load.name] = entry;
entry.declarative = true;
entry.deps = aliasDeps.concat([alias]);
entry.declare = function(_export) {
return {
setters: [function(module) {
for (var p in module)
_export(p, module[p]);
if (module.__useDefault)
entry.module.exports.__useDefault = true;
}],
execute: function() {}
};
};
return '';
}
return fetch.call(this, load);
};
});
})();