From e8ed881fca8ab284934b99183d58e11bf567334f Mon Sep 17 00:00:00 2001 From: Vincenzo Scamporlino Date: Tue, 10 Mar 2026 20:42:47 +0100 Subject: [PATCH] Update package name validation regex to support additional characters Signed-off-by: Vincenzo Scamporlino --- .../src/lib/preparation/collectPortableTemplateInput.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/cli-module-new/src/lib/preparation/collectPortableTemplateInput.ts b/packages/cli-module-new/src/lib/preparation/collectPortableTemplateInput.ts index f4f19d1b4e..b40a35da6d 100644 --- a/packages/cli-module-new/src/lib/preparation/collectPortableTemplateInput.ts +++ b/packages/cli-module-new/src/lib/preparation/collectPortableTemplateInput.ts @@ -272,9 +272,9 @@ export function ownerPrompt(): DistinctQuestion { // Reuses the same pattern as namePrompt/pluginIdPrompt but extended to support npm scopes // Matches: @scope/package-name, @scope/package, package-name, package -const packageNamePattern = /^[a-z0-9]+(-[a-z0-9]+)*$/; +const packageNamePattern = /^[a-z0-9][a-z0-9._-]*$/; const scopedPackageNamePattern = - /^@[a-z0-9]+(-[a-z0-9]+)*\/[a-z0-9]+(-[a-z0-9]+)*$/; + /^@[a-z0-9][a-z0-9._-]*\/[a-z0-9][a-z0-9._-]*$/; function isValidNpmPackageName(name: string) { return packageNamePattern.test(name) || scopedPackageNamePattern.test(name);