@microsoft/teamsfx-core 2.0.8-alpha.e17ffd4d1.0 → 2.0.8-alpha.f2bd7316b.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 (346) hide show
  1. package/build/common/constants.d.ts +6 -19
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +6 -20
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/deps-checker/constant/message.d.ts +1 -1
  6. package/build/common/deps-checker/constant/message.d.ts.map +1 -1
  7. package/build/common/deps-checker/constant/message.js +1 -1
  8. package/build/common/deps-checker/constant/message.js.map +1 -1
  9. package/build/common/deps-checker/util/fileHelper.js +1 -1
  10. package/build/common/deps-checker/util/fileHelper.js.map +1 -1
  11. package/build/common/featureFlags.d.ts +70 -7
  12. package/build/common/featureFlags.d.ts.map +1 -1
  13. package/build/common/featureFlags.js +66 -42
  14. package/build/common/featureFlags.js.map +1 -1
  15. package/build/common/m365/launchHelper.d.ts +1 -1
  16. package/build/common/m365/launchHelper.d.ts.map +1 -1
  17. package/build/common/m365/launchHelper.js +3 -6
  18. package/build/common/m365/launchHelper.js.map +1 -1
  19. package/build/common/m365/packageService.d.ts +1 -1
  20. package/build/common/m365/packageService.d.ts.map +1 -1
  21. package/build/common/m365/packageService.js +18 -39
  22. package/build/common/m365/packageService.js.map +1 -1
  23. package/build/common/projectSettingsHelper.d.ts +7 -2
  24. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  25. package/build/common/projectSettingsHelper.js +25 -7
  26. package/build/common/projectSettingsHelper.js.map +1 -1
  27. package/build/common/projectTypeChecker.d.ts +2 -0
  28. package/build/common/projectTypeChecker.d.ts.map +1 -1
  29. package/build/common/projectTypeChecker.js +13 -0
  30. package/build/common/projectTypeChecker.js.map +1 -1
  31. package/build/common/samples.d.ts +1 -2
  32. package/build/common/samples.d.ts.map +1 -1
  33. package/build/common/samples.js +37 -83
  34. package/build/common/samples.js.map +1 -1
  35. package/build/common/stringUtils.d.ts +10 -0
  36. package/build/common/stringUtils.d.ts.map +1 -0
  37. package/build/common/stringUtils.js +121 -0
  38. package/build/common/stringUtils.js.map +1 -0
  39. package/build/common/telemetry.d.ts +14 -2
  40. package/build/common/telemetry.d.ts.map +1 -1
  41. package/build/common/telemetry.js +36 -6
  42. package/build/common/telemetry.js.map +1 -1
  43. package/build/common/templates-config.json +1 -1
  44. package/build/common/wrappedAxiosClient.d.ts.map +1 -1
  45. package/build/common/wrappedAxiosClient.js +7 -5
  46. package/build/common/wrappedAxiosClient.js.map +1 -1
  47. package/build/component/configManager/constant.d.ts +2 -1
  48. package/build/component/configManager/constant.d.ts.map +1 -1
  49. package/build/component/configManager/constant.js +1 -0
  50. package/build/component/configManager/constant.js.map +1 -1
  51. package/build/component/configManager/validator.js +1 -1
  52. package/build/component/configManager/validator.js.map +1 -1
  53. package/build/component/constants.js +2 -2
  54. package/build/component/constants.js.map +1 -1
  55. package/build/component/coordinator/index.d.ts +0 -38
  56. package/build/component/coordinator/index.d.ts.map +1 -1
  57. package/build/component/coordinator/index.js +133 -199
  58. package/build/component/coordinator/index.js.map +1 -1
  59. package/build/component/driver/aad/create.d.ts +1 -0
  60. package/build/component/driver/aad/create.d.ts.map +1 -1
  61. package/build/component/driver/aad/create.js +22 -11
  62. package/build/component/driver/aad/create.js.map +1 -1
  63. package/build/component/driver/aad/error/aadManifestError.d.ts +6 -0
  64. package/build/component/driver/aad/error/aadManifestError.d.ts.map +1 -1
  65. package/build/component/driver/aad/error/aadManifestError.js +25 -1
  66. package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
  67. package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts +5 -0
  68. package/build/component/driver/aad/error/clientSecretNotAllowedError.d.ts.map +1 -0
  69. package/build/component/driver/aad/error/clientSecretNotAllowedError.js +23 -0
  70. package/build/component/driver/aad/error/clientSecretNotAllowedError.js.map +1 -0
  71. package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts +5 -0
  72. package/build/component/driver/aad/error/credentialInvalidLifetimeError.d.ts.map +1 -0
  73. package/build/component/driver/aad/error/credentialInvalidLifetimeError.js +23 -0
  74. package/build/component/driver/aad/error/credentialInvalidLifetimeError.js.map +1 -0
  75. package/build/component/driver/aad/interface/IAADDefinition.d.ts +1 -0
  76. package/build/component/driver/aad/interface/IAADDefinition.d.ts.map +1 -1
  77. package/build/component/driver/aad/interface/createAadAppArgs.d.ts +3 -0
  78. package/build/component/driver/aad/interface/createAadAppArgs.d.ts.map +1 -1
  79. package/build/component/driver/aad/permissions/index.d.ts.map +1 -1
  80. package/build/component/driver/aad/permissions/index.js +9 -0
  81. package/build/component/driver/aad/permissions/index.js.map +1 -1
  82. package/build/component/driver/aad/utility/aadAppClient.d.ts +3 -2
  83. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  84. package/build/component/driver/aad/utility/aadAppClient.js +35 -17
  85. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  86. package/build/component/driver/aad/utility/aadManifestHelper.d.ts.map +1 -1
  87. package/build/component/driver/aad/utility/aadManifestHelper.js +9 -1
  88. package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
  89. package/build/component/driver/aad/utility/constants.d.ts +6 -0
  90. package/build/component/driver/aad/utility/constants.d.ts.map +1 -1
  91. package/build/component/driver/aad/utility/constants.js +8 -2
  92. package/build/component/driver/aad/utility/constants.js.map +1 -1
  93. package/build/component/driver/apiKey/create.d.ts +0 -3
  94. package/build/component/driver/apiKey/create.d.ts.map +1 -1
  95. package/build/component/driver/apiKey/create.js +23 -48
  96. package/build/component/driver/apiKey/create.js.map +1 -1
  97. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts +2 -0
  98. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts.map +1 -1
  99. package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts +9 -0
  100. package/build/component/driver/apiKey/interface/updateApiKeyArgs.d.ts.map +1 -0
  101. package/build/component/driver/apiKey/interface/updateApiKeyArgs.js +5 -0
  102. package/build/component/driver/apiKey/interface/updateApiKeyArgs.js.map +1 -0
  103. package/build/component/driver/apiKey/update.d.ts +13 -0
  104. package/build/component/driver/apiKey/update.d.ts.map +1 -0
  105. package/build/component/driver/apiKey/update.js +182 -0
  106. package/build/component/driver/apiKey/update.js.map +1 -0
  107. package/build/component/driver/apiKey/utility/constants.d.ts +2 -0
  108. package/build/component/driver/apiKey/utility/constants.d.ts.map +1 -1
  109. package/build/component/driver/apiKey/utility/constants.js +2 -0
  110. package/build/component/driver/apiKey/utility/constants.js.map +1 -1
  111. package/build/component/driver/apiKey/utility/utility.d.ts +7 -0
  112. package/build/component/driver/apiKey/utility/utility.d.ts.map +1 -0
  113. package/build/component/driver/apiKey/utility/utility.js +55 -0
  114. package/build/component/driver/apiKey/utility/utility.js.map +1 -0
  115. package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
  116. package/build/component/driver/deploy/spfx/utility/spoClient.js +3 -1
  117. package/build/component/driver/deploy/spfx/utility/spoClient.js.map +1 -1
  118. package/build/component/driver/index.d.ts +3 -0
  119. package/build/component/driver/index.d.ts.map +1 -1
  120. package/build/component/driver/index.js +3 -0
  121. package/build/component/driver/index.js.map +1 -1
  122. package/build/component/driver/middleware/addSWADeployTelemetry.js +2 -2
  123. package/build/component/driver/middleware/addSWADeployTelemetry.js.map +1 -1
  124. package/build/component/driver/oauth/create.d.ts +12 -0
  125. package/build/component/driver/oauth/create.d.ts.map +1 -0
  126. package/build/component/driver/oauth/create.js +193 -0
  127. package/build/component/driver/oauth/create.js.map +1 -0
  128. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts +5 -0
  129. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.d.ts.map +1 -0
  130. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js +21 -0
  131. package/build/component/driver/oauth/error/oauthAuthInfoInvalid.js.map +1 -0
  132. package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts +5 -0
  133. package/build/component/driver/oauth/error/oauthDomainInvalid.d.ts.map +1 -0
  134. package/build/component/driver/oauth/error/oauthDomainInvalid.js +22 -0
  135. package/build/component/driver/oauth/error/oauthDomainInvalid.js.map +1 -0
  136. package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts +5 -0
  137. package/build/component/driver/oauth/error/oauthFailedToGetDomain.d.ts.map +1 -0
  138. package/build/component/driver/oauth/error/oauthFailedToGetDomain.js +21 -0
  139. package/build/component/driver/oauth/error/oauthFailedToGetDomain.js.map +1 -0
  140. package/build/component/driver/oauth/error/oauthNameTooLong.d.ts +5 -0
  141. package/build/component/driver/oauth/error/oauthNameTooLong.d.ts.map +1 -0
  142. package/build/component/driver/oauth/error/oauthNameTooLong.js +21 -0
  143. package/build/component/driver/oauth/error/oauthNameTooLong.js.map +1 -0
  144. package/build/component/driver/oauth/interface/createOauthArgs.d.ts +12 -0
  145. package/build/component/driver/oauth/interface/createOauthArgs.d.ts.map +1 -0
  146. package/build/component/driver/oauth/interface/createOauthArgs.js +5 -0
  147. package/build/component/driver/oauth/interface/createOauthArgs.js.map +1 -0
  148. package/build/component/driver/oauth/interface/createOauthOutputs.d.ts +7 -0
  149. package/build/component/driver/oauth/interface/createOauthOutputs.d.ts.map +1 -0
  150. package/build/component/driver/oauth/interface/createOauthOutputs.js +10 -0
  151. package/build/component/driver/oauth/interface/createOauthOutputs.js.map +1 -0
  152. package/build/component/driver/oauth/interface/updateOauthArgs.d.ts +9 -0
  153. package/build/component/driver/oauth/interface/updateOauthArgs.d.ts.map +1 -0
  154. package/build/component/driver/oauth/interface/updateOauthArgs.js +5 -0
  155. package/build/component/driver/oauth/interface/updateOauthArgs.js.map +1 -0
  156. package/build/component/driver/oauth/update.d.ts +13 -0
  157. package/build/component/driver/oauth/update.d.ts.map +1 -0
  158. package/build/component/driver/oauth/update.js +181 -0
  159. package/build/component/driver/oauth/update.js.map +1 -0
  160. package/build/component/driver/oauth/utility/constants.d.ts +13 -0
  161. package/build/component/driver/oauth/utility/constants.d.ts.map +1 -0
  162. package/build/component/driver/oauth/utility/constants.js +18 -0
  163. package/build/component/driver/oauth/utility/constants.js.map +1 -0
  164. package/build/component/driver/oauth/utility/utility.d.ts +12 -0
  165. package/build/component/driver/oauth/utility/utility.d.ts.map +1 -0
  166. package/build/component/driver/oauth/utility/utility.js +90 -0
  167. package/build/component/driver/oauth/utility/utility.js.map +1 -0
  168. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  169. package/build/component/driver/script/scriptDriver.js +8 -8
  170. package/build/component/driver/script/scriptDriver.js.map +1 -1
  171. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +11 -3
  172. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  173. package/build/component/driver/teamsApp/clients/appStudioClient.js +54 -2
  174. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  175. package/build/component/driver/teamsApp/constants.d.ts +4 -0
  176. package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
  177. package/build/component/driver/teamsApp/constants.js +4 -0
  178. package/build/component/driver/teamsApp/constants.js.map +1 -1
  179. package/build/component/driver/teamsApp/createAppPackage.d.ts +19 -1
  180. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  181. package/build/component/driver/teamsApp/createAppPackage.js +97 -26
  182. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  183. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts +20 -0
  184. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts.map +1 -1
  185. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -1
  186. package/build/component/driver/teamsApp/interfaces/OauthConfigurationId.d.ts +7 -0
  187. package/build/component/driver/teamsApp/interfaces/OauthConfigurationId.d.ts.map +1 -0
  188. package/build/component/driver/teamsApp/interfaces/OauthConfigurationId.js +5 -0
  189. package/build/component/driver/teamsApp/interfaces/OauthConfigurationId.js.map +1 -0
  190. package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts +44 -0
  191. package/build/component/driver/teamsApp/interfaces/OauthRegistration.d.ts.map +1 -0
  192. package/build/component/driver/teamsApp/interfaces/OauthRegistration.js +21 -0
  193. package/build/component/driver/teamsApp/interfaces/OauthRegistration.js.map +1 -0
  194. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -1
  195. package/build/component/driver/teamsApp/teamsappMgr.js +22 -8
  196. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -1
  197. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts +8 -0
  198. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.d.ts.map +1 -0
  199. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js +65 -0
  200. package/build/component/driver/teamsApp/utils/CopilotGptManifestUtils.js.map +1 -0
  201. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  202. package/build/component/driver/teamsApp/utils/ManifestUtils.js +3 -15
  203. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  204. package/build/component/driver/teamsApp/utils/telemetry.d.ts +2 -0
  205. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  206. package/build/component/driver/teamsApp/utils/telemetry.js +2 -0
  207. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  208. package/build/component/driver/teamsApp/utils/utils.d.ts +1 -0
  209. package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
  210. package/build/component/driver/teamsApp/utils/utils.js +5 -1
  211. package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
  212. package/build/component/driver/teamsApp/validateTestCases.d.ts +18 -0
  213. package/build/component/driver/teamsApp/validateTestCases.d.ts.map +1 -1
  214. package/build/component/driver/teamsApp/validateTestCases.js +132 -50
  215. package/build/component/driver/teamsApp/validateTestCases.js.map +1 -1
  216. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  217. package/build/component/generator/copilotPlugin/generator.js +16 -18
  218. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  219. package/build/component/generator/copilotPlugin/helper.d.ts +3 -2
  220. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  221. package/build/component/generator/copilotPlugin/helper.js +152 -51
  222. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  223. package/build/component/generator/generator.d.ts +4 -2
  224. package/build/component/generator/generator.d.ts.map +1 -1
  225. package/build/component/generator/generator.js +11 -7
  226. package/build/component/generator/generator.js.map +1 -1
  227. package/build/component/generator/generatorProvider.d.ts +3 -0
  228. package/build/component/generator/generatorProvider.d.ts.map +1 -0
  229. package/build/component/generator/generatorProvider.js +15 -0
  230. package/build/component/generator/generatorProvider.js.map +1 -0
  231. package/build/component/generator/officeAddin/generator.d.ts +16 -2
  232. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  233. package/build/component/generator/officeAddin/generator.js +96 -44
  234. package/build/component/generator/officeAddin/generator.js.map +1 -1
  235. package/build/component/generator/officeAddin/helperMethods.d.ts +0 -3
  236. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  237. package/build/component/generator/officeAddin/helperMethods.js +1 -67
  238. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  239. package/build/component/generator/officeXMLAddin/generator.d.ts +6 -2
  240. package/build/component/generator/officeXMLAddin/generator.d.ts.map +1 -1
  241. package/build/component/generator/officeXMLAddin/generator.js +39 -19
  242. package/build/component/generator/officeXMLAddin/generator.js.map +1 -1
  243. package/build/component/generator/officeXMLAddin/projectConfig.d.ts +21 -33
  244. package/build/component/generator/officeXMLAddin/projectConfig.d.ts.map +1 -1
  245. package/build/component/generator/officeXMLAddin/projectConfig.js +85 -86
  246. package/build/component/generator/officeXMLAddin/projectConfig.js.map +1 -1
  247. package/build/component/generator/templates/ssrTabGenerator.d.ts +12 -0
  248. package/build/component/generator/templates/ssrTabGenerator.d.ts.map +1 -0
  249. package/build/component/generator/templates/ssrTabGenerator.js +36 -0
  250. package/build/component/generator/templates/ssrTabGenerator.js.map +1 -0
  251. package/build/component/generator/templates/templateGenerator.d.ts +12 -0
  252. package/build/component/generator/templates/templateGenerator.d.ts.map +1 -0
  253. package/build/component/generator/templates/templateGenerator.js +99 -0
  254. package/build/component/generator/templates/templateGenerator.js.map +1 -0
  255. package/build/component/generator/templates/templateInfo.d.ts +10 -0
  256. package/build/component/generator/templates/templateInfo.d.ts.map +1 -0
  257. package/build/component/generator/templates/templateInfo.js +3 -0
  258. package/build/component/generator/templates/templateInfo.js.map +1 -0
  259. package/build/component/generator/templates/templateNames.d.ts +52 -0
  260. package/build/component/generator/templates/templateNames.d.ts.map +1 -0
  261. package/build/component/generator/templates/templateNames.js +303 -0
  262. package/build/component/generator/templates/templateNames.js.map +1 -0
  263. package/build/component/generator/templates/templateReplaceMap.d.ts +5 -0
  264. package/build/component/generator/templates/templateReplaceMap.d.ts.map +1 -0
  265. package/build/component/generator/templates/templateReplaceMap.js +39 -0
  266. package/build/component/generator/templates/templateReplaceMap.js.map +1 -0
  267. package/build/component/generator/utils.d.ts +1 -0
  268. package/build/component/generator/utils.d.ts.map +1 -1
  269. package/build/component/generator/utils.js +2 -1
  270. package/build/component/generator/utils.js.map +1 -1
  271. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
  272. package/build/component/middleware/actionExecutionMW.js +5 -4
  273. package/build/component/middleware/actionExecutionMW.js.map +1 -1
  274. package/build/component/middleware/questionMW.d.ts.map +1 -1
  275. package/build/component/middleware/questionMW.js +9 -1
  276. package/build/component/middleware/questionMW.js.map +1 -1
  277. package/build/component/utils/envUtil.d.ts +0 -1
  278. package/build/component/utils/envUtil.d.ts.map +1 -1
  279. package/build/component/utils/envUtil.js +1 -13
  280. package/build/component/utils/envUtil.js.map +1 -1
  281. package/build/component/utils/metadataGraphPermssion.d.ts +8 -6
  282. package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -1
  283. package/build/component/utils/metadataGraphPermssion.js +10 -2
  284. package/build/component/utils/metadataGraphPermssion.js.map +1 -1
  285. package/build/component/utils/metadataRscPermission.d.ts +16 -0
  286. package/build/component/utils/metadataRscPermission.d.ts.map +1 -0
  287. package/build/component/utils/metadataRscPermission.js +69 -0
  288. package/build/component/utils/metadataRscPermission.js.map +1 -0
  289. package/build/component/utils/metadataUtil.d.ts.map +1 -1
  290. package/build/component/utils/metadataUtil.js +2 -0
  291. package/build/component/utils/metadataUtil.js.map +1 -1
  292. package/build/component/utils.d.ts +2 -1
  293. package/build/component/utils.d.ts.map +1 -1
  294. package/build/component/utils.js +43 -1
  295. package/build/component/utils.js.map +1 -1
  296. package/build/core/FxCore.d.ts +6 -5
  297. package/build/core/FxCore.d.ts.map +1 -1
  298. package/build/core/FxCore.js +138 -26
  299. package/build/core/FxCore.js.map +1 -1
  300. package/build/error/common.js +1 -1
  301. package/build/error/common.js.map +1 -1
  302. package/build/error/script.d.ts +2 -2
  303. package/build/error/script.d.ts.map +1 -1
  304. package/build/error/script.js +6 -6
  305. package/build/error/script.js.map +1 -1
  306. package/build/index.d.ts +4 -0
  307. package/build/index.d.ts.map +1 -1
  308. package/build/index.js +7 -1
  309. package/build/index.js.map +1 -1
  310. package/build/question/constants.d.ts.map +1 -1
  311. package/build/question/constants.js +6 -1
  312. package/build/question/constants.js.map +1 -1
  313. package/build/question/create.d.ts +22 -8
  314. package/build/question/create.d.ts.map +1 -1
  315. package/build/question/create.js +386 -235
  316. package/build/question/create.js.map +1 -1
  317. package/build/question/index.d.ts +1 -0
  318. package/build/question/index.d.ts.map +1 -1
  319. package/build/question/index.js +3 -0
  320. package/build/question/index.js.map +1 -1
  321. package/build/question/inputs/CreateProjectInputs.d.ts +9 -7
  322. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  323. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  324. package/build/question/options/CreateProjectOptions.js +40 -12
  325. package/build/question/options/CreateProjectOptions.js.map +1 -1
  326. package/build/question/other.d.ts +1 -0
  327. package/build/question/other.d.ts.map +1 -1
  328. package/build/question/other.js +86 -1
  329. package/build/question/other.js.map +1 -1
  330. package/build/question/questionNames.d.ts +4 -1
  331. package/build/question/questionNames.d.ts.map +1 -1
  332. package/build/question/questionNames.js +4 -1
  333. package/build/question/questionNames.js.map +1 -1
  334. package/package.json +15 -11
  335. package/resource/package.nls.json +115 -56
  336. package/resource/yaml-schema/v1.5/yaml.schema.json +1784 -0
  337. package/resource/yaml-schema/yaml.schema.json +198 -2
  338. package/templates/fallback/common.zip +0 -0
  339. package/templates/fallback/csharp.zip +0 -0
  340. package/templates/fallback/js.zip +0 -0
  341. package/templates/fallback/python.zip +0 -0
  342. package/templates/fallback/ts.zip +0 -0
  343. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts +0 -26
  344. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts.map +0 -1
  345. package/build/component/generator/officeAddin/config/projectsJsonData.js +0 -165
  346. package/build/component/generator/officeAddin/config/projectsJsonData.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT license.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.createProjectCliHelpNode = exports.createSampleProjectQuestionNode = exports.createProjectQuestionNode = exports.capabilitySubTree = exports.CustomCopilotAssistantOptions = exports.CustomCopilotRagOptions = exports.apiOperationQuestion = exports.apiMessageExtensionAuthQuestion = exports.openAIPluginManifestLocationQuestion = exports.apiSpecLocationQuestion = exports.ApiMessageExtensionAuthOptions = exports.RuntimeOptions = exports.appNameQuestion = exports.AppNamePattern = exports.folderQuestion = exports.programmingLanguageQuestion = exports.ProgrammingLanguage = exports.getLanguageOptions = exports.OfficeAddinFrameworkQuestion = exports.getAddinHostOptions = exports.officeAddinHostingQuestion = exports.getTemplate = exports.SPFxImportFolderQuestion = exports.SPFxVersionOptionIds = exports.SPFxWebpartNameQuestion = exports.SPFxFrameworkQuestion = exports.SPFxPackageSelectQuestion = exports.NotificationTriggerOptions = exports.meArchitectureQuestion = exports.MeArchitectureOptions = exports.capabilityQuestion = exports.CapabilityOptions = exports.OfficeAddinCapabilityOptions = exports.ProjectTypeOptions = exports.ScratchOptions = void 0;
5
+ exports.createProjectCliHelpNode = exports.createSampleProjectQuestionNode = exports.createProjectQuestionNode = exports.capabilitySubTree = exports.CustomCopilotAssistantOptions = exports.CustomCopilotRagOptions = exports.apiOperationQuestion = exports.apiMessageExtensionAuthQuestion = exports.openAIPluginManifestLocationQuestion = exports.apiSpecLocationQuestion = exports.ApiMessageExtensionAuthOptions = exports.RuntimeOptions = exports.appNameQuestion = exports.AppNamePattern = exports.folderQuestion = exports.programmingLanguageQuestion = exports.ProgrammingLanguage = exports.getLanguageOptions = exports.getOfficeAddinFramework = exports.getAddinFrameworkOptions = exports.officeAddinFrameworkQuestion = exports.officeAddinHostingQuestion = exports.SPFxImportFolderQuestion = exports.SPFxVersionOptionIds = exports.SPFxWebpartNameQuestion = exports.SPFxFrameworkQuestion = exports.SPFxPackageSelectQuestion = exports.NotificationTriggerOptions = exports.meArchitectureQuestion = exports.MeArchitectureOptions = exports.capabilityQuestion = exports.CapabilityOptions = exports.OfficeAddinHostOptions = exports.projectTypeQuestion = exports.ProjectTypeOptions = exports.ScratchOptions = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
8
8
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
@@ -11,6 +11,7 @@ const lodash_1 = require("lodash");
11
11
  const os = tslib_1.__importStar(require("os"));
12
12
  const path = tslib_1.__importStar(require("path"));
13
13
  const constants_1 = require("../common/constants");
14
+ const correlator_1 = require("../common/correlator");
14
15
  const featureFlags_1 = require("../common/featureFlags");
15
16
  const localizeUtils_1 = require("../common/localizeUtils");
16
17
  const samples_1 = require("../common/samples");
@@ -18,18 +19,16 @@ const utils_1 = require("../common/utils");
18
19
  const developerPortalScaffoldUtils_1 = require("../component/developerPortalScaffoldUtils");
19
20
  const utils_2 = require("../component/driver/teamsApp/utils/utils");
20
21
  const helper_1 = require("../component/generator/copilotPlugin/helper");
21
- const projectsJsonData_1 = tslib_1.__importDefault(require("../component/generator/officeAddin/config/projectsJsonData"));
22
+ const projectConfig_1 = require("../component/generator/officeXMLAddin/projectConfig");
22
23
  const error_1 = require("../component/generator/spfx/error");
23
24
  const spfxGenerator_1 = require("../component/generator/spfx/spfxGenerator");
24
25
  const constants_2 = require("../component/generator/spfx/utils/constants");
25
26
  const utils_3 = require("../component/generator/spfx/utils/utils");
26
27
  const utils_4 = require("../component/utils");
27
28
  const error_2 = require("../error");
29
+ const constants_3 = require("./constants");
28
30
  const questionNames_1 = require("./questionNames");
29
31
  const util_1 = require("./util");
30
- const constants_3 = require("./constants");
31
- const correlator_1 = require("../common/correlator");
32
- const projectConfig_1 = require("../component/generator/officeXMLAddin/projectConfig");
33
32
  class ScratchOptions {
34
33
  static yes() {
35
34
  return {
@@ -56,6 +55,7 @@ class ProjectTypeOptions {
56
55
  id: "tab-type",
57
56
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(browser) " : ""}${localizeUtils_1.getLocalizedString("core.TabOption.label")}`,
58
57
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.tab.detail"),
58
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
59
59
  };
60
60
  }
61
61
  static bot(platform) {
@@ -63,6 +63,7 @@ class ProjectTypeOptions {
63
63
  id: "bot-type",
64
64
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(hubot) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.bot.label")}`,
65
65
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.bot.detail"),
66
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
66
67
  };
67
68
  }
68
69
  static me(platform) {
@@ -72,6 +73,7 @@ class ProjectTypeOptions {
72
73
  detail: featureFlags_1.isCopilotPluginEnabled()
73
74
  ? localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.messageExtension.copilotEnabled.detail")
74
75
  : localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.messageExtension.detail"),
76
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
75
77
  };
76
78
  }
77
79
  static outlookAddin(platform) {
@@ -79,13 +81,15 @@ class ProjectTypeOptions {
79
81
  id: "outlook-addin-type",
80
82
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(mail) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.label")}`,
81
83
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.detail"),
84
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
82
85
  };
83
86
  }
84
87
  static officeXMLAddin(platform) {
85
88
  return {
86
89
  id: "office-xml-addin-type",
87
- label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(inbox) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.mainEntry.title")}`,
90
+ label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(teamsfx-m365) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.mainEntry.title")}`,
88
91
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.mainEntry.detail"),
92
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
89
93
  };
90
94
  }
91
95
  static officeAddin(platform) {
@@ -93,13 +97,22 @@ class ProjectTypeOptions {
93
97
  id: "office-addin-type",
94
98
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(extensions) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.officeAddin.label")}`,
95
99
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.officeAddin.detail"),
100
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
96
101
  };
97
102
  }
103
+ static officeAddinAllIds(platform) {
104
+ return [
105
+ ProjectTypeOptions.officeAddin(platform).id,
106
+ ProjectTypeOptions.officeXMLAddin(platform).id,
107
+ ProjectTypeOptions.outlookAddin(platform).id,
108
+ ];
109
+ }
98
110
  static copilotPlugin(platform) {
99
111
  return {
100
112
  id: "copilot-plugin-type",
101
113
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(teamsfx-copilot-plugin) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotPlugin.label")}`,
102
114
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotPlugin.detail"),
115
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
103
116
  };
104
117
  }
105
118
  static customCopilot(platform) {
@@ -107,6 +120,23 @@ class ProjectTypeOptions {
107
120
  id: "custom-copilot-type",
108
121
  label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(teamsfx-custom-copilot) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.customCopilot.label")}`,
109
122
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.customCopilot.detail"),
123
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
124
+ };
125
+ }
126
+ static startWithGithubCopilot() {
127
+ return {
128
+ id: "start-with-github-copilot",
129
+ label: `$(comment-discussion) ${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotHelp.label")}`,
130
+ detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotHelp.detail"),
131
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotGroup.title"),
132
+ };
133
+ }
134
+ static customizeGpt() {
135
+ return {
136
+ id: "customize-gpt-type",
137
+ label: "Customize GPT",
138
+ detail: "Author a Copilot GPT",
139
+ groupName: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.createGroup.title"),
110
140
  };
111
141
  }
112
142
  }
@@ -116,10 +146,9 @@ function projectTypeQuestion() {
116
146
  ProjectTypeOptions.bot(teamsfx_api_1.Platform.CLI),
117
147
  ProjectTypeOptions.tab(teamsfx_api_1.Platform.CLI),
118
148
  ProjectTypeOptions.me(teamsfx_api_1.Platform.CLI),
119
- featureFlags_1.isOfficeXMLAddinEnabled()
120
- ? ProjectTypeOptions.officeXMLAddin(teamsfx_api_1.Platform.CLI)
121
- : ProjectTypeOptions.outlookAddin(teamsfx_api_1.Platform.CLI),
149
+ ProjectTypeOptions.officeXMLAddin(teamsfx_api_1.Platform.CLI),
122
150
  ProjectTypeOptions.officeAddin(teamsfx_api_1.Platform.CLI),
151
+ ProjectTypeOptions.outlookAddin(teamsfx_api_1.Platform.CLI),
123
152
  ];
124
153
  return {
125
154
  name: questionNames_1.QuestionNames.ProjectType,
@@ -129,6 +158,11 @@ function projectTypeQuestion() {
129
158
  dynamicOptions: (inputs) => {
130
159
  var _a;
131
160
  const staticOptions = [];
161
+ if (teamsfx_api_1.CLIPlatforms.includes(inputs.platform) &&
162
+ featureFlags_1.featureFlagManager.getBooleanValue(featureFlags_1.FeatureFlags.CustomizeGpt)) {
163
+ // Show in CLI only
164
+ staticOptions.push(ProjectTypeOptions.customizeGpt());
165
+ }
132
166
  if (featureFlags_1.isApiCopilotPluginEnabled()) {
133
167
  staticOptions.push(ProjectTypeOptions.copilotPlugin(inputs.platform));
134
168
  }
@@ -141,11 +175,23 @@ function projectTypeQuestion() {
141
175
  }
142
176
  }
143
177
  else {
144
- staticOptions.push(featureFlags_1.isOfficeXMLAddinEnabled() && !featureFlags_1.isOfficeJSONAddinEnabled()
145
- ? ProjectTypeOptions.officeXMLAddin(inputs.platform)
146
- : featureFlags_1.isOfficeJSONAddinEnabled()
147
- ? ProjectTypeOptions.officeAddin(inputs.platform)
148
- : ProjectTypeOptions.outlookAddin(inputs.platform));
178
+ if (inputs.agent === "office") {
179
+ //only for @office agent, officeXMLAddin are supported
180
+ staticOptions.push(ProjectTypeOptions.officeXMLAddin(inputs.platform));
181
+ }
182
+ else {
183
+ if (featureFlags_1.isOfficeJSONAddinEnabled()) {
184
+ staticOptions.push(ProjectTypeOptions.officeAddin(inputs.platform));
185
+ }
186
+ else {
187
+ staticOptions.push(ProjectTypeOptions.outlookAddin(inputs.platform));
188
+ }
189
+ }
190
+ }
191
+ if (inputs.platform === teamsfx_api_1.Platform.VSCode &&
192
+ featureFlags_1.isChatParticipantEnabled() &&
193
+ !inputs.teamsAppFromTdp) {
194
+ staticOptions.push(ProjectTypeOptions.startWithGithubCopilot());
149
195
  }
150
196
  return staticOptions;
151
197
  },
@@ -154,12 +200,30 @@ function projectTypeQuestion() {
154
200
  skipSingleOption: true,
155
201
  };
156
202
  }
157
- class OfficeAddinCapabilityOptions {
203
+ exports.projectTypeQuestion = projectTypeQuestion;
204
+ class OfficeAddinHostOptions {
205
+ static all(platform) {
206
+ return [
207
+ OfficeAddinHostOptions.outlook(platform),
208
+ OfficeAddinHostOptions.word(),
209
+ OfficeAddinHostOptions.excel(),
210
+ OfficeAddinHostOptions.powerpoint(),
211
+ ];
212
+ }
213
+ static outlook(platform) {
214
+ return {
215
+ id: "outlook",
216
+ label: `${platform === teamsfx_api_1.Platform.VSCode ? "$(mail) " : ""}${localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.label")}`,
217
+ detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.detail"),
218
+ data: "Outlook",
219
+ };
220
+ }
158
221
  static word() {
159
222
  return {
160
223
  id: "word",
161
224
  label: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.word.title"),
162
225
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.word.detail"),
226
+ data: "Word",
163
227
  };
164
228
  }
165
229
  static excel() {
@@ -167,6 +231,7 @@ class OfficeAddinCapabilityOptions {
167
231
  id: "excel",
168
232
  label: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.excel.title"),
169
233
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.excel.detail"),
234
+ data: "Excel",
170
235
  };
171
236
  }
172
237
  static powerpoint() {
@@ -174,10 +239,11 @@ class OfficeAddinCapabilityOptions {
174
239
  id: "powerpoint",
175
240
  label: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.powerpoint.title"),
176
241
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.powerpoint.detail"),
242
+ data: "PowerPoint",
177
243
  };
178
244
  }
179
245
  }
180
- exports.OfficeAddinCapabilityOptions = OfficeAddinCapabilityOptions;
246
+ exports.OfficeAddinHostOptions = OfficeAddinHostOptions;
181
247
  class CapabilityOptions {
182
248
  // bot
183
249
  static basicBot() {
@@ -399,8 +465,61 @@ class CapabilityOptions {
399
465
  CapabilityOptions.linkUnfurling(),
400
466
  ];
401
467
  }
402
- static officeAll() {
403
- return [...CapabilityOptions.officeAddinItems(), CapabilityOptions.officeAddinImport()];
468
+ static officeAddinStaticCapabilities(host) {
469
+ const items = [];
470
+ for (const h of Object.keys(projectConfig_1.OfficeAddinProjectConfig)) {
471
+ if (host && h !== host)
472
+ continue;
473
+ const hostValue = projectConfig_1.OfficeAddinProjectConfig[h];
474
+ for (const capability of Object.keys(hostValue)) {
475
+ const capabilityValue = hostValue[capability];
476
+ items.push({
477
+ id: capability,
478
+ label: localizeUtils_1.getLocalizedString(capabilityValue.title),
479
+ detail: localizeUtils_1.getLocalizedString(capabilityValue.detail),
480
+ });
481
+ }
482
+ }
483
+ return items;
484
+ }
485
+ static officeAddinDynamicCapabilities(projectType, host) {
486
+ const items = [];
487
+ const isOutlookAddin = projectType === ProjectTypeOptions.outlookAddin().id;
488
+ const isOfficeAddin = projectType === ProjectTypeOptions.officeAddin().id;
489
+ const isOfficeXMLAddinForOutlook = projectType === ProjectTypeOptions.officeXMLAddin().id &&
490
+ host === OfficeAddinHostOptions.outlook().id;
491
+ const pushToItems = (option) => {
492
+ const capabilityValue = projectConfig_1.OfficeAddinProjectConfig.json[option];
493
+ items.push({
494
+ id: option,
495
+ label: localizeUtils_1.getLocalizedString(capabilityValue.title),
496
+ detail: localizeUtils_1.getLocalizedString(capabilityValue.detail),
497
+ });
498
+ };
499
+ if (isOutlookAddin || isOfficeAddin || isOfficeXMLAddinForOutlook) {
500
+ pushToItems("json-taskpane");
501
+ if (isOutlookAddin || isOfficeXMLAddinForOutlook) {
502
+ items.push(CapabilityOptions.outlookAddinImport());
503
+ }
504
+ else if (isOfficeAddin) {
505
+ items.push(CapabilityOptions.officeContentAddin());
506
+ items.push(CapabilityOptions.officeAddinImport());
507
+ }
508
+ }
509
+ else {
510
+ if (host) {
511
+ const hostValue = projectConfig_1.OfficeAddinProjectConfig[host];
512
+ for (const capability of Object.keys(hostValue)) {
513
+ const capabilityValue = hostValue[capability];
514
+ items.push({
515
+ id: capability,
516
+ label: localizeUtils_1.getLocalizedString(capabilityValue.title),
517
+ detail: localizeUtils_1.getLocalizedString(capabilityValue.detail),
518
+ });
519
+ }
520
+ }
521
+ }
522
+ return items;
404
523
  }
405
524
  static copilotPlugins() {
406
525
  return [
@@ -412,7 +531,7 @@ class CapabilityOptions {
412
531
  static customCopilots() {
413
532
  return [
414
533
  CapabilityOptions.customCopilotBasic(),
415
- // CapabilityOptions.customCopilotRag(),
534
+ CapabilityOptions.customCopilotRag(),
416
535
  CapabilityOptions.customCopilotAssistant(),
417
536
  ];
418
537
  }
@@ -424,6 +543,9 @@ class CapabilityOptions {
424
543
  CapabilityOptions.nonSsoTabAndBot(),
425
544
  ];
426
545
  }
546
+ static customizeGptOptions() {
547
+ return [CapabilityOptions.customizeGptBasic(), CapabilityOptions.customizeGptWithPlugin()];
548
+ }
427
549
  /**
428
550
  * static capability list, which does not depend on any feature flags
429
551
  */
@@ -435,17 +557,9 @@ class CapabilityOptions {
435
557
  ...CapabilityOptions.copilotPlugins(),
436
558
  ...CapabilityOptions.customCopilots(),
437
559
  ...CapabilityOptions.tdpIntegrationCapabilities(),
560
+ ...CapabilityOptions.customizeGptOptions(),
438
561
  ];
439
- if (featureFlags_1.isOfficeXMLAddinEnabled()) {
440
- capabilityOptions.push(...[
441
- ...CapabilityOptions.officeXMLAddinHostOptionItems(OfficeAddinCapabilityOptions.word().id),
442
- ...CapabilityOptions.officeXMLAddinHostOptionItems(OfficeAddinCapabilityOptions.excel().id),
443
- ...CapabilityOptions.officeXMLAddinHostOptionItems(OfficeAddinCapabilityOptions.powerpoint().id),
444
- ]);
445
- }
446
- else {
447
- capabilityOptions.push(...CapabilityOptions.outlookAddinItems());
448
- }
562
+ capabilityOptions.push(...CapabilityOptions.officeAddinStaticCapabilities());
449
563
  return capabilityOptions;
450
564
  }
451
565
  /**
@@ -456,55 +570,67 @@ class CapabilityOptions {
456
570
  ...CapabilityOptions.bots(inputs),
457
571
  ...CapabilityOptions.tabs(),
458
572
  ...CapabilityOptions.collectMECaps(),
459
- ...CapabilityOptions.outlookAddinItems(),
460
573
  ];
461
574
  if (featureFlags_1.isApiCopilotPluginEnabled()) {
462
575
  capabilityOptions.push(...CapabilityOptions.copilotPlugins());
463
576
  }
577
+ if (featureFlags_1.featureFlagManager.getBooleanValue(featureFlags_1.FeatureFlags.CustomizeGpt)) {
578
+ capabilityOptions.push(...CapabilityOptions.customizeGptOptions());
579
+ }
464
580
  capabilityOptions.push(...CapabilityOptions.customCopilots());
465
581
  if (featureFlags_1.isTdpTemplateCliTestEnabled()) {
466
582
  // test templates that are used by TDP integration only
467
583
  capabilityOptions.push(...CapabilityOptions.tdpIntegrationCapabilities());
468
584
  }
585
+ capabilityOptions.push(...CapabilityOptions.officeAddinDynamicCapabilities(inputs === null || inputs === void 0 ? void 0 : inputs.projectType, inputs === null || inputs === void 0 ? void 0 : inputs.host));
469
586
  return capabilityOptions;
470
587
  }
471
588
  static outlookAddinImport() {
472
589
  return {
473
- id: "import",
590
+ id: "outlook-addin-import",
474
591
  label: localizeUtils_1.getLocalizedString("core.importAddin.label"),
475
592
  detail: localizeUtils_1.getLocalizedString("core.importAddin.detail"),
476
593
  };
477
594
  }
478
595
  static officeAddinImport() {
479
596
  return {
480
- id: "import",
597
+ id: "office-addin-import",
481
598
  label: localizeUtils_1.getLocalizedString("core.importOfficeAddin.label"),
482
599
  detail: localizeUtils_1.getLocalizedString("core.importAddin.detail"),
483
600
  description: localizeUtils_1.getLocalizedString("core.createProjectQuestion.option.description.previewOnWindow"),
484
601
  };
485
602
  }
486
- static officeXMLAddinHostOptionItems(host) {
487
- return projectConfig_1.getOfficeXMLAddinHostProjectOptions(host).map((x) => ({
488
- id: x.proj,
489
- label: localizeUtils_1.getLocalizedString(x.title),
490
- detail: localizeUtils_1.getLocalizedString(x.detail),
491
- }));
492
- }
493
- static outlookAddinItems() {
494
- return officeAddinJsonData.getProjectTemplateNames().map((template) => ({
495
- id: template,
496
- label: localizeUtils_1.getLocalizedString(officeAddinJsonData.getProjectDisplayName(template)),
497
- detail: localizeUtils_1.getLocalizedString(officeAddinJsonData.getProjectDetails(template)),
498
- description: localizeUtils_1.getLocalizedString("core.createProjectQuestion.option.description.previewOnWindow"),
499
- }));
500
- }
501
- static officeAddinItems() {
502
- return officeAddinJsonData.getProjectTemplateNames().map((template) => ({
503
- id: template,
504
- label: localizeUtils_1.getLocalizedString(officeAddinJsonData.getProjectDisplayName(template)),
505
- detail: localizeUtils_1.getLocalizedString(officeAddinJsonData.getProjectDetails(template)),
506
- }));
603
+ static officeContentAddin() {
604
+ return {
605
+ id: "office-content-addin",
606
+ label: localizeUtils_1.getLocalizedString("core.officeContentAddin.label"),
607
+ detail: localizeUtils_1.getLocalizedString("core.officeContentAddin.detail"),
608
+ };
507
609
  }
610
+ // static officeXMLAddinHostOptionItems(host: string): OptionItem[] {
611
+ // return getOfficeXMLAddinHostProjectOptions(host).map((x) => ({
612
+ // id: x.proj,
613
+ // label: getLocalizedString(x.title),
614
+ // detail: getLocalizedString(x.detail),
615
+ // }));
616
+ // }
617
+ // static jsonAddinTaskpane(): OptionItem {
618
+ // return {
619
+ // id: "json-taskpane",
620
+ // label: getLocalizedString("core.newTaskpaneAddin.label"),
621
+ // detail: getLocalizedString("core.newTaskpaneAddin.detail"),
622
+ // description: getLocalizedString(
623
+ // "core.createProjectQuestion.option.description.previewOnWindow"
624
+ // ),
625
+ // };
626
+ // }
627
+ // static officeAddinItems(): OptionItem[] {
628
+ // return officeAddinJsonData.getProjectTemplateNames().map((template) => ({
629
+ // id: template,
630
+ // label: getLocalizedString(officeAddinJsonData.getProjectDisplayName(template)),
631
+ // detail: getLocalizedString(officeAddinJsonData.getProjectDetails(template)),
632
+ // }));
633
+ // }
508
634
  static nonSsoTabAndBot() {
509
635
  return {
510
636
  id: "TabNonSsoAndBot",
@@ -576,25 +702,27 @@ class CapabilityOptions {
576
702
  detail: localizeUtils_1.getLocalizedString("core.createProjectQuestion.capability.customCopilotAssistantOption.detail"),
577
703
  };
578
704
  }
705
+ // customize GPT
706
+ static customizeGptBasic() {
707
+ return {
708
+ id: "basic-declarative-copilot",
709
+ label: "Basic Declarative Copilot",
710
+ detail: "A declarative Copilot skeleton you can author without any plugin",
711
+ };
712
+ }
713
+ static customizeGptWithPlugin() {
714
+ return {
715
+ id: "declarative-copilot-with-plugin-from-scratch",
716
+ label: "Declarative Copilot with a plugin using Azure Functions",
717
+ detail: "A declarative Copilot containing a Copilot plugin with a new API from Azure Functions",
718
+ };
719
+ }
579
720
  }
580
721
  exports.CapabilityOptions = CapabilityOptions;
581
722
  function capabilityQuestion() {
582
723
  return {
583
724
  name: questionNames_1.QuestionNames.Capabilities,
584
725
  title: (inputs) => {
585
- // Office Add-in Capability
586
- if (featureFlags_1.isOfficeXMLAddinEnabled()) {
587
- switch (inputs[questionNames_1.QuestionNames.OfficeAddinCapability]) {
588
- case ProjectTypeOptions.outlookAddin().id:
589
- return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.title");
590
- case OfficeAddinCapabilityOptions.word().id:
591
- return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.word.create.title");
592
- case OfficeAddinCapabilityOptions.excel().id:
593
- return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.excel.create.title");
594
- case OfficeAddinCapabilityOptions.powerpoint().id:
595
- return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.powerpoint.create.title");
596
- }
597
- }
598
726
  const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
599
727
  switch (projectType) {
600
728
  case ProjectTypeOptions.bot().id:
@@ -604,13 +732,26 @@ function capabilityQuestion() {
604
732
  case ProjectTypeOptions.me().id:
605
733
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.messageExtension.title");
606
734
  case ProjectTypeOptions.outlookAddin().id:
607
- return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.title");
608
735
  case ProjectTypeOptions.officeAddin().id:
736
+ case ProjectTypeOptions.officeXMLAddin().id: {
737
+ switch (inputs[questionNames_1.QuestionNames.OfficeAddinHost]) {
738
+ case OfficeAddinHostOptions.outlook().id:
739
+ return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.outlookAddin.title");
740
+ case OfficeAddinHostOptions.word().id:
741
+ return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.word.create.title");
742
+ case OfficeAddinHostOptions.excel().id:
743
+ return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.excel.create.title");
744
+ case OfficeAddinHostOptions.powerpoint().id:
745
+ return localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.powerpoint.create.title");
746
+ }
609
747
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.officeAddin.title");
748
+ }
610
749
  case ProjectTypeOptions.copilotPlugin().id:
611
750
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.copilotPlugin.title");
612
751
  case ProjectTypeOptions.customCopilot().id:
613
752
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.customCopilot.title");
753
+ case ProjectTypeOptions.customizeGpt().id:
754
+ return "Choose Declarative Copilot type";
614
755
  default:
615
756
  return localizeUtils_1.getLocalizedString("core.createCapabilityQuestion.titleNew");
616
757
  }
@@ -640,7 +781,6 @@ function capabilityQuestion() {
640
781
  }
641
782
  // nodejs capabilities
642
783
  const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
643
- const officeHost = inputs[questionNames_1.QuestionNames.OfficeAddinCapability];
644
784
  if (projectType === ProjectTypeOptions.bot().id) {
645
785
  return CapabilityOptions.bots(inputs);
646
786
  }
@@ -650,18 +790,8 @@ function capabilityQuestion() {
650
790
  else if (projectType === ProjectTypeOptions.me().id) {
651
791
  return CapabilityOptions.mes();
652
792
  }
653
- else if ((!featureFlags_1.isOfficeXMLAddinEnabled() && projectType === ProjectTypeOptions.outlookAddin().id) ||
654
- (featureFlags_1.isOfficeXMLAddinEnabled() &&
655
- projectType === ProjectTypeOptions.officeXMLAddin().id &&
656
- officeHost === ProjectTypeOptions.outlookAddin().id)) {
657
- return [...CapabilityOptions.outlookAddinItems(), CapabilityOptions.outlookAddinImport()];
658
- }
659
- else if (featureFlags_1.isOfficeXMLAddinEnabled() &&
660
- projectType === ProjectTypeOptions.officeXMLAddin().id) {
661
- return CapabilityOptions.officeXMLAddinHostOptionItems(officeHost);
662
- }
663
- else if (projectType === ProjectTypeOptions.officeAddin().id) {
664
- return CapabilityOptions.officeAll();
793
+ else if (ProjectTypeOptions.officeAddinAllIds().includes(projectType)) {
794
+ return CapabilityOptions.officeAddinDynamicCapabilities(projectType, inputs[questionNames_1.QuestionNames.OfficeAddinHost]);
665
795
  }
666
796
  else if (projectType === ProjectTypeOptions.copilotPlugin().id) {
667
797
  return CapabilityOptions.copilotPlugins();
@@ -669,6 +799,9 @@ function capabilityQuestion() {
669
799
  else if (projectType === ProjectTypeOptions.customCopilot().id) {
670
800
  return CapabilityOptions.customCopilots();
671
801
  }
802
+ else if (projectType === ProjectTypeOptions.customizeGpt().id) {
803
+ return CapabilityOptions.customizeGptOptions();
804
+ }
672
805
  else {
673
806
  return CapabilityOptions.all(inputs);
674
807
  }
@@ -1042,124 +1175,129 @@ function SPFxImportFolderQuestion(hasDefaultFunc = false) {
1042
1175
  };
1043
1176
  }
1044
1177
  exports.SPFxImportFolderQuestion = SPFxImportFolderQuestion;
1045
- const getTemplate = (inputs) => {
1046
- const capabilities = inputs[questionNames_1.QuestionNames.Capabilities];
1047
- const templates = officeAddinJsonData.getProjectTemplateNames();
1048
- const foundTemplate = templates.find((template) => {
1049
- return capabilities && capabilities.includes(template);
1050
- });
1051
- return foundTemplate !== null && foundTemplate !== void 0 ? foundTemplate : "";
1052
- };
1053
- exports.getTemplate = getTemplate;
1054
1178
  function officeAddinHostingQuestion() {
1055
- const OfficeHostQuestion = {
1056
- type: "singleSelect",
1179
+ return {
1057
1180
  name: questionNames_1.QuestionNames.OfficeAddinHost,
1058
- title: "Add-in Host",
1059
- staticOptions: [],
1060
- dynamicOptions: getAddinHostOptions,
1061
- default: (inputs) => {
1062
- const template = exports.getTemplate(inputs);
1063
- const options = officeAddinJsonData.getHostTemplateNames(template);
1064
- return options[0] || "No Options";
1065
- },
1066
- skipSingleOption: true,
1181
+ title: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.create.title"),
1182
+ type: "singleSelect",
1183
+ staticOptions: OfficeAddinHostOptions.all(),
1067
1184
  };
1068
- return OfficeHostQuestion;
1069
1185
  }
1070
1186
  exports.officeAddinHostingQuestion = officeAddinHostingQuestion;
1071
- function getAddinHostOptions(inputs) {
1072
- // office addin supports host defined in officeAddinJsonData
1073
- const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
1074
- const template = exports.getTemplate(inputs);
1075
- const hostTypes = officeAddinJsonData.getHostTemplateNames(template);
1076
- const options = [];
1077
- hostTypes.forEach((host) => {
1078
- options.push({ label: officeAddinJsonData.getHostDisplayName(host), id: host });
1079
- });
1080
- // Outlook addin only supports outlook
1081
- if (projectType === ProjectTypeOptions.outlookAddin().id) {
1082
- return [options[0] || { label: "No Options", id: "No Options" }];
1083
- }
1084
- else if (projectType === ProjectTypeOptions.officeAddin().id) {
1085
- return options;
1086
- }
1087
- return options || "No Options";
1088
- }
1089
- exports.getAddinHostOptions = getAddinHostOptions;
1090
- function OfficeAddinFrameworkQuestion() {
1187
+ function officeAddinFrameworkQuestion() {
1091
1188
  return {
1092
1189
  type: "singleSelect",
1093
1190
  name: questionNames_1.QuestionNames.OfficeAddinFramework,
1094
1191
  cliShortName: "f",
1095
1192
  cliDescription: "Framework for WXP extension.",
1096
1193
  title: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.officeAddin.framework.title"),
1194
+ dynamicOptions: getAddinFrameworkOptions,
1097
1195
  staticOptions: [
1098
1196
  { id: "default", label: "Default" },
1099
1197
  { id: "react", label: "React" },
1100
1198
  ],
1101
1199
  placeholder: localizeUtils_1.getLocalizedString("core.createProjectQuestion.projectType.officeAddin.framework.placeholder"),
1102
- default: "default",
1200
+ skipSingleOption: true,
1103
1201
  };
1104
1202
  }
1105
- exports.OfficeAddinFrameworkQuestion = OfficeAddinFrameworkQuestion;
1106
- const officeAddinJsonData = new projectsJsonData_1.default();
1203
+ exports.officeAddinFrameworkQuestion = officeAddinFrameworkQuestion;
1204
+ function getAddinFrameworkOptions(inputs) {
1205
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
1206
+ const capabilities = inputs[questionNames_1.QuestionNames.Capabilities];
1207
+ const host = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
1208
+ if (projectType === ProjectTypeOptions.outlookAddin().id ||
1209
+ (projectType === ProjectTypeOptions.officeXMLAddin().id &&
1210
+ host === OfficeAddinHostOptions.outlook().id)) {
1211
+ return [{ id: "default", label: "Default" }];
1212
+ }
1213
+ else if ((projectType === ProjectTypeOptions.officeAddin().id &&
1214
+ capabilities === CapabilityOptions.officeContentAddin().id) ||
1215
+ capabilities === CapabilityOptions.officeAddinImport().id) {
1216
+ return [{ id: "default", label: "Default" }];
1217
+ }
1218
+ else {
1219
+ return [
1220
+ { id: "default", label: "Default" },
1221
+ { id: "react", label: "React" },
1222
+ ];
1223
+ }
1224
+ }
1225
+ exports.getAddinFrameworkOptions = getAddinFrameworkOptions;
1226
+ /**
1227
+ * when project-type=office-addin-type(office-addin-framework-type=default or react), use selected value;
1228
+ * when project-type=outlook-addin-type, no framework to select, office-addin-framework-type=default_old
1229
+ * when project-type=office-xml-addin-type, no framework to select, office-addin-framework-type=default_old
1230
+ */
1231
+ function getOfficeAddinFramework(inputs) {
1232
+ const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
1233
+ if (projectType === ProjectTypeOptions.officeAddin().id &&
1234
+ inputs[questionNames_1.QuestionNames.OfficeAddinFramework]) {
1235
+ return inputs[questionNames_1.QuestionNames.OfficeAddinFramework];
1236
+ }
1237
+ else if ((projectType === ProjectTypeOptions.officeXMLAddin().id &&
1238
+ inputs[questionNames_1.QuestionNames.OfficeAddinHost] === OfficeAddinHostOptions.outlook().id) ||
1239
+ projectType === ProjectTypeOptions.outlookAddin().id) {
1240
+ return "default_old";
1241
+ }
1242
+ else {
1243
+ return "default";
1244
+ }
1245
+ }
1246
+ exports.getOfficeAddinFramework = getOfficeAddinFramework;
1107
1247
  function getLanguageOptions(inputs) {
1108
1248
  const runtime = getRuntime(inputs);
1109
1249
  // dotnet runtime only supports C#
1110
1250
  if (runtime === RuntimeOptions.DotNet().id) {
1111
- return [{ id: "csharp", label: "C#" }];
1251
+ return [{ id: ProgrammingLanguage.CSharp, label: "C#" }];
1112
1252
  }
1253
+ const capabilities = inputs[questionNames_1.QuestionNames.Capabilities];
1254
+ const host = inputs[questionNames_1.QuestionNames.OfficeAddinHost];
1113
1255
  // office addin supports language defined in officeAddinJsonData
1114
1256
  const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
1115
- const officeHost = inputs[questionNames_1.QuestionNames.OfficeAddinCapability];
1116
- if ((!featureFlags_1.isOfficeXMLAddinEnabled() && projectType === ProjectTypeOptions.outlookAddin().id) ||
1117
- (featureFlags_1.isOfficeXMLAddinEnabled() &&
1118
- projectType === ProjectTypeOptions.officeXMLAddin().id &&
1119
- officeHost === ProjectTypeOptions.outlookAddin().id)) {
1120
- const template = exports.getTemplate(inputs);
1121
- const supportedTypes = officeAddinJsonData.getSupportedScriptTypes(template);
1122
- const options = supportedTypes.map((language) => ({ label: language, id: language }));
1123
- return options.length > 0 ? options : [{ label: "No Options", id: "No Options" }];
1124
- }
1125
- if (featureFlags_1.isOfficeXMLAddinEnabled() && projectType === ProjectTypeOptions.officeXMLAddin().id) {
1126
- const officeProject = inputs[questionNames_1.QuestionNames.Capabilities];
1127
- return officeProject !== "manifest"
1128
- ? projectConfig_1.getOfficeXMLAddinHostProjectLangOptions(officeHost, officeProject)
1129
- : [{ id: "javascript", label: "JavaScript" }];
1130
- }
1131
- if (projectType === ProjectTypeOptions.officeAddin().id) {
1132
- const template = exports.getTemplate(inputs);
1133
- const supportedTypes = officeAddinJsonData.getSupportedScriptTypesNew(template);
1134
- const options = [];
1135
- supportedTypes.forEach((language) => {
1136
- if (language === "TypeScript") {
1137
- options.push({ label: "TypeScript", id: "typescript" });
1138
- }
1139
- else if (language === "JavaScript") {
1140
- options.push({ label: "JavaScript", id: "javascript" });
1141
- }
1142
- });
1143
- return options.length > 0 ? options : [{ label: "No Options", id: "No Options" }];
1257
+ if (ProjectTypeOptions.officeAddinAllIds().includes(projectType)) {
1258
+ if (capabilities.endsWith("-manifest")) {
1259
+ return [{ id: ProgrammingLanguage.JS, label: "JavaScript" }];
1260
+ }
1261
+ if (projectType === ProjectTypeOptions.outlookAddin().id ||
1262
+ (projectType === ProjectTypeOptions.officeXMLAddin().id &&
1263
+ host === OfficeAddinHostOptions.outlook().id)) {
1264
+ return [{ id: ProgrammingLanguage.TS, label: "TypeScript" }];
1265
+ }
1266
+ const officeXMLAddinLangConfig = projectConfig_1.getOfficeAddinTemplateConfig(projectType, host)[capabilities]
1267
+ .framework["default"];
1268
+ const officeXMLAddinLangOptions = [];
1269
+ if (!!officeXMLAddinLangConfig.typescript)
1270
+ officeXMLAddinLangOptions.push({ id: ProgrammingLanguage.TS, label: "TypeScript" });
1271
+ if (!!officeXMLAddinLangConfig.javascript)
1272
+ officeXMLAddinLangOptions.push({ id: ProgrammingLanguage.JS, label: "JavaScript" });
1273
+ return officeXMLAddinLangOptions;
1144
1274
  }
1145
- const capabilities = inputs[questionNames_1.QuestionNames.Capabilities];
1146
1275
  if (capabilities === CapabilityOptions.SPFxTab().id) {
1147
1276
  // SPFx only supports typescript
1148
- return [{ id: "typescript", label: "TypeScript" }];
1277
+ return [{ id: ProgrammingLanguage.TS, label: "TypeScript" }];
1149
1278
  }
1150
- else if (constants_3.capabilitiesHavePythonOption.includes(capabilities)) {
1279
+ else if (constants_3.capabilitiesHavePythonOption.includes(inputs[capabilities] ? inputs[capabilities] : capabilities) &&
1280
+ !(capabilities == CapabilityOptions.customCopilotRag().id &&
1281
+ (inputs[CapabilityOptions.customCopilotRag().id] ==
1282
+ CustomCopilotRagOptions.microsoft365().id ||
1283
+ inputs[CapabilityOptions.customCopilotRag().id] == CustomCopilotRagOptions.customApi().id))) {
1151
1284
  // support python language
1152
1285
  return [
1153
- { id: "javascript", label: "JavaScript" },
1154
- { id: "typescript", label: "TypeScript" },
1155
- { id: "python", label: "Python" },
1286
+ { id: ProgrammingLanguage.JS, label: "JavaScript" },
1287
+ { id: ProgrammingLanguage.TS, label: "TypeScript" },
1288
+ {
1289
+ id: ProgrammingLanguage.PY,
1290
+ label: "Python",
1291
+ detail: "",
1292
+ description: localizeUtils_1.getLocalizedString("core.createProjectQuestion.option.description.preview"),
1293
+ },
1156
1294
  ];
1157
1295
  }
1158
1296
  else {
1159
1297
  // other cases
1160
1298
  return [
1161
- { id: "javascript", label: "JavaScript" },
1162
- { id: "typescript", label: "TypeScript" },
1299
+ { id: ProgrammingLanguage.JS, label: "JavaScript" },
1300
+ { id: ProgrammingLanguage.TS, label: "TypeScript" },
1163
1301
  ];
1164
1302
  }
1165
1303
  }
@@ -1193,14 +1331,14 @@ function programmingLanguageQuestion() {
1193
1331
  if (runtime === RuntimeOptions.DotNet().id) {
1194
1332
  return "";
1195
1333
  }
1196
- // office addin
1197
- const projectType = inputs[questionNames_1.QuestionNames.ProjectType];
1198
- if (projectType === ProjectTypeOptions.outlookAddin().id) {
1199
- const template = exports.getTemplate(inputs);
1200
- const options = officeAddinJsonData.getSupportedScriptTypesNew(template);
1201
- return options[0] || "No Options";
1202
- }
1203
1334
  const capabilities = inputs[questionNames_1.QuestionNames.Capabilities];
1335
+ // // office addin
1336
+ // const projectType = inputs[QuestionNames.ProjectType];
1337
+ // if (projectType === ProjectTypeOptions.outlookAddin().id) {
1338
+ // const template = getTemplate(inputs);
1339
+ // const options = officeAddinJsonData.getSupportedScriptTypesNew(template);
1340
+ // return options[0] || "No Options";
1341
+ // }
1204
1342
  // SPFx
1205
1343
  if (capabilities === CapabilityOptions.SPFxTab().id) {
1206
1344
  return localizeUtils_1.getLocalizedString("core.ProgrammingLanguageQuestion.placeholder.spfx");
@@ -1495,8 +1633,18 @@ class ApiMessageExtensionAuthOptions {
1495
1633
  label: "API Key",
1496
1634
  };
1497
1635
  }
1636
+ static microsoftEntra() {
1637
+ return {
1638
+ id: "microsoft-entra",
1639
+ label: "Microsoft Entra",
1640
+ };
1641
+ }
1498
1642
  static all() {
1499
- return [ApiMessageExtensionAuthOptions.none(), ApiMessageExtensionAuthOptions.apiKey()];
1643
+ return [
1644
+ ApiMessageExtensionAuthOptions.none(),
1645
+ ApiMessageExtensionAuthOptions.apiKey(),
1646
+ ApiMessageExtensionAuthOptions.microsoftEntra(),
1647
+ ];
1500
1648
  }
1501
1649
  }
1502
1650
  exports.ApiMessageExtensionAuthOptions = ApiMessageExtensionAuthOptions;
@@ -1664,6 +1812,7 @@ function apiMessageExtensionAuthQuestion() {
1664
1812
  placeholder: localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiMessageExtensionAuth.placeholder"),
1665
1813
  cliDescription: "The authentication type for the API.",
1666
1814
  staticOptions: ApiMessageExtensionAuthOptions.all(),
1815
+ dynamicOptions: () => ApiMessageExtensionAuthOptions.all(),
1667
1816
  default: ApiMessageExtensionAuthOptions.none().id,
1668
1817
  };
1669
1818
  }
@@ -1692,11 +1841,8 @@ function apiOperationQuestion(includeExistingAPIs = true) {
1692
1841
  else if (isPlugin) {
1693
1842
  placeholder = ""; // TODO: add placeholder for api plugin
1694
1843
  }
1695
- else if (featureFlags_1.isApiKeyEnabled()) {
1696
- placeholder = localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.operation.apikey.placeholder");
1697
- }
1698
1844
  else {
1699
- placeholder = localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.operation.placeholder");
1845
+ placeholder = localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.operation.apikey.placeholder");
1700
1846
  }
1701
1847
  return placeholder;
1702
1848
  },
@@ -1704,10 +1850,15 @@ function apiOperationQuestion(includeExistingAPIs = true) {
1704
1850
  staticOptions: [],
1705
1851
  validation: {
1706
1852
  validFunc: (input, inputs) => {
1707
- if (input.length < 1 || input.length > 10) {
1853
+ if (!inputs) {
1854
+ throw new Error("inputs is undefined"); // should never happen
1855
+ }
1856
+ if (input.length < 1 ||
1857
+ (input.length > 10 &&
1858
+ inputs[questionNames_1.QuestionNames.CustomCopilotRag] != CustomCopilotRagOptions.customApi().id)) {
1708
1859
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.operation.invalidMessage", input.length, 10);
1709
1860
  }
1710
- const operations = inputs === null || inputs === void 0 ? void 0 : inputs.supportedApisFromApiSpec;
1861
+ const operations = inputs.supportedApisFromApiSpec;
1711
1862
  const authNames = new Set();
1712
1863
  const serverUrls = new Set();
1713
1864
  for (const inputItem of input) {
@@ -1725,6 +1876,10 @@ function apiOperationQuestion(includeExistingAPIs = true) {
1725
1876
  if (serverUrls.size > 1) {
1726
1877
  return localizeUtils_1.getLocalizedString("core.createProjectQuestion.apiSpec.operation.multipleServer", Array.from(serverUrls).join(", "));
1727
1878
  }
1879
+ const authApi = operations.find((api) => !!api.data.authName && input.includes(api.id));
1880
+ if (authApi) {
1881
+ inputs.apiAuthData = authApi.data;
1882
+ }
1728
1883
  },
1729
1884
  },
1730
1885
  dynamicOptions: (inputs) => {
@@ -1885,6 +2040,14 @@ function azureOpenAIEndpointQuestion() {
1885
2040
  placeholder: localizeUtils_1.getLocalizedString("core.createProjectQuestion.llmService.azureOpenAIEndpoint.placeholder"),
1886
2041
  };
1887
2042
  }
2043
+ function azureOpenAIDeploymentNameQuestion() {
2044
+ return {
2045
+ type: "text",
2046
+ name: questionNames_1.QuestionNames.AzureOpenAIDeploymentName,
2047
+ title: localizeUtils_1.getLocalizedString("core.createProjectQuestion.llmService.azureOpenAIDeploymentName.title"),
2048
+ placeholder: localizeUtils_1.getLocalizedString("core.createProjectQuestion.llmService.azureOpenAIDeploymentName.placeholder"),
2049
+ };
2050
+ }
1888
2051
  function capabilitySubTree() {
1889
2052
  const node = {
1890
2053
  data: capabilityQuestion(),
@@ -1915,8 +2078,13 @@ function capabilitySubTree() {
1915
2078
  ],
1916
2079
  },
1917
2080
  {
1918
- // office addin import sub-tree
1919
- condition: { equals: CapabilityOptions.outlookAddinImport().id },
2081
+ // office addin import sub-tree (capabilities=office-addin-import | outlook-addin-import)
2082
+ condition: {
2083
+ enum: [
2084
+ CapabilityOptions.outlookAddinImport().id,
2085
+ CapabilityOptions.officeAddinImport().id,
2086
+ ],
2087
+ },
1920
2088
  data: { type: "group", name: questionNames_1.QuestionNames.OfficeAddinImport },
1921
2089
  children: [
1922
2090
  {
@@ -1935,15 +2103,6 @@ function capabilitySubTree() {
1935
2103
  },
1936
2104
  ],
1937
2105
  },
1938
- {
1939
- // office addin other items sub-tree
1940
- condition: (inputs) => featureFlags_1.isOfficeXMLAddinEnabled()
1941
- ? false
1942
- : CapabilityOptions.outlookAddinItems()
1943
- .map((i) => i.id)
1944
- .includes(inputs[questionNames_1.QuestionNames.Capabilities]),
1945
- data: officeAddinHostingQuestion(),
1946
- },
1947
2106
  {
1948
2107
  // Search ME sub-tree
1949
2108
  condition: { equals: CapabilityOptions.m365SearchMe().id },
@@ -1960,11 +2119,6 @@ function capabilitySubTree() {
1960
2119
  data: { type: "group", name: questionNames_1.QuestionNames.CopilotPluginExistingApi },
1961
2120
  children: [
1962
2121
  {
1963
- condition: (inputs) => {
1964
- return (inputs[questionNames_1.QuestionNames.Capabilities] ===
1965
- CapabilityOptions.copilotPluginApiSpec().id ||
1966
- inputs[questionNames_1.QuestionNames.MeArchitectureType] === MeArchitectureOptions.apiSpec().id);
1967
- },
1968
2122
  data: apiSpecLocationQuestion(),
1969
2123
  },
1970
2124
  // {
@@ -1978,38 +2132,30 @@ function capabilitySubTree() {
1978
2132
  },
1979
2133
  {
1980
2134
  condition: (inputs) => {
1981
- return (featureFlags_1.isApiKeyEnabled() &&
1982
- (inputs[questionNames_1.QuestionNames.MeArchitectureType] == MeArchitectureOptions.newApi().id ||
1983
- inputs[questionNames_1.QuestionNames.Capabilities] == CapabilityOptions.copilotPluginNewApi().id));
2135
+ return inputs[questionNames_1.QuestionNames.MeArchitectureType] == MeArchitectureOptions.newApi().id;
1984
2136
  },
1985
2137
  data: apiMessageExtensionAuthQuestion(),
1986
2138
  },
1987
- /*
1988
2139
  {
1989
- condition: (inputs: Inputs) => {
1990
- return inputs[QuestionNames.Capabilities] == CapabilityOptions.customCopilotRag().id;
1991
- },
1992
- data: customCopilotRagQuestion(),
1993
- children: [
1994
- {
1995
- condition: (inputs: Inputs) => {
1996
- return (
1997
- inputs[QuestionNames.CustomCopilotRag] === CustomCopilotRagOptions.customApi().id
1998
- );
1999
- },
2000
- data: apiSpecLocationQuestion(),
2001
- },
2002
- {
2003
- condition: (inputs: Inputs) => {
2004
- return (
2005
- inputs[QuestionNames.CustomCopilotRag] === CustomCopilotRagOptions.customApi().id
2006
- );
2007
- },
2008
- data: apiOperationQuestion(),
2140
+ condition: (inputs) => {
2141
+ return inputs[questionNames_1.QuestionNames.Capabilities] == CapabilityOptions.customCopilotRag().id;
2009
2142
  },
2010
- ],
2143
+ data: customCopilotRagQuestion(),
2144
+ children: [
2145
+ {
2146
+ condition: (inputs) => {
2147
+ return (inputs[questionNames_1.QuestionNames.CustomCopilotRag] === CustomCopilotRagOptions.customApi().id);
2148
+ },
2149
+ data: apiSpecLocationQuestion(),
2150
+ },
2151
+ {
2152
+ condition: (inputs) => {
2153
+ return (inputs[questionNames_1.QuestionNames.CustomCopilotRag] === CustomCopilotRagOptions.customApi().id);
2154
+ },
2155
+ data: apiOperationQuestion(),
2156
+ },
2157
+ ],
2011
2158
  },
2012
- */
2013
2159
  {
2014
2160
  condition: (inputs) => {
2015
2161
  return (inputs[questionNames_1.QuestionNames.Capabilities] == CapabilityOptions.customCopilotAssistant().id);
@@ -2024,7 +2170,10 @@ function capabilitySubTree() {
2024
2170
  inputs[questionNames_1.QuestionNames.Capabilities] !== CapabilityOptions.copilotPluginApiSpec().id &&
2025
2171
  inputs[questionNames_1.QuestionNames.Capabilities] !==
2026
2172
  CapabilityOptions.copilotPluginOpenAIPlugin().id &&
2027
- inputs[questionNames_1.QuestionNames.MeArchitectureType] !== MeArchitectureOptions.apiSpec().id);
2173
+ inputs[questionNames_1.QuestionNames.Capabilities] !== CapabilityOptions.customizeGptBasic().id &&
2174
+ inputs[questionNames_1.QuestionNames.MeArchitectureType] !== MeArchitectureOptions.apiSpec().id &&
2175
+ inputs[questionNames_1.QuestionNames.Capabilities] !== CapabilityOptions.officeAddinImport().id &&
2176
+ inputs[questionNames_1.QuestionNames.Capabilities] !== CapabilityOptions.outlookAddinImport().id);
2028
2177
  },
2029
2178
  },
2030
2179
  {
@@ -2045,6 +2194,15 @@ function capabilitySubTree() {
2045
2194
  return ((_a = inputs[questionNames_1.QuestionNames.AzureOpenAIKey]) === null || _a === void 0 ? void 0 : _a.length) > 0;
2046
2195
  },
2047
2196
  data: azureOpenAIEndpointQuestion(),
2197
+ children: [
2198
+ {
2199
+ condition: (inputs) => {
2200
+ var _a;
2201
+ return ((_a = inputs[questionNames_1.QuestionNames.AzureOpenAIEndpoint]) === null || _a === void 0 ? void 0 : _a.length) > 0;
2202
+ },
2203
+ data: azureOpenAIDeploymentNameQuestion(),
2204
+ },
2205
+ ],
2048
2206
  },
2049
2207
  ],
2050
2208
  },
@@ -2055,11 +2213,12 @@ function capabilitySubTree() {
2055
2213
  ],
2056
2214
  },
2057
2215
  {
2058
- // WXP addin framework
2216
+ // Office addin framework for json manifest
2217
+ data: officeAddinFrameworkQuestion(),
2059
2218
  condition: (inputs) => {
2060
- return inputs[questionNames_1.QuestionNames.ProjectType] === ProjectTypeOptions.officeAddin().id;
2219
+ return (inputs[questionNames_1.QuestionNames.ProjectType] === ProjectTypeOptions.officeAddin().id &&
2220
+ inputs[questionNames_1.QuestionNames.Capabilities] !== CapabilityOptions.officeAddinImport().id);
2061
2221
  },
2062
- data: OfficeAddinFrameworkQuestion(),
2063
2222
  },
2064
2223
  {
2065
2224
  // root folder
@@ -2070,6 +2229,9 @@ function capabilitySubTree() {
2070
2229
  data: appNameQuestion(),
2071
2230
  },
2072
2231
  ],
2232
+ condition: (inputs) => {
2233
+ return inputs[questionNames_1.QuestionNames.ProjectType] !== ProjectTypeOptions.startWithGithubCopilot().id;
2234
+ },
2073
2235
  };
2074
2236
  return node;
2075
2237
  }
@@ -2088,19 +2250,8 @@ function createProjectQuestionNode() {
2088
2250
  cliOptionDisabled: "self",
2089
2251
  },
2090
2252
  {
2091
- condition: (inputs) => featureFlags_1.isOfficeXMLAddinEnabled() &&
2092
- inputs[questionNames_1.QuestionNames.ProjectType] === ProjectTypeOptions.officeXMLAddin().id,
2093
- data: {
2094
- name: questionNames_1.QuestionNames.OfficeAddinCapability,
2095
- title: localizeUtils_1.getLocalizedString("core.createProjectQuestion.officeXMLAddin.create.title"),
2096
- type: "singleSelect",
2097
- staticOptions: [
2098
- ProjectTypeOptions.outlookAddin(),
2099
- OfficeAddinCapabilityOptions.word(),
2100
- OfficeAddinCapabilityOptions.excel(),
2101
- OfficeAddinCapabilityOptions.powerpoint(),
2102
- ],
2103
- },
2253
+ condition: (inputs) => inputs[questionNames_1.QuestionNames.ProjectType] === ProjectTypeOptions.officeXMLAddin().id,
2254
+ data: officeAddinHostingQuestion(),
2104
2255
  },
2105
2256
  capabilitySubTree(),
2106
2257
  {