pathifist
v1.0.1
Published
URL Path Utility
Downloads
942
Keywords
Readme
pathifist
pathifist is an extremely simple, rather naïve URL path manipulation library. It is meant to be used in browser and non-browser environments to conveniently deal with URL(-ish) paths.
Installation
Using NPM:
npm install -S pathifistUsing Yarn:
yarn add pathifistAPI
resolve(path, ...)
resolve is pathifist's most elaborate function: it mimics a browser's path resolution and deals with both absolute (e.g. /foo) and relative (e.g. ../) path segments. It accepts an arbitrary number of path segments as arguments.
resolve('foo', '/bar'); // => /bar
resolve('./foo', 'bar///', '../baz'); // => ./foo/bazjoin(path, ...)
join glues an arbitrary number of arguments together with slashes, replacing multiple consecutive slashes in the process.
join('foo', '/bar'); // => foo/bar
join('./foo', 'bar///', '../baz'); // => ./foo/bar/../bazdedupeSlashes(path)
dedupeSlashes removes obsolete consecutive slashes from the path it is being passed.
dedupe('//foo//bar//'); // => /foo/bar/trimSlashes(path) / trim{Leading,Trailing}Slash(path)
trimSlashes / trim{Leading,Trailing}Slash removes single or consecutive leading and/or trailing slashes from the path it is being passed. It leaves internal slashes untouched.
trimSlashes('/foo/bar/'); // => foo/bar
trimLeadingSlash('/foo/bar/'); // => foo/bar/
trimTrailingSlash('/foo/bar/'); // => /foo/barensureSlashes(path) / ensure{Leading,Trailing}Slash(path)
ensureSlashes / ensure{Leading,Trailing}Slash makes sure there are single or consecutive leading and/or trailing slash in the path it is being passed. It leaves internal slash untouched.
ensureSlashes('foo/bar'); // => /foo/bar/
ensureLeadingSlash('foo/bar'); // => /foo/bar
ensureTrailingSlash('foo/bar'); // => foo/bar/