aboutsummaryrefslogtreecommitdiff
path: root/node_modules/relateurl/lib/util/path.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/relateurl/lib/util/path.js')
-rw-r--r--node_modules/relateurl/lib/util/path.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/node_modules/relateurl/lib/util/path.js b/node_modules/relateurl/lib/util/path.js
new file mode 100644
index 000000000..f1e9d1193
--- /dev/null
+++ b/node_modules/relateurl/lib/util/path.js
@@ -0,0 +1,49 @@
+"use strict";
+
+function joinPath(pathArray)
+{
+ if (pathArray.length > 0)
+ {
+ return pathArray.join("/") + "/";
+ }
+ else
+ {
+ return "";
+ }
+}
+
+
+
+function resolveDotSegments(pathArray)
+{
+ var pathAbsolute = [];
+
+ pathArray.forEach( function(dir)
+ {
+ if (dir !== "..")
+ {
+ if (dir !== ".")
+ {
+ pathAbsolute.push(dir);
+ }
+ }
+ else
+ {
+ // Remove parent
+ if (pathAbsolute.length > 0)
+ {
+ pathAbsolute.splice(pathAbsolute.length-1, 1);
+ }
+ }
+ });
+
+ return pathAbsolute;
+}
+
+
+
+module.exports =
+{
+ join: joinPath,
+ resolveDotSegments: resolveDotSegments
+};