From 9af485a584e47fd503ed5c62b9f6482574715f1e Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 10 Oct 2016 03:50:11 +0200 Subject: Squashed 'thirdparty/systemjs/' content from commit 5ed69b6 git-subtree-dir: thirdparty/systemjs git-subtree-split: 5ed69b6344e8fc1cd43bf758350b2236f57e1499 --- lib/system-only-resolve.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 lib/system-only-resolve.js (limited to 'lib/system-only-resolve.js') diff --git a/lib/system-only-resolve.js b/lib/system-only-resolve.js new file mode 100644 index 000000000..e8618c844 --- /dev/null +++ b/lib/system-only-resolve.js @@ -0,0 +1,24 @@ +var absURLRegEx = /^([^\/]+:\/\/|\/)/; + +// Normalization with module names as absolute URLs +SystemJSLoader.prototype.normalize = function(name, parentName, parentAddress) { + // NB does `import 'file.js'` import relative to the parent name or baseURL? + // have assumed that it is baseURL-relative here, but spec may well align with URLs to be the latter + // safe option for users is to always use "./file.js" for relative + + // not absolute or relative -> apply paths (what will be sites) + if (!name.match(absURLRegEx) && name[0] != '.') + name = new URL(applyPaths(this, name) || name, baseURI).href; + // apply parent-relative normalization, parentAddress is already normalized + else + name = new URL(name, parentName || baseURI).href; + + return name; +}; + +// default locate is this +/* +SystemJSLoader.prototype.locate = function(load) { + return load.name; +}; +*/ \ No newline at end of file -- cgit v1.2.3