diff --git a/shared/utils/parseDocumentSlug.test.ts b/shared/utils/parseDocumentSlug.test.ts index be35838f6..296e946ba 100644 --- a/shared/utils/parseDocumentSlug.test.ts +++ b/shared/utils/parseDocumentSlug.test.ts @@ -15,6 +15,14 @@ describe("#parseDocumentSlug", () => { ).toEqual("my-doc-y4j4tR4UuV"); }); + it("should work with hash", () => { + expect( + parseDocumentSlug( + "http://mywiki.getoutline.com/doc/my-doc-y4j4tR4UuV#state" + ) + ).toEqual("my-doc-y4j4tR4UuV"); + }); + it("should work with subdomain qualified url", () => { expect( parseDocumentSlug("http://mywiki.getoutline.com/doc/my-doc-y4j4tR4UuV") diff --git a/shared/utils/parseDocumentSlug.ts b/shared/utils/parseDocumentSlug.ts index 4e9b49b55..4c3d9d94f 100644 --- a/shared/utils/parseDocumentSlug.ts +++ b/shared/utils/parseDocumentSlug.ts @@ -17,7 +17,7 @@ export default function parseDocumentSlug(url: string) { } } - const split = parsed.split("/"); + const split = parsed.split("#")[0].split("/"); const indexOfDoc = split.indexOf("doc"); return split[indexOfDoc + 1] ?? undefined; }