summaryrefslogtreecommitdiffstats
path: root/node_modules/memory-fs/lib/join.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/memory-fs/lib/join.js')
-rw-r--r--node_modules/memory-fs/lib/join.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/node_modules/memory-fs/lib/join.js b/node_modules/memory-fs/lib/join.js
new file mode 100644
index 0000000..2814aa9
--- /dev/null
+++ b/node_modules/memory-fs/lib/join.js
@@ -0,0 +1,14 @@
+var normalize = require("./normalize");
+
+var absoluteWinRegExp = /^[A-Z]:([\\\/]|$)/i;
+var absoluteNixRegExp = /^\//i;
+
+module.exports = function join(path, request) {
+ if(!request) return normalize(path);
+ if(absoluteWinRegExp.test(request)) return normalize(request.replace(/\//g, "\\"));
+ if(absoluteNixRegExp.test(request)) return normalize(request);
+ if(path == "/") return normalize(path + request);
+ if(absoluteWinRegExp.test(path)) return normalize(path.replace(/\//g, "\\") + "\\" + request.replace(/\//g, "\\"));
+ if(absoluteNixRegExp.test(path)) return normalize(path + "/" + request);
+ return normalize(path + "/" + request);
+};