mirror of https://gitee.com/bigwinds/arangodb
33 lines
980 B
JavaScript
33 lines
980 B
JavaScript
define([
|
|
"vendors/URIjs/src/URI"
|
|
], function(URI) {
|
|
// Joins path segments. Preserves initial "/" and resolves ".." and "."
|
|
// Does not support using ".." to go above/outside the root.
|
|
// This means that join("foo", "../../bar") will not resolve to "../bar"
|
|
function join(baseUrl, url) {
|
|
var theUrl = new URI(url);
|
|
if (theUrl.is("relative")) {
|
|
theUrl = theUrl.absoluteTo(baseUrl);
|
|
}
|
|
return theUrl.toString();
|
|
}
|
|
|
|
// A simple function to get the dirname of a path
|
|
// Trailing slashes are ignored. Leading slash is preserved.
|
|
function dirname(path) {
|
|
return join(path, "..");
|
|
}
|
|
|
|
// test if a path or url is absolute
|
|
function isAbsolute(path) {
|
|
if (!path) return false;
|
|
|
|
return (path[0] == "/" || path.indexOf("http://") == 0 || path.indexOf("https://") == 0);
|
|
}
|
|
|
|
return {
|
|
dirname: dirname,
|
|
join: join,
|
|
isAbsolute: isAbsolute
|
|
};
|
|
}) |