@microsoft/teamsfx-core 2.0.5 → 2.0.6-alpha.07708d12e.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 (597) hide show
  1. package/build/common/constants.d.ts +3 -0
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +3 -0
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/deps-checker/checkerFactory.d.ts +1 -2
  6. package/build/common/deps-checker/checkerFactory.d.ts.map +1 -1
  7. package/build/common/deps-checker/checkerFactory.js +2 -2
  8. package/build/common/deps-checker/checkerFactory.js.map +1 -1
  9. package/build/common/deps-checker/constant/message.d.ts +2 -0
  10. package/build/common/deps-checker/constant/message.d.ts.map +1 -1
  11. package/build/common/deps-checker/constant/message.js +2 -0
  12. package/build/common/deps-checker/constant/message.js.map +1 -1
  13. package/build/common/deps-checker/constant/telemetry.d.ts +12 -1
  14. package/build/common/deps-checker/constant/telemetry.d.ts.map +1 -1
  15. package/build/common/deps-checker/constant/telemetry.js +11 -0
  16. package/build/common/deps-checker/constant/telemetry.js.map +1 -1
  17. package/build/common/deps-checker/depsChecker.d.ts +7 -1
  18. package/build/common/deps-checker/depsChecker.d.ts.map +1 -1
  19. package/build/common/deps-checker/depsChecker.js +1 -0
  20. package/build/common/deps-checker/depsChecker.js.map +1 -1
  21. package/build/common/deps-checker/depsLogger.d.ts +14 -14
  22. package/build/common/deps-checker/depsLogger.d.ts.map +1 -1
  23. package/build/common/deps-checker/depsLogger.js +7 -21
  24. package/build/common/deps-checker/depsLogger.js.map +1 -1
  25. package/build/common/deps-checker/internal/dotnetChecker.d.ts.map +1 -1
  26. package/build/common/deps-checker/internal/dotnetChecker.js +40 -35
  27. package/build/common/deps-checker/internal/dotnetChecker.js.map +1 -1
  28. package/build/common/deps-checker/internal/nodeChecker.js +3 -3
  29. package/build/common/deps-checker/internal/nodeChecker.js.map +1 -1
  30. package/build/common/deps-checker/internal/testToolChecker.d.ts +45 -0
  31. package/build/common/deps-checker/internal/testToolChecker.d.ts.map +1 -0
  32. package/build/common/deps-checker/internal/testToolChecker.js +359 -0
  33. package/build/common/deps-checker/internal/testToolChecker.js.map +1 -0
  34. package/build/common/deps-checker/util/cpUtils.d.ts +1 -1
  35. package/build/common/deps-checker/util/cpUtils.d.ts.map +1 -1
  36. package/build/common/deps-checker/util/cpUtils.js +4 -4
  37. package/build/common/deps-checker/util/cpUtils.js.map +1 -1
  38. package/build/common/deps-checker/util/fileHelper.d.ts +1 -0
  39. package/build/common/deps-checker/util/fileHelper.d.ts.map +1 -1
  40. package/build/common/deps-checker/util/fileHelper.js +9 -1
  41. package/build/common/deps-checker/util/fileHelper.js.map +1 -1
  42. package/build/common/deps-checker/util/progressIndicator.js +2 -2
  43. package/build/common/deps-checker/util/progressIndicator.js.map +1 -1
  44. package/build/common/featureFlags.d.ts +3 -0
  45. package/build/common/featureFlags.d.ts.map +1 -1
  46. package/build/common/featureFlags.js +15 -2
  47. package/build/common/featureFlags.js.map +1 -1
  48. package/build/common/jsonUtils.d.ts.map +1 -1
  49. package/build/common/jsonUtils.js +1 -5
  50. package/build/common/jsonUtils.js.map +1 -1
  51. package/build/common/local/constants.d.ts +10 -0
  52. package/build/common/local/constants.d.ts.map +1 -1
  53. package/build/common/local/constants.js +12 -2
  54. package/build/common/local/constants.js.map +1 -1
  55. package/build/common/local/localCertificateManager.d.ts.map +1 -1
  56. package/build/common/local/localCertificateManager.js +3 -0
  57. package/build/common/local/localCertificateManager.js.map +1 -1
  58. package/build/common/local/localEnvManager.d.ts +1 -0
  59. package/build/common/local/localEnvManager.d.ts.map +1 -1
  60. package/build/common/local/localEnvManager.js +21 -0
  61. package/build/common/local/localEnvManager.js.map +1 -1
  62. package/build/common/local/packageJsonHelper.d.ts.map +1 -1
  63. package/build/common/local/packageJsonHelper.js +1 -0
  64. package/build/common/local/packageJsonHelper.js.map +1 -1
  65. package/build/common/local/portChecker.js.map +1 -1
  66. package/build/common/m365/launchHelper.d.ts +1 -1
  67. package/build/common/m365/launchHelper.d.ts.map +1 -1
  68. package/build/common/m365/launchHelper.js +20 -2
  69. package/build/common/m365/launchHelper.js.map +1 -1
  70. package/build/common/m365/packageService.d.ts +4 -0
  71. package/build/common/m365/packageService.d.ts.map +1 -1
  72. package/build/common/m365/packageService.js +135 -19
  73. package/build/common/m365/packageService.js.map +1 -1
  74. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  75. package/build/common/projectSettingsHelper.js +1 -0
  76. package/build/common/projectSettingsHelper.js.map +1 -1
  77. package/build/common/samples.d.ts +9 -2
  78. package/build/common/samples.d.ts.map +1 -1
  79. package/build/common/samples.js +67 -22
  80. package/build/common/samples.js.map +1 -1
  81. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +5 -3
  82. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
  83. package/build/common/spec-parser/adaptiveCardGenerator.js +108 -51
  84. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
  85. package/build/common/spec-parser/adaptiveCardWrapper.d.ts +15 -0
  86. package/build/common/spec-parser/adaptiveCardWrapper.d.ts.map +1 -0
  87. package/build/common/spec-parser/adaptiveCardWrapper.js +98 -0
  88. package/build/common/spec-parser/adaptiveCardWrapper.js.map +1 -0
  89. package/build/common/spec-parser/constants.d.ts +22 -10
  90. package/build/common/spec-parser/constants.d.ts.map +1 -1
  91. package/build/common/spec-parser/constants.js +71 -10
  92. package/build/common/spec-parser/constants.js.map +1 -1
  93. package/build/common/spec-parser/index.d.ts +5 -0
  94. package/build/common/spec-parser/index.d.ts.map +1 -0
  95. package/build/common/spec-parser/index.js +16 -0
  96. package/build/common/spec-parser/index.js.map +1 -0
  97. package/build/common/spec-parser/interfaces.d.ts +44 -25
  98. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  99. package/build/common/spec-parser/interfaces.js +13 -2
  100. package/build/common/spec-parser/interfaces.js.map +1 -1
  101. package/build/common/spec-parser/manifestUpdater.d.ts +4 -3
  102. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
  103. package/build/common/spec-parser/manifestUpdater.js +42 -46
  104. package/build/common/spec-parser/manifestUpdater.js.map +1 -1
  105. package/build/common/spec-parser/specFilter.d.ts +1 -1
  106. package/build/common/spec-parser/specFilter.d.ts.map +1 -1
  107. package/build/common/spec-parser/specFilter.js +28 -35
  108. package/build/common/spec-parser/specFilter.js.map +1 -1
  109. package/build/common/spec-parser/specParser.d.ts +8 -2
  110. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  111. package/build/common/spec-parser/specParser.js +162 -114
  112. package/build/common/spec-parser/specParser.js.map +1 -1
  113. package/build/common/spec-parser/utils.d.ts +26 -1
  114. package/build/common/spec-parser/utils.d.ts.map +1 -1
  115. package/build/common/spec-parser/utils.js +357 -39
  116. package/build/common/spec-parser/utils.js.map +1 -1
  117. package/build/common/telemetry.d.ts +11 -4
  118. package/build/common/telemetry.d.ts.map +1 -1
  119. package/build/common/telemetry.js +47 -8
  120. package/build/common/telemetry.js.map +1 -1
  121. package/build/common/templates-config.json +2 -2
  122. package/build/common/tools.d.ts +1 -0
  123. package/build/common/tools.d.ts.map +1 -1
  124. package/build/common/tools.js +11 -1
  125. package/build/common/tools.js.map +1 -1
  126. package/build/common/versionMetadata.d.ts +1 -0
  127. package/build/common/versionMetadata.d.ts.map +1 -1
  128. package/build/common/versionMetadata.js +1 -0
  129. package/build/common/versionMetadata.js.map +1 -1
  130. package/build/component/configManager/interface.d.ts +0 -1
  131. package/build/component/configManager/interface.d.ts.map +1 -1
  132. package/build/component/configManager/lifecycle.d.ts +2 -3
  133. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  134. package/build/component/configManager/lifecycle.js +40 -56
  135. package/build/component/configManager/lifecycle.js.map +1 -1
  136. package/build/component/configManager/parser.js.map +1 -1
  137. package/build/component/configManager/validator.d.ts.map +1 -1
  138. package/build/component/configManager/validator.js +4 -3
  139. package/build/component/configManager/validator.js.map +1 -1
  140. package/build/component/constants.d.ts +6 -0
  141. package/build/component/constants.d.ts.map +1 -1
  142. package/build/component/constants.js +7 -1
  143. package/build/component/constants.js.map +1 -1
  144. package/build/component/coordinator/index.d.ts +8 -6
  145. package/build/component/coordinator/index.d.ts.map +1 -1
  146. package/build/component/coordinator/index.js +74 -65
  147. package/build/component/coordinator/index.js.map +1 -1
  148. package/build/component/coordinator/summary.d.ts.map +1 -1
  149. package/build/component/coordinator/summary.js +2 -1
  150. package/build/component/coordinator/summary.js.map +1 -1
  151. package/build/component/developerPortalScaffoldUtils.js +3 -3
  152. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  153. package/build/component/driver/aad/create.d.ts +1 -2
  154. package/build/component/driver/aad/create.d.ts.map +1 -1
  155. package/build/component/driver/aad/create.js +9 -12
  156. package/build/component/driver/aad/create.js.map +1 -1
  157. package/build/component/driver/aad/error/aadAppNameTooLongError.d.ts +5 -0
  158. package/build/component/driver/aad/error/aadAppNameTooLongError.d.ts.map +1 -0
  159. package/build/component/driver/aad/error/aadAppNameTooLongError.js +21 -0
  160. package/build/component/driver/aad/error/aadAppNameTooLongError.js.map +1 -0
  161. package/build/component/driver/aad/update.d.ts +1 -2
  162. package/build/component/driver/aad/update.d.ts.map +1 -1
  163. package/build/component/driver/aad/update.js +5 -12
  164. package/build/component/driver/aad/update.js.map +1 -1
  165. package/build/component/driver/aad/utility/aadAppClient.d.ts +11 -3
  166. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  167. package/build/component/driver/aad/utility/aadAppClient.js +49 -8
  168. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  169. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  170. package/build/component/driver/add/addWebPart.js +11 -0
  171. package/build/component/driver/add/addWebPart.js.map +1 -1
  172. package/build/component/driver/add/interface/AddWebPartArgs.d.ts +4 -0
  173. package/build/component/driver/add/interface/AddWebPartArgs.d.ts.map +1 -1
  174. package/build/component/driver/arm/deploy.d.ts +1 -3
  175. package/build/component/driver/arm/deploy.d.ts.map +1 -1
  176. package/build/component/driver/arm/deploy.js +1 -14
  177. package/build/component/driver/arm/deploy.js.map +1 -1
  178. package/build/component/driver/arm/deployImpl.d.ts.map +1 -1
  179. package/build/component/driver/arm/deployImpl.js +12 -0
  180. package/build/component/driver/arm/deployImpl.js.map +1 -1
  181. package/build/component/driver/arm/util/bicepChecker.js +7 -6
  182. package/build/component/driver/arm/util/bicepChecker.js.map +1 -1
  183. package/build/component/driver/arm/util/handleError.js.map +1 -1
  184. package/build/component/driver/botAadApp/create.d.ts +2 -1
  185. package/build/component/driver/botAadApp/create.d.ts.map +1 -1
  186. package/build/component/driver/botAadApp/create.js +10 -9
  187. package/build/component/driver/botAadApp/create.js.map +1 -1
  188. package/build/component/driver/botFramework/createOrUpdateBot.d.ts +1 -0
  189. package/build/component/driver/botFramework/createOrUpdateBot.d.ts.map +1 -1
  190. package/build/component/driver/botFramework/createOrUpdateBot.js +4 -10
  191. package/build/component/driver/botFramework/createOrUpdateBot.js.map +1 -1
  192. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts +0 -2
  193. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts.map +1 -1
  194. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js +0 -10
  195. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js.map +1 -1
  196. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts +0 -2
  197. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts.map +1 -1
  198. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js +0 -10
  199. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js.map +1 -1
  200. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts +0 -2
  201. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts.map +1 -1
  202. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js +17 -19
  203. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js.map +1 -1
  204. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.d.ts.map +1 -1
  205. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js +10 -3
  206. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js.map +1 -1
  207. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  208. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +29 -16
  209. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  210. package/build/component/driver/deploy/azure/impl/azureDeployImpl.d.ts.map +1 -1
  211. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +27 -16
  212. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
  213. package/build/component/driver/deploy/azure/impl/baseDeployImpl.d.ts.map +1 -1
  214. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js +4 -4
  215. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js.map +1 -1
  216. package/build/component/driver/deploy/spfx/deployDriver.d.ts +1 -0
  217. package/build/component/driver/deploy/spfx/deployDriver.d.ts.map +1 -1
  218. package/build/component/driver/deploy/spfx/deployDriver.js +24 -2
  219. package/build/component/driver/deploy/spfx/deployDriver.js.map +1 -1
  220. package/build/component/driver/devTool/constant.d.ts +2 -0
  221. package/build/component/driver/devTool/constant.d.ts.map +1 -1
  222. package/build/component/driver/devTool/constant.js +4 -0
  223. package/build/component/driver/devTool/constant.js.map +1 -1
  224. package/build/component/driver/devTool/error/testToolInstallationUserError.d.ts +5 -0
  225. package/build/component/driver/devTool/error/testToolInstallationUserError.d.ts.map +1 -0
  226. package/build/component/driver/devTool/error/testToolInstallationUserError.js +24 -0
  227. package/build/component/driver/devTool/error/testToolInstallationUserError.js.map +1 -0
  228. package/build/component/driver/devTool/installDriver.d.ts +2 -0
  229. package/build/component/driver/devTool/installDriver.d.ts.map +1 -1
  230. package/build/component/driver/devTool/installDriver.js +85 -14
  231. package/build/component/driver/devTool/installDriver.js.map +1 -1
  232. package/build/component/driver/devTool/interfaces/InstallToolArgs.d.ts +8 -0
  233. package/build/component/driver/devTool/interfaces/InstallToolArgs.d.ts.map +1 -1
  234. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts +1 -0
  235. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts.map +1 -1
  236. package/build/component/driver/file/createOrUpdateEnvironmentFile.js +10 -16
  237. package/build/component/driver/file/createOrUpdateEnvironmentFile.js.map +1 -1
  238. package/build/component/driver/file/createOrUpdateJsonFile.d.ts +1 -0
  239. package/build/component/driver/file/createOrUpdateJsonFile.d.ts.map +1 -1
  240. package/build/component/driver/file/createOrUpdateJsonFile.js +3 -9
  241. package/build/component/driver/file/createOrUpdateJsonFile.js.map +1 -1
  242. package/build/component/driver/interface/stepDriver.d.ts +2 -7
  243. package/build/component/driver/interface/stepDriver.d.ts.map +1 -1
  244. package/build/component/driver/m365/acquire.d.ts +1 -0
  245. package/build/component/driver/m365/acquire.d.ts.map +1 -1
  246. package/build/component/driver/m365/acquire.js +4 -10
  247. package/build/component/driver/m365/acquire.js.map +1 -1
  248. package/build/component/driver/script/baseBuildDriver.d.ts.map +1 -1
  249. package/build/component/driver/script/baseBuildDriver.js +1 -0
  250. package/build/component/driver/script/baseBuildDriver.js.map +1 -1
  251. package/build/component/driver/script/baseBuildStepDriver.d.ts +0 -2
  252. package/build/component/driver/script/baseBuildStepDriver.d.ts.map +1 -1
  253. package/build/component/driver/script/baseBuildStepDriver.js +0 -4
  254. package/build/component/driver/script/baseBuildStepDriver.js.map +1 -1
  255. package/build/component/driver/script/dotnetBuildDriver.d.ts +0 -2
  256. package/build/component/driver/script/dotnetBuildDriver.d.ts.map +1 -1
  257. package/build/component/driver/script/dotnetBuildDriver.js +0 -9
  258. package/build/component/driver/script/dotnetBuildDriver.js.map +1 -1
  259. package/build/component/driver/script/npmBuildDriver.d.ts +0 -2
  260. package/build/component/driver/script/npmBuildDriver.d.ts.map +1 -1
  261. package/build/component/driver/script/npmBuildDriver.js +0 -9
  262. package/build/component/driver/script/npmBuildDriver.js.map +1 -1
  263. package/build/component/driver/script/npxBuildDriver.d.ts +0 -2
  264. package/build/component/driver/script/npxBuildDriver.d.ts.map +1 -1
  265. package/build/component/driver/script/npxBuildDriver.js +0 -9
  266. package/build/component/driver/script/npxBuildDriver.js.map +1 -1
  267. package/build/component/driver/script/scriptDriver.d.ts +10 -1
  268. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  269. package/build/component/driver/script/scriptDriver.js +30 -29
  270. package/build/component/driver/script/scriptDriver.js.map +1 -1
  271. package/build/component/driver/teamsApp/appStudio.d.ts.map +1 -1
  272. package/build/component/driver/teamsApp/appStudio.js +11 -8
  273. package/build/component/driver/teamsApp/appStudio.js.map +1 -1
  274. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +11 -5
  275. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  276. package/build/component/driver/teamsApp/clients/appStudioClient.js +62 -21
  277. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  278. package/build/component/driver/teamsApp/clients/authSvcClient.d.ts.map +1 -1
  279. package/build/component/driver/teamsApp/clients/authSvcClient.js +2 -0
  280. package/build/component/driver/teamsApp/clients/authSvcClient.js.map +1 -1
  281. package/build/component/driver/teamsApp/configure.d.ts +1 -1
  282. package/build/component/driver/teamsApp/configure.d.ts.map +1 -1
  283. package/build/component/driver/teamsApp/configure.js +3 -11
  284. package/build/component/driver/teamsApp/configure.js.map +1 -1
  285. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts +1 -2
  286. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts.map +1 -1
  287. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js +4 -11
  288. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js.map +1 -1
  289. package/build/component/driver/teamsApp/create.d.ts +1 -1
  290. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  291. package/build/component/driver/teamsApp/create.js +6 -11
  292. package/build/component/driver/teamsApp/create.js.map +1 -1
  293. package/build/component/driver/teamsApp/createAppPackage.d.ts +4 -3
  294. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  295. package/build/component/driver/teamsApp/createAppPackage.js +53 -45
  296. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  297. package/build/component/driver/teamsApp/errors.d.ts +4 -4
  298. package/build/component/driver/teamsApp/errors.d.ts.map +1 -1
  299. package/build/component/driver/teamsApp/errors.js +9 -7
  300. package/build/component/driver/teamsApp/errors.js.map +1 -1
  301. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts +2 -0
  302. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts.map +1 -1
  303. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts +1 -0
  304. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts.map +1 -1
  305. package/build/component/driver/teamsApp/publishAppPackage.d.ts +2 -1
  306. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  307. package/build/component/driver/teamsApp/publishAppPackage.js +13 -21
  308. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  309. package/build/component/driver/teamsApp/teamsappMgr.d.ts +20 -0
  310. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -0
  311. package/build/component/driver/teamsApp/teamsappMgr.js +278 -0
  312. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -0
  313. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +2 -1
  314. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  315. package/build/component/driver/teamsApp/utils/ManifestUtils.js +22 -4
  316. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  317. package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
  318. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  319. package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
  320. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  321. package/build/component/driver/teamsApp/utils/utils.d.ts +2 -2
  322. package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
  323. package/build/component/driver/teamsApp/utils/utils.js +22 -10
  324. package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
  325. package/build/component/driver/teamsApp/validate.d.ts +1 -1
  326. package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
  327. package/build/component/driver/teamsApp/validate.js +18 -13
  328. package/build/component/driver/teamsApp/validate.js.map +1 -1
  329. package/build/component/driver/teamsApp/validateAppPackage.d.ts +1 -1
  330. package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
  331. package/build/component/driver/teamsApp/validateAppPackage.js +6 -11
  332. package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
  333. package/build/component/error/componentError.d.ts.map +1 -1
  334. package/build/component/error/componentError.js +6 -3
  335. package/build/component/error/componentError.js.map +1 -1
  336. package/build/component/feature/collaboration.d.ts +2 -2
  337. package/build/component/feature/collaboration.d.ts.map +1 -1
  338. package/build/component/feature/collaboration.js +35 -16
  339. package/build/component/feature/collaboration.js.map +1 -1
  340. package/build/component/generator/copilotPlugin/generator.d.ts +3 -1
  341. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  342. package/build/component/generator/copilotPlugin/generator.js +77 -28
  343. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  344. package/build/component/generator/copilotPlugin/helper.d.ts +9 -4
  345. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  346. package/build/component/generator/copilotPlugin/helper.js +149 -52
  347. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  348. package/build/component/generator/error.d.ts +6 -0
  349. package/build/component/generator/error.d.ts.map +1 -1
  350. package/build/component/generator/error.js +13 -1
  351. package/build/component/generator/error.js.map +1 -1
  352. package/build/component/generator/generator.d.ts.map +1 -1
  353. package/build/component/generator/generator.js +32 -19
  354. package/build/component/generator/generator.js.map +1 -1
  355. package/build/component/generator/generatorAction.d.ts +3 -2
  356. package/build/component/generator/generatorAction.d.ts.map +1 -1
  357. package/build/component/generator/generatorAction.js +15 -7
  358. package/build/component/generator/generatorAction.js.map +1 -1
  359. package/build/component/generator/officeAddin/generator.js +4 -4
  360. package/build/component/generator/officeAddin/generator.js.map +1 -1
  361. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  362. package/build/component/generator/officeAddin/helperMethods.js +26 -19
  363. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  364. package/build/component/generator/spfx/depsChecker/generatorChecker.d.ts.map +1 -1
  365. package/build/component/generator/spfx/depsChecker/generatorChecker.js +4 -2
  366. package/build/component/generator/spfx/depsChecker/generatorChecker.js.map +1 -1
  367. package/build/component/generator/spfx/depsChecker/yoChecker.d.ts.map +1 -1
  368. package/build/component/generator/spfx/depsChecker/yoChecker.js +3 -3
  369. package/build/component/generator/spfx/depsChecker/yoChecker.js.map +1 -1
  370. package/build/component/generator/spfx/spfxGenerator.d.ts.map +1 -1
  371. package/build/component/generator/spfx/spfxGenerator.js +4 -3
  372. package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
  373. package/build/component/generator/spfx/utils/constants.d.ts +0 -1
  374. package/build/component/generator/spfx/utils/constants.d.ts.map +1 -1
  375. package/build/component/generator/spfx/utils/constants.js +0 -1
  376. package/build/component/generator/spfx/utils/constants.js.map +1 -1
  377. package/build/component/generator/spfx/utils/utils.js +3 -3
  378. package/build/component/generator/spfx/utils/utils.js.map +1 -1
  379. package/build/component/generator/utils.d.ts +2 -2
  380. package/build/component/generator/utils.d.ts.map +1 -1
  381. package/build/component/generator/utils.js +17 -16
  382. package/build/component/generator/utils.js.map +1 -1
  383. package/build/component/messages.d.ts +2 -3
  384. package/build/component/messages.d.ts.map +1 -1
  385. package/build/component/messages.js +3 -4
  386. package/build/component/messages.js.map +1 -1
  387. package/build/component/middleware/actionExecutionMW.d.ts +2 -2
  388. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
  389. package/build/component/middleware/envMW.js +3 -3
  390. package/build/component/middleware/envMW.js.map +1 -1
  391. package/build/component/provisionUtils.d.ts +3 -3
  392. package/build/component/provisionUtils.d.ts.map +1 -1
  393. package/build/component/provisionUtils.js +3 -3
  394. package/build/component/provisionUtils.js.map +1 -1
  395. package/build/component/resource/botService/appStudio/appStudioClient.d.ts.map +1 -1
  396. package/build/component/resource/botService/appStudio/appStudioClient.js +49 -16
  397. package/build/component/resource/botService/appStudio/appStudioClient.js.map +1 -1
  398. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts +2 -2
  399. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts.map +1 -1
  400. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js +6 -1
  401. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js.map +1 -1
  402. package/build/component/telemetry.js +2 -2
  403. package/build/component/telemetry.js.map +1 -1
  404. package/build/component/utils/ResourceGroupHelper.d.ts +2 -2
  405. package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
  406. package/build/component/utils/ResourceGroupHelper.js +11 -9
  407. package/build/component/utils/ResourceGroupHelper.js.map +1 -1
  408. package/build/component/utils/charsetUtils.js +3 -3
  409. package/build/component/utils/charsetUtils.js.map +1 -1
  410. package/build/component/utils/common.d.ts.map +1 -1
  411. package/build/component/utils/common.js +10 -3
  412. package/build/component/utils/common.js.map +1 -1
  413. package/build/component/utils/depsChecker/cpUtils.d.ts.map +1 -1
  414. package/build/component/utils/depsChecker/cpUtils.js +8 -4
  415. package/build/component/utils/depsChecker/cpUtils.js.map +1 -1
  416. package/build/component/utils/envUtil.d.ts +1 -0
  417. package/build/component/utils/envUtil.d.ts.map +1 -1
  418. package/build/component/utils/envUtil.js +14 -5
  419. package/build/component/utils/envUtil.js.map +1 -1
  420. package/build/component/utils/pathUtils.d.ts.map +1 -1
  421. package/build/component/utils/pathUtils.js +9 -4
  422. package/build/component/utils/pathUtils.js.map +1 -1
  423. package/build/component/utils/teamsFxTelemetryReporter.js +2 -2
  424. package/build/component/utils/teamsFxTelemetryReporter.js.map +1 -1
  425. package/build/core/FxCore.d.ts +53 -34
  426. package/build/core/FxCore.d.ts.map +1 -1
  427. package/build/core/FxCore.js +913 -67
  428. package/build/core/FxCore.js.map +1 -1
  429. package/build/core/collaborator.js +3 -3
  430. package/build/core/collaborator.js.map +1 -1
  431. package/build/core/environment.d.ts +2 -9
  432. package/build/core/environment.d.ts.map +1 -1
  433. package/build/core/environment.js +17 -13
  434. package/build/core/environment.js.map +1 -1
  435. package/build/core/environmentName.d.ts +18 -0
  436. package/build/core/environmentName.d.ts.map +1 -0
  437. package/build/core/environmentName.js +35 -0
  438. package/build/core/environmentName.js.map +1 -0
  439. package/build/core/globalVars.d.ts +16 -0
  440. package/build/core/globalVars.d.ts.map +1 -1
  441. package/build/core/globalVars.js +34 -1
  442. package/build/core/globalVars.js.map +1 -1
  443. package/build/core/middleware/concurrentLocker.d.ts.map +1 -1
  444. package/build/core/middleware/concurrentLocker.js +7 -3
  445. package/build/core/middleware/concurrentLocker.js.map +1 -1
  446. package/build/core/middleware/projectMigratorV3.d.ts.map +1 -1
  447. package/build/core/middleware/projectMigratorV3.js +1 -1
  448. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  449. package/build/core/middleware/projectVersionChecker.js +5 -5
  450. package/build/core/middleware/projectVersionChecker.js.map +1 -1
  451. package/build/core/middleware/utils/appYmlGenerator.d.ts.map +1 -1
  452. package/build/core/middleware/utils/appYmlGenerator.js +2 -1
  453. package/build/core/middleware/utils/appYmlGenerator.js.map +1 -1
  454. package/build/core/middleware/utils/debug/taskMigrator.d.ts.map +1 -1
  455. package/build/core/middleware/utils/debug/taskMigrator.js +3 -0
  456. package/build/core/middleware/utils/debug/taskMigrator.js.map +1 -1
  457. package/build/core/middleware/utils/v3MigrationUtils.js +1 -1
  458. package/build/core/middleware/utils/v3MigrationUtils.js.map +1 -1
  459. package/build/core/telemetry.d.ts +1 -0
  460. package/build/core/telemetry.d.ts.map +1 -1
  461. package/build/core/telemetry.js +3 -3
  462. package/build/core/telemetry.js.map +1 -1
  463. package/build/error/arm.d.ts.map +1 -1
  464. package/build/error/arm.js +10 -0
  465. package/build/error/arm.js.map +1 -1
  466. package/build/error/azure.d.ts +5 -5
  467. package/build/error/azure.d.ts.map +1 -1
  468. package/build/error/azure.js +21 -5
  469. package/build/error/azure.js.map +1 -1
  470. package/build/error/common.d.ts +8 -11
  471. package/build/error/common.d.ts.map +1 -1
  472. package/build/error/common.js +67 -53
  473. package/build/error/common.js.map +1 -1
  474. package/build/error/deploy.d.ts +1 -1
  475. package/build/error/deploy.d.ts.map +1 -1
  476. package/build/error/deploy.js +21 -2
  477. package/build/error/deploy.js.map +1 -1
  478. package/build/error/m365.d.ts.map +1 -1
  479. package/build/error/m365.js +4 -0
  480. package/build/error/m365.js.map +1 -1
  481. package/build/error/script.d.ts +2 -2
  482. package/build/error/script.d.ts.map +1 -1
  483. package/build/error/script.js +7 -2
  484. package/build/error/script.js.map +1 -1
  485. package/build/error/teamsApp.d.ts +8 -0
  486. package/build/error/teamsApp.d.ts.map +1 -0
  487. package/build/error/teamsApp.js +35 -0
  488. package/build/error/teamsApp.js.map +1 -0
  489. package/build/error/types.d.ts +6 -0
  490. package/build/error/types.d.ts.map +1 -0
  491. package/build/error/types.js +12 -0
  492. package/build/error/types.js.map +1 -0
  493. package/build/error/yml.d.ts.map +1 -1
  494. package/build/error/yml.js +6 -0
  495. package/build/error/yml.js.map +1 -1
  496. package/build/index.d.ts +4 -1
  497. package/build/index.d.ts.map +1 -1
  498. package/build/index.js +5 -1
  499. package/build/index.js.map +1 -1
  500. package/build/question/constants.d.ts +4 -2
  501. package/build/question/constants.d.ts.map +1 -1
  502. package/build/question/constants.js +9 -3
  503. package/build/question/constants.js.map +1 -1
  504. package/build/question/create.d.ts +33 -8
  505. package/build/question/create.d.ts.map +1 -1
  506. package/build/question/create.js +268 -173
  507. package/build/question/create.js.map +1 -1
  508. package/build/question/generator.d.ts +2 -1
  509. package/build/question/generator.d.ts.map +1 -1
  510. package/build/question/generator.js +156 -61
  511. package/build/question/generator.js.map +1 -1
  512. package/build/question/index.d.ts +1 -0
  513. package/build/question/index.d.ts.map +1 -1
  514. package/build/question/index.js +1 -0
  515. package/build/question/index.js.map +1 -1
  516. package/build/question/inputs/CreateProjectInputs.d.ts +13 -9
  517. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  518. package/build/question/inputs/CreateSampleProjectInputs.d.ts +1 -1
  519. package/build/question/inputs/CreateSampleProjectInputs.d.ts.map +1 -1
  520. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +3 -1
  521. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -1
  522. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  523. package/build/question/options/CreateProjectOptions.js +43 -24
  524. package/build/question/options/CreateProjectOptions.js.map +1 -1
  525. package/build/question/options/CreateSampleProjectOptions.d.ts.map +1 -1
  526. package/build/question/options/CreateSampleProjectOptions.js +13 -2
  527. package/build/question/options/CreateSampleProjectOptions.js.map +1 -1
  528. package/build/question/options/DeployAadManifestOptions.d.ts.map +1 -1
  529. package/build/question/options/DeployAadManifestOptions.js +3 -2
  530. package/build/question/options/DeployAadManifestOptions.js.map +1 -1
  531. package/build/question/options/PermissionGrantOptions.d.ts.map +1 -1
  532. package/build/question/options/PermissionGrantOptions.js +6 -4
  533. package/build/question/options/PermissionGrantOptions.js.map +1 -1
  534. package/build/question/options/PermissionListOptions.d.ts.map +1 -1
  535. package/build/question/options/PermissionListOptions.js +6 -4
  536. package/build/question/options/PermissionListOptions.js.map +1 -1
  537. package/build/question/options/PreviewTeamsAppOptions.d.ts.map +1 -1
  538. package/build/question/options/PreviewTeamsAppOptions.js +4 -3
  539. package/build/question/options/PreviewTeamsAppOptions.js.map +1 -1
  540. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -1
  541. package/build/question/options/SPFxAddWebpartOptions.js +18 -6
  542. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -1
  543. package/build/question/options/SelectTeamsManifestOptions.d.ts.map +1 -1
  544. package/build/question/options/SelectTeamsManifestOptions.js +3 -2
  545. package/build/question/options/SelectTeamsManifestOptions.js.map +1 -1
  546. package/build/question/options/ValidateTeamsAppOptions.d.ts.map +1 -1
  547. package/build/question/options/ValidateTeamsAppOptions.js +5 -4
  548. package/build/question/options/ValidateTeamsAppOptions.js.map +1 -1
  549. package/build/question/other.d.ts +2 -0
  550. package/build/question/other.d.ts.map +1 -1
  551. package/build/question/other.js +96 -43
  552. package/build/question/other.js.map +1 -1
  553. package/build/question/questionNames.d.ts +6 -3
  554. package/build/question/questionNames.d.ts.map +1 -1
  555. package/build/question/questionNames.js +8 -4
  556. package/build/question/questionNames.js.map +1 -1
  557. package/build/ui/validationUtils.d.ts +23 -4
  558. package/build/ui/validationUtils.d.ts.map +1 -1
  559. package/build/ui/validationUtils.js +229 -16
  560. package/build/ui/validationUtils.js.map +1 -1
  561. package/build/ui/visitor.d.ts +1 -0
  562. package/build/ui/visitor.d.ts.map +1 -1
  563. package/build/ui/visitor.js +79 -166
  564. package/build/ui/visitor.js.map +1 -1
  565. package/package.json +18 -15
  566. package/resource/package.nls.cs.json +83 -23
  567. package/resource/package.nls.de.json +81 -21
  568. package/resource/package.nls.es.json +83 -23
  569. package/resource/package.nls.fr.json +82 -22
  570. package/resource/package.nls.it.json +82 -22
  571. package/resource/package.nls.ja.json +83 -23
  572. package/resource/package.nls.json +67 -33
  573. package/resource/package.nls.ko.json +82 -22
  574. package/resource/package.nls.pl.json +83 -23
  575. package/resource/package.nls.pt-BR.json +84 -24
  576. package/resource/package.nls.ru.json +84 -24
  577. package/resource/package.nls.tr.json +82 -22
  578. package/resource/package.nls.zh-Hans.json +82 -22
  579. package/resource/package.nls.zh-Hant.json +82 -22
  580. package/resource/package.nls.zh-cn.json +82 -22
  581. package/resource/package.nls.zh-tw.json +82 -22
  582. package/resource/yaml-schema/v1.3/yaml.schema.json +1500 -0
  583. package/templates/fallback/common.zip +0 -0
  584. package/templates/fallback/csharp.zip +0 -0
  585. package/templates/fallback/js.zip +0 -0
  586. package/templates/fallback/ts.zip +0 -0
  587. package/templates/plugins/resource/aad/auth/V3/Tab/GetUserProfile.razor +1 -2
  588. package/templates/plugins/resource/aad/auth/tab/csharp/GetUserProfile.razor +1 -2
  589. package/build/common/samples-config-v3.json +0 -446
  590. package/build/component/driver/middleware/updateProgress.d.ts +0 -6
  591. package/build/component/driver/middleware/updateProgress.d.ts.map +0 -1
  592. package/build/component/driver/middleware/updateProgress.js +0 -15
  593. package/build/component/driver/middleware/updateProgress.js.map +0 -1
  594. package/build/core/FxCoreImplementV3.d.ts +0 -49
  595. package/build/core/FxCoreImplementV3.d.ts.map +0 -1
  596. package/build/core/FxCoreImplementV3.js +0 -717
  597. package/build/core/FxCoreImplementV3.js.map +0 -1
@@ -6,31 +6,58 @@ exports.FxCore = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  const hooks_1 = require("@feathersjs/hooks");
8
8
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
9
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
10
+ const os = tslib_1.__importStar(require("os"));
9
11
  const path = tslib_1.__importStar(require("path"));
10
12
  require("reflect-metadata");
11
- const telemetry_1 = require("../common/telemetry");
13
+ const typedi_1 = require("typedi");
14
+ const url_1 = require("url");
15
+ const yaml_1 = require("yaml");
16
+ const constants_1 = require("../common/constants");
17
+ const localizeUtils_1 = require("../common/localizeUtils");
18
+ const launchHelper_1 = require("../common/m365/launchHelper");
19
+ const projectSettingsHelper_1 = require("../common/projectSettingsHelper");
20
+ const spec_parser_1 = require("../common/spec-parser");
21
+ const versionMetadata_1 = require("../common/versionMetadata");
12
22
  const parser_1 = require("../component/configManager/parser");
23
+ const constants_2 = require("../component/constants");
24
+ const coordinator_1 = require("../component/coordinator");
25
+ const buildAadManifest_1 = require("../component/driver/aad/utility/buildAadManifest");
13
26
  require("../component/driver/index");
14
27
  require("../component/driver/script/scriptDriver");
28
+ const appStudio_1 = require("../component/driver/teamsApp/appStudio");
29
+ const teamsappMgr_1 = require("../component/driver/teamsApp/teamsappMgr");
30
+ const ManifestUtils_1 = require("../component/driver/teamsApp/utils/ManifestUtils");
31
+ const utils_1 = require("../component/driver/teamsApp/utils/utils");
32
+ const helper_1 = require("../component/generator/copilotPlugin/helper");
15
33
  const envMW_1 = require("../component/middleware/envMW");
34
+ const questionMW_1 = require("../component/middleware/questionMW");
35
+ const utils_2 = require("../component/utils");
16
36
  const envUtil_1 = require("../component/utils/envUtil");
17
37
  const metadataUtil_1 = require("../component/utils/metadataUtil");
18
38
  const pathUtils_1 = require("../component/utils/pathUtils");
19
39
  const settingsUtil_1 = require("../component/utils/settingsUtil");
40
+ const common_1 = require("../error/common");
41
+ const upgrade_1 = require("../error/upgrade");
42
+ const yml_1 = require("../error/yml");
20
43
  const create_1 = require("../question/create");
44
+ const other_1 = require("../question/other");
45
+ const questionNames_1 = require("../question/questionNames");
21
46
  const callback_1 = require("./callback");
47
+ const collaborator_1 = require("./collaborator");
22
48
  const crypto_1 = require("./crypto");
23
- const environment_1 = require("./environment");
49
+ const environmentName_1 = require("./environmentName");
24
50
  const error_1 = require("./error");
25
- const FxCoreImplementV3_1 = require("./FxCoreImplementV3");
26
51
  const globalVars_1 = require("./globalVars");
52
+ const concurrentLocker_1 = require("./middleware/concurrentLocker");
53
+ const contextInjector_1 = require("./middleware/contextInjector");
27
54
  const errorHandler_1 = require("./middleware/errorHandler");
55
+ const projectMigratorV3_1 = require("./middleware/projectMigratorV3");
56
+ const v3MigrationUtils_1 = require("./middleware/utils/v3MigrationUtils");
57
+ const telemetry_1 = require("./telemetry");
28
58
  class FxCore {
29
59
  constructor(tools) {
30
- this.tools = tools;
31
60
  globalVars_1.setTools(tools);
32
- telemetry_1.TelemetryReporterInstance.telemetryReporter = tools.telemetryReporter;
33
- this.v3Implement = new FxCoreImplementV3_1.FxCoreV3Implement(tools);
34
61
  }
35
62
  /**
36
63
  * @todo this's a really primitive implement. Maybe could use Subscription Model to
@@ -39,93 +66,316 @@ class FxCore {
39
66
  on(event, callback) {
40
67
  return callback_1.CallbackRegistry.set(event, callback);
41
68
  }
42
- /**
43
- * lifecycle command: create new project
44
- */
45
69
  async createProject(inputs) {
46
- return this.v3Implement.dispatch(this.createProject, inputs);
70
+ const context = utils_2.createContextV3();
71
+ inputs[questionNames_1.QuestionNames.Scratch] = create_1.ScratchOptions.yes().id;
72
+ if (inputs.teamsAppFromTdp) {
73
+ // should never happen as we do same check on Developer Portal.
74
+ if (utils_1.containsUnsupportedFeature(inputs.teamsAppFromTdp)) {
75
+ return teamsfx_api_1.err(error_1.InvalidInputError("Teams app contains unsupported features"));
76
+ }
77
+ else {
78
+ context.telemetryReporter.sendTelemetryEvent(telemetry_1.CoreTelemetryEvent.CreateFromTdpStart, {
79
+ [telemetry_1.CoreTelemetryProperty.TdpTeamsAppFeatures]: utils_1.getFeaturesFromAppDefinition(inputs.teamsAppFromTdp).join(","),
80
+ [telemetry_1.CoreTelemetryProperty.TdpTeamsAppId]: inputs.teamsAppFromTdp.teamsAppId,
81
+ });
82
+ }
83
+ }
84
+ const res = await coordinator_1.coordinator.create(context, inputs);
85
+ inputs.projectPath = context.projectPath;
86
+ return res;
47
87
  }
48
88
  /**
49
89
  * lifecycle command: create new sample project
50
90
  */
51
91
  async createSampleProject(inputs) {
52
- return this.v3Implement.dispatch(this.createSampleProject, inputs);
92
+ const context = utils_2.createContextV3();
93
+ inputs[questionNames_1.QuestionNames.Scratch] = create_1.ScratchOptions.no().id;
94
+ const res = await coordinator_1.coordinator.create(context, inputs);
95
+ inputs.projectPath = context.projectPath;
96
+ return res;
53
97
  }
54
98
  /**
55
99
  * lifecycle commands: provision
56
100
  */
57
- async provisionResources(inputs) {
58
- return this.v3Implement.dispatch(this.provisionResources, inputs);
101
+ async provisionResources(inputs, ctx) {
102
+ inputs.stage = teamsfx_api_1.Stage.provision;
103
+ const context = utils_2.createDriverContext(inputs);
104
+ try {
105
+ const res = await coordinator_1.coordinator.provision(context, inputs);
106
+ if (res.isOk()) {
107
+ ctx.envVars = res.value;
108
+ return teamsfx_api_1.ok(undefined);
109
+ }
110
+ else {
111
+ // for partial success scenario, output is set in inputs object
112
+ ctx.envVars = inputs.envVars;
113
+ return teamsfx_api_1.err(res.error);
114
+ }
115
+ }
116
+ finally {
117
+ //reset subscription
118
+ try {
119
+ await globalVars_1.TOOLS.tokenProvider.azureAccountProvider.setSubscription("");
120
+ }
121
+ catch (e) { }
122
+ }
59
123
  }
60
124
  /**
61
125
  * lifecycle commands: deploy
62
126
  */
63
- async deployArtifacts(inputs) {
64
- return this.v3Implement.dispatch(this.deployArtifacts, inputs);
127
+ async deployArtifacts(inputs, ctx) {
128
+ inputs.stage = teamsfx_api_1.Stage.deploy;
129
+ const context = utils_2.createDriverContext(inputs);
130
+ const res = await coordinator_1.coordinator.deploy(context, inputs);
131
+ if (res.isOk()) {
132
+ ctx.envVars = res.value;
133
+ return teamsfx_api_1.ok(undefined);
134
+ }
135
+ else {
136
+ // for partial success scenario, output is set in inputs object
137
+ ctx.envVars = inputs.envVars;
138
+ return teamsfx_api_1.err(res.error);
139
+ }
65
140
  }
66
141
  async localDebug(inputs) {
67
- inputs.env = environment_1.environmentManager.getLocalEnvName();
142
+ inputs.env = environmentName_1.environmentNameManager.getLocalEnvName();
68
143
  return this.provisionResources(inputs);
69
144
  }
70
145
  /**
71
146
  * none lifecycle command, v3 only
72
147
  */
73
148
  async deployAadManifest(inputs) {
74
- return this.v3Implement.dispatch(this.deployAadManifest, inputs);
149
+ inputs.stage = teamsfx_api_1.Stage.deployAad;
150
+ const updateAadClient = typedi_1.Container.get("aadApp/update");
151
+ // In V3, the aad.template.json exist at .fx folder, and output to root build folder.
152
+ const manifestTemplatePath = inputs[questionNames_1.QuestionNames.AadAppManifestFilePath];
153
+ if (!(await fs_extra_1.default.pathExists(manifestTemplatePath))) {
154
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("deployAadManifest", manifestTemplatePath));
155
+ }
156
+ let manifestOutputPath = manifestTemplatePath;
157
+ if (inputs.env && (await other_1.isAadMainifestContainsPlaceholder(inputs))) {
158
+ await fs_extra_1.default.ensureDir(path.join(inputs.projectPath, "build"));
159
+ manifestOutputPath = path.join(inputs.projectPath, "build", `aad.manifest.${inputs.env}.json`);
160
+ }
161
+ const inputArgs = {
162
+ manifestPath: manifestTemplatePath,
163
+ outputFilePath: manifestOutputPath,
164
+ };
165
+ const Context = utils_2.createDriverContext(inputs);
166
+ globalVars_1.setErrorContext({ component: "aadAppUpdate" });
167
+ const res = await updateAadClient.execute(inputArgs, Context);
168
+ if (res.result.isErr()) {
169
+ return teamsfx_api_1.err(res.result.error);
170
+ }
171
+ if (Context.platform === teamsfx_api_1.Platform.CLI) {
172
+ const msg = localizeUtils_1.getLocalizedString("core.deploy.aadManifestOnCLISuccessNotice");
173
+ void Context.ui.showMessage("info", msg, false);
174
+ }
175
+ else {
176
+ const msg = localizeUtils_1.getLocalizedString("core.deploy.aadManifestSuccessNotice");
177
+ const result = await Context.ui.showMessage("info", msg, false, localizeUtils_1.getLocalizedString("core.deploy.aadManifestLearnMore"));
178
+ const userSelected = result.isOk() ? result.value : undefined;
179
+ if (userSelected === localizeUtils_1.getLocalizedString("core.deploy.aadManifestLearnMore")) {
180
+ void Context.ui.openUrl(constants_2.ViewAadAppHelpLinkV5);
181
+ }
182
+ }
183
+ return teamsfx_api_1.ok(undefined);
75
184
  }
76
185
  /**
77
186
  * none lifecycle command, v3 only
78
187
  */
79
188
  async addWebpart(inputs) {
80
- return this.v3Implement.dispatch(this.addWebpart, inputs);
189
+ globalVars_1.setErrorContext({ component: "spfxAdd", method: "run" });
190
+ const driver = typedi_1.Container.get("spfx/add");
191
+ const args = {
192
+ manifestPath: inputs[constants_2.SPFxQuestionNames.ManifestPath],
193
+ localManifestPath: inputs[constants_2.SPFxQuestionNames.LocalManifestPath],
194
+ spfxFolder: inputs[constants_2.SPFxQuestionNames.SPFxFolder],
195
+ webpartName: inputs[constants_2.SPFxQuestionNames.WebPartName],
196
+ framework: inputs[questionNames_1.QuestionNames.SPFxFramework],
197
+ spfxPackage: create_1.SPFxVersionOptionIds.installLocally,
198
+ };
199
+ const Context = utils_2.createDriverContext(inputs);
200
+ const res = await driver.run(args, Context);
201
+ if (res.isErr()) {
202
+ return teamsfx_api_1.err(res.error);
203
+ }
204
+ return teamsfx_api_1.ok(undefined);
81
205
  }
82
206
  /**
83
207
  * lifecycle command: publish
84
208
  */
85
- async publishApplication(inputs) {
86
- return this.v3Implement.dispatch(this.publishApplication, inputs);
209
+ async publishApplication(inputs, ctx) {
210
+ inputs.stage = teamsfx_api_1.Stage.publish;
211
+ const context = utils_2.createDriverContext(inputs);
212
+ const res = await coordinator_1.coordinator.publish(context, inputs);
213
+ if (res.isOk()) {
214
+ ctx.envVars = res.value;
215
+ return teamsfx_api_1.ok(undefined);
216
+ }
217
+ else {
218
+ // for partial success scenario, output is set in inputs object
219
+ ctx.envVars = inputs.envVars;
220
+ return teamsfx_api_1.err(res.error);
221
+ }
87
222
  }
88
223
  /**
89
224
  * most commands will be deprecated in V3
90
225
  */
91
226
  async executeUserTask(func, inputs) {
92
- return await this.v3Implement.dispatchUserTask(this.executeUserTask, func, inputs);
227
+ let res = teamsfx_api_1.ok(undefined);
228
+ const context = utils_2.createDriverContext(inputs);
229
+ if (func.method === "addSso") {
230
+ // used in v3 only in VS
231
+ inputs.stage = teamsfx_api_1.Stage.addFeature;
232
+ inputs[questionNames_1.QuestionNames.Features] = constants_2.SingleSignOnOptionItem.id;
233
+ const component = typedi_1.Container.get("sso");
234
+ globalVars_1.setErrorContext({ component: "sso", method: "add" });
235
+ res = await component.add(context, inputs);
236
+ }
237
+ return res;
93
238
  }
94
239
  /**
95
240
  * v3 only none lifecycle command
96
241
  */
97
242
  async buildAadManifest(inputs) {
98
- return this.v3Implement.dispatch(this.buildAadManifest, inputs);
243
+ const manifestTemplatePath = inputs.AAD_MANIFEST_FILE
244
+ ? inputs.AAD_MANIFEST_FILE
245
+ : path.join(inputs.projectPath, constants_2.AadConstants.DefaultTemplateFileName);
246
+ if (!(await fs_extra_1.default.pathExists(manifestTemplatePath))) {
247
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("buildAadManifest", manifestTemplatePath));
248
+ }
249
+ await fs_extra_1.default.ensureDir(path.join(inputs.projectPath, "build"));
250
+ const manifestOutputPath = path.join(inputs.projectPath, "build",
251
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
252
+ `aad.${inputs.env}.json`);
253
+ const Context = utils_2.createDriverContext(inputs);
254
+ await buildAadManifest_1.buildAadManifest(Context, manifestTemplatePath, manifestOutputPath);
255
+ return teamsfx_api_1.ok(undefined);
99
256
  }
100
257
  /**
101
258
  * v3 only none lifecycle command
102
259
  */
103
- async deployTeamsManifest(inputs) {
104
- return this.v3Implement.dispatch(this.deployTeamsManifest, inputs);
260
+ async deployTeamsManifest(inputs, ctx) {
261
+ inputs.manifestTemplatePath = inputs[questionNames_1.QuestionNames.TeamsAppManifestFilePath];
262
+ const context = utils_2.createContextV3();
263
+ const res = await appStudio_1.updateManifestV3(context, inputs);
264
+ if (res.isOk()) {
265
+ ctx.envVars = envUtil_1.envUtil.map2object(res.value);
266
+ return teamsfx_api_1.ok(undefined);
267
+ }
268
+ return teamsfx_api_1.err(res.error);
269
+ }
270
+ /******
271
+ * CLI v3 commands
272
+ */
273
+ async updateTeamsAppCLIV3(inputs) {
274
+ const res = await teamsappMgr_1.teamsappMgr.updateTeamsApp(inputs);
275
+ return res;
276
+ }
277
+ /******
278
+ * CLI v3 commands
279
+ */
280
+ async validateTeamsAppCLIV3(inputs) {
281
+ const res = await teamsappMgr_1.teamsappMgr.validateTeamsApp(inputs);
282
+ return res;
283
+ }
284
+ /******
285
+ * CLI v3 commands
286
+ */
287
+ async packageTeamsAppCLIV3(inputs) {
288
+ const res = await teamsappMgr_1.teamsappMgr.packageTeamsApp(inputs);
289
+ if (res.isErr()) {
290
+ return teamsfx_api_1.err(res.error);
291
+ }
292
+ return teamsfx_api_1.ok(undefined);
293
+ }
294
+ /******
295
+ * CLI v3 commands
296
+ */
297
+ async publishTeamsAppCLIV3(inputs) {
298
+ const res = await teamsappMgr_1.teamsappMgr.publishTeamsApp(inputs);
299
+ return res;
105
300
  }
106
301
  /**
107
302
  * v3 only none lifecycle command
108
303
  */
109
304
  async validateApplication(inputs) {
110
- return this.v3Implement.dispatch(this.validateApplication, inputs);
305
+ if (inputs["manifest-path"]) {
306
+ return await this.validateManifest(inputs);
307
+ }
308
+ else {
309
+ return await this.validateAppPackage(inputs);
310
+ }
111
311
  }
112
312
  /**
113
313
  * v3 only none lifecycle command
114
314
  */
115
315
  async validateManifest(inputs) {
116
- return this.v3Implement.dispatch(this.validateManifest, inputs);
316
+ inputs.stage = teamsfx_api_1.Stage.validateApplication;
317
+ const context = utils_2.createDriverContext(inputs);
318
+ const teamsAppManifestFilePath = inputs["manifest-path"];
319
+ const args = {
320
+ manifestPath: teamsAppManifestFilePath,
321
+ showMessage: (inputs === null || inputs === void 0 ? void 0 : inputs.showMessage) != undefined ? inputs.showMessage : true,
322
+ };
323
+ const driver = typedi_1.Container.get("teamsApp/validateManifest");
324
+ const result = await driver.execute(args, context);
325
+ return result.result;
117
326
  }
118
327
  /**
119
328
  * v3 only none lifecycle command
120
329
  */
121
330
  async validateAppPackage(inputs) {
122
- return this.v3Implement.dispatch(this.validateAppPackage, inputs);
331
+ inputs.stage = teamsfx_api_1.Stage.validateApplication;
332
+ const context = utils_2.createDriverContext(inputs);
333
+ const teamsAppPackageFilePath = inputs["app-package-file-path"];
334
+ const args = {
335
+ appPackagePath: teamsAppPackageFilePath,
336
+ showMessage: true,
337
+ };
338
+ const driver = typedi_1.Container.get("teamsApp/validateAppPackage");
339
+ return (await driver.execute(args, context)).result;
123
340
  }
124
341
  /**
125
342
  * v3 only none lifecycle command
126
343
  */
127
344
  async createAppPackage(inputs) {
128
- return this.v3Implement.dispatch(this.createAppPackage, inputs);
345
+ var _a, _b, _c;
346
+ inputs.stage = teamsfx_api_1.Stage.createAppPackage;
347
+ const context = utils_2.createDriverContext(inputs);
348
+ const teamsAppManifestFilePath = inputs === null || inputs === void 0 ? void 0 : inputs[questionNames_1.QuestionNames.TeamsAppManifestFilePath];
349
+ const driver = typedi_1.Container.get("teamsApp/zipAppPackage");
350
+ const args = {
351
+ manifestPath: teamsAppManifestFilePath,
352
+ outputZipPath: (_a = inputs[questionNames_1.QuestionNames.OutputZipPathParamName]) !== null && _a !== void 0 ? _a :
353
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
354
+ `${inputs.projectPath}/${teamsfx_api_1.AppPackageFolderName}/${teamsfx_api_1.BuildFolderName}/appPackage.${process.env
355
+ .TEAMSFX_ENV}.zip`,
356
+ outputJsonPath: (_b = inputs[questionNames_1.QuestionNames.OutputManifestParamName]) !== null && _b !== void 0 ? _b :
357
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
358
+ `${inputs.projectPath}/${teamsfx_api_1.AppPackageFolderName}/${teamsfx_api_1.BuildFolderName}/manifest.${process.env
359
+ .TEAMSFX_ENV}.json`,
360
+ };
361
+ const result = (await driver.execute(args, context)).result;
362
+ if (context.platform === teamsfx_api_1.Platform.VSCode) {
363
+ if (result.isOk()) {
364
+ const isWindows = process.platform === "win32";
365
+ let zipFileName = args.outputZipPath;
366
+ if (!path.isAbsolute(zipFileName)) {
367
+ zipFileName = path.join(context.projectPath, zipFileName);
368
+ }
369
+ let builtSuccess = localizeUtils_1.getLocalizedString("plugins.appstudio.buildSucceedNotice.fallback", zipFileName);
370
+ if (isWindows) {
371
+ const folderLink = url_1.pathToFileURL(path.dirname(zipFileName));
372
+ const appPackageLink = `${constants_1.VSCodeExtensionCommand.openFolder}?%5B%22${folderLink.toString()}%22%5D`;
373
+ builtSuccess = localizeUtils_1.getLocalizedString("plugins.appstudio.buildSucceedNotice", appPackageLink);
374
+ }
375
+ (_c = context.ui) === null || _c === void 0 ? void 0 : _c.showMessage("info", builtSuccess, false);
376
+ }
377
+ }
378
+ return result;
129
379
  }
130
380
  /**
131
381
  * get url to preview the app, may prompt to select env, hub and Teams manifest
@@ -134,13 +384,23 @@ class FxCore {
134
384
  * @returns the url to preview the app
135
385
  */
136
386
  async previewWithManifest(inputs) {
137
- return this.v3Implement.dispatch(this.previewWithManifest, inputs);
387
+ inputs.stage = teamsfx_api_1.Stage.previewWithManifest;
388
+ const hub = inputs[questionNames_1.QuestionNames.M365Host];
389
+ const manifestFilePath = inputs[questionNames_1.QuestionNames.TeamsAppManifestFilePath];
390
+ const manifestRes = await ManifestUtils_1.manifestUtils.getManifestV3(manifestFilePath, undefined, false);
391
+ if (manifestRes.isErr()) {
392
+ return teamsfx_api_1.err(manifestRes.error);
393
+ }
394
+ const teamsAppId = manifestRes.value.id;
395
+ const properties = teamsfx_api_1.ManifestUtil.parseCommonProperties(manifestRes.value);
396
+ const launchHelper = new launchHelper_1.LaunchHelper(globalVars_1.TOOLS.tokenProvider.m365TokenProvider, globalVars_1.TOOLS.logProvider);
397
+ const result = await launchHelper.getLaunchUrl(hub, teamsAppId, properties.capabilities, true, properties.isApiME);
398
+ return result;
138
399
  }
139
400
  /**
140
401
  * Warning: this API only works for CLI_HELP, it has no business with interactive run for CLI!
141
402
  */
142
- async getQuestions(stage, inputs) {
143
- inputs.stage = teamsfx_api_1.Stage.getQuestions;
403
+ getQuestions(stage, inputs) {
144
404
  if (stage === teamsfx_api_1.Stage.create) {
145
405
  return teamsfx_api_1.ok(create_1.createProjectCliHelpNode());
146
406
  }
@@ -150,7 +410,19 @@ class FxCore {
150
410
  * get all dot envs
151
411
  */
152
412
  async getDotEnvs(inputs) {
153
- return this.v3Implement.dispatch(this.getDotEnvs, inputs);
413
+ const envListRes = await envUtil_1.envUtil.listEnv(inputs.projectPath);
414
+ if (envListRes.isErr()) {
415
+ return teamsfx_api_1.err(envListRes.error);
416
+ }
417
+ const res = {};
418
+ for (const env of envListRes.value) {
419
+ const envRes = await envUtil_1.envUtil.readEnv(inputs.projectPath, env, false, false);
420
+ if (envRes.isErr()) {
421
+ return teamsfx_api_1.err(envRes.error);
422
+ }
423
+ res[env] = envRes.value;
424
+ }
425
+ return teamsfx_api_1.ok(res);
154
426
  }
155
427
  /**
156
428
  * given projectPath and filePath, return whether the filePath is a env file
@@ -175,13 +447,31 @@ class FxCore {
175
447
  * get projectId
176
448
  */
177
449
  async getProjectId(projectPath) {
178
- const ymlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath, "dev");
179
- const maybeProjectModel = await metadataUtil_1.metadataUtil.parse(ymlPath, "dev");
180
- if (maybeProjectModel.isErr()) {
181
- return teamsfx_api_1.err(maybeProjectModel.error);
450
+ const res = await this.getProjectMetadata(projectPath);
451
+ if (res.isErr()) {
452
+ return teamsfx_api_1.err(res.error);
453
+ }
454
+ return teamsfx_api_1.ok(res.value.projectId || "");
455
+ }
456
+ /**
457
+ * @description get projectId and version from yml
458
+ */
459
+ async getProjectMetadata(projectPath) {
460
+ try {
461
+ const ymlPath = pathUtils_1.pathUtils.getYmlFilePath(projectPath, "dev");
462
+ if (!ymlPath || !(await fs_extra_1.default.pathExists(ymlPath))) {
463
+ return teamsfx_api_1.ok({});
464
+ }
465
+ const ymlContent = await fs_extra_1.default.readFile(ymlPath, "utf-8");
466
+ const ymlObject = yaml_1.parse(ymlContent);
467
+ return teamsfx_api_1.ok({
468
+ projectId: (ymlObject === null || ymlObject === void 0 ? void 0 : ymlObject.projectId) ? ymlObject.projectId.toString() : "",
469
+ version: (ymlObject === null || ymlObject === void 0 ? void 0 : ymlObject.version) ? ymlObject.version.toString() : "",
470
+ });
471
+ }
472
+ catch (_a) {
473
+ return teamsfx_api_1.ok({});
182
474
  }
183
- const projectModel = maybeProjectModel.value;
184
- return teamsfx_api_1.ok(projectModel.projectId || "");
185
475
  }
186
476
  /**
187
477
  * get Teams App Name from yml
@@ -199,7 +489,7 @@ class FxCore {
199
489
  if (teamsAppCreate) {
200
490
  const name = teamsAppCreate.with.name;
201
491
  if (name) {
202
- return teamsfx_api_1.ok(name.replace("-${{TEAMSFX_ENV}}", "") || "");
492
+ return teamsfx_api_1.ok(name.replace("-${{TEAMSFX_ENV}}", "").replace("${{APP_NAME_SUFFIX}}", ""));
203
493
  }
204
494
  }
205
495
  }
@@ -244,22 +534,32 @@ class FxCore {
244
534
  return teamsfx_api_1.ok(res);
245
535
  }
246
536
  async grantPermission(inputs) {
247
- return this.v3Implement.dispatch(this.grantPermission, inputs);
537
+ inputs.stage = teamsfx_api_1.Stage.grantPermission;
538
+ const context = utils_2.createContextV3();
539
+ globalVars_1.setErrorContext({ component: "collaborator" });
540
+ const res = await collaborator_1.grantPermission(context, inputs, globalVars_1.TOOLS.tokenProvider);
541
+ return res;
248
542
  }
249
543
  /**
250
544
  * none lifecycle command
251
545
  */
252
546
  async checkPermission(inputs) {
253
- return this.v3Implement.dispatch(this.checkPermission, inputs);
547
+ inputs.stage = teamsfx_api_1.Stage.checkPermission;
548
+ const context = utils_2.createContextV3();
549
+ const res = await collaborator_1.checkPermission(context, inputs, globalVars_1.TOOLS.tokenProvider);
550
+ return res;
254
551
  }
255
552
  /**
256
553
  * none lifecycle command
257
554
  */
258
555
  async listCollaborator(inputs) {
259
- return this.v3Implement.dispatch(this.listCollaborator, inputs);
556
+ inputs.stage = teamsfx_api_1.Stage.listCollaborator;
557
+ const context = utils_2.createContextV3();
558
+ const res = await collaborator_1.listCollaborator(context, inputs, globalVars_1.TOOLS.tokenProvider);
559
+ return res;
260
560
  }
261
- async getSelectedEnv(inputs) {
262
- return teamsfx_api_1.ok(inputs.env); //work for both v2 and v3
561
+ getSelectedEnv(inputs) {
562
+ return Promise.resolve(teamsfx_api_1.ok(inputs.env)); //work for both v2 and v3
263
563
  }
264
564
  async createLocalCrypto(projectPath) {
265
565
  const settingsRes = await settingsUtil_1.settingsUtil.readSettings(projectPath);
@@ -291,15 +591,94 @@ class FxCore {
291
591
  return res.value.decrypt(ciphertext);
292
592
  }
293
593
  async createEnv(inputs) {
294
- return this.v3Implement.dispatch(this.createEnv, inputs);
594
+ return this.createEnvCopyV3(inputs[questionNames_1.QuestionNames.NewTargetEnvName], inputs[questionNames_1.QuestionNames.SourceEnvName], inputs.projectPath);
595
+ }
596
+ async createEnvCopyV3(targetEnvName, sourceEnvName, projectPath) {
597
+ let res = await pathUtils_1.pathUtils.getEnvFilePath(projectPath, sourceEnvName);
598
+ if (res.isErr())
599
+ return teamsfx_api_1.err(res.error);
600
+ const sourceDotEnvFile = res.value;
601
+ res = await pathUtils_1.pathUtils.getEnvFilePath(projectPath, targetEnvName);
602
+ if (res.isErr())
603
+ return teamsfx_api_1.err(res.error);
604
+ const targetDotEnvFile = res.value;
605
+ if (!sourceDotEnvFile || !targetDotEnvFile)
606
+ return teamsfx_api_1.err(new yml_1.YamlFieldMissingError("environmentFolderPath"));
607
+ if (!(await fs_extra_1.default.pathExists(sourceDotEnvFile)))
608
+ return teamsfx_api_1.err(new common_1.FileNotFoundError("createEnvCopyV3", sourceDotEnvFile));
609
+ const source = await fs_extra_1.default.readFile(sourceDotEnvFile);
610
+ const writeStream = fs_extra_1.default.createWriteStream(targetDotEnvFile);
611
+ source
612
+ .toString()
613
+ .split(/\r?\n/)
614
+ .forEach((line) => {
615
+ const reg = /^([a-zA-Z_][a-zA-Z0-9_]*=)/g;
616
+ const match = reg.exec(line);
617
+ if (match) {
618
+ if (match[1].startsWith("TEAMSFX_ENV=")) {
619
+ writeStream.write(`TEAMSFX_ENV=${targetEnvName}${os.EOL}`);
620
+ }
621
+ else {
622
+ writeStream.write(`${match[1]}${os.EOL}`);
623
+ }
624
+ }
625
+ else {
626
+ writeStream.write(`${line.trim()}${os.EOL}`);
627
+ }
628
+ });
629
+ writeStream.end();
630
+ globalVars_1.TOOLS.logProvider.info(`env file created: ${targetDotEnvFile}`);
631
+ return teamsfx_api_1.ok(undefined);
295
632
  }
296
633
  // a phantom migration method for V3
297
634
  async phantomMigrationV3(inputs) {
298
- return this.v3Implement.dispatch(this.phantomMigrationV3, inputs);
635
+ // If the project is invalid or upgraded, the ProjectMigratorMWV3 will not take action.
636
+ // Check invaliad/upgraded project here before call ProjectMigratorMWV3
637
+ const projectPath = inputs.projectPath || "";
638
+ const version = await v3MigrationUtils_1.getProjectVersionFromPath(projectPath);
639
+ if (version.source === versionMetadata_1.VersionSource.teamsapp) {
640
+ return teamsfx_api_1.err(new upgrade_1.NoNeedUpgradeError());
641
+ }
642
+ else if (version.source === versionMetadata_1.VersionSource.projectSettings) {
643
+ const isValid = await projectMigratorV3_1.checkActiveResourcePlugins(projectPath);
644
+ if (!isValid) {
645
+ return teamsfx_api_1.err(new common_1.InvalidProjectError());
646
+ }
647
+ }
648
+ if (version.source === versionMetadata_1.VersionSource.unknown) {
649
+ return teamsfx_api_1.err(new common_1.InvalidProjectError());
650
+ }
651
+ return this.innerMigrationV3(inputs);
652
+ }
653
+ innerMigrationV3(inputs) {
654
+ return teamsfx_api_1.ok(undefined);
299
655
  }
300
656
  // a project version check
301
657
  async projectVersionCheck(inputs) {
302
- return this.v3Implement.dispatch(this.projectVersionCheck, inputs);
658
+ const projectPath = inputs.projectPath || "";
659
+ if (projectSettingsHelper_1.isValidProjectV3(projectPath) || projectSettingsHelper_1.isValidProjectV2(projectPath)) {
660
+ const versionInfo = await v3MigrationUtils_1.getProjectVersionFromPath(projectPath);
661
+ if (!versionInfo.version) {
662
+ return teamsfx_api_1.err(new common_1.InvalidProjectError());
663
+ }
664
+ const trackingId = await v3MigrationUtils_1.getTrackingIdFromPath(projectPath);
665
+ const isSupport = v3MigrationUtils_1.getVersionState(versionInfo);
666
+ // if the project is upgradeable, check whether the project is valid and invalid project should not show upgrade option.
667
+ if (isSupport === versionMetadata_1.VersionState.upgradeable) {
668
+ if (!(await projectMigratorV3_1.checkActiveResourcePlugins(projectPath))) {
669
+ return teamsfx_api_1.err(new common_1.InvalidProjectError());
670
+ }
671
+ }
672
+ return teamsfx_api_1.ok({
673
+ currentVersion: versionInfo.version,
674
+ trackingId,
675
+ isSupport,
676
+ versionSource: versionMetadata_1.VersionSource[versionInfo.source],
677
+ });
678
+ }
679
+ else {
680
+ return teamsfx_api_1.err(new common_1.InvalidProjectError());
681
+ }
303
682
  }
304
683
  // apply the given yaml template to current project.
305
684
  async apply(inputs, templatePath, lifecycleName) {
@@ -337,22 +716,22 @@ class FxCore {
337
716
  return this.runLifecycle(lifecycle, driverContext, env);
338
717
  }
339
718
  else {
340
- await driverContext.logProvider.warning(`No definition found for ${lifecycleName}`);
341
- return teamsfx_api_1.ok(teamsfx_api_1.Void);
719
+ driverContext.logProvider.warning(`No definition found for ${lifecycleName}`);
720
+ return teamsfx_api_1.ok(undefined);
342
721
  }
343
722
  }
344
723
  async runLifecycle(lifecycle, driverContext, env) {
345
724
  const r = await lifecycle.execute(driverContext);
346
725
  const runResult = r.result;
347
726
  if (runResult.isOk()) {
348
- await driverContext.logProvider.info(`Lifecycle ${lifecycle.name} succeeded`);
727
+ driverContext.logProvider.info(`Lifecycle ${lifecycle.name} succeeded`);
349
728
  const writeResult = await envUtil_1.envUtil.writeEnv(driverContext.projectPath, env, envUtil_1.envUtil.map2object(runResult.value));
350
- return writeResult.map(() => teamsfx_api_1.Void);
729
+ return writeResult.map(() => undefined);
351
730
  }
352
731
  else {
353
732
  const error = runResult.error;
354
733
  if (error.kind === "Failure") {
355
- await driverContext.logProvider.error(`Failed to run ${lifecycle.name} due to ${error.error.name}: ${error.error.message}`);
734
+ driverContext.logProvider.error(`Failed to run ${lifecycle.name} due to ${error.error.name}: ${error.error.message}`);
356
735
  return teamsfx_api_1.err(error.error);
357
736
  }
358
737
  else {
@@ -360,11 +739,11 @@ class FxCore {
360
739
  const failedDriver = error.reason.failedDriver;
361
740
  if (error.reason.kind === "UnresolvedPlaceholders") {
362
741
  const unresolved = error.reason.unresolvedPlaceHolders;
363
- await driverContext.logProvider.warning(`Unresolved placeholders: ${unresolved.join(",")} for driver ${failedDriver.uses}`);
364
- return teamsfx_api_1.ok(teamsfx_api_1.Void);
742
+ driverContext.logProvider.warning(`Unresolved placeholders: ${unresolved.join(",")} for driver ${failedDriver.uses}`);
743
+ return teamsfx_api_1.ok(undefined);
365
744
  }
366
745
  else {
367
- await driverContext.logProvider.error(`Failed to run ${lifecycle.name} due to ${error.reason.error.name}: ${error.reason.error.message}. Failed driver: ${failedDriver.uses}`);
746
+ driverContext.logProvider.error(`Failed to run ${lifecycle.name} due to ${error.reason.error.name}: ${error.reason.error.message}. Failed driver: ${failedDriver.uses}`);
368
747
  return teamsfx_api_1.err(error.reason.error);
369
748
  }
370
749
  }
@@ -375,47 +754,514 @@ class FxCore {
375
754
  }
376
755
  }
377
756
  async preProvisionForVS(inputs) {
378
- return this.v3Implement.dispatch(this.preProvisionForVS, inputs);
757
+ const context = utils_2.createDriverContext(inputs);
758
+ return coordinator_1.coordinator.preProvisionForVS(context, inputs);
379
759
  }
380
760
  async preCheckYmlAndEnvForVS(inputs) {
381
- return this.v3Implement.dispatch(this.preCheckYmlAndEnvForVS, inputs);
761
+ const context = utils_2.createDriverContext(inputs);
762
+ const result = await coordinator_1.coordinator.preCheckYmlAndEnvForVS(context, inputs);
763
+ return result;
382
764
  }
383
765
  async publishInDeveloperPortal(inputs) {
384
- return this.v3Implement.dispatch(this.publishInDeveloperPortal, inputs);
766
+ inputs.stage = teamsfx_api_1.Stage.publishInDeveloperPortal;
767
+ const context = utils_2.createContextV3();
768
+ return await coordinator_1.coordinator.publishInDeveloperPortal(context, inputs);
385
769
  }
386
770
  async copilotPluginAddAPI(inputs) {
387
- return this.v3Implement.dispatch(this.copilotPluginAddAPI, inputs);
771
+ var _a, _b;
772
+ const newOperations = inputs[questionNames_1.QuestionNames.ApiOperation];
773
+ const url = (_a = inputs[questionNames_1.QuestionNames.ApiSpecLocation]) !== null && _a !== void 0 ? _a : (_b = inputs.openAIPluginManifest) === null || _b === void 0 ? void 0 : _b.api.url;
774
+ const manifestPath = inputs[questionNames_1.QuestionNames.ManifestPath];
775
+ // Get API spec file path from manifest
776
+ const manifestRes = await ManifestUtils_1.manifestUtils._readAppManifest(manifestPath);
777
+ if (manifestRes.isErr()) {
778
+ return teamsfx_api_1.err(manifestRes.error);
779
+ }
780
+ const apiSpecificationFile = manifestRes.value.composeExtensions[0].apiSpecificationFile;
781
+ const outputAPISpecPath = path.join(path.dirname(manifestPath), apiSpecificationFile);
782
+ // Merge exisiting operations in manifest.json
783
+ const specParser = new spec_parser_1.SpecParser(url);
784
+ const existingOperationIds = ManifestUtils_1.manifestUtils.getOperationIds(manifestRes.value);
785
+ const operationMaps = await specParser.listOperationMap();
786
+ const existingOperations = [];
787
+ for (const id of existingOperationIds) {
788
+ if (operationMaps.get(id)) {
789
+ existingOperations.push(operationMaps.get(id));
790
+ }
791
+ }
792
+ const operations = [...existingOperations, ...newOperations];
793
+ const adaptiveCardFolder = path.join(inputs.projectPath, teamsfx_api_1.AppPackageFolderName, teamsfx_api_1.ResponseTemplatesFolderName);
794
+ const context = utils_2.createContextV3();
795
+ try {
796
+ const generateResult = await specParser.generate(manifestPath, operations, outputAPISpecPath, adaptiveCardFolder);
797
+ // Send SpecParser.generate() warnings
798
+ context.telemetryReporter.sendTelemetryEvent(helper_1.specParserGenerateResultTelemetryEvent, {
799
+ [helper_1.specParserGenerateResultAllSuccessTelemetryProperty]: generateResult.allSuccess.toString(),
800
+ [helper_1.specParserGenerateResultWarningsTelemetryProperty]: generateResult.warnings
801
+ .map((w) => w.type.toString() + ": " + w.content)
802
+ .join(";"),
803
+ [telemetry_1.CoreTelemetryProperty.Component]: telemetry_1.CoreTelemetryComponentName,
804
+ });
805
+ if (generateResult.warnings && generateResult.warnings.length > 0) {
806
+ const warnSummary = helper_1.generateScaffoldingSummary(generateResult.warnings, manifestRes.value, inputs.projectPath);
807
+ context.logProvider.info(warnSummary);
808
+ }
809
+ }
810
+ catch (e) {
811
+ let error;
812
+ if (e instanceof spec_parser_1.SpecParserError) {
813
+ error = helper_1.convertSpecParserErrorToFxError(e);
814
+ }
815
+ else {
816
+ error = common_1.assembleError(e);
817
+ }
818
+ return teamsfx_api_1.err(error);
819
+ }
820
+ const message = localizeUtils_1.getLocalizedString("core.copilot.addAPI.success", newOperations, inputs.projectPath);
821
+ void context.userInteraction.showMessage("info", message, false);
822
+ return teamsfx_api_1.ok(undefined);
388
823
  }
389
824
  async copilotPluginLoadOpenAIManifest(inputs) {
390
- return this.v3Implement.dispatch(this.copilotPluginLoadOpenAIManifest, inputs);
825
+ try {
826
+ return teamsfx_api_1.ok(await helper_1.OpenAIPluginManifestHelper.loadOpenAIPluginManifest(inputs.domain));
827
+ }
828
+ catch (error) {
829
+ return teamsfx_api_1.err(error);
830
+ }
391
831
  }
392
832
  async copilotPluginListOperations(inputs) {
393
- return this.v3Implement.dispatch(this.copilotPluginListOperations, inputs);
833
+ return await helper_1.listOperations(utils_2.createContextV3(), inputs.manifest, inputs.apiSpecUrl, inputs[questionNames_1.QuestionNames.ManifestPath], inputs.includeExistingAPIs, inputs.shouldLogWarning);
394
834
  }
395
835
  }
396
836
  tslib_1.__decorate([
397
- hooks_1.hooks([errorHandler_1.ErrorHandlerMW]),
837
+ hooks_1.hooks([
838
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "createProject", reset: true }),
839
+ errorHandler_1.ErrorHandlerMW,
840
+ questionMW_1.QuestionMW("createProject"),
841
+ ]),
398
842
  tslib_1.__metadata("design:type", Function),
399
- tslib_1.__metadata("design:paramtypes", [String, Object]),
843
+ tslib_1.__metadata("design:paramtypes", [Object]),
400
844
  tslib_1.__metadata("design:returntype", Promise)
401
- ], FxCore.prototype, "getQuestions", null);
845
+ ], FxCore.prototype, "createProject", null);
402
846
  tslib_1.__decorate([
403
- hooks_1.hooks([errorHandler_1.ErrorHandlerMW, envMW_1.EnvLoaderMW(false)]),
847
+ hooks_1.hooks([
848
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "createSampleProject", reset: true }),
849
+ errorHandler_1.ErrorHandlerMW,
850
+ questionMW_1.QuestionMW("createSampleProject"),
851
+ ]),
852
+ tslib_1.__metadata("design:type", Function),
853
+ tslib_1.__metadata("design:paramtypes", [Object]),
854
+ tslib_1.__metadata("design:returntype", Promise)
855
+ ], FxCore.prototype, "createSampleProject", null);
856
+ tslib_1.__decorate([
857
+ hooks_1.hooks([
858
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "provision", reset: true }),
859
+ errorHandler_1.ErrorHandlerMW,
860
+ projectMigratorV3_1.ProjectMigratorMWV3,
861
+ envMW_1.EnvLoaderMW(false),
862
+ concurrentLocker_1.ConcurrentLockerMW,
863
+ contextInjector_1.ContextInjectorMW,
864
+ envMW_1.EnvWriterMW,
865
+ ]),
866
+ tslib_1.__metadata("design:type", Function),
867
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
868
+ tslib_1.__metadata("design:returntype", Promise)
869
+ ], FxCore.prototype, "provisionResources", null);
870
+ tslib_1.__decorate([
871
+ hooks_1.hooks([
872
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "deploy", reset: true }),
873
+ errorHandler_1.ErrorHandlerMW,
874
+ projectMigratorV3_1.ProjectMigratorMWV3,
875
+ envMW_1.EnvLoaderMW(false),
876
+ concurrentLocker_1.ConcurrentLockerMW,
877
+ contextInjector_1.ContextInjectorMW,
878
+ envMW_1.EnvWriterMW,
879
+ ]),
880
+ tslib_1.__metadata("design:type", Function),
881
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
882
+ tslib_1.__metadata("design:returntype", Promise)
883
+ ], FxCore.prototype, "deployArtifacts", null);
884
+ tslib_1.__decorate([
885
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "localDebug", reset: true })]),
886
+ tslib_1.__metadata("design:type", Function),
887
+ tslib_1.__metadata("design:paramtypes", [Object]),
888
+ tslib_1.__metadata("design:returntype", Promise)
889
+ ], FxCore.prototype, "localDebug", null);
890
+ tslib_1.__decorate([
891
+ hooks_1.hooks([
892
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "deployAadManifest", reset: true }),
893
+ errorHandler_1.ErrorHandlerMW,
894
+ projectMigratorV3_1.ProjectMigratorMWV3,
895
+ questionMW_1.QuestionMW("deployAadManifest"),
896
+ envMW_1.EnvLoaderMW(true, true),
897
+ concurrentLocker_1.ConcurrentLockerMW,
898
+ contextInjector_1.ContextInjectorMW,
899
+ ]),
900
+ tslib_1.__metadata("design:type", Function),
901
+ tslib_1.__metadata("design:paramtypes", [Object]),
902
+ tslib_1.__metadata("design:returntype", Promise)
903
+ ], FxCore.prototype, "deployAadManifest", null);
904
+ tslib_1.__decorate([
905
+ hooks_1.hooks([
906
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "addWebpart", reset: true }),
907
+ errorHandler_1.ErrorHandlerMW,
908
+ questionMW_1.QuestionMW("addWebpart"),
909
+ projectMigratorV3_1.ProjectMigratorMWV3,
910
+ concurrentLocker_1.ConcurrentLockerMW,
911
+ ]),
912
+ tslib_1.__metadata("design:type", Function),
913
+ tslib_1.__metadata("design:paramtypes", [Object]),
914
+ tslib_1.__metadata("design:returntype", Promise)
915
+ ], FxCore.prototype, "addWebpart", null);
916
+ tslib_1.__decorate([
917
+ hooks_1.hooks([
918
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "publish", reset: true }),
919
+ errorHandler_1.ErrorHandlerMW,
920
+ projectMigratorV3_1.ProjectMigratorMWV3,
921
+ envMW_1.EnvLoaderMW(false),
922
+ concurrentLocker_1.ConcurrentLockerMW,
923
+ contextInjector_1.ContextInjectorMW,
924
+ envMW_1.EnvWriterMW,
925
+ ]),
926
+ tslib_1.__metadata("design:type", Function),
927
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
928
+ tslib_1.__metadata("design:returntype", Promise)
929
+ ], FxCore.prototype, "publishApplication", null);
930
+ tslib_1.__decorate([
931
+ hooks_1.hooks([
932
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "executeUserTask", reset: true }),
933
+ errorHandler_1.ErrorHandlerMW,
934
+ projectMigratorV3_1.ProjectMigratorMWV3,
935
+ envMW_1.EnvLoaderMW(false),
936
+ concurrentLocker_1.ConcurrentLockerMW,
937
+ ]),
938
+ tslib_1.__metadata("design:type", Function),
939
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
940
+ tslib_1.__metadata("design:returntype", Promise)
941
+ ], FxCore.prototype, "executeUserTask", null);
942
+ tslib_1.__decorate([
943
+ hooks_1.hooks([
944
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "buildAadManifest", reset: true }),
945
+ errorHandler_1.ErrorHandlerMW,
946
+ projectMigratorV3_1.ProjectMigratorMWV3,
947
+ envMW_1.EnvLoaderMW(false),
948
+ concurrentLocker_1.ConcurrentLockerMW,
949
+ ]),
950
+ tslib_1.__metadata("design:type", Function),
951
+ tslib_1.__metadata("design:paramtypes", [Object]),
952
+ tslib_1.__metadata("design:returntype", Promise)
953
+ ], FxCore.prototype, "buildAadManifest", null);
954
+ tslib_1.__decorate([
955
+ hooks_1.hooks([
956
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "deployTeamsManifest", reset: true }),
957
+ errorHandler_1.ErrorHandlerMW,
958
+ projectMigratorV3_1.ProjectMigratorMWV3,
959
+ questionMW_1.QuestionMW("selectTeamsAppManifest"),
960
+ envMW_1.EnvLoaderMW(true),
961
+ concurrentLocker_1.ConcurrentLockerMW,
962
+ contextInjector_1.ContextInjectorMW,
963
+ envMW_1.EnvWriterMW,
964
+ ]),
965
+ tslib_1.__metadata("design:type", Function),
966
+ tslib_1.__metadata("design:paramtypes", [Object, Object]),
967
+ tslib_1.__metadata("design:returntype", Promise)
968
+ ], FxCore.prototype, "deployTeamsManifest", null);
969
+ tslib_1.__decorate([
970
+ hooks_1.hooks([
971
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "updateTeamsAppCLIV3", reset: true }),
972
+ errorHandler_1.ErrorHandlerMW,
973
+ ]),
974
+ tslib_1.__metadata("design:type", Function),
975
+ tslib_1.__metadata("design:paramtypes", [Object]),
976
+ tslib_1.__metadata("design:returntype", Promise)
977
+ ], FxCore.prototype, "updateTeamsAppCLIV3", null);
978
+ tslib_1.__decorate([
979
+ hooks_1.hooks([
980
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "validateTeamsAppCLIV3", reset: true }),
981
+ errorHandler_1.ErrorHandlerMW,
982
+ ]),
983
+ tslib_1.__metadata("design:type", Function),
984
+ tslib_1.__metadata("design:paramtypes", [Object]),
985
+ tslib_1.__metadata("design:returntype", Promise)
986
+ ], FxCore.prototype, "validateTeamsAppCLIV3", null);
987
+ tslib_1.__decorate([
988
+ hooks_1.hooks([
989
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "packageTeamsAppCLIV3", reset: true }),
990
+ errorHandler_1.ErrorHandlerMW,
991
+ ]),
992
+ tslib_1.__metadata("design:type", Function),
993
+ tslib_1.__metadata("design:paramtypes", [Object]),
994
+ tslib_1.__metadata("design:returntype", Promise)
995
+ ], FxCore.prototype, "packageTeamsAppCLIV3", null);
996
+ tslib_1.__decorate([
997
+ hooks_1.hooks([
998
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "publishTeamsAppCLIV3", reset: true }),
999
+ errorHandler_1.ErrorHandlerMW,
1000
+ ]),
1001
+ tslib_1.__metadata("design:type", Function),
1002
+ tslib_1.__metadata("design:paramtypes", [Object]),
1003
+ tslib_1.__metadata("design:returntype", Promise)
1004
+ ], FxCore.prototype, "publishTeamsAppCLIV3", null);
1005
+ tslib_1.__decorate([
1006
+ hooks_1.hooks([
1007
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "validateApplication", reset: true }),
1008
+ questionMW_1.QuestionMW("validateTeamsApp"),
1009
+ ]),
1010
+ tslib_1.__metadata("design:type", Function),
1011
+ tslib_1.__metadata("design:paramtypes", [Object]),
1012
+ tslib_1.__metadata("design:returntype", Promise)
1013
+ ], FxCore.prototype, "validateApplication", null);
1014
+ tslib_1.__decorate([
1015
+ hooks_1.hooks([
1016
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "validateManifest", reset: true }),
1017
+ errorHandler_1.ErrorHandlerMW,
1018
+ envMW_1.EnvLoaderMW(true),
1019
+ concurrentLocker_1.ConcurrentLockerMW,
1020
+ ]),
1021
+ tslib_1.__metadata("design:type", Function),
1022
+ tslib_1.__metadata("design:paramtypes", [Object]),
1023
+ tslib_1.__metadata("design:returntype", Promise)
1024
+ ], FxCore.prototype, "validateManifest", null);
1025
+ tslib_1.__decorate([
1026
+ hooks_1.hooks([
1027
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "validateAppPackage", reset: true }),
1028
+ errorHandler_1.ErrorHandlerMW,
1029
+ concurrentLocker_1.ConcurrentLockerMW,
1030
+ ]),
1031
+ tslib_1.__metadata("design:type", Function),
1032
+ tslib_1.__metadata("design:paramtypes", [Object]),
1033
+ tslib_1.__metadata("design:returntype", Promise)
1034
+ ], FxCore.prototype, "validateAppPackage", null);
1035
+ tslib_1.__decorate([
1036
+ hooks_1.hooks([
1037
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "createAppPackage", reset: true }),
1038
+ errorHandler_1.ErrorHandlerMW,
1039
+ questionMW_1.QuestionMW("selectTeamsAppManifest"),
1040
+ envMW_1.EnvLoaderMW(true),
1041
+ concurrentLocker_1.ConcurrentLockerMW,
1042
+ ]),
1043
+ tslib_1.__metadata("design:type", Function),
1044
+ tslib_1.__metadata("design:paramtypes", [Object]),
1045
+ tslib_1.__metadata("design:returntype", Promise)
1046
+ ], FxCore.prototype, "createAppPackage", null);
1047
+ tslib_1.__decorate([
1048
+ hooks_1.hooks([
1049
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "preview", reset: true }),
1050
+ errorHandler_1.ErrorHandlerMW,
1051
+ questionMW_1.QuestionMW("previewWithTeamsAppManifest"),
1052
+ envMW_1.EnvLoaderMW(false),
1053
+ concurrentLocker_1.ConcurrentLockerMW,
1054
+ ]),
1055
+ tslib_1.__metadata("design:type", Function),
1056
+ tslib_1.__metadata("design:paramtypes", [Object]),
1057
+ tslib_1.__metadata("design:returntype", Promise)
1058
+ ], FxCore.prototype, "previewWithManifest", null);
1059
+ tslib_1.__decorate([
1060
+ hooks_1.hooks([
1061
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getDotEnvs", reset: true }),
1062
+ errorHandler_1.ErrorHandlerMW,
1063
+ ]),
1064
+ tslib_1.__metadata("design:type", Function),
1065
+ tslib_1.__metadata("design:paramtypes", [Object]),
1066
+ tslib_1.__metadata("design:returntype", Promise)
1067
+ ], FxCore.prototype, "getDotEnvs", null);
1068
+ tslib_1.__decorate([
1069
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "isEnvFile", reset: true })]),
1070
+ tslib_1.__metadata("design:type", Function),
1071
+ tslib_1.__metadata("design:paramtypes", [String, String]),
1072
+ tslib_1.__metadata("design:returntype", Promise)
1073
+ ], FxCore.prototype, "isEnvFile", null);
1074
+ tslib_1.__decorate([
1075
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getProjectId", reset: true })]),
1076
+ tslib_1.__metadata("design:type", Function),
1077
+ tslib_1.__metadata("design:paramtypes", [String]),
1078
+ tslib_1.__metadata("design:returntype", Promise)
1079
+ ], FxCore.prototype, "getProjectId", null);
1080
+ tslib_1.__decorate([
1081
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getProjectMetadata", reset: true })]),
1082
+ tslib_1.__metadata("design:type", Function),
1083
+ tslib_1.__metadata("design:paramtypes", [String]),
1084
+ tslib_1.__metadata("design:returntype", Promise)
1085
+ ], FxCore.prototype, "getProjectMetadata", null);
1086
+ tslib_1.__decorate([
1087
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getTeamsAppName", reset: true })]),
1088
+ tslib_1.__metadata("design:type", Function),
1089
+ tslib_1.__metadata("design:paramtypes", [String]),
1090
+ tslib_1.__metadata("design:returntype", Promise)
1091
+ ], FxCore.prototype, "getTeamsAppName", null);
1092
+ tslib_1.__decorate([
1093
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getProjectInfo", reset: true })]),
1094
+ tslib_1.__metadata("design:type", Function),
1095
+ tslib_1.__metadata("design:paramtypes", [String, String]),
1096
+ tslib_1.__metadata("design:returntype", Promise)
1097
+ ], FxCore.prototype, "getProjectInfo", null);
1098
+ tslib_1.__decorate([
1099
+ hooks_1.hooks([
1100
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "grantPermission", reset: true }),
1101
+ errorHandler_1.ErrorHandlerMW,
1102
+ projectMigratorV3_1.ProjectMigratorMWV3,
1103
+ questionMW_1.QuestionMW("grantPermission"),
1104
+ envMW_1.EnvLoaderMW(false, true),
1105
+ concurrentLocker_1.ConcurrentLockerMW,
1106
+ envMW_1.EnvWriterMW,
1107
+ ]),
1108
+ tslib_1.__metadata("design:type", Function),
1109
+ tslib_1.__metadata("design:paramtypes", [Object]),
1110
+ tslib_1.__metadata("design:returntype", Promise)
1111
+ ], FxCore.prototype, "grantPermission", null);
1112
+ tslib_1.__decorate([
1113
+ hooks_1.hooks([
1114
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "checkPermission", reset: true }),
1115
+ errorHandler_1.ErrorHandlerMW,
1116
+ projectMigratorV3_1.ProjectMigratorMWV3,
1117
+ questionMW_1.QuestionMW("listCollaborator"),
1118
+ envMW_1.EnvLoaderMW(false, true),
1119
+ concurrentLocker_1.ConcurrentLockerMW,
1120
+ envMW_1.EnvWriterMW,
1121
+ ]),
1122
+ tslib_1.__metadata("design:type", Function),
1123
+ tslib_1.__metadata("design:paramtypes", [Object]),
1124
+ tslib_1.__metadata("design:returntype", Promise)
1125
+ ], FxCore.prototype, "checkPermission", null);
1126
+ tslib_1.__decorate([
1127
+ hooks_1.hooks([
1128
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "listCollaborator", reset: true }),
1129
+ errorHandler_1.ErrorHandlerMW,
1130
+ projectMigratorV3_1.ProjectMigratorMWV3,
1131
+ questionMW_1.QuestionMW("listCollaborator"),
1132
+ envMW_1.EnvLoaderMW(false, true),
1133
+ concurrentLocker_1.ConcurrentLockerMW,
1134
+ envMW_1.EnvWriterMW,
1135
+ ]),
1136
+ tslib_1.__metadata("design:type", Function),
1137
+ tslib_1.__metadata("design:paramtypes", [Object]),
1138
+ tslib_1.__metadata("design:returntype", Promise)
1139
+ ], FxCore.prototype, "listCollaborator", null);
1140
+ tslib_1.__decorate([
1141
+ hooks_1.hooks([
1142
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "getSelectedEnv", reset: true }),
1143
+ errorHandler_1.ErrorHandlerMW,
1144
+ envMW_1.EnvLoaderMW(false),
1145
+ ]),
404
1146
  tslib_1.__metadata("design:type", Function),
405
1147
  tslib_1.__metadata("design:paramtypes", [Object]),
406
1148
  tslib_1.__metadata("design:returntype", Promise)
407
1149
  ], FxCore.prototype, "getSelectedEnv", null);
408
1150
  tslib_1.__decorate([
409
- hooks_1.hooks([errorHandler_1.ErrorHandlerMW]),
1151
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "createLocalCrypto" })]),
1152
+ tslib_1.__metadata("design:type", Function),
1153
+ tslib_1.__metadata("design:paramtypes", [String]),
1154
+ tslib_1.__metadata("design:returntype", Promise)
1155
+ ], FxCore.prototype, "createLocalCrypto", null);
1156
+ tslib_1.__decorate([
1157
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "encrypt", reset: true }), errorHandler_1.ErrorHandlerMW]),
410
1158
  tslib_1.__metadata("design:type", Function),
411
1159
  tslib_1.__metadata("design:paramtypes", [String, Object]),
412
1160
  tslib_1.__metadata("design:returntype", Promise)
413
1161
  ], FxCore.prototype, "encrypt", null);
414
1162
  tslib_1.__decorate([
415
- hooks_1.hooks([errorHandler_1.ErrorHandlerMW]),
1163
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "decrypt", reset: true }), errorHandler_1.ErrorHandlerMW]),
416
1164
  tslib_1.__metadata("design:type", Function),
417
1165
  tslib_1.__metadata("design:paramtypes", [String, Object]),
418
1166
  tslib_1.__metadata("design:returntype", Promise)
419
1167
  ], FxCore.prototype, "decrypt", null);
1168
+ tslib_1.__decorate([
1169
+ hooks_1.hooks([
1170
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "createEnv", reset: true }),
1171
+ errorHandler_1.ErrorHandlerMW,
1172
+ questionMW_1.QuestionMW("createNewEnv"),
1173
+ concurrentLocker_1.ConcurrentLockerMW,
1174
+ ]),
1175
+ tslib_1.__metadata("design:type", Function),
1176
+ tslib_1.__metadata("design:paramtypes", [Object]),
1177
+ tslib_1.__metadata("design:returntype", Promise)
1178
+ ], FxCore.prototype, "createEnv", null);
1179
+ tslib_1.__decorate([
1180
+ hooks_1.hooks([globalVars_1.ErrorContextMW({ component: "FxCore", stage: "phantomMigrationV3", reset: true })]),
1181
+ tslib_1.__metadata("design:type", Function),
1182
+ tslib_1.__metadata("design:paramtypes", [Object]),
1183
+ tslib_1.__metadata("design:returntype", Promise)
1184
+ ], FxCore.prototype, "phantomMigrationV3", null);
1185
+ tslib_1.__decorate([
1186
+ hooks_1.hooks([errorHandler_1.ErrorHandlerMW, projectMigratorV3_1.ProjectMigratorMWV3]),
1187
+ tslib_1.__metadata("design:type", Function),
1188
+ tslib_1.__metadata("design:paramtypes", [Object]),
1189
+ tslib_1.__metadata("design:returntype", Object)
1190
+ ], FxCore.prototype, "innerMigrationV3", null);
1191
+ tslib_1.__decorate([
1192
+ hooks_1.hooks([
1193
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "projectVersionCheck", reset: true }),
1194
+ errorHandler_1.ErrorHandlerMW,
1195
+ ]),
1196
+ tslib_1.__metadata("design:type", Function),
1197
+ tslib_1.__metadata("design:paramtypes", [Object]),
1198
+ tslib_1.__metadata("design:returntype", Promise)
1199
+ ], FxCore.prototype, "projectVersionCheck", null);
1200
+ tslib_1.__decorate([
1201
+ hooks_1.hooks([
1202
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "preProvisionForVS" }),
1203
+ errorHandler_1.ErrorHandlerMW,
1204
+ projectMigratorV3_1.ProjectMigratorMWV3,
1205
+ envMW_1.EnvLoaderMW(false),
1206
+ concurrentLocker_1.ConcurrentLockerMW,
1207
+ contextInjector_1.ContextInjectorMW,
1208
+ ]),
1209
+ tslib_1.__metadata("design:type", Function),
1210
+ tslib_1.__metadata("design:paramtypes", [Object]),
1211
+ tslib_1.__metadata("design:returntype", Promise)
1212
+ ], FxCore.prototype, "preProvisionForVS", null);
1213
+ tslib_1.__decorate([
1214
+ hooks_1.hooks([
1215
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "preCheckYmlAndEnvForVS" }),
1216
+ errorHandler_1.ErrorHandlerMW,
1217
+ projectMigratorV3_1.ProjectMigratorMWV3,
1218
+ envMW_1.EnvLoaderMW(false),
1219
+ concurrentLocker_1.ConcurrentLockerMW,
1220
+ contextInjector_1.ContextInjectorMW,
1221
+ ]),
1222
+ tslib_1.__metadata("design:type", Function),
1223
+ tslib_1.__metadata("design:paramtypes", [Object]),
1224
+ tslib_1.__metadata("design:returntype", Promise)
1225
+ ], FxCore.prototype, "preCheckYmlAndEnvForVS", null);
1226
+ tslib_1.__decorate([
1227
+ hooks_1.hooks([
1228
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "publishInDeveloperPortal" }),
1229
+ errorHandler_1.ErrorHandlerMW,
1230
+ concurrentLocker_1.ConcurrentLockerMW,
1231
+ contextInjector_1.ContextInjectorMW,
1232
+ ]),
1233
+ tslib_1.__metadata("design:type", Function),
1234
+ tslib_1.__metadata("design:paramtypes", [Object]),
1235
+ tslib_1.__metadata("design:returntype", Promise)
1236
+ ], FxCore.prototype, "publishInDeveloperPortal", null);
1237
+ tslib_1.__decorate([
1238
+ hooks_1.hooks([
1239
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "copilotPluginAddAPI" }),
1240
+ errorHandler_1.ErrorHandlerMW,
1241
+ questionMW_1.QuestionMW("copilotPluginAddAPI"),
1242
+ concurrentLocker_1.ConcurrentLockerMW,
1243
+ ]),
1244
+ tslib_1.__metadata("design:type", Function),
1245
+ tslib_1.__metadata("design:paramtypes", [Object]),
1246
+ tslib_1.__metadata("design:returntype", Promise)
1247
+ ], FxCore.prototype, "copilotPluginAddAPI", null);
1248
+ tslib_1.__decorate([
1249
+ hooks_1.hooks([
1250
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "copilotPluginLoadOpenAIManifest" }),
1251
+ errorHandler_1.ErrorHandlerMW,
1252
+ ]),
1253
+ tslib_1.__metadata("design:type", Function),
1254
+ tslib_1.__metadata("design:paramtypes", [Object]),
1255
+ tslib_1.__metadata("design:returntype", Promise)
1256
+ ], FxCore.prototype, "copilotPluginLoadOpenAIManifest", null);
1257
+ tslib_1.__decorate([
1258
+ hooks_1.hooks([
1259
+ globalVars_1.ErrorContextMW({ component: "FxCore", stage: "copilotPluginListOperations" }),
1260
+ errorHandler_1.ErrorHandlerMW,
1261
+ ]),
1262
+ tslib_1.__metadata("design:type", Function),
1263
+ tslib_1.__metadata("design:paramtypes", [Object]),
1264
+ tslib_1.__metadata("design:returntype", Promise)
1265
+ ], FxCore.prototype, "copilotPluginListOperations", null);
420
1266
  exports.FxCore = FxCore;
421
1267
  //# sourceMappingURL=FxCore.js.map