From f7cf40502f6fcd731a2a1bc50811cf4dcb91e665 Mon Sep 17 00:00:00 2001 From: Archie Saxena Date: Mon, 22 Dec 2025 21:27:40 +0530 Subject: [PATCH] fix: resolve Invalid id in Terminal add in still installed error --- packages/office-addin-dev-settings/src/publish.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/office-addin-dev-settings/src/publish.ts b/packages/office-addin-dev-settings/src/publish.ts index 702602c6a..7860ae7cf 100644 --- a/packages/office-addin-dev-settings/src/publish.ts +++ b/packages/office-addin-dev-settings/src/publish.ts @@ -57,10 +57,15 @@ export async function uninstallWithTeams(id: string): Promise { return new Promise((resolve, reject) => { const guidRegex = /[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}/; const manifestIdRegex = new RegExp(`^${guidRegex.source}$`); - const titleIdRegex = new RegExp(`^U_${guidRegex.source}$`); + const titleIdRegexU = new RegExp(`^U_${guidRegex.source}$`); + const titleIdRegexT = new RegExp(`^T_${guidRegex.source}$`); let mode: string = ""; - if (titleIdRegex.test(id)) { + if (titleIdRegexT.test(id)) { + // T_ IDs must be converted to manifest-id format (strip the T_ prefix) + const manifestId = id.substring(2); + mode = `--mode manifest-id --manifest-id ${manifestId}`; + } else if (titleIdRegexU.test(id)) { mode = `--mode title-id --title-id ${id}`; } else if (manifestIdRegex.test(id)) { mode = `--mode manifest-id --manifest-id ${id}`;