diff options
author | Florian Dold <florian.dold@gmail.com> | 2016-10-10 03:50:11 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2016-10-10 03:50:11 +0200 |
commit | 9af485a584e47fd503ed5c62b9f6482574715f1e (patch) | |
tree | 687abbcff412bd4ce5c51d51de030a06e3963cf5 /lib/wrapper-end.js |
Squashed 'thirdparty/systemjs/' content from commit 5ed69b6
git-subtree-dir: thirdparty/systemjs
git-subtree-split: 5ed69b6344e8fc1cd43bf758350b2236f57e1499
Diffstat (limited to 'lib/wrapper-end.js')
-rw-r--r-- | lib/wrapper-end.js | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/lib/wrapper-end.js b/lib/wrapper-end.js new file mode 100644 index 000000000..e668fd1b6 --- /dev/null +++ b/lib/wrapper-end.js @@ -0,0 +1,47 @@ +} + +// auto-load Promise polyfill if needed in the browser +var doPolyfill = typeof Promise === 'undefined'; + +// document.write +if (typeof document !== 'undefined') { + var scripts = document.getElementsByTagName('script'); + $__curScript = scripts[scripts.length - 1]; + if (document.currentScript && ($__curScript.defer || $__curScript.async)) + $__curScript = document.currentScript; + if (!$__curScript.src) + $__curScript = undefined; + if (doPolyfill) { + var curPath = $__curScript.src; + var basePath = curPath.substr(0, curPath.lastIndexOf('/') + 1); + window.systemJSBootstrap = bootstrap; + document.write( + '<' + 'script type="text/javascript" src="' + basePath + 'system-polyfills.js">' + '<' + '/script>' + ); + } + else { + bootstrap(); + } +} +// importScripts +else if (typeof importScripts !== 'undefined') { + var basePath = ''; + try { + throw new Error('_'); + } catch (e) { + e.stack.replace(/(?:at|@).*(http.+):[\d]+:[\d]+/, function(m, url) { + $__curScript = { src: url }; + basePath = url.replace(/\/[^\/]*$/, '/'); + }); + } + if (doPolyfill) + importScripts(basePath + 'system-polyfills.js'); + bootstrap(); +} +else { + $__curScript = typeof __filename != 'undefined' ? { src: __filename } : null; + bootstrap(); +} + + +})(); |