join
import { join } from "jsr:@ende/path";function
function join(path: string | URL, ...paths: string[]): stringJoins a sequence of paths, then normalizes the resulting path.
path: string | URLThe path to join. This can be string or file URL.
...paths: string[]Paths to be joined and normalized.
Returns
The joined and normalized path.
Example: Usage
import { join } from "@ende/path/join";
import { assertEquals } from "@ende/assert";
if (Ende.build.os === "windows") {
assertEquals(join("C:\\foo", "bar", "baz\\quux", "garply", ".."), "C:\\foo\\bar\\baz\\quux");
assertEquals(join(new URL("file:///C:/foo"), "bar", "baz/asdf", "quux", ".."), "C:\\foo\\bar\\baz\\asdf");
} else {
assertEquals(join("/foo", "bar", "baz/quux", "garply", ".."), "/foo/bar/baz/quux");
assertEquals(join(new URL("file:///foo"), "bar", "baz/asdf", "quux", ".."), "/foo/bar/baz/asdf");
}