Aaron Pham
2025-01-07 7e828252bbf37d967db3feed820409625f38b5ab
fix(path): handle lone slash (#1713)

2 files modified
6 ■■■■ changed files
quartz/util/path.test.ts 4 ●●●● patch | view | raw | blame | history
quartz/util/path.ts 2 ●●● patch | view | raw | blame | history
quartz/util/path.test.ts
@@ -171,6 +171,10 @@
    assert.strictEqual(path.joinSegments("/a", "b/"), "/a/b/")
    assert.strictEqual(path.joinSegments("/a/", "b/"), "/a/b/")
    // lone slash
    assert.strictEqual(path.joinSegments("/a/", "b", "/"), "/a/b/")
    assert.strictEqual(path.joinSegments("a/", "b" + "/"), "a/b/")
    // works with protocol specifiers
    assert.strictEqual(path.joinSegments("https://example.com", "a"), "https://example.com/a")
    assert.strictEqual(path.joinSegments("https://example.com/", "a"), "https://example.com/a")
quartz/util/path.ts
@@ -188,7 +188,7 @@
  }
  let joined = args
    .filter((segment) => segment !== "")
    .filter((segment) => segment !== "" && segment !== "/")
    .map((segment) => stripSlashes(segment))
    .join("/")