aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/systemjs/lib/global-eval.js
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/systemjs/lib/global-eval.js')
-rw-r--r--thirdparty/systemjs/lib/global-eval.js142
1 files changed, 0 insertions, 142 deletions
diff --git a/thirdparty/systemjs/lib/global-eval.js b/thirdparty/systemjs/lib/global-eval.js
deleted file mode 100644
index f27efc222..000000000
--- a/thirdparty/systemjs/lib/global-eval.js
+++ /dev/null
@@ -1,142 +0,0 @@
-// we define a __exec for globally-scoped execution
-// used by module format implementations
-var __exec;
-
-(function() {
-
- var hasBuffer = typeof Buffer != 'undefined';
- try {
- if (hasBuffer && new Buffer('a').toString('base64') != 'YQ==')
- hasBuffer = false;
- }
- catch(e) {
- hasBuffer = false;
- }
-
- var sourceMapPrefix = '\n//# sourceMappingURL=data:application/json;base64,';
- function inlineSourceMap(sourceMapString) {
- if (hasBuffer)
- return sourceMapPrefix + new Buffer(sourceMapString).toString('base64');
- else if (typeof btoa != 'undefined')
- return sourceMapPrefix + btoa(unescape(encodeURIComponent(sourceMapString)));
- else
- return '';
- }
-
- function getSource(load, wrap) {
- var lastLineIndex = load.source.lastIndexOf('\n');
-
- // wrap ES formats with a System closure for System global encapsulation
- if (load.metadata.format == 'global')
- wrap = false;
-
- var sourceMap = load.metadata.sourceMap;
- if (sourceMap) {
- if (typeof sourceMap != 'object')
- throw new TypeError('load.metadata.sourceMap must be set to an object.');
-
- sourceMap = JSON.stringify(sourceMap);
- }
-
- return (wrap ? '(function(System, SystemJS) {' : '') + load.source + (wrap ? '\n})(System, System);' : '')
- // adds the sourceURL comment if not already present
- + (load.source.substr(lastLineIndex, 15) != '\n//# sourceURL='
- ? '\n//# sourceURL=' + load.address + (sourceMap ? '!transpiled' : '') : '')
- // add sourceMappingURL if load.metadata.sourceMap is set
- + (sourceMap && inlineSourceMap(sourceMap) || '');
- }
-
- var curLoad;
-
- // System.register, System.registerDynamic, AMD define pipeline
- // if currently evalling code here, immediately reduce the registered entry against the load record
- hook('pushRegister_', function() {
- return function(register) {
- if (!curLoad)
- return false;
-
- this.reduceRegister_(curLoad, register);
- return true;
- };
- });
-
- // System clobbering protection (mostly for Traceur)
- var curSystem;
- var callCounter = 0;
- function preExec(loader, load) {
- curLoad = load;
- if (callCounter++ == 0)
- curSystem = __global.System;
- __global.System = __global.SystemJS = loader;
- }
- function postExec() {
- if (--callCounter == 0)
- __global.System = __global.SystemJS = curSystem;
- curLoad = undefined;
- }
-
- var useVm;
- var vm;
- __exec = function(load) {
- if (!load.source)
- return;
- if ((load.metadata.integrity || load.metadata.nonce) && supportsScriptExec)
- return scriptExec.call(this, load);
- try {
- preExec(this, load);
- curLoad = load;
- // global scoped eval for node (avoids require scope leak)
- if (!vm && this._nodeRequire) {
- vm = this._nodeRequire('vm');
- useVm = vm.runInThisContext("typeof System !== 'undefined' && System") === this;
- }
- if (useVm)
- vm.runInThisContext(getSource(load, true), { filename: load.address + (load.metadata.sourceMap ? '!transpiled' : '') });
- else
- (0, eval)(getSource(load, true));
- postExec();
- }
- catch(e) {
- postExec();
- throw addToError(e, 'Evaluating ' + load.address);
- }
- };
-
- var supportsScriptExec = false;
- if (isBrowser && typeof document != 'undefined' && document.getElementsByTagName) {
- if (!(window.chrome && window.chrome.extension || navigator.userAgent.match(/^Node\.js/)))
- supportsScriptExec = true;
- }
-
- // script execution via injecting a script tag into the page
- // this allows CSP integrity and nonce to be set for CSP environments
- var head;
- function scriptExec(load) {
- if (!head)
- head = document.head || document.body || document.documentElement;
-
- var script = document.createElement('script');
- script.text = getSource(load, false);
- var onerror = window.onerror;
- var e;
- window.onerror = function(_e) {
- e = addToError(_e, 'Evaluating ' + load.address);
- if (onerror)
- onerror.apply(this, arguments);
- }
- preExec(this, load);
-
- if (load.metadata.integrity)
- script.setAttribute('integrity', load.metadata.integrity);
- if (load.metadata.nonce)
- script.setAttribute('nonce', load.metadata.nonce);
-
- head.appendChild(script);
- head.removeChild(script);
- postExec();
- window.onerror = onerror;
- if (e)
- throw e;
- }
-
-})();