aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/systemjs/lib/alias.js
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/systemjs/lib/alias.js')
-rw-r--r--thirdparty/systemjs/lib/alias.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/thirdparty/systemjs/lib/alias.js b/thirdparty/systemjs/lib/alias.js
new file mode 100644
index 000000000..1d37220b5
--- /dev/null
+++ b/thirdparty/systemjs/lib/alias.js
@@ -0,0 +1,38 @@
+/*
+ * 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);
+ };
+ });
+})(); \ No newline at end of file