@microsoft/teamsfx-core 3.0.0-alpha.e2e4e5205.0 → 3.0.0-alpha.e86157a65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/build/client/graphClient.d.ts +6 -1
  2. package/build/client/graphClient.d.ts.map +1 -1
  3. package/build/client/graphClient.js +49 -18
  4. package/build/client/graphClient.js.map +1 -1
  5. package/build/client/teamsDevPortalClient.js +1 -1
  6. package/build/client/teamsDevPortalClient.js.map +1 -1
  7. package/build/common/constants.d.ts +1 -1
  8. package/build/common/constants.d.ts.map +1 -1
  9. package/build/common/constants.js +1 -1
  10. package/build/common/constants.js.map +1 -1
  11. package/build/common/daSpecParser.d.ts +5 -2
  12. package/build/common/daSpecParser.d.ts.map +1 -1
  13. package/build/common/daSpecParser.js +89 -35
  14. package/build/common/daSpecParser.js.map +1 -1
  15. package/build/common/featureFlags.d.ts +3 -8
  16. package/build/common/featureFlags.d.ts.map +1 -1
  17. package/build/common/featureFlags.js +7 -12
  18. package/build/common/featureFlags.js.map +1 -1
  19. package/build/common/kiotaClient.d.ts +2 -2
  20. package/build/common/kiotaClient.d.ts.map +1 -1
  21. package/build/common/kiotaClient.js +26 -2
  22. package/build/common/kiotaClient.js.map +1 -1
  23. package/build/common/samples.d.ts +1 -1
  24. package/build/common/samples.js +3 -3
  25. package/build/common/samples.js.map +1 -1
  26. package/build/common/telemetry.d.ts +2 -1
  27. package/build/common/telemetry.d.ts.map +1 -1
  28. package/build/common/telemetry.js +1 -0
  29. package/build/common/telemetry.js.map +1 -1
  30. package/build/common/templates-config.json +2 -2
  31. package/build/common/wrappedAxiosClient.d.ts.map +1 -1
  32. package/build/common/wrappedAxiosClient.js +14 -7
  33. package/build/common/wrappedAxiosClient.js.map +1 -1
  34. package/build/component/configManager/interface.d.ts +11 -0
  35. package/build/component/configManager/interface.d.ts.map +1 -1
  36. package/build/component/configManager/interface.js.map +1 -1
  37. package/build/component/configManager/lifecycle.d.ts +1 -0
  38. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  39. package/build/component/configManager/lifecycle.js +3 -2
  40. package/build/component/configManager/lifecycle.js.map +1 -1
  41. package/build/component/coordinator/index.d.ts +3 -1
  42. package/build/component/coordinator/index.d.ts.map +1 -1
  43. package/build/component/coordinator/index.js +36 -7
  44. package/build/component/coordinator/index.js.map +1 -1
  45. package/build/component/driver/apiKey/create.d.ts.map +1 -1
  46. package/build/component/driver/apiKey/create.js.map +1 -1
  47. package/build/component/driver/apiKey/update.d.ts.map +1 -1
  48. package/build/component/driver/apiKey/update.js +7 -7
  49. package/build/component/driver/apiKey/update.js.map +1 -1
  50. package/build/component/driver/devChannel/errors.d.ts +5 -0
  51. package/build/component/driver/devChannel/errors.d.ts.map +1 -0
  52. package/build/component/driver/devChannel/errors.js +19 -0
  53. package/build/component/driver/devChannel/errors.js.map +1 -0
  54. package/build/component/driver/devChannel/installApp.d.ts.map +1 -1
  55. package/build/component/driver/devChannel/installApp.js +7 -0
  56. package/build/component/driver/devChannel/installApp.js.map +1 -1
  57. package/build/component/driver/oauth/utility/utility.d.ts.map +1 -1
  58. package/build/component/driver/oauth/utility/utility.js.map +1 -1
  59. package/build/component/driver/script/scriptDriver.d.ts +0 -1
  60. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  61. package/build/component/driver/teamsApp/createAppPackage.d.ts +1 -0
  62. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  63. package/build/component/driver/teamsApp/createAppPackage.js +24 -11
  64. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  65. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  66. package/build/component/driver/teamsApp/utils/ManifestUtils.js +29 -29
  67. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  68. package/build/component/driver/teamsApp/utils/utils.js +1 -1
  69. package/build/component/driver/typeSpec/compile.d.ts.map +1 -1
  70. package/build/component/driver/typeSpec/compile.js +3 -4
  71. package/build/component/driver/typeSpec/compile.js.map +1 -1
  72. package/build/component/generator/combinedProject/generator.d.ts +1 -1
  73. package/build/component/generator/combinedProject/generator.d.ts.map +1 -1
  74. package/build/component/generator/combinedProject/generator.js +3 -3
  75. package/build/component/generator/combinedProject/generator.js.map +1 -1
  76. package/build/component/generator/declarativeAgent/helper.js +3 -3
  77. package/build/component/generator/declarativeAgent/helper.js.map +1 -1
  78. package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.d.ts +1 -1
  79. package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.d.ts.map +1 -1
  80. package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.js +7 -2
  81. package/build/component/generator/declarativeAgent/oneDriveSharePointHandler.js.map +1 -1
  82. package/build/component/generator/defaultGenerator.d.ts.map +1 -1
  83. package/build/component/generator/defaultGenerator.js +1 -0
  84. package/build/component/generator/defaultGenerator.js.map +1 -1
  85. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  86. package/build/component/generator/officeAddin/generator.js +33 -1
  87. package/build/component/generator/officeAddin/generator.js.map +1 -1
  88. package/build/component/generator/officeAddin/metaOSHelper.d.ts +13 -0
  89. package/build/component/generator/officeAddin/metaOSHelper.d.ts.map +1 -0
  90. package/build/component/generator/officeAddin/metaOSHelper.js +236 -0
  91. package/build/component/generator/officeAddin/metaOSHelper.js.map +1 -0
  92. package/build/component/generator/openApiSpec/helper.d.ts +1 -1
  93. package/build/component/generator/openApiSpec/helper.d.ts.map +1 -1
  94. package/build/component/generator/openApiSpec/helper.js +19 -3
  95. package/build/component/generator/openApiSpec/helper.js.map +1 -1
  96. package/build/component/generator/templates/metadata/agentForTeams.d.ts.map +1 -1
  97. package/build/component/generator/templates/metadata/agentForTeams.js +0 -6
  98. package/build/component/generator/templates/metadata/agentForTeams.js.map +1 -1
  99. package/build/component/generator/templates/metadata/customEngineAgent.d.ts.map +1 -1
  100. package/build/component/generator/templates/metadata/customEngineAgent.js +24 -0
  101. package/build/component/generator/templates/metadata/customEngineAgent.js.map +1 -1
  102. package/build/component/generator/templates/metadata/da.d.ts.map +1 -1
  103. package/build/component/generator/templates/metadata/da.js +12 -0
  104. package/build/component/generator/templates/metadata/da.js.map +1 -1
  105. package/build/component/generator/templates/templateNames.d.ts +3 -1
  106. package/build/component/generator/templates/templateNames.d.ts.map +1 -1
  107. package/build/component/generator/templates/templateNames.js +4 -2
  108. package/build/component/generator/templates/templateNames.js.map +1 -1
  109. package/build/component/local/constants.d.ts +1 -0
  110. package/build/component/local/constants.d.ts.map +1 -1
  111. package/build/component/local/constants.js +1 -0
  112. package/build/component/local/constants.js.map +1 -1
  113. package/build/component/m365/serviceConstant.d.ts.map +1 -1
  114. package/build/component/m365/serviceConstant.js +10 -0
  115. package/build/component/m365/serviceConstant.js.map +1 -1
  116. package/build/component/migrate.d.ts.map +1 -1
  117. package/build/component/migrate.js +1 -2
  118. package/build/component/migrate.js.map +1 -1
  119. package/build/component/resource/botService/errors.d.ts +1 -1
  120. package/build/component/resource/botService/errors.d.ts.map +1 -1
  121. package/build/component/resource/botService/errors.js +2 -2
  122. package/build/component/resource/botService/errors.js.map +1 -1
  123. package/build/component/resource/botService/messages.d.ts +1 -1
  124. package/build/component/resource/botService/messages.d.ts.map +1 -1
  125. package/build/component/resource/botService/messages.js +6 -1
  126. package/build/component/resource/botService/messages.js.map +1 -1
  127. package/build/component/utils/envUtil.d.ts +0 -1
  128. package/build/component/utils/envUtil.d.ts.map +1 -1
  129. package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -1
  130. package/build/component/utils/metadataGraphPermssion.js +9 -0
  131. package/build/component/utils/metadataGraphPermssion.js.map +1 -1
  132. package/build/component/utils/pathUtils.js +2 -2
  133. package/build/core/FxCore.d.ts +12 -2
  134. package/build/core/FxCore.d.ts.map +1 -1
  135. package/build/core/FxCore.js +163 -4
  136. package/build/core/FxCore.js.map +1 -1
  137. package/build/core/middleware/retry.d.ts +3 -0
  138. package/build/core/middleware/retry.d.ts.map +1 -0
  139. package/build/core/middleware/retry.js +30 -0
  140. package/build/core/middleware/retry.js.map +1 -0
  141. package/build/error/common.d.ts +15 -0
  142. package/build/error/common.d.ts.map +1 -1
  143. package/build/error/common.js +60 -3
  144. package/build/error/common.js.map +1 -1
  145. package/build/index.d.ts +4 -1
  146. package/build/index.d.ts.map +1 -1
  147. package/build/index.js +19 -5
  148. package/build/index.js.map +1 -1
  149. package/build/question/constants.d.ts +2 -206
  150. package/build/question/constants.d.ts.map +1 -1
  151. package/build/question/constants.js +6 -683
  152. package/build/question/constants.js.map +1 -1
  153. package/build/question/create.d.ts +4 -9
  154. package/build/question/create.d.ts.map +1 -1
  155. package/build/question/create.js +171 -563
  156. package/build/question/create.js.map +1 -1
  157. package/build/question/generator.js +2 -0
  158. package/build/question/generator.js.map +1 -1
  159. package/build/question/index.d.ts +2 -0
  160. package/build/question/index.d.ts.map +1 -1
  161. package/build/question/index.js +6 -1
  162. package/build/question/index.js.map +1 -1
  163. package/build/question/inputs/AddKnowledgeInputs.d.ts +2 -2
  164. package/build/question/inputs/AddKnowledgeInputs.d.ts.map +1 -1
  165. package/build/question/inputs/AddPluginInputs.d.ts +6 -0
  166. package/build/question/inputs/AddPluginInputs.d.ts.map +1 -1
  167. package/build/question/inputs/RegeneratePluginInputs.d.ts +16 -0
  168. package/build/question/inputs/RegeneratePluginInputs.d.ts.map +1 -0
  169. package/build/question/inputs/RegeneratePluginInputs.js +5 -0
  170. package/build/question/inputs/RegeneratePluginInputs.js.map +1 -0
  171. package/build/question/inputs/index.d.ts +1 -0
  172. package/build/question/inputs/index.d.ts.map +1 -1
  173. package/build/question/inputs/index.js +1 -0
  174. package/build/question/inputs/index.js.map +1 -1
  175. package/build/question/options/AddKnowledgeOptions.js +3 -3
  176. package/build/question/options/AddKnowledgeOptions.js.map +1 -1
  177. package/build/question/options/AddPluginOptions.d.ts.map +1 -1
  178. package/build/question/options/AddPluginOptions.js +17 -0
  179. package/build/question/options/AddPluginOptions.js.map +1 -1
  180. package/build/question/options/CreateProjectOptions.js +1 -1
  181. package/build/question/options/CreateProjectOptions.js.map +1 -1
  182. package/build/question/options/RegeneratePluginOptions.d.ts +10 -0
  183. package/build/question/options/RegeneratePluginOptions.d.ts.map +1 -0
  184. package/build/question/options/RegeneratePluginOptions.js +28 -0
  185. package/build/question/options/RegeneratePluginOptions.js.map +1 -0
  186. package/build/question/options/index.d.ts +1 -0
  187. package/build/question/options/index.d.ts.map +1 -1
  188. package/build/question/options/index.js +1 -0
  189. package/build/question/options/index.js.map +1 -1
  190. package/build/question/other.d.ts +2 -0
  191. package/build/question/other.d.ts.map +1 -1
  192. package/build/question/other.js +50 -21
  193. package/build/question/other.js.map +1 -1
  194. package/build/question/questionNames.d.ts +132 -0
  195. package/build/question/questionNames.d.ts.map +1 -0
  196. package/build/question/questionNames.js +138 -0
  197. package/build/question/questionNames.js.map +1 -0
  198. package/build/question/scaffold/vs/createRootNode.d.ts +1 -0
  199. package/build/question/scaffold/vs/createRootNode.d.ts.map +1 -1
  200. package/build/question/scaffold/vs/createRootNode.js +14 -6
  201. package/build/question/scaffold/vs/createRootNode.js.map +1 -1
  202. package/build/question/scaffold/vsc/CapabilityOptions.d.ts +13 -1
  203. package/build/question/scaffold/vsc/CapabilityOptions.d.ts.map +1 -1
  204. package/build/question/scaffold/vsc/CapabilityOptions.js +86 -17
  205. package/build/question/scaffold/vsc/CapabilityOptions.js.map +1 -1
  206. package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts +4 -1
  207. package/build/question/scaffold/vsc/ProjectTypeOptions.d.ts.map +1 -1
  208. package/build/question/scaffold/vsc/ProjectTypeOptions.js +15 -11
  209. package/build/question/scaffold/vsc/ProjectTypeOptions.js.map +1 -1
  210. package/build/question/scaffold/vsc/agentForTeamsNode.js +11 -11
  211. package/build/question/scaffold/vsc/agentForTeamsNode.js.map +1 -1
  212. package/build/question/scaffold/vsc/createFromTdpNode.d.ts +1 -7
  213. package/build/question/scaffold/vsc/createFromTdpNode.d.ts.map +1 -1
  214. package/build/question/scaffold/vsc/createFromTdpNode.js +11 -45
  215. package/build/question/scaffold/vsc/createFromTdpNode.js.map +1 -1
  216. package/build/question/scaffold/vsc/createRootNode.d.ts.map +1 -1
  217. package/build/question/scaffold/vsc/createRootNode.js +30 -12
  218. package/build/question/scaffold/vsc/createRootNode.js.map +1 -1
  219. package/build/question/scaffold/vsc/customEngineAgentNode.d.ts.map +1 -1
  220. package/build/question/scaffold/vsc/customEngineAgentNode.js +6 -3
  221. package/build/question/scaffold/vsc/customEngineAgentNode.js.map +1 -1
  222. package/build/question/scaffold/vsc/daProjectTypeNode.d.ts +2 -1
  223. package/build/question/scaffold/vsc/daProjectTypeNode.d.ts.map +1 -1
  224. package/build/question/scaffold/vsc/daProjectTypeNode.js +20 -22
  225. package/build/question/scaffold/vsc/daProjectTypeNode.js.map +1 -1
  226. package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.d.ts.map +1 -1
  227. package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.js +0 -1
  228. package/build/question/scaffold/vsc/graphConnectorProjectTypeNode.js.map +1 -1
  229. package/build/question/scaffold/vsc/officeAddinProjectTypeNode.d.ts.map +1 -1
  230. package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js +40 -9
  231. package/build/question/scaffold/vsc/officeAddinProjectTypeNode.js.map +1 -1
  232. package/build/question/scaffold/vsc/teamsProjectTypeNode.d.ts.map +1 -1
  233. package/build/question/scaffold/vsc/teamsProjectTypeNode.js +17 -17
  234. package/build/question/scaffold/vsc/teamsProjectTypeNode.js.map +1 -1
  235. package/build/tsconfig.tsbuildinfo +1 -1
  236. package/build/ui/visitor.d.ts.map +1 -1
  237. package/build/ui/visitor.js +25 -42
  238. package/build/ui/visitor.js.map +1 -1
  239. package/package.json +8 -5
  240. package/resource/package.nls.cs.json +215 -183
  241. package/resource/package.nls.de.json +215 -183
  242. package/resource/package.nls.es.json +215 -183
  243. package/resource/package.nls.fr.json +215 -183
  244. package/resource/package.nls.it.json +215 -183
  245. package/resource/package.nls.ja.json +215 -183
  246. package/resource/package.nls.json +55 -39
  247. package/resource/package.nls.ko.json +215 -183
  248. package/resource/package.nls.pl.json +208 -176
  249. package/resource/package.nls.pt-BR.json +215 -183
  250. package/resource/package.nls.ru.json +214 -182
  251. package/resource/package.nls.tr.json +215 -183
  252. package/resource/package.nls.zh-Hans.json +208 -176
  253. package/resource/package.nls.zh-Hant.json +215 -183
  254. package/templates/fallback/common.zip +0 -0
  255. package/templates/fallback/csharp.zip +0 -0
  256. package/templates/fallback/js.zip +0 -0
  257. package/templates/fallback/python.zip +0 -0
  258. package/templates/fallback/ts.zip +0 -0
  259. package/build/component/driver/typeSpec/error/reProvisionError.d.ts +0 -5
  260. package/build/component/driver/typeSpec/error/reProvisionError.d.ts.map +0 -1
  261. package/build/component/driver/typeSpec/error/reProvisionError.js +0 -21
  262. package/build/component/driver/typeSpec/error/reProvisionError.js.map +0 -1
@@ -16,6 +16,7 @@ const envUtil_1 = require("../../utils/envUtil");
16
16
  const defaultGenerator_1 = require("../defaultGenerator");
17
17
  const templateNames_1 = require("../templates/templateNames");
18
18
  const helperMethods_1 = require("./helperMethods");
19
+ const metaOSHelper_1 = require("./metaOSHelper");
19
20
  /**
20
21
  * case 1: project-type=office-xml-addin-type AND addin-host=outlook
21
22
  * case 2: project-type=office-addin-type (addin-host=undefined)
@@ -40,7 +41,7 @@ class OfficeAddinGenerator {
40
41
  await importProgress.next((0, localizeUtils_1.getLocalizedString)("core.generator.officeAddin.importProject.convertProject"));
41
42
  if (manifestFile.endsWith(".xml")) {
42
43
  // Need to convert to json project first
43
- await (0, office_addin_project_1.convertProject)(manifestFile, "./backup.zip", "", true);
44
+ await (0, office_addin_project_1.convertProject)(manifestFile, "./backup.zip", addinRoot, true);
44
45
  manifestFile = manifestFile.replace(/\.xml$/, ".json");
45
46
  }
46
47
  inputs[constants_1.QuestionNames.OfficeAddinHost] = await getHost(manifestFile);
@@ -97,10 +98,26 @@ class OfficeAddinGeneratorNew extends defaultGenerator_1.DefaultTemplateGenerato
97
98
  templateNames_1.TemplateNames.OutlookTaskpane,
98
99
  templateNames_1.TemplateNames.WXPTaskpane,
99
100
  templateNames_1.TemplateNames.OfficeAddinCommon,
101
+ templateNames_1.TemplateNames.DeclarativeAgentMetaOSNewProject,
102
+ templateNames_1.TemplateNames.DeclarativeAgentMetaOSUpgradeProject,
100
103
  ].includes(templateName);
101
104
  }
102
105
  async getTemplateInfos(context, inputs, destinationPath, actionContext) {
103
106
  const templateName = inputs[constants_1.QuestionNames.TemplateName];
107
+ // Handle the Declarative Agent MetaOS project
108
+ if ([
109
+ templateNames_1.TemplateNames.DeclarativeAgentMetaOSNewProject,
110
+ templateNames_1.TemplateNames.DeclarativeAgentMetaOSUpgradeProject,
111
+ ].includes(templateName)) {
112
+ return Promise.resolve((0, teamsfx_api_1.ok)([
113
+ {
114
+ templateName: templateName,
115
+ language: inputs[constants_1.QuestionNames.ProgrammingLanguage],
116
+ // replaceMap: { manifestId: getUuid() },
117
+ },
118
+ ]));
119
+ }
120
+ // Hanlde the MetaOS Project
104
121
  const res = await OfficeAddinGenerator.doScaffolding(context, inputs, destinationPath);
105
122
  if (res.isErr())
106
123
  return (0, teamsfx_api_1.err)(res.error);
@@ -113,6 +130,21 @@ class OfficeAddinGeneratorNew extends defaultGenerator_1.DefaultTemplateGenerato
113
130
  ]));
114
131
  }
115
132
  async post(context, inputs, destinationPath, actionContext) {
133
+ // Handle the Declarative Agent MetaOS project
134
+ if (templateNames_1.TemplateNames.DeclarativeAgentMetaOSUpgradeProject === inputs[constants_1.QuestionNames.TemplateName]) {
135
+ try {
136
+ await metaOSHelper_1.MetaOSHelper.copyExistMetaOSProject(inputs[constants_1.QuestionNames.OfficeAddinFolder], destinationPath);
137
+ await metaOSHelper_1.MetaOSHelper.extendToDA(destinationPath, inputs[constants_1.QuestionNames.AppName]);
138
+ return (0, teamsfx_api_1.ok)({});
139
+ }
140
+ catch (e) {
141
+ return (0, teamsfx_api_1.err)(e.message);
142
+ }
143
+ }
144
+ else if (templateNames_1.TemplateNames.DeclarativeAgentMetaOSNewProject === inputs[constants_1.QuestionNames.TemplateName]) {
145
+ return (0, teamsfx_api_1.ok)({});
146
+ }
147
+ // Hanlde the MetaOS Project import
116
148
  const fromFolder = inputs[constants_1.QuestionNames.OfficeAddinFolder];
117
149
  if (fromFolder) {
118
150
  // reset all env files
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;GAEG;AAEH,wDAUgC;AAChC,+DAAsD;AACtD,iEAAmE;AACnE,6DAAsD;AACtD,0CAA+C;AAC/C,2DAAiF;AAEjF,iDAA8C;AAC9C,0DAA+D;AAE/D,8DAA2D;AAC3D,mDAAgD;AAEhD;;;;GAIG;AACH,MAAa,oBAAoB;IACxB,MAAM,CAAC,KAAK,CAAC,aAAa,CAC/B,OAAgB,EAChB,MAAc,EACd,eAAuB;QAEvB,MAAM,SAAS,GAAG,eAAe,CAAC;QAClC,MAAM,UAAU,GAAG,MAAM,CAAC,yBAAa,CAAC,iBAAiB,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,iBAAiB,GAAG,IAAA,kCAAkB,EAC1C,sDAAsD,CACvD,CAAC;QACF,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;QAEvF,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI;YACF,IAAI,UAAU,EAAE;gBACd,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;gBAC7B,wBAAwB;gBACxB,MAAM,cAAc,CAAC,IAAI,CACvB,IAAA,kCAAkB,EAAC,oDAAoD,CAAC,CACzE,CAAC;gBACF,6BAAa,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBACpD,MAAM,kBAAkB,GAAW,MAAM,CAAC,yBAAa,CAAC,mBAAmB,CAAC,CAAC;gBAC7E,IAAI,YAAY,GAAW,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBAC7E,MAAM,cAAc,CAAC,IAAI,CACvB,IAAA,kCAAkB,EAAC,yDAAyD,CAAC,CAC9E,CAAC;gBACF,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oBACjC,wCAAwC;oBACxC,MAAM,IAAA,qCAAc,EAAC,YAAY,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC7D,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;iBACxD;gBACD,MAAM,CAAC,yBAAa,CAAC,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;gBACpE,MAAM,cAAc,CAAC,IAAI,CACvB,IAAA,kCAAkB,EAAC,yDAAyD,CAAC,CAC9E,CAAC;gBACF,MAAM,6BAAa,CAAC,cAAc,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;aACnE;YACD,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrC,OAAO,IAAA,gBAAE,EAAC,SAAS,CAAC,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACtC,OAAO,IAAA,iBAAG,EAAC,IAAA,qBAAa,EAAC,CAAU,CAAC,CAAC,CAAC;SACvC;IACH,CAAC;CACF;AAhDD,oDAgDC;AAKM,KAAK,UAAU,OAAO,CAAC,iBAAyB;;IACrD,4BAA4B;IAC5B,MAAM,aAAa,GAAG,CAAC,MAAM,0BAAY,CAAC,YAAY,CACpD,iBAAiB,CAClB,CAA6B,CAAC;IAC/B,IAAI,IAAI,GAAe,SAAS,CAAC;IACjC,QAAQ,MAAA,MAAA,MAAA,aAAa,CAAC,UAAU,0CAAG,CAAC,EAAE,YAAY,0CAAE,MAAM,0CAAG,CAAC,CAAC,EAAE;QAC/D,KAAK,UAAU;YACb,IAAI,GAAG,MAAM,CAAC;YACd,MAAM;QACR,KAAK,MAAM;YACT,IAAI,GAAG,SAAS,CAAC;YACjB,MAAM;QACR,mBAAmB;QACnB,sBAAsB;QACtB,KAAK,cAAc;YACjB,IAAI,GAAG,YAAY,CAAC;YACpB,MAAM;QACR,kBAAkB;QAClB,sBAAsB;QACtB,KAAK,UAAU;YACb,IAAI,GAAG,OAAO,CAAC;YACf,MAAM;KACT;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAzBD,0BAyBC;AAED,MAAa,uBAAwB,SAAQ,2CAAwB;IAArE;;QACE,kBAAa,GAAG,wBAAwB,CAAC;IAmD3C,CAAC;IAjDC,uBAAuB;IACP,QAAQ,CAAC,OAAgB,EAAE,MAAc;QACvD,MAAM,YAAY,GAAG,MAAM,CAAC,yBAAa,CAAC,YAAY,CAAC,CAAC;QACxD,OAAO;YACL,6BAAa,CAAC,eAAe;YAC7B,6BAAa,CAAC,WAAW;YACzB,6BAAa,CAAC,iBAAiB;SAChC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC3B,CAAC;IAEe,KAAK,CAAC,gBAAgB,CACpC,OAAgB,EAChB,MAAc,EACd,eAAuB,EACvB,aAA6B;QAE7B,MAAM,YAAY,GAAG,MAAM,CAAC,yBAAa,CAAC,YAAY,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QACvF,IAAI,GAAG,CAAC,KAAK,EAAE;YAAE,OAAO,IAAA,iBAAG,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,OAAO,CAAC,OAAO,CACpB,IAAA,gBAAE,EAAC;YACD;gBACE,YAAY,EAAE,YAAY;gBAC1B,QAAQ,EAAE,+BAAmB,CAAC,EAAE;gBAChC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAA,qBAAO,GAAE,EAAE;aACtC;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAEe,KAAK,CAAC,IAAI,CACxB,OAAgB,EAChB,MAAc,EACd,eAAuB,EACvB,aAA6B;QAE7B,MAAM,UAAU,GAAG,MAAM,CAAC,yBAAa,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,UAAU,EAAE;YACd,sBAAsB;YACtB,MAAM,MAAM,GAAG,MAAM,iBAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YACtD,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE;gBACjB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;oBACtB,MAAM,iBAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC;iBAClF;aACF;SACF;QACD,OAAO,IAAA,gBAAE,EAAC,EAAE,CAAC,CAAC;IAChB,CAAC;CACF;AApDD,0DAoDC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export declare class MetaOSHelper {
2
+ static copyFilterFn(filePath: string): boolean;
3
+ static copyExistMetaOSProject(sourceFolder: string, targetFolder: string): Promise<void>;
4
+ static getNameWithSuffix(name: string, suffix: number): string;
5
+ static ensureFunctionNameIsNotExist(jsonObj: any[], key: string, functionName: string): string;
6
+ static ensureFileNameIsNotExist(filePath: string, filename: string, ext: string): string;
7
+ static extendToDA(projectFolder: string, appName: string): Promise<void>;
8
+ static modifyManifest(projectFolder: string, DAFilename: string): Promise<string>;
9
+ static generateDAFile(projectFolder: string, DAFilename: string, ActionFilename: string, appName: string): Promise<void>;
10
+ static generateActionFile(projectFolder: string, ActionFilename: string, appName: string, commandName: string): Promise<void>;
11
+ static addCodeToCommands(projectFolder: string, commandName: string): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=metaOSHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaOSHelper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/metaOSHelper.ts"],"names":[],"mappings":"AA4BA,qBAAa,YAAY;IACvB,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;WAgBjC,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM9F,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAI9D,MAAM,CAAC,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAkB9F,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;WAY3E,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAwBjE,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;WA8D1E,cAAc,CACzB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;WA2BH,kBAAkB,CAC7B,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;WA6DH,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA8B1F"}
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT license.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.MetaOSHelper = void 0;
6
+ const tslib_1 = require("tslib");
7
+ /* eslint-disable @typescript-eslint/no-explicit-any */
8
+ const path_1 = tslib_1.__importDefault(require("path"));
9
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
10
+ const teamsfx_api_1 = require("@microsoft/teamsfx-api");
11
+ const NOT_COPY_FILES = ["README.md", "teamsapp.yml", "m365agents.yml"];
12
+ const NOT_COPY_FOLDERS = ["node_modules", "env"];
13
+ const DEFAULT_MANIFEST_ID = "${{TEAMS_APP_ID}}";
14
+ const DEFAULT_DA_ID = "declarativeCopilotAlc";
15
+ const DEFAULT_CMD_NAME = "fillcolor";
16
+ const DEFAULT_CMD_FILE_NAME = "commands.js";
17
+ const DEFAULT_DA_FILENAME = "declarativeCopilot";
18
+ const DEFAULT_ACTION_FILENAME = "Excel-API-local-plugin";
19
+ const FILE_EXTENSION = ".json";
20
+ class MetaOSHelper {
21
+ static copyFilterFn(filePath) {
22
+ for (const item of NOT_COPY_FILES) {
23
+ if (filePath.endsWith(item)) {
24
+ return false;
25
+ }
26
+ }
27
+ for (const item of NOT_COPY_FOLDERS) {
28
+ if (filePath.includes(item)) {
29
+ return false;
30
+ }
31
+ }
32
+ return true;
33
+ }
34
+ static async copyExistMetaOSProject(sourceFolder, targetFolder) {
35
+ await fs_extra_1.default.copy(sourceFolder, targetFolder, {
36
+ filter: MetaOSHelper.copyFilterFn,
37
+ });
38
+ }
39
+ static getNameWithSuffix(name, suffix) {
40
+ return suffix ? `${name}${suffix}` : name;
41
+ }
42
+ static ensureFunctionNameIsNotExist(jsonObj, key, functionName) {
43
+ let suffix = 0;
44
+ let nameConflict = false;
45
+ do {
46
+ nameConflict = false;
47
+ for (const obj of jsonObj) {
48
+ if ((obj === null || obj === void 0 ? void 0 : obj[key]) === MetaOSHelper.getNameWithSuffix(functionName, suffix)) {
49
+ suffix++;
50
+ nameConflict = true;
51
+ break;
52
+ }
53
+ }
54
+ } while (nameConflict);
55
+ return MetaOSHelper.getNameWithSuffix(functionName, suffix);
56
+ }
57
+ static ensureFileNameIsNotExist(filePath, filename, ext) {
58
+ let suffix = 0;
59
+ while (fs_extra_1.default.existsSync(path_1.default.join(filePath, MetaOSHelper.getNameWithSuffix(filename, suffix), ext))) {
60
+ suffix++;
61
+ }
62
+ return `${MetaOSHelper.getNameWithSuffix(filename, suffix)}${ext}`;
63
+ }
64
+ static async extendToDA(projectFolder, appName) {
65
+ // Ensure schema files name
66
+ const DAFilename = MetaOSHelper.ensureFileNameIsNotExist(projectFolder, DEFAULT_DA_FILENAME, FILE_EXTENSION);
67
+ const ActionFilename = MetaOSHelper.ensureFileNameIsNotExist(projectFolder, DEFAULT_ACTION_FILENAME, FILE_EXTENSION);
68
+ // Modify manifest.json
69
+ const commandName = await MetaOSHelper.modifyManifest(projectFolder, DAFilename);
70
+ // generate DA files
71
+ await MetaOSHelper.generateDAFile(projectFolder, DAFilename, ActionFilename, appName);
72
+ await MetaOSHelper.generateActionFile(projectFolder, ActionFilename, appName, commandName);
73
+ // Add functions to command.ts
74
+ await MetaOSHelper.addCodeToCommands(projectFolder, commandName);
75
+ }
76
+ static async modifyManifest(projectFolder, DAFilename) {
77
+ var _a, _b, _c, _d;
78
+ let commandName = DEFAULT_CMD_NAME;
79
+ const manifestPath = path_1.default.join(projectFolder, teamsfx_api_1.AppPackageFolderName, teamsfx_api_1.ManifestTemplateFileName);
80
+ const manifest = (await teamsfx_api_1.AppManifestUtils.readTeamsManifest(manifestPath));
81
+ // Update manifest GUID
82
+ manifest.id = DEFAULT_MANIFEST_ID;
83
+ // Add the DA definition
84
+ manifest.copilotAgents = {
85
+ declarativeAgents: [
86
+ {
87
+ id: DEFAULT_DA_ID,
88
+ file: DAFilename,
89
+ },
90
+ ],
91
+ };
92
+ // Add the command to command's runtime
93
+ const runtimes = (_b = (_a = manifest.extensions) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.runtimes;
94
+ if (runtimes) {
95
+ let added = false;
96
+ for (const runtime of runtimes) {
97
+ if ((_d = (_c = runtime === null || runtime === void 0 ? void 0 : runtime.code) === null || _c === void 0 ? void 0 : _c.script) === null || _d === void 0 ? void 0 : _d.includes(DEFAULT_CMD_FILE_NAME)) {
98
+ if (runtime.actions) {
99
+ commandName = MetaOSHelper.ensureFunctionNameIsNotExist(runtime.actions, "id", commandName);
100
+ runtime.actions.push({
101
+ id: commandName,
102
+ type: "executeFunction",
103
+ });
104
+ }
105
+ else {
106
+ runtime.actions = [
107
+ {
108
+ id: commandName,
109
+ type: "executeFunction",
110
+ },
111
+ ];
112
+ }
113
+ added = true;
114
+ break;
115
+ }
116
+ }
117
+ if (!added) {
118
+ throw new Error("No command's runtime found in manifest.extensions!");
119
+ }
120
+ }
121
+ else {
122
+ throw new Error("No runtimes found in manifest.extensions!");
123
+ }
124
+ // save file and return
125
+ await teamsfx_api_1.AppManifestUtils.writeTeamsManifest(manifestPath, manifest);
126
+ return commandName;
127
+ }
128
+ static async generateDAFile(projectFolder, DAFilename, ActionFilename, appName) {
129
+ const fileJson = {
130
+ version: "v1.3",
131
+ name: `Excel Add-in + Agent for ${appName}`,
132
+ description: "Agent for working with Excel cells.",
133
+ instructions: "You are an agent for working with an add-in. You can work with any cells, not just a well-formatted table.",
134
+ conversation_starters: [
135
+ {
136
+ title: "Change cell color",
137
+ text: "I want to change the color of cell B2 to orange",
138
+ },
139
+ ],
140
+ actions: [
141
+ {
142
+ id: "localExcelPlugin",
143
+ file: ActionFilename,
144
+ },
145
+ ],
146
+ };
147
+ await teamsfx_api_1.AppManifestUtils.writeDeclarativeAgentManifest(path_1.default.join(projectFolder, teamsfx_api_1.AppPackageFolderName, DAFilename), fileJson);
148
+ }
149
+ static async generateActionFile(projectFolder, ActionFilename, appName, commandName) {
150
+ // TODO: as any for temporary, since the runtime type `localPlugin` is not type defined yet
151
+ const fileJson = {
152
+ schema_version: "v2.2",
153
+ name_for_human: `Excel Add-in + Agent for ${appName}`,
154
+ description_for_human: `Add-in Actions in Agents for ${appName}`,
155
+ namespace: "addin_function",
156
+ functions: [
157
+ {
158
+ name: `${commandName}`,
159
+ description: `${commandName} changes a single cell location to a specific color.`,
160
+ parameters: {
161
+ type: "object",
162
+ properties: {
163
+ Cell: {
164
+ type: "string",
165
+ description: "A cell location in the format of A1, B2, etc.",
166
+ default: "B2",
167
+ },
168
+ Color: {
169
+ type: "string",
170
+ description: "A color in hex format, e.g. #30d5c8",
171
+ default: "#30d5c8",
172
+ },
173
+ },
174
+ required: ["Cell", "Color"],
175
+ },
176
+ returns: {
177
+ type: "string",
178
+ description: "A string indicating the result of the action.",
179
+ },
180
+ states: {
181
+ reasoning: {
182
+ description: `\`${commandName}\` changes the color of a single cell based on the grid location and a color value.`,
183
+ instructions: "The user will pass ask for a color that isn't in the hex format needed in most cases, make sure to convert to the closest approximation in the right format.",
184
+ },
185
+ responding: {
186
+ description: `\`${commandName}\` changes the color of a single cell based on the grid location and a color value.`,
187
+ instructions: "If there is no error present, tell the user the cell location and color that was set.",
188
+ },
189
+ },
190
+ },
191
+ ],
192
+ runtimes: [
193
+ {
194
+ type: "LocalPlugin",
195
+ spec: {
196
+ local_endpoint: "ms-office-addin",
197
+ },
198
+ run_for_functions: [`${commandName}`],
199
+ },
200
+ ],
201
+ };
202
+ const filePath = path_1.default.join(projectFolder, teamsfx_api_1.AppPackageFolderName, ActionFilename);
203
+ // directly write JSON to avoid type check for not type defined runtime.type `LocalPlugin`
204
+ await fs_extra_1.default.writeJSON(filePath, fileJson, { spaces: 2 });
205
+ }
206
+ static async addCodeToCommands(projectFolder, commandName) {
207
+ if (!fs_extra_1.default.existsSync(path_1.default.join(projectFolder, "src", "commands", "commands.ts"))) {
208
+ throw new Error("command.ts file doesn't exist!");
209
+ }
210
+ const codeToAppend = `
211
+ /* global Excel, performance, console */
212
+
213
+ async function ${commandName}(cell, color) {
214
+ await Excel.run(async (context) => {
215
+ context.workbook.worksheets.getActiveWorksheet().getRange(cell).format.fill.color = color;
216
+ await context.sync();
217
+ });
218
+ }
219
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
220
+ Office.onReady((info) => {
221
+ Office.actions.associate("${commandName}", async (message) => {
222
+ const start = performance.now();
223
+ const { Cell: cell, Color: color } = JSON.parse(message);
224
+ await ${commandName}(cell, color);
225
+ const duration = performance.now() - start;
226
+ const result = \`Demo add-in: Action completed! completed in \$\{duration.toFixed(0)\} ms.\`;
227
+ console.log(\`Returning result: "\$\{result\}"\`);
228
+ return result;
229
+ });
230
+ });
231
+ `;
232
+ await fs_extra_1.default.appendFile(path_1.default.join(projectFolder, "src", "commands", "commands.ts"), codeToAppend);
233
+ }
234
+ }
235
+ exports.MetaOSHelper = MetaOSHelper;
236
+ //# sourceMappingURL=metaOSHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaOSHelper.js","sourceRoot":"","sources":["../../../../src/component/generator/officeAddin/metaOSHelper.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ interface SpecParserOutputFilePath {
31
31
  interface SpecParserGenerateResult {
32
32
  warnings: WarningResult[];
33
33
  }
34
- export declare function generateFromApiSpec(specParser: SpecParser, teamsManifestPath: string, inputs: Inputs, context: Context, sourceComponent: string, projectType: ProjectType, outputFilePath: SpecParserOutputFilePath, specPath: string): Promise<Result<SpecParserGenerateResult, FxError>>;
34
+ export declare function generateFromApiSpec(specParser: SpecParser | undefined, teamsManifestPath: string, inputs: Inputs, context: Context, sourceComponent: string, projectType: ProjectType, outputFilePath: SpecParserOutputFilePath, specPath: string, updateExistingPlugin?: boolean): Promise<Result<SpecParserGenerateResult, FxError>>;
35
35
  export declare function logValidationResults(projectType: ProjectType, errors: ErrorResult[], warnings: WarningResult[], context: Context, shouldLogWarning: boolean, shouldSkipTelemetry: boolean, specHash?: string, existingCorrelationId?: string): void;
36
36
  export declare function injectAuthAction(projectPath: string, authName: string, authScheme: AuthType | undefined, outputApiSpecPath: string, forceToAddNew: boolean, authType?: string, enablePKCE?: boolean, registrationId?: string): Promise<AuthActionInjectResult | undefined>;
37
37
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openApiSpec/helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../src/component/generator/openApiSpec/helper.ts"],"names":[],"mappings":"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"}
@@ -138,6 +138,9 @@ async function listOperations(context, apiSpecUrl, inputs, includeExistingAPIs =
138
138
  ["oauth2-auth-count" /* telemetryProperties.oauth2AuthCount */]: oauth2AuthAPIs.length.toString(),
139
139
  ["other-auth-count" /* telemetryProperties.otherAuthCount */]: otherAuthAPIs.length.toString(),
140
140
  ["spec-hash" /* telemetryProperties.specHash */]: validationRes.specHash,
141
+ [telemetry_1.TelemetryProperty.IsKiotaNPMIntegrationEnabled]: featureFlags_1.featureFlagManager
142
+ .getBooleanValue(featureFlags_1.FeatureFlags.KiotaNPMIntegration)
143
+ .toString(),
141
144
  });
142
145
  // Filter out exsiting APIs
143
146
  if (!includeExistingAPIs) {
@@ -264,7 +267,7 @@ async function listPluginExistingOperations(manifest, teamsManifestPath, destina
264
267
  return listResult.APIs.map((o) => o.api);
265
268
  }
266
269
  exports.listPluginExistingOperations = listPluginExistingOperations;
267
- async function generateFromApiSpec(specParser, teamsManifestPath, inputs, context, sourceComponent, projectType, outputFilePath, specPath) {
270
+ async function generateFromApiSpec(specParser, teamsManifestPath, inputs, context, sourceComponent, projectType, outputFilePath, specPath, updateExistingPlugin = false) {
268
271
  const operations = inputs[constants_2.QuestionNames.ApiOperation];
269
272
  let validationRes;
270
273
  if (projectType === m365_spec_parser_1.ProjectType.Copilot) {
@@ -302,7 +305,7 @@ async function generateFromApiSpec(specParser, teamsManifestPath, inputs, contex
302
305
  adaptiveCardUpdateStrategy = m365_spec_parser_1.AdaptiveCardUpdateStrategy.KeepExisting;
303
306
  }
304
307
  const generateResult = projectType === m365_spec_parser_1.ProjectType.Copilot
305
- ? await (0, daSpecParser_1.generatePlugin)(specPath, teamsManifestPath, outputFilePath.destinationApiSpecFilePath, outputFilePath.pluginManifestFilePath, operations, adaptiveCardUpdateStrategy, inputs.platform)
308
+ ? await (0, daSpecParser_1.generatePlugin)(specPath, teamsManifestPath, outputFilePath.destinationApiSpecFilePath, outputFilePath.pluginManifestFilePath, operations, adaptiveCardUpdateStrategy, inputs.platform, updateExistingPlugin)
306
309
  : await specParser.generate(teamsManifestPath, operations, outputFilePath.destinationApiSpecFilePath, projectType === m365_spec_parser_1.ProjectType.TeamsAi ? undefined : outputFilePath.responseTemplateFolder);
307
310
  // Send SpecParser.generate() warnings
308
311
  context.telemetryReporter.sendTelemetryEvent(exports.specParserGenerateResultTelemetryEvent, {
@@ -312,6 +315,9 @@ async function generateFromApiSpec(specParser, teamsManifestPath, inputs, contex
312
315
  .map((w) => `${w.type.toString()}: ${w.content}`)
313
316
  .join(";"),
314
317
  [telemetry_1.TelemetryProperty.Component]: sourceComponent,
318
+ [telemetry_1.TelemetryProperty.IsKiotaNPMIntegrationEnabled]: featureFlags_1.featureFlagManager
319
+ .getBooleanValue(featureFlags_1.FeatureFlags.KiotaNPMIntegration)
320
+ .toString(),
315
321
  });
316
322
  if (generateResult.warnings && generateResult.warnings.length > 0) {
317
323
  generateResult.warnings.find((o) => {
@@ -350,6 +356,9 @@ function logValidationResults(projectType, errors, warnings, context, shouldLogW
350
356
  if (specHash) {
351
357
  properties["spec-hash" /* telemetryProperties.specHash */] = specHash;
352
358
  }
359
+ properties[telemetry_1.TelemetryProperty.IsKiotaNPMIntegrationEnabled] = featureFlags_1.featureFlagManager
360
+ .getBooleanValue(featureFlags_1.FeatureFlags.KiotaNPMIntegration)
361
+ .toString();
353
362
  const specNotValidError = errors.find((error) => error.type === m365_spec_parser_1.ErrorType.SpecNotValid);
354
363
  if (specNotValidError) {
355
364
  properties[telemetry_1.ApiSpecTelemetryPropertis.SpecNotValidDetails] = specNotValidError.content;
@@ -393,7 +402,9 @@ async function injectAuthAction(projectPath, authName, authScheme, outputApiSpec
393
402
  const ymlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath);
394
403
  const localYamlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath, "local", true);
395
404
  const relativeSpecPath = `./${path_1.default.relative(projectPath, outputApiSpecPath).replace(/\\/g, "/")}`;
396
- if ((!!authScheme && m365_spec_parser_1.Utils.isBearerTokenAuth(authScheme)) || authType === constant_1.APIKeyAuthType) {
405
+ if ((!!authScheme &&
406
+ (m365_spec_parser_1.Utils.isBearerTokenAuth(authScheme) || m365_spec_parser_1.Utils.isAPIKeyAuthButNotInCookie(authScheme))) ||
407
+ authType === constant_1.APIKeyAuthType) {
397
408
  const res = await actionInjector_1.ActionInjector.injectCreateAPIKeyAction(ymlPath, authName, relativeSpecPath, forceToAddNew, registrationId);
398
409
  if (!!localYamlPath && (await fs_extra_1.default.pathExists(localYamlPath))) {
399
410
  await actionInjector_1.ActionInjector.injectCreateAPIKeyAction(localYamlPath, authName, relativeSpecPath, forceToAddNew, registrationId);
@@ -465,6 +476,11 @@ function formatApiSpecValidationWarningMessage(specWarnings, apiSpecFileName, te
465
476
  resultWarnings.push(`${constant_1.SummaryConstant.Info} ` +
466
477
  (0, localizeUtils_1.getLocalizedString)("core.copilotPlugin.scaffold.summary.warning.swaggerVersion", apiSpecFileName));
467
478
  }
479
+ const spec31Warning = specWarnings.find((w) => w.type === m365_spec_parser_1.WarningType.OpenAPI31ConvertTo30);
480
+ if (spec31Warning) {
481
+ resultWarnings.push(`${constant_1.SummaryConstant.Info} ` +
482
+ (0, localizeUtils_1.getLocalizedString)("core.copilotPlugin.scaffold.summary.warning.spec31ConvertTo30", apiSpecFileName));
483
+ }
468
484
  const specialCharactersWarnings = specWarnings.filter((w) => w.type === m365_spec_parser_1.WarningType.OperationIdContainsSpecialCharacters);
469
485
  specialCharactersWarnings.forEach((warning) => {
470
486
  resultWarnings.push(`${constant_1.SummaryConstant.Info} ` +