diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-04-20 03:09:25 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-04-24 16:14:29 +0200 |
commit | 82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8 (patch) | |
tree | 965f6eb89b84d65a62b49008fd972c004832ccd1 /thirdparty/systemjs/lib/legacy-transpiler.js | |
parent | e6e0cbc387c2a77b48e4065c229daa65bf1aa0fa (diff) |
Reorganize module loading.
We now use webpack instead of SystemJS, effectively bundling modules
into one file (plus commons chunks) for every entry point. This results
in a much smaller extension size (almost half). Furthermore we use
yarn/npm even for extension run-time dependencies. This relieves us
from manually vendoring and building dependencies. It's also easier to
understand for new developers familiar with node.
Diffstat (limited to 'thirdparty/systemjs/lib/legacy-transpiler.js')
-rw-r--r-- | thirdparty/systemjs/lib/legacy-transpiler.js | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/thirdparty/systemjs/lib/legacy-transpiler.js b/thirdparty/systemjs/lib/legacy-transpiler.js deleted file mode 100644 index 79c3d9697..000000000 --- a/thirdparty/systemjs/lib/legacy-transpiler.js +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Traceur, Babel and TypeScript transpile hook for Loader - */ -var transpile = (function() { - - // use Traceur by default - Loader.prototype.transpiler = 'traceur'; - - function transpile(load) { - var self = this; - - return Promise.resolve(__global[self.transpiler == 'typescript' ? 'ts' : self.transpiler] - || (self.pluginLoader || self)['import'](self.transpiler)) - .then(function(transpiler) { - if (transpiler.__useDefault) - transpiler = transpiler['default']; - - var transpileFunction; - if (transpiler.Compiler) - transpileFunction = traceurTranspile; - else if (transpiler.createLanguageService) - transpileFunction = typescriptTranspile; - else - transpileFunction = babelTranspile; - - // note __moduleName will be part of the transformer meta in future when we have the spec for this - return '(function(__moduleName){' + transpileFunction.call(self, load, transpiler) + '\n})("' + load.name + '");\n//# sourceURL=' + load.address + '!transpiled'; - }); - }; - - function traceurTranspile(load, traceur) { - var options = this.traceurOptions || {}; - options.modules = 'instantiate'; - options.script = false; - if (options.sourceMaps === undefined) - options.sourceMaps = 'inline'; - options.filename = load.address; - options.inputSourceMap = load.metadata.sourceMap; - options.moduleName = false; - - var compiler = new traceur.Compiler(options); - - return doTraceurCompile(load.source, compiler, options.filename); - } - function doTraceurCompile(source, compiler, filename) { - try { - return compiler.compile(source, filename); - } - catch(e) { - // on older versions of traceur (<0.9.3), an array of errors is thrown - // rather than a single error. - if (e.length) { - throw e[0]; - } - throw e; - } - } - - function babelTranspile(load, babel) { - var options = this.babelOptions || {}; - options.modules = 'system'; - if (options.sourceMap === undefined) - options.sourceMap = 'inline'; - options.inputSourceMap = load.metadata.sourceMap; - options.filename = load.address; - options.code = true; - options.ast = false; - - return babel.transform(load.source, options).code; - } - - function typescriptTranspile(load, ts) { - var options = this.typescriptOptions || {}; - options.target = options.target || ts.ScriptTarget.ES5; - if (options.sourceMap === undefined) - options.sourceMap = true; - if (options.sourceMap && options.inlineSourceMap !== false) - options.inlineSourceMap = true; - - options.module = ts.ModuleKind.System; - - return ts.transpile(load.source, options, load.address); - } - - return transpile; -})(); |