diff --git a/src/lib/utils/html.ts b/src/lib/utils/html.ts
index 3b6a93f15..7177160e7 100644
--- a/src/lib/utils/html.ts
+++ b/src/lib/utils/html.ts
@@ -72,7 +72,7 @@ export function createNormalizedUrl(url: string) {
codePoints[i] = Chars.UNDERSCORE;
}
- return String.fromCharCode(...codePoints);
+ return String.fromCodePoint(...codePoints);
}
const enum Chars {
diff --git a/src/test/utils/html.test.ts b/src/test/utils/html.test.ts
index 04e41f94e..6c8d14d8f 100644
--- a/src/test/utils/html.test.ts
+++ b/src/test/utils/html.test.ts
@@ -288,4 +288,12 @@ describe("createNormalizedUrl", () => {
it("Permits Chinese characters", () => {
equal(createNormalizedUrl("ζζ‘£"), "ζζ‘£");
});
+
+ it("Permits Emoji characters", () => {
+ equal(createNormalizedUrl("π Foo πͺ.md"), "π_Foo_πͺ.md");
+ });
+
+ it("Permits UTF8 characters", () => {
+ equal(createNormalizedUrl("β barβ.md"), "β_barβ.md");
+ });
});