From d87450e91381b923bcd8d6b3ed829ba23be717a6 Mon Sep 17 00:00:00 2001 From: Hunter Caron Date: Mon, 23 Mar 2026 11:30:57 +0100 Subject: [PATCH] Fix leading space in directory names from emoji project names Add second trim() after boundary hyphen removal in toDirectoryName() to handle spaces revealed when emoji-replacement hyphens are stripped. --- packages/code-link-cli/src/utils/project.test.ts | 5 +++++ packages/code-link-cli/src/utils/project.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/packages/code-link-cli/src/utils/project.test.ts b/packages/code-link-cli/src/utils/project.test.ts index 6e4a98696..fa7b3a3bf 100644 --- a/packages/code-link-cli/src/utils/project.test.ts +++ b/packages/code-link-cli/src/utils/project.test.ts @@ -23,6 +23,11 @@ describe("toDirectoryName", () => { expect(toDirectoryName(" -Project")).toBe("Project") expect(toDirectoryName("Project- ")).toBe("Project") }) + + it("handles emoji prefixed names", () => { + expect(toDirectoryName("🧠 Logic")).toBe("Logic") + expect(toDirectoryName("🎨 Design System")).toBe("Design System") + }) }) describe("findOrCreateProjectDirectory", () => { diff --git a/packages/code-link-cli/src/utils/project.ts b/packages/code-link-cli/src/utils/project.ts index 497ef0096..f88d19d24 100644 --- a/packages/code-link-cli/src/utils/project.ts +++ b/packages/code-link-cli/src/utils/project.ts @@ -23,6 +23,7 @@ export function toDirectoryName(name: string): string { .replace(/[^a-zA-Z0-9 -]/g, "-") .trim() .replace(/^-+|-+$/g, "") + .trim() .replace(/-+/g, "-") }