From 1e37818febf6aa640f0008945b574ddeecf3357d Mon Sep 17 00:00:00 2001 From: Josh Tynjala Date: Tue, 6 Feb 2024 11:30:35 -0800 Subject: [PATCH] Create New Project: fix invalid AIR application ID Convert _ to -. Then, remove all invalid characters. --- .../src/main/ts/commands/createNewProject.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/vscode-extension/src/main/ts/commands/createNewProject.ts b/vscode-extension/src/main/ts/commands/createNewProject.ts index acbcf7376..2853d8d04 100644 --- a/vscode-extension/src/main/ts/commands/createNewProject.ts +++ b/vscode-extension/src/main/ts/commands/createNewProject.ts @@ -276,11 +276,18 @@ async function createNewProjectAtUri( const descriptorTemplatePath = sdkPath ? path.resolve(sdkPath, "templates/air/descriptor-template.xml") : undefined; + let applicationId = mainClassName + .replace(/_/g, "-") + .replace(/[^A-Za-z0-9\-\.]/g, ""); + if (applicationId.length == 0) { + // if we replaced every single character, fall back to MyApplication + applicationId = "MyApplication"; + } const airDescriptorContents = createAirDescriptor( descriptorTemplatePath, projectType, swfFileName, - mainClassName, + applicationId, mainClassName ); if (airDescriptorContents) {