@microsoft/teamsfx-core 1.16.1 → 1.16.3-alpha.311dfaffe.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 (758) hide show
  1. package/build/common/azure-hosting/azureHosting.d.ts.map +1 -1
  2. package/build/common/azure-hosting/azureHosting.js +3 -3
  3. package/build/common/azure-hosting/azureHosting.js.map +1 -1
  4. package/build/common/constants.d.ts +2 -1
  5. package/build/common/constants.d.ts.map +1 -1
  6. package/build/common/constants.js +2 -1
  7. package/build/common/constants.js.map +1 -1
  8. package/build/common/featureFlags.d.ts +1 -0
  9. package/build/common/featureFlags.d.ts.map +1 -1
  10. package/build/common/featureFlags.js +5 -1
  11. package/build/common/featureFlags.js.map +1 -1
  12. package/build/common/local/localEnvManager.d.ts.map +1 -1
  13. package/build/common/local/localEnvManager.js +1 -4
  14. package/build/common/local/localEnvManager.js.map +1 -1
  15. package/build/common/local/projectSettingsHelper.d.ts.map +1 -1
  16. package/build/common/local/projectSettingsHelper.js +11 -51
  17. package/build/common/local/projectSettingsHelper.js.map +1 -1
  18. package/build/common/localStateProvider.d.ts.map +1 -1
  19. package/build/common/localStateProvider.js +1 -2
  20. package/build/common/localStateProvider.js.map +1 -1
  21. package/build/common/samples-config.json +12 -0
  22. package/build/common/templates-config.json +2 -2
  23. package/build/common/tools.d.ts +1 -0
  24. package/build/common/tools.d.ts.map +1 -1
  25. package/build/common/tools.js +9 -6
  26. package/build/common/tools.js.map +1 -1
  27. package/build/component/code/appSettingUtils.js +2 -2
  28. package/build/component/code/appSettingUtils.js.map +1 -1
  29. package/build/component/code/spfxTabCode.d.ts.map +1 -1
  30. package/build/component/code/spfxTabCode.js +10 -10
  31. package/build/component/code/spfxTabCode.js.map +1 -1
  32. package/build/component/core.js +9 -9
  33. package/build/component/core.js.map +1 -1
  34. package/build/component/debug.d.ts.map +1 -1
  35. package/build/component/debug.js +65 -51
  36. package/build/component/debug.js.map +1 -1
  37. package/build/component/debugHandler/appManifest.d.ts +1 -1
  38. package/build/component/debugHandler/appManifest.d.ts.map +1 -1
  39. package/build/component/debugHandler/appManifest.js +27 -25
  40. package/build/component/debugHandler/appManifest.js.map +1 -1
  41. package/build/component/debugHandler/bot.d.ts +0 -1
  42. package/build/component/debugHandler/bot.d.ts.map +1 -1
  43. package/build/component/debugHandler/bot.js +36 -31
  44. package/build/component/debugHandler/bot.js.map +1 -1
  45. package/build/component/debugHandler/error.d.ts +3 -3
  46. package/build/component/debugHandler/error.d.ts.map +1 -1
  47. package/build/component/debugHandler/error.js +14 -14
  48. package/build/component/debugHandler/error.js.map +1 -1
  49. package/build/component/debugHandler/index.d.ts +1 -0
  50. package/build/component/debugHandler/index.d.ts.map +1 -1
  51. package/build/component/debugHandler/index.js +1 -0
  52. package/build/component/debugHandler/index.js.map +1 -1
  53. package/build/component/debugHandler/localEnvProvider.js +1 -1
  54. package/build/component/debugHandler/localEnvProvider.js.map +1 -1
  55. package/build/component/debugHandler/sso.d.ts +0 -1
  56. package/build/component/debugHandler/sso.d.ts.map +1 -1
  57. package/build/component/debugHandler/sso.js +80 -69
  58. package/build/component/debugHandler/sso.js.map +1 -1
  59. package/build/component/debugHandler/tab.d.ts.map +1 -1
  60. package/build/component/debugHandler/tab.js +11 -12
  61. package/build/component/debugHandler/tab.js.map +1 -1
  62. package/build/component/error.d.ts +3 -0
  63. package/build/component/error.d.ts.map +1 -1
  64. package/build/component/error.js +11 -1
  65. package/build/component/error.js.map +1 -1
  66. package/build/component/feature/api.js +3 -3
  67. package/build/component/feature/api.js.map +1 -1
  68. package/build/component/feature/apiconnector/sampleHandler.d.ts.map +1 -1
  69. package/build/component/feature/apiconnector/sampleHandler.js +2 -2
  70. package/build/component/feature/apiconnector/sampleHandler.js.map +1 -1
  71. package/build/component/feature/apiconnector/telemetry.js +2 -2
  72. package/build/component/feature/apiconnector/telemetry.js.map +1 -1
  73. package/build/component/feature/apim.d.ts.map +1 -1
  74. package/build/component/feature/apim.js +3 -3
  75. package/build/component/feature/apim.js.map +1 -1
  76. package/build/component/feature/bot.d.ts.map +1 -1
  77. package/build/component/feature/bot.js +5 -4
  78. package/build/component/feature/bot.js.map +1 -1
  79. package/build/component/feature/keyVault.js +2 -2
  80. package/build/component/feature/keyVault.js.map +1 -1
  81. package/build/component/feature/spfx.d.ts.map +1 -1
  82. package/build/component/feature/spfx.js +5 -12
  83. package/build/component/feature/spfx.js.map +1 -1
  84. package/build/component/feature/sql.d.ts.map +1 -1
  85. package/build/component/feature/sql.js +3 -3
  86. package/build/component/feature/sql.js.map +1 -1
  87. package/build/component/feature/sso.d.ts.map +1 -1
  88. package/build/component/feature/sso.js +45 -44
  89. package/build/component/feature/sso.js.map +1 -1
  90. package/build/component/feature/tab.js +2 -2
  91. package/build/component/feature/tab.js.map +1 -1
  92. package/build/component/migrate.d.ts.map +1 -1
  93. package/build/component/migrate.js +41 -47
  94. package/build/component/migrate.js.map +1 -1
  95. package/build/component/provisionUtils.js +2 -2
  96. package/build/component/provisionUtils.js.map +1 -1
  97. package/build/component/questionV3.d.ts +3 -0
  98. package/build/component/questionV3.d.ts.map +1 -1
  99. package/build/component/questionV3.js +27 -4
  100. package/build/component/questionV3.js.map +1 -1
  101. package/build/component/resource/aadApp/aadApp.d.ts +5 -0
  102. package/build/component/resource/aadApp/aadApp.d.ts.map +1 -1
  103. package/build/component/resource/aadApp/aadApp.js +60 -13
  104. package/build/component/resource/aadApp/aadApp.js.map +1 -1
  105. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppClient.d.ts +0 -0
  106. package/build/component/resource/aadApp/aadAppClient.d.ts.map +1 -0
  107. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppClient.js +2 -2
  108. package/build/component/resource/aadApp/aadAppClient.js.map +1 -0
  109. package/build/{plugins/resource/aad/plugin.d.ts → component/resource/aadApp/aadAppForTeamsImpl.d.ts} +6 -9
  110. package/build/component/resource/aadApp/aadAppForTeamsImpl.d.ts.map +1 -0
  111. package/build/{plugins/resource/aad/plugin.js → component/resource/aadApp/aadAppForTeamsImpl.js} +44 -119
  112. package/build/component/resource/aadApp/aadAppForTeamsImpl.js.map +1 -0
  113. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppManifestManager.d.ts +0 -0
  114. package/build/component/resource/aadApp/aadAppManifestManager.d.ts.map +1 -0
  115. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppManifestManager.js +0 -0
  116. package/build/component/resource/aadApp/aadAppManifestManager.js.map +1 -0
  117. package/build/{plugins/resource/aad → component/resource/aadApp}/appStudio.d.ts +0 -0
  118. package/build/component/resource/aadApp/appStudio.d.ts.map +1 -0
  119. package/build/{plugins/resource/aad → component/resource/aadApp}/appStudio.js +1 -1
  120. package/build/component/resource/aadApp/appStudio.js.map +1 -0
  121. package/build/{plugins/resource/aad → component/resource/aadApp}/constants.d.ts +0 -0
  122. package/build/component/resource/aadApp/constants.d.ts.map +1 -0
  123. package/build/{plugins/resource/aad → component/resource/aadApp}/constants.js +0 -0
  124. package/build/component/resource/aadApp/constants.js.map +1 -0
  125. package/build/{plugins/resource/aad → component/resource/aadApp}/errorCodes.d.ts +0 -0
  126. package/build/component/resource/aadApp/errorCodes.d.ts.map +1 -0
  127. package/build/{plugins/resource/aad → component/resource/aadApp}/errorCodes.js +0 -0
  128. package/build/component/resource/aadApp/errorCodes.js.map +1 -0
  129. package/build/{plugins/resource/aad → component/resource/aadApp}/errors.d.ts +0 -0
  130. package/build/component/resource/aadApp/errors.d.ts.map +1 -0
  131. package/build/{plugins/resource/aad → component/resource/aadApp}/errors.js +0 -0
  132. package/build/component/resource/aadApp/errors.js.map +1 -0
  133. package/build/{plugins/resource/aad → component/resource/aadApp}/graph.d.ts +0 -0
  134. package/build/component/resource/aadApp/graph.d.ts.map +1 -0
  135. package/build/{plugins/resource/aad → component/resource/aadApp}/graph.js +0 -0
  136. package/build/component/resource/aadApp/graph.js.map +1 -0
  137. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADApplication.d.ts +0 -0
  138. package/build/component/resource/aadApp/interfaces/AADApplication.d.ts.map +1 -0
  139. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADApplication.js +0 -0
  140. package/build/component/resource/aadApp/interfaces/AADApplication.js.map +1 -0
  141. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADManifest.d.ts +0 -0
  142. package/build/component/resource/aadApp/interfaces/AADManifest.d.ts.map +1 -0
  143. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADManifest.js +0 -0
  144. package/build/component/resource/aadApp/interfaces/AADManifest.js.map +1 -0
  145. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADApplication.d.ts +0 -0
  146. package/build/component/resource/aadApp/interfaces/IAADApplication.d.ts.map +1 -0
  147. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADApplication.js +0 -0
  148. package/build/component/resource/aadApp/interfaces/IAADApplication.js.map +1 -0
  149. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADDefinition.d.ts +0 -0
  150. package/build/component/resource/aadApp/interfaces/IAADDefinition.d.ts.map +1 -0
  151. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADDefinition.js +0 -0
  152. package/build/component/resource/aadApp/interfaces/IAADDefinition.js.map +1 -0
  153. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermission.d.ts +0 -0
  154. package/build/component/resource/aadApp/interfaces/IPermission.d.ts.map +1 -0
  155. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermission.js +0 -0
  156. package/build/component/resource/aadApp/interfaces/IPermission.js.map +1 -0
  157. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermissionList.d.ts +0 -0
  158. package/build/component/resource/aadApp/interfaces/IPermissionList.d.ts.map +1 -0
  159. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermissionList.js +0 -0
  160. package/build/component/resource/aadApp/interfaces/IPermissionList.js.map +1 -0
  161. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/models.d.ts +0 -0
  162. package/build/component/resource/aadApp/interfaces/models.d.ts.map +1 -0
  163. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/models.js +0 -0
  164. package/build/component/resource/aadApp/interfaces/models.js.map +1 -0
  165. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/index.d.ts +0 -0
  166. package/build/component/resource/aadApp/permissions/index.d.ts.map +1 -0
  167. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/index.js +1 -1
  168. package/build/component/resource/aadApp/permissions/index.js.map +1 -0
  169. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/permissions.json +0 -0
  170. package/build/{plugins/resource/aad → component/resource/aadApp}/results.d.ts +0 -0
  171. package/build/component/resource/aadApp/results.d.ts.map +1 -0
  172. package/build/{plugins/resource/aad → component/resource/aadApp}/results.js +0 -0
  173. package/build/component/resource/aadApp/results.js.map +1 -0
  174. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/aadManifestHelper.d.ts +0 -0
  175. package/build/component/resource/aadApp/utils/aadManifestHelper.d.ts.map +1 -0
  176. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/aadManifestHelper.js +0 -0
  177. package/build/component/resource/aadApp/utils/aadManifestHelper.js.map +1 -0
  178. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/configs.d.ts +0 -0
  179. package/build/component/resource/aadApp/utils/configs.d.ts.map +1 -0
  180. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/configs.js +9 -11
  181. package/build/component/resource/aadApp/utils/configs.js.map +1 -0
  182. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/dialog.d.ts +0 -0
  183. package/build/component/resource/aadApp/utils/dialog.d.ts.map +1 -0
  184. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/dialog.js +0 -0
  185. package/build/component/resource/aadApp/utils/dialog.js.map +1 -0
  186. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/format.d.ts +0 -0
  187. package/build/component/resource/aadApp/utils/format.d.ts.map +1 -0
  188. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/format.js +0 -0
  189. package/build/component/resource/aadApp/utils/format.js.map +1 -0
  190. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/telemetry.d.ts +0 -0
  191. package/build/component/resource/aadApp/utils/telemetry.d.ts.map +1 -0
  192. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/telemetry.js +1 -1
  193. package/build/component/resource/aadApp/utils/telemetry.js.map +1 -0
  194. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/tokenProvider.d.ts +0 -0
  195. package/build/component/resource/aadApp/utils/tokenProvider.d.ts.map +1 -0
  196. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/tokenProvider.js +5 -5
  197. package/build/component/resource/aadApp/utils/tokenProvider.js.map +1 -0
  198. package/build/component/resource/aadApp/utils.d.ts +3 -1
  199. package/build/component/resource/aadApp/utils.d.ts.map +1 -1
  200. package/build/component/resource/aadApp/utils.js +165 -1
  201. package/build/component/resource/aadApp/utils.js.map +1 -1
  202. package/build/component/resource/apim/config.d.ts.map +1 -1
  203. package/build/component/resource/apim/config.js +5 -6
  204. package/build/component/resource/apim/config.js.map +1 -1
  205. package/build/component/resource/apim/factory.js +2 -2
  206. package/build/component/resource/apim/factory.js.map +1 -1
  207. package/build/component/resource/appManifest/appManifest.d.ts +1 -1
  208. package/build/component/resource/appManifest/appManifest.d.ts.map +1 -1
  209. package/build/component/resource/appManifest/appManifest.js +3 -3
  210. package/build/component/resource/appManifest/appManifest.js.map +1 -1
  211. package/build/component/resource/appManifest/constants.d.ts +1 -0
  212. package/build/component/resource/appManifest/constants.d.ts.map +1 -1
  213. package/build/component/resource/appManifest/constants.js +28 -8
  214. package/build/component/resource/appManifest/constants.js.map +1 -1
  215. package/build/component/resource/appManifest/utils.d.ts +1 -1
  216. package/build/component/resource/appManifest/utils.d.ts.map +1 -1
  217. package/build/component/resource/appManifest/utils.js +4 -6
  218. package/build/component/resource/appManifest/utils.js.map +1 -1
  219. package/build/component/resource/azureSql/config.js +3 -3
  220. package/build/component/resource/azureSql/config.js.map +1 -1
  221. package/build/component/resource/keyVault.d.ts +2 -0
  222. package/build/component/resource/keyVault.d.ts.map +1 -1
  223. package/build/component/resource/keyVault.js +18 -0
  224. package/build/component/resource/keyVault.js.map +1 -1
  225. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/constants.d.ts +0 -0
  226. package/build/component/resource/simpleAuth/constants.d.ts.map +1 -0
  227. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/constants.js +0 -0
  228. package/build/component/resource/simpleAuth/constants.js.map +1 -0
  229. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/errors.d.ts +0 -0
  230. package/build/component/resource/simpleAuth/errors.d.ts.map +1 -0
  231. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/errors.js +0 -0
  232. package/build/component/resource/simpleAuth/errors.js.map +1 -0
  233. package/build/component/resource/{simpleAuth.d.ts → simpleAuth/index.d.ts} +1 -1
  234. package/build/component/resource/simpleAuth/index.d.ts.map +1 -0
  235. package/build/component/resource/{simpleAuth.js → simpleAuth/index.js} +10 -10
  236. package/build/component/resource/simpleAuth/index.js.map +1 -0
  237. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/result.d.ts +0 -0
  238. package/build/component/resource/simpleAuth/result.d.ts.map +1 -0
  239. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/result.js +0 -0
  240. package/build/component/resource/simpleAuth/result.js.map +1 -0
  241. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/common.d.ts +0 -0
  242. package/build/component/resource/simpleAuth/utils/common.d.ts.map +1 -0
  243. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/common.js +0 -0
  244. package/build/component/resource/simpleAuth/utils/common.js.map +1 -0
  245. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/dialog.d.ts +0 -0
  246. package/build/component/resource/simpleAuth/utils/dialog.d.ts.map +1 -0
  247. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/dialog.js +0 -0
  248. package/build/component/resource/simpleAuth/utils/dialog.js.map +1 -0
  249. package/build/{plugins/resource/keyvault → component/resource/simpleAuth}/utils/telemetry.d.ts +0 -0
  250. package/build/component/resource/simpleAuth/utils/telemetry.d.ts.map +1 -0
  251. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/telemetry.js +0 -0
  252. package/build/component/resource/simpleAuth/utils/telemetry.js.map +1 -0
  253. package/build/{plugins → component}/resource/spfx/depsChecker/dependencyChecker.d.ts +0 -0
  254. package/build/component/resource/spfx/depsChecker/dependencyChecker.d.ts.map +1 -0
  255. package/build/{plugins → component}/resource/spfx/depsChecker/dependencyChecker.js +0 -0
  256. package/build/component/resource/spfx/depsChecker/dependencyChecker.js.map +1 -0
  257. package/build/{plugins → component}/resource/spfx/depsChecker/generatorChecker.d.ts +0 -0
  258. package/build/component/resource/spfx/depsChecker/generatorChecker.d.ts.map +1 -0
  259. package/build/{plugins → component}/resource/spfx/depsChecker/generatorChecker.js +16 -7
  260. package/build/component/resource/spfx/depsChecker/generatorChecker.js.map +1 -0
  261. package/build/{plugins → component}/resource/spfx/depsChecker/yoChecker.d.ts +0 -0
  262. package/build/component/resource/spfx/depsChecker/yoChecker.d.ts.map +1 -0
  263. package/build/{plugins → component}/resource/spfx/depsChecker/yoChecker.js +0 -0
  264. package/build/component/resource/spfx/depsChecker/yoChecker.js.map +1 -0
  265. package/build/{plugins → component}/resource/spfx/error.d.ts +0 -0
  266. package/build/component/resource/spfx/error.d.ts.map +1 -0
  267. package/build/{plugins → component}/resource/spfx/error.js +5 -4
  268. package/build/component/resource/spfx/error.js.map +1 -0
  269. package/build/component/resource/spfx/index.d.ts.map +1 -1
  270. package/build/component/resource/spfx/index.js +9 -9
  271. package/build/component/resource/spfx/index.js.map +1 -1
  272. package/build/{plugins → component}/resource/spfx/spoClient.d.ts +0 -0
  273. package/build/component/resource/spfx/spoClient.d.ts.map +1 -0
  274. package/build/{plugins → component}/resource/spfx/spoClient.js +0 -0
  275. package/build/component/resource/spfx/spoClient.js.map +1 -0
  276. package/build/{plugins → component}/resource/spfx/utils/constants.d.ts +3 -0
  277. package/build/component/resource/spfx/utils/constants.d.ts.map +1 -0
  278. package/build/{plugins → component}/resource/spfx/utils/constants.js +3 -0
  279. package/build/component/resource/spfx/utils/constants.js.map +1 -0
  280. package/build/{plugins → component}/resource/spfx/utils/progress-helper.d.ts +0 -0
  281. package/build/component/resource/spfx/utils/progress-helper.d.ts.map +1 -0
  282. package/build/{plugins → component}/resource/spfx/utils/progress-helper.js +0 -0
  283. package/build/component/resource/spfx/utils/progress-helper.js.map +1 -0
  284. package/build/{plugins → component}/resource/spfx/utils/questions.d.ts +0 -0
  285. package/build/component/resource/spfx/utils/questions.d.ts.map +1 -0
  286. package/build/{plugins → component}/resource/spfx/utils/questions.js +8 -2
  287. package/build/component/resource/spfx/utils/questions.js.map +1 -0
  288. package/build/{plugins → component}/resource/spfx/utils/telemetry-helper.d.ts +0 -0
  289. package/build/component/resource/spfx/utils/telemetry-helper.d.ts.map +1 -0
  290. package/build/{plugins → component}/resource/spfx/utils/telemetry-helper.js +0 -0
  291. package/build/component/resource/spfx/utils/telemetry-helper.js.map +1 -0
  292. package/build/{plugins → component}/resource/spfx/utils/telemetryEvents.d.ts +0 -0
  293. package/build/component/resource/spfx/utils/telemetryEvents.d.ts.map +1 -0
  294. package/build/{plugins → component}/resource/spfx/utils/telemetryEvents.js +0 -0
  295. package/build/component/resource/spfx/utils/telemetryEvents.js.map +1 -0
  296. package/build/{plugins → component}/resource/spfx/utils/utils.d.ts +2 -1
  297. package/build/component/resource/spfx/utils/utils.d.ts.map +1 -0
  298. package/build/{plugins → component}/resource/spfx/utils/utils.js +9 -4
  299. package/build/component/resource/spfx/utils/utils.js.map +1 -0
  300. package/build/core/FxCore.d.ts +10 -44
  301. package/build/core/FxCore.d.ts.map +1 -1
  302. package/build/core/FxCore.js +54 -696
  303. package/build/core/FxCore.js.map +1 -1
  304. package/build/core/collaborator.d.ts +6 -1
  305. package/build/core/collaborator.d.ts.map +1 -1
  306. package/build/core/collaborator.js +75 -23
  307. package/build/core/collaborator.js.map +1 -1
  308. package/build/core/environment.d.ts.map +1 -1
  309. package/build/core/environment.js +2 -7
  310. package/build/core/environment.js.map +1 -1
  311. package/build/core/generateAadManifestTemplate.d.ts +1 -1
  312. package/build/core/generateAadManifestTemplate.d.ts.map +1 -1
  313. package/build/core/generateAadManifestTemplate.js +11 -14
  314. package/build/core/generateAadManifestTemplate.js.map +1 -1
  315. package/build/core/globalVars.d.ts +0 -1
  316. package/build/core/globalVars.d.ts.map +1 -1
  317. package/build/core/globalVars.js +1 -5
  318. package/build/core/globalVars.js.map +1 -1
  319. package/build/core/index.d.ts +0 -5
  320. package/build/core/index.d.ts.map +1 -1
  321. package/build/core/index.js +0 -7
  322. package/build/core/index.js.map +1 -1
  323. package/build/core/middleware/MigrationUtils.d.ts +1 -1
  324. package/build/core/middleware/MigrationUtils.d.ts.map +1 -1
  325. package/build/core/middleware/MigrationUtils.js +2 -2
  326. package/build/core/middleware/MigrationUtils.js.map +1 -1
  327. package/build/core/middleware/consolidateLocalRemote.js +1 -1
  328. package/build/core/middleware/consolidateLocalRemote.js.map +1 -1
  329. package/build/core/middleware/envInfoLoader.d.ts.map +1 -1
  330. package/build/core/middleware/envInfoLoader.js +1 -4
  331. package/build/core/middleware/envInfoLoader.js.map +1 -1
  332. package/build/core/middleware/envInfoLoaderV3.d.ts.map +1 -1
  333. package/build/core/middleware/envInfoLoaderV3.js +1 -4
  334. package/build/core/middleware/envInfoLoaderV3.js.map +1 -1
  335. package/build/core/middleware/projectMigrator.js +2 -2
  336. package/build/core/middleware/projectMigrator.js.map +1 -1
  337. package/build/core/middleware/projectSettingsLoader.d.ts.map +1 -1
  338. package/build/core/middleware/projectSettingsLoader.js +1 -10
  339. package/build/core/middleware/projectSettingsLoader.js.map +1 -1
  340. package/build/core/middleware/projectSettingsWriter.d.ts.map +1 -1
  341. package/build/core/middleware/projectSettingsWriter.js +1 -3
  342. package/build/core/middleware/projectSettingsWriter.js.map +1 -1
  343. package/build/core/middleware/questionModel.d.ts +1 -10
  344. package/build/core/middleware/questionModel.d.ts.map +1 -1
  345. package/build/core/middleware/questionModel.js +26 -225
  346. package/build/core/middleware/questionModel.js.map +1 -1
  347. package/build/index.d.ts +2 -8
  348. package/build/index.d.ts.map +1 -1
  349. package/build/index.js +4 -8
  350. package/build/index.js.map +1 -1
  351. package/build/plugins/resource/appstudio/appStudio.d.ts.map +1 -1
  352. package/build/plugins/resource/appstudio/appStudio.js +8 -1
  353. package/build/plugins/resource/appstudio/appStudio.js.map +1 -1
  354. package/build/plugins/resource/appstudio/errors.d.ts +4 -0
  355. package/build/plugins/resource/appstudio/errors.d.ts.map +1 -1
  356. package/build/plugins/resource/appstudio/errors.js +7 -0
  357. package/build/plugins/resource/appstudio/errors.js.map +1 -1
  358. package/build/plugins/resource/appstudio/index.js +2 -2
  359. package/build/plugins/resource/appstudio/index.js.map +1 -1
  360. package/build/plugins/resource/appstudio/plugin.d.ts.map +1 -1
  361. package/build/plugins/resource/appstudio/plugin.js +21 -21
  362. package/build/plugins/resource/appstudio/plugin.js.map +1 -1
  363. package/build/plugins/resource/appstudio/v2/index.js +2 -2
  364. package/build/plugins/resource/appstudio/v2/index.js.map +1 -1
  365. package/build/plugins/resource/bot/configs/teamsBotConfig.js +2 -2
  366. package/build/plugins/resource/bot/configs/teamsBotConfig.js.map +1 -1
  367. package/build/plugins/resource/bot/errors.d.ts.map +1 -1
  368. package/build/plugins/resource/bot/errors.js +2 -2
  369. package/build/plugins/resource/bot/errors.js.map +1 -1
  370. package/build/plugins/resource/bot/functionsHostedBot/plugin.js +8 -8
  371. package/build/plugins/resource/bot/functionsHostedBot/plugin.js.map +1 -1
  372. package/build/plugins/resource/bot/index.d.ts.map +1 -1
  373. package/build/plugins/resource/bot/index.js +9 -7
  374. package/build/plugins/resource/bot/index.js.map +1 -1
  375. package/build/plugins/resource/bot/plugin.d.ts.map +1 -1
  376. package/build/plugins/resource/bot/plugin.js +16 -15
  377. package/build/plugins/resource/bot/plugin.js.map +1 -1
  378. package/build/plugins/resource/bot/question.d.ts.map +1 -1
  379. package/build/plugins/resource/bot/question.js +9 -10
  380. package/build/plugins/resource/bot/question.js.map +1 -1
  381. package/build/plugins/resource/function/plugin.js +3 -4
  382. package/build/plugins/resource/function/plugin.js.map +1 -1
  383. package/build/plugins/resource/function/utils/depsChecker/funcHelper.d.ts +1 -1
  384. package/build/plugins/resource/function/utils/depsChecker/funcHelper.d.ts.map +1 -1
  385. package/build/plugins/resource/index.d.ts +0 -5
  386. package/build/plugins/resource/index.d.ts.map +1 -1
  387. package/build/plugins/resource/index.js +0 -5
  388. package/build/plugins/resource/index.js.map +1 -1
  389. package/build/plugins/solution/fx-solution/ResourcePluginContainer.d.ts +0 -10
  390. package/build/plugins/solution/fx-solution/ResourcePluginContainer.d.ts.map +1 -1
  391. package/build/plugins/solution/fx-solution/ResourcePluginContainer.js +0 -10
  392. package/build/plugins/solution/fx-solution/ResourcePluginContainer.js.map +1 -1
  393. package/build/plugins/solution/fx-solution/arm.d.ts.map +1 -1
  394. package/build/plugins/solution/fx-solution/arm.js +15 -15
  395. package/build/plugins/solution/fx-solution/arm.js.map +1 -1
  396. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts +4 -0
  397. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts.map +1 -1
  398. package/build/plugins/solution/fx-solution/debug/scaffolding.js +47 -1
  399. package/build/plugins/solution/fx-solution/debug/scaffolding.js.map +1 -1
  400. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.d.ts +7 -0
  401. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.d.ts.map +1 -0
  402. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.js +52 -0
  403. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.js.map +1 -0
  404. package/build/plugins/solution/fx-solution/debug/util/ngrok.d.ts.map +1 -1
  405. package/build/plugins/solution/fx-solution/debug/util/ngrok.js +2 -4
  406. package/build/plugins/solution/fx-solution/debug/util/ngrok.js.map +1 -1
  407. package/build/plugins/solution/fx-solution/debug/util/settings.js +2 -2
  408. package/build/plugins/solution/fx-solution/debug/util/settings.js.map +1 -1
  409. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.d.ts +7 -0
  410. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.d.ts.map +1 -0
  411. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.js +553 -0
  412. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.js.map +1 -0
  413. package/build/plugins/solution/fx-solution/utils/backupFiles.js +2 -2
  414. package/build/plugins/solution/fx-solution/utils/backupFiles.js.map +1 -1
  415. package/build/plugins/solution/fx-solution/v2/utils.d.ts.map +1 -1
  416. package/build/plugins/solution/fx-solution/v2/utils.js.map +1 -1
  417. package/package.json +9 -23
  418. package/resource/package.nls.json +8 -6
  419. package/templates/debug/ngrok.yml +4 -0
  420. package/templates/fallback/bot.csharp.command-and-response.zip +0 -0
  421. package/templates/fallback/bot.csharp.default.zip +0 -0
  422. package/templates/fallback/bot.csharp.notification-function-base.zip +0 -0
  423. package/templates/fallback/bot.csharp.notification-trigger-http.zip +0 -0
  424. package/templates/fallback/bot.csharp.notification-trigger-timer.zip +0 -0
  425. package/templates/fallback/bot.csharp.notification-webapi.zip +0 -0
  426. package/templates/fallback/bot.csharp.workflow.zip +0 -0
  427. package/templates/fallback/bot.js.command-and-response.zip +0 -0
  428. package/templates/fallback/bot.js.default.zip +0 -0
  429. package/templates/fallback/bot.js.m365.zip +0 -0
  430. package/templates/fallback/bot.js.notification-function-base.zip +0 -0
  431. package/templates/fallback/bot.js.notification-restify.zip +0 -0
  432. package/templates/fallback/bot.js.notification-trigger-http.zip +0 -0
  433. package/templates/fallback/bot.js.notification-trigger-timer.zip +0 -0
  434. package/templates/fallback/bot.js.workflow.zip +0 -0
  435. package/templates/fallback/bot.ts.command-and-response.zip +0 -0
  436. package/templates/fallback/bot.ts.default.zip +0 -0
  437. package/templates/fallback/bot.ts.m365.zip +0 -0
  438. package/templates/fallback/bot.ts.notification-function-base.zip +0 -0
  439. package/templates/fallback/bot.ts.notification-restify.zip +0 -0
  440. package/templates/fallback/bot.ts.notification-trigger-http.zip +0 -0
  441. package/templates/fallback/bot.ts.notification-trigger-timer.zip +0 -0
  442. package/templates/fallback/bot.ts.workflow.zip +0 -0
  443. package/templates/fallback/function-base.js.default.zip +0 -0
  444. package/templates/fallback/function-base.ts.default.zip +0 -0
  445. package/templates/fallback/function-triggers.js.HTTPTrigger.zip +0 -0
  446. package/templates/fallback/function-triggers.ts.HTTPTrigger.zip +0 -0
  447. package/templates/fallback/tab.csharp.default.zip +0 -0
  448. package/templates/fallback/tab.csharp.non-sso.zip +0 -0
  449. package/templates/fallback/tab.js.default.zip +0 -0
  450. package/templates/fallback/tab.js.m365.zip +0 -0
  451. package/templates/fallback/tab.js.non-sso.zip +0 -0
  452. package/templates/fallback/tab.ts.default.zip +0 -0
  453. package/templates/fallback/tab.ts.m365.zip +0 -0
  454. package/templates/fallback/tab.ts.non-sso.zip +0 -0
  455. package/templates/plugins/resource/aad/auth/bot/README.md +202 -124
  456. package/templates/plugins/resource/aad/auth/bot/js/sso/profileSsoCommandHandler.js +30 -0
  457. package/templates/plugins/resource/aad/auth/bot/ts/sso/profileSsoCommandHandler.ts +38 -0
  458. package/templates/plugins/resource/spfx/solution/prereleaseREADME.md +82 -0
  459. package/build/common/index.d.ts +0 -10
  460. package/build/common/index.d.ts.map +0 -1
  461. package/build/common/index.js +0 -15
  462. package/build/common/index.js.map +0 -1
  463. package/build/component/resource/simpleAuth.d.ts.map +0 -1
  464. package/build/component/resource/simpleAuth.js.map +0 -1
  465. package/build/core/middleware/index.d.ts +0 -11
  466. package/build/core/middleware/index.d.ts.map +0 -1
  467. package/build/core/middleware/index.js +0 -14
  468. package/build/core/middleware/index.js.map +0 -1
  469. package/build/core/middleware/solutionLoader.d.ts +0 -4
  470. package/build/core/middleware/solutionLoader.d.ts.map +0 -1
  471. package/build/core/middleware/solutionLoader.js +0 -34
  472. package/build/core/middleware/solutionLoader.js.map +0 -1
  473. package/build/plugins/index.d.ts +0 -3
  474. package/build/plugins/index.d.ts.map +0 -1
  475. package/build/plugins/index.js +0 -8
  476. package/build/plugins/index.js.map +0 -1
  477. package/build/plugins/resource/aad/aadAppClient.d.ts.map +0 -1
  478. package/build/plugins/resource/aad/aadAppClient.js.map +0 -1
  479. package/build/plugins/resource/aad/aadAppManifestManager.d.ts.map +0 -1
  480. package/build/plugins/resource/aad/aadAppManifestManager.js.map +0 -1
  481. package/build/plugins/resource/aad/appStudio.d.ts.map +0 -1
  482. package/build/plugins/resource/aad/appStudio.js.map +0 -1
  483. package/build/plugins/resource/aad/constants.d.ts.map +0 -1
  484. package/build/plugins/resource/aad/constants.js.map +0 -1
  485. package/build/plugins/resource/aad/errorCodes.d.ts.map +0 -1
  486. package/build/plugins/resource/aad/errorCodes.js.map +0 -1
  487. package/build/plugins/resource/aad/errors.d.ts.map +0 -1
  488. package/build/plugins/resource/aad/errors.js.map +0 -1
  489. package/build/plugins/resource/aad/graph.d.ts.map +0 -1
  490. package/build/plugins/resource/aad/graph.js.map +0 -1
  491. package/build/plugins/resource/aad/index.d.ts +0 -32
  492. package/build/plugins/resource/aad/index.d.ts.map +0 -1
  493. package/build/plugins/resource/aad/index.js +0 -154
  494. package/build/plugins/resource/aad/index.js.map +0 -1
  495. package/build/plugins/resource/aad/interfaces/AADApplication.d.ts.map +0 -1
  496. package/build/plugins/resource/aad/interfaces/AADApplication.js.map +0 -1
  497. package/build/plugins/resource/aad/interfaces/AADManifest.d.ts.map +0 -1
  498. package/build/plugins/resource/aad/interfaces/AADManifest.js.map +0 -1
  499. package/build/plugins/resource/aad/interfaces/IAADApplication.d.ts.map +0 -1
  500. package/build/plugins/resource/aad/interfaces/IAADApplication.js.map +0 -1
  501. package/build/plugins/resource/aad/interfaces/IAADDefinition.d.ts.map +0 -1
  502. package/build/plugins/resource/aad/interfaces/IAADDefinition.js.map +0 -1
  503. package/build/plugins/resource/aad/interfaces/IPermission.d.ts.map +0 -1
  504. package/build/plugins/resource/aad/interfaces/IPermission.js.map +0 -1
  505. package/build/plugins/resource/aad/interfaces/IPermissionList.d.ts.map +0 -1
  506. package/build/plugins/resource/aad/interfaces/IPermissionList.js.map +0 -1
  507. package/build/plugins/resource/aad/interfaces/models.d.ts.map +0 -1
  508. package/build/plugins/resource/aad/interfaces/models.js.map +0 -1
  509. package/build/plugins/resource/aad/permissions/index.d.ts.map +0 -1
  510. package/build/plugins/resource/aad/permissions/index.js.map +0 -1
  511. package/build/plugins/resource/aad/plugin.d.ts.map +0 -1
  512. package/build/plugins/resource/aad/plugin.js.map +0 -1
  513. package/build/plugins/resource/aad/results.d.ts.map +0 -1
  514. package/build/plugins/resource/aad/results.js.map +0 -1
  515. package/build/plugins/resource/aad/utils/aadManifestHelper.d.ts.map +0 -1
  516. package/build/plugins/resource/aad/utils/aadManifestHelper.js.map +0 -1
  517. package/build/plugins/resource/aad/utils/configs.d.ts.map +0 -1
  518. package/build/plugins/resource/aad/utils/configs.js.map +0 -1
  519. package/build/plugins/resource/aad/utils/dialog.d.ts.map +0 -1
  520. package/build/plugins/resource/aad/utils/dialog.js.map +0 -1
  521. package/build/plugins/resource/aad/utils/format.d.ts.map +0 -1
  522. package/build/plugins/resource/aad/utils/format.js.map +0 -1
  523. package/build/plugins/resource/aad/utils/telemetry.d.ts.map +0 -1
  524. package/build/plugins/resource/aad/utils/telemetry.js.map +0 -1
  525. package/build/plugins/resource/aad/utils/tokenProvider.d.ts.map +0 -1
  526. package/build/plugins/resource/aad/utils/tokenProvider.js.map +0 -1
  527. package/build/plugins/resource/aad/v2/index.d.ts +0 -22
  528. package/build/plugins/resource/aad/v2/index.d.ts.map +0 -1
  529. package/build/plugins/resource/aad/v2/index.js +0 -65
  530. package/build/plugins/resource/aad/v2/index.js.map +0 -1
  531. package/build/plugins/resource/aad/v3/index.d.ts +0 -22
  532. package/build/plugins/resource/aad/v3/index.d.ts.map +0 -1
  533. package/build/plugins/resource/aad/v3/index.js +0 -283
  534. package/build/plugins/resource/aad/v3/index.js.map +0 -1
  535. package/build/plugins/resource/keyvault/constants.d.ts +0 -36
  536. package/build/plugins/resource/keyvault/constants.d.ts.map +0 -1
  537. package/build/plugins/resource/keyvault/constants.js +0 -43
  538. package/build/plugins/resource/keyvault/constants.js.map +0 -1
  539. package/build/plugins/resource/keyvault/index.d.ts +0 -16
  540. package/build/plugins/resource/keyvault/index.d.ts.map +0 -1
  541. package/build/plugins/resource/keyvault/index.js +0 -65
  542. package/build/plugins/resource/keyvault/index.js.map +0 -1
  543. package/build/plugins/resource/keyvault/plugin.d.ts +0 -7
  544. package/build/plugins/resource/keyvault/plugin.d.ts.map +0 -1
  545. package/build/plugins/resource/keyvault/plugin.js +0 -44
  546. package/build/plugins/resource/keyvault/plugin.js.map +0 -1
  547. package/build/plugins/resource/keyvault/result.d.ts +0 -9
  548. package/build/plugins/resource/keyvault/result.d.ts.map +0 -1
  549. package/build/plugins/resource/keyvault/result.js +0 -35
  550. package/build/plugins/resource/keyvault/result.js.map +0 -1
  551. package/build/plugins/resource/keyvault/utils/telemetry.d.ts.map +0 -1
  552. package/build/plugins/resource/keyvault/utils/telemetry.js +0 -45
  553. package/build/plugins/resource/keyvault/utils/telemetry.js.map +0 -1
  554. package/build/plugins/resource/keyvault/v2/index.d.ts +0 -12
  555. package/build/plugins/resource/keyvault/v2/index.d.ts.map +0 -1
  556. package/build/plugins/resource/keyvault/v2/index.js +0 -38
  557. package/build/plugins/resource/keyvault/v2/index.js.map +0 -1
  558. package/build/plugins/resource/simpleauth/constants.d.ts.map +0 -1
  559. package/build/plugins/resource/simpleauth/constants.js.map +0 -1
  560. package/build/plugins/resource/simpleauth/errors.d.ts.map +0 -1
  561. package/build/plugins/resource/simpleauth/errors.js.map +0 -1
  562. package/build/plugins/resource/simpleauth/index.d.ts +0 -20
  563. package/build/plugins/resource/simpleauth/index.d.ts.map +0 -1
  564. package/build/plugins/resource/simpleauth/index.js +0 -78
  565. package/build/plugins/resource/simpleauth/index.js.map +0 -1
  566. package/build/plugins/resource/simpleauth/plugin.d.ts +0 -14
  567. package/build/plugins/resource/simpleauth/plugin.d.ts.map +0 -1
  568. package/build/plugins/resource/simpleauth/plugin.js +0 -141
  569. package/build/plugins/resource/simpleauth/plugin.js.map +0 -1
  570. package/build/plugins/resource/simpleauth/result.d.ts.map +0 -1
  571. package/build/plugins/resource/simpleauth/result.js.map +0 -1
  572. package/build/plugins/resource/simpleauth/utils/common.d.ts.map +0 -1
  573. package/build/plugins/resource/simpleauth/utils/common.js.map +0 -1
  574. package/build/plugins/resource/simpleauth/utils/dialog.d.ts.map +0 -1
  575. package/build/plugins/resource/simpleauth/utils/dialog.js.map +0 -1
  576. package/build/plugins/resource/simpleauth/utils/telemetry.d.ts +0 -17
  577. package/build/plugins/resource/simpleauth/utils/telemetry.d.ts.map +0 -1
  578. package/build/plugins/resource/simpleauth/utils/telemetry.js.map +0 -1
  579. package/build/plugins/resource/simpleauth/v2/index.d.ts +0 -15
  580. package/build/plugins/resource/simpleauth/v2/index.d.ts.map +0 -1
  581. package/build/plugins/resource/simpleauth/v2/index.js +0 -47
  582. package/build/plugins/resource/simpleauth/v2/index.js.map +0 -1
  583. package/build/plugins/resource/simpleauth/webAppClient.d.ts +0 -31
  584. package/build/plugins/resource/simpleauth/webAppClient.d.ts.map +0 -1
  585. package/build/plugins/resource/simpleauth/webAppClient.js +0 -136
  586. package/build/plugins/resource/simpleauth/webAppClient.js.map +0 -1
  587. package/build/plugins/resource/spfx/depsChecker/dependencyChecker.d.ts.map +0 -1
  588. package/build/plugins/resource/spfx/depsChecker/dependencyChecker.js.map +0 -1
  589. package/build/plugins/resource/spfx/depsChecker/generatorChecker.d.ts.map +0 -1
  590. package/build/plugins/resource/spfx/depsChecker/generatorChecker.js.map +0 -1
  591. package/build/plugins/resource/spfx/depsChecker/yoChecker.d.ts.map +0 -1
  592. package/build/plugins/resource/spfx/depsChecker/yoChecker.js.map +0 -1
  593. package/build/plugins/resource/spfx/error.d.ts.map +0 -1
  594. package/build/plugins/resource/spfx/error.js.map +0 -1
  595. package/build/plugins/resource/spfx/index.d.ts +0 -18
  596. package/build/plugins/resource/spfx/index.d.ts.map +0 -1
  597. package/build/plugins/resource/spfx/index.js +0 -96
  598. package/build/plugins/resource/spfx/index.js.map +0 -1
  599. package/build/plugins/resource/spfx/plugin.d.ts +0 -12
  600. package/build/plugins/resource/spfx/plugin.d.ts.map +0 -1
  601. package/build/plugins/resource/spfx/plugin.js +0 -216
  602. package/build/plugins/resource/spfx/plugin.js.map +0 -1
  603. package/build/plugins/resource/spfx/spoClient.d.ts.map +0 -1
  604. package/build/plugins/resource/spfx/spoClient.js.map +0 -1
  605. package/build/plugins/resource/spfx/utils/constants.d.ts.map +0 -1
  606. package/build/plugins/resource/spfx/utils/constants.js.map +0 -1
  607. package/build/plugins/resource/spfx/utils/progress-helper.d.ts.map +0 -1
  608. package/build/plugins/resource/spfx/utils/progress-helper.js.map +0 -1
  609. package/build/plugins/resource/spfx/utils/questions.d.ts.map +0 -1
  610. package/build/plugins/resource/spfx/utils/questions.js.map +0 -1
  611. package/build/plugins/resource/spfx/utils/telemetry-helper.d.ts.map +0 -1
  612. package/build/plugins/resource/spfx/utils/telemetry-helper.js.map +0 -1
  613. package/build/plugins/resource/spfx/utils/telemetryEvents.d.ts.map +0 -1
  614. package/build/plugins/resource/spfx/utils/telemetryEvents.js.map +0 -1
  615. package/build/plugins/resource/spfx/utils/utils.d.ts.map +0 -1
  616. package/build/plugins/resource/spfx/utils/utils.js.map +0 -1
  617. package/build/plugins/resource/spfx/v2/index.d.ts +0 -14
  618. package/build/plugins/resource/spfx/v2/index.d.ts.map +0 -1
  619. package/build/plugins/resource/spfx/v2/index.js +0 -41
  620. package/build/plugins/resource/spfx/v2/index.js.map +0 -1
  621. package/build/plugins/resource/sql/config.d.ts +0 -22
  622. package/build/plugins/resource/sql/config.d.ts.map +0 -1
  623. package/build/plugins/resource/sql/config.js +0 -30
  624. package/build/plugins/resource/sql/config.js.map +0 -1
  625. package/build/plugins/resource/sql/constants.d.ts +0 -82
  626. package/build/plugins/resource/sql/constants.d.ts.map +0 -1
  627. package/build/plugins/resource/sql/constants.js +0 -92
  628. package/build/plugins/resource/sql/constants.js.map +0 -1
  629. package/build/plugins/resource/sql/errors.d.ts +0 -63
  630. package/build/plugins/resource/sql/errors.d.ts.map +0 -1
  631. package/build/plugins/resource/sql/errors.js +0 -107
  632. package/build/plugins/resource/sql/errors.js.map +0 -1
  633. package/build/plugins/resource/sql/index.d.ts +0 -20
  634. package/build/plugins/resource/sql/index.d.ts.map +0 -1
  635. package/build/plugins/resource/sql/index.js +0 -92
  636. package/build/plugins/resource/sql/index.js.map +0 -1
  637. package/build/plugins/resource/sql/managementClient.d.ts +0 -18
  638. package/build/plugins/resource/sql/managementClient.d.ts.map +0 -1
  639. package/build/plugins/resource/sql/managementClient.js +0 -123
  640. package/build/plugins/resource/sql/managementClient.js.map +0 -1
  641. package/build/plugins/resource/sql/plugin.d.ts +0 -30
  642. package/build/plugins/resource/sql/plugin.d.ts.map +0 -1
  643. package/build/plugins/resource/sql/plugin.js +0 -340
  644. package/build/plugins/resource/sql/plugin.js.map +0 -1
  645. package/build/plugins/resource/sql/questions.d.ts +0 -5
  646. package/build/plugins/resource/sql/questions.d.ts.map +0 -1
  647. package/build/plugins/resource/sql/questions.js +0 -46
  648. package/build/plugins/resource/sql/questions.js.map +0 -1
  649. package/build/plugins/resource/sql/results.d.ts +0 -10
  650. package/build/plugins/resource/sql/results.d.ts.map +0 -1
  651. package/build/plugins/resource/sql/results.js +0 -32
  652. package/build/plugins/resource/sql/results.js.map +0 -1
  653. package/build/plugins/resource/sql/sqlClient.d.ts +0 -13
  654. package/build/plugins/resource/sql/sqlClient.d.ts.map +0 -1
  655. package/build/plugins/resource/sql/sqlClient.js +0 -153
  656. package/build/plugins/resource/sql/sqlClient.js.map +0 -1
  657. package/build/plugins/resource/sql/utils/checkInput.d.ts +0 -10
  658. package/build/plugins/resource/sql/utils/checkInput.d.ts.map +0 -1
  659. package/build/plugins/resource/sql/utils/checkInput.js +0 -87
  660. package/build/plugins/resource/sql/utils/checkInput.js.map +0 -1
  661. package/build/plugins/resource/sql/utils/commonUtils.d.ts +0 -13
  662. package/build/plugins/resource/sql/utils/commonUtils.d.ts.map +0 -1
  663. package/build/plugins/resource/sql/utils/commonUtils.js +0 -51
  664. package/build/plugins/resource/sql/utils/commonUtils.js.map +0 -1
  665. package/build/plugins/resource/sql/utils/contextUtils.d.ts +0 -5
  666. package/build/plugins/resource/sql/utils/contextUtils.d.ts.map +0 -1
  667. package/build/plugins/resource/sql/utils/contextUtils.js +0 -11
  668. package/build/plugins/resource/sql/utils/contextUtils.js.map +0 -1
  669. package/build/plugins/resource/sql/utils/dialogUtils.d.ts +0 -13
  670. package/build/plugins/resource/sql/utils/dialogUtils.d.ts.map +0 -1
  671. package/build/plugins/resource/sql/utils/dialogUtils.js +0 -21
  672. package/build/plugins/resource/sql/utils/dialogUtils.js.map +0 -1
  673. package/build/plugins/resource/sql/utils/message.d.ts +0 -16
  674. package/build/plugins/resource/sql/utils/message.d.ts.map +0 -1
  675. package/build/plugins/resource/sql/utils/message.js +0 -23
  676. package/build/plugins/resource/sql/utils/message.js.map +0 -1
  677. package/build/plugins/resource/sql/utils/telemetryUtils.d.ts +0 -17
  678. package/build/plugins/resource/sql/utils/telemetryUtils.d.ts.map +0 -1
  679. package/build/plugins/resource/sql/utils/telemetryUtils.js +0 -45
  680. package/build/plugins/resource/sql/utils/telemetryUtils.js.map +0 -1
  681. package/build/plugins/resource/sql/v2/index.d.ts +0 -15
  682. package/build/plugins/resource/sql/v2/index.d.ts.map +0 -1
  683. package/build/plugins/resource/sql/v2/index.js +0 -44
  684. package/build/plugins/resource/sql/v2/index.js.map +0 -1
  685. package/build/plugins/solution/fx-solution/index.d.ts +0 -5
  686. package/build/plugins/solution/fx-solution/index.d.ts.map +0 -1
  687. package/build/plugins/solution/fx-solution/index.js +0 -8
  688. package/build/plugins/solution/fx-solution/index.js.map +0 -1
  689. package/build/plugins/solution/fx-solution/solution.d.ts +0 -94
  690. package/build/plugins/solution/fx-solution/solution.d.ts.map +0 -1
  691. package/build/plugins/solution/fx-solution/solution.js +0 -1530
  692. package/build/plugins/solution/fx-solution/solution.js.map +0 -1
  693. package/build/plugins/solution/fx-solution/v2/checkPermission.d.ts +0 -5
  694. package/build/plugins/solution/fx-solution/v2/checkPermission.d.ts.map +0 -1
  695. package/build/plugins/solution/fx-solution/v2/checkPermission.js +0 -196
  696. package/build/plugins/solution/fx-solution/v2/checkPermission.js.map +0 -1
  697. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts +0 -28
  698. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts.map +0 -1
  699. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js +0 -131
  700. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js.map +0 -1
  701. package/build/plugins/solution/fx-solution/v2/createEnv.d.ts +0 -3
  702. package/build/plugins/solution/fx-solution/v2/createEnv.d.ts.map +0 -1
  703. package/build/plugins/solution/fx-solution/v2/createEnv.js +0 -37
  704. package/build/plugins/solution/fx-solution/v2/createEnv.js.map +0 -1
  705. package/build/plugins/solution/fx-solution/v2/deploy.d.ts +0 -3
  706. package/build/plugins/solution/fx-solution/v2/deploy.d.ts.map +0 -1
  707. package/build/plugins/solution/fx-solution/v2/deploy.js +0 -143
  708. package/build/plugins/solution/fx-solution/v2/deploy.js.map +0 -1
  709. package/build/plugins/solution/fx-solution/v2/executeUserTask.d.ts +0 -22
  710. package/build/plugins/solution/fx-solution/v2/executeUserTask.d.ts.map +0 -1
  711. package/build/plugins/solution/fx-solution/v2/executeUserTask.js +0 -850
  712. package/build/plugins/solution/fx-solution/v2/executeUserTask.js.map +0 -1
  713. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.d.ts +0 -4
  714. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.d.ts.map +0 -1
  715. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.js +0 -31
  716. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.js.map +0 -1
  717. package/build/plugins/solution/fx-solution/v2/getQuestions.d.ts +0 -15
  718. package/build/plugins/solution/fx-solution/v2/getQuestions.d.ts.map +0 -1
  719. package/build/plugins/solution/fx-solution/v2/getQuestions.js +0 -847
  720. package/build/plugins/solution/fx-solution/v2/getQuestions.js.map +0 -1
  721. package/build/plugins/solution/fx-solution/v2/grantPermission.d.ts +0 -5
  722. package/build/plugins/solution/fx-solution/v2/grantPermission.d.ts.map +0 -1
  723. package/build/plugins/solution/fx-solution/v2/grantPermission.js +0 -209
  724. package/build/plugins/solution/fx-solution/v2/grantPermission.js.map +0 -1
  725. package/build/plugins/solution/fx-solution/v2/listCollaborator.d.ts +0 -8
  726. package/build/plugins/solution/fx-solution/v2/listCollaborator.d.ts.map +0 -1
  727. package/build/plugins/solution/fx-solution/v2/listCollaborator.js +0 -226
  728. package/build/plugins/solution/fx-solution/v2/listCollaborator.js.map +0 -1
  729. package/build/plugins/solution/fx-solution/v2/provision.d.ts +0 -3
  730. package/build/plugins/solution/fx-solution/v2/provision.d.ts.map +0 -1
  731. package/build/plugins/solution/fx-solution/v2/provision.js +0 -262
  732. package/build/plugins/solution/fx-solution/v2/provision.js.map +0 -1
  733. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts +0 -3
  734. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts.map +0 -1
  735. package/build/plugins/solution/fx-solution/v2/provisionLocal.js +0 -117
  736. package/build/plugins/solution/fx-solution/v2/provisionLocal.js.map +0 -1
  737. package/build/plugins/solution/fx-solution/v2/publish.d.ts +0 -3
  738. package/build/plugins/solution/fx-solution/v2/publish.d.ts.map +0 -1
  739. package/build/plugins/solution/fx-solution/v2/publish.js +0 -46
  740. package/build/plugins/solution/fx-solution/v2/publish.js.map +0 -1
  741. package/build/plugins/solution/fx-solution/v2/scaffolding.d.ts +0 -5
  742. package/build/plugins/solution/fx-solution/v2/scaffolding.d.ts.map +0 -1
  743. package/build/plugins/solution/fx-solution/v2/scaffolding.js +0 -161
  744. package/build/plugins/solution/fx-solution/v2/scaffolding.js.map +0 -1
  745. package/build/plugins/solution/fx-solution/v2/solution.d.ts +0 -22
  746. package/build/plugins/solution/fx-solution/v2/solution.d.ts.map +0 -1
  747. package/build/plugins/solution/fx-solution/v2/solution.js +0 -48
  748. package/build/plugins/solution/fx-solution/v2/solution.js.map +0 -1
  749. package/build/plugins/solution/index.d.ts +0 -2
  750. package/build/plugins/solution/index.d.ts.map +0 -1
  751. package/build/plugins/solution/index.js +0 -7
  752. package/build/plugins/solution/index.js.map +0 -1
  753. package/templates/plugins/resource/aad/auth/bot/js/sso/showUserInfo.js +0 -36
  754. package/templates/plugins/resource/aad/auth/bot/js/sso/ssoDialog.js +0 -201
  755. package/templates/plugins/resource/aad/auth/bot/js/sso/teamsSsoBot.js +0 -63
  756. package/templates/plugins/resource/aad/auth/bot/ts/sso/showUserInfo.ts +0 -38
  757. package/templates/plugins/resource/aad/auth/bot/ts/sso/ssoDialog.ts +0 -213
  758. package/templates/plugins/resource/aad/auth/bot/ts/sso/teamsSsoBot.ts +0 -75
@@ -1,850 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateAndParseLanguage = exports.createAuthFiles = exports.addSso = exports.extractParamForRegisterTeamsAppAndAad = exports.addFeature = exports.addResource = exports.showUpdateArmTemplateNotice = exports.addCapability = exports.canAddResource = exports.canAddCapability = exports.executeUserTask = void 0;
4
- const tslib_1 = require("tslib");
5
- const teamsfx_api_1 = require("@microsoft/teamsfx-api");
6
- const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
7
- const lodash_1 = require("lodash");
8
- const path_1 = tslib_1.__importDefault(require("path"));
9
- const typedi_1 = require("typedi");
10
- const util = tslib_1.__importStar(require("util"));
11
- const common_1 = require("../../../../common");
12
- const constants_1 = require("../../../../common/constants");
13
- const projectSettingsHelper_1 = require("../../../../common/projectSettingsHelper");
14
- const error_1 = require("../../../../core/error");
15
- const question_1 = require("../../../../core/question");
16
- const constants_2 = require("../constants");
17
- const scaffolding_1 = require("../debug/scaffolding");
18
- const question_2 = require("../question");
19
- const ResourcePluginContainer_1 = require("../ResourcePluginContainer");
20
- const util_1 = require("../utils/util");
21
- const constants_3 = require("../v3/constants");
22
- const constants_4 = require("./constants");
23
- const generateResourceTemplate_1 = require("./generateResourceTemplate");
24
- const scaffolding_2 = require("./scaffolding");
25
- const utils_1 = require("./utils");
26
- const localizeUtils_1 = require("../../../../common/localizeUtils");
27
- const folder_1 = require("../../../../folder");
28
- const adm_zip_1 = tslib_1.__importDefault(require("adm-zip"));
29
- const templatesUtils_1 = require("../../../../common/template-utils/templatesUtils");
30
- const constants_5 = require("../../../../component/constants");
31
- async function executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider) {
32
- const namespace = func.namespace;
33
- const method = func.method;
34
- const array = namespace.split("/");
35
- if (method === "addCapability") {
36
- return addCapability(ctx, inputs, localSettings);
37
- }
38
- if (method === "addResource") {
39
- return addResource(ctx, inputs, localSettings, func, envInfo, tokenProvider);
40
- }
41
- if (method === "addFeature") {
42
- return addFeature(ctx, inputs, localSettings, func, envInfo, tokenProvider);
43
- }
44
- if (method === "addSso") {
45
- return addSso(ctx, inputs, localSettings);
46
- }
47
- if (namespace.includes("solution")) {
48
- if (method === "registerTeamsAppAndAad") {
49
- // not implemented for now
50
- return teamsfx_api_1.err(new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.FeatureNotSupported, "Not implemented"));
51
- }
52
- else if (method === "VSpublish") {
53
- // VSpublish means VS calling cli to do publish. It is different than normal cli work flow
54
- // It's teamsfx init followed by teamsfx publish without running provision.
55
- // Using executeUserTask here could bypass the fx project check.
56
- if (inputs.platform !== "vs") {
57
- return teamsfx_api_1.err(new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.UnsupportedPlatform, localizeUtils_1.getDefaultString("error.UnsupportedPlatformVS"), localizeUtils_1.getLocalizedString("error.UnsupportedPlatformVS")));
58
- }
59
- const appStudioPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AppStudioPlugin);
60
- if (appStudioPlugin.publishApplication) {
61
- return appStudioPlugin.publishApplication(ctx, inputs, envInfo, tokenProvider.m365TokenProvider);
62
- }
63
- }
64
- else if (method === "validateManifest") {
65
- const appStudioPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AppStudioPlugin);
66
- if (appStudioPlugin.executeUserTask) {
67
- return await appStudioPlugin.executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider);
68
- }
69
- }
70
- else if (method === "buildPackage") {
71
- const appStudioPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AppStudioPlugin);
72
- if (appStudioPlugin.executeUserTask) {
73
- return await appStudioPlugin.executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider);
74
- }
75
- }
76
- else if (method === "buildAadManifest") {
77
- const aadPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin);
78
- if (aadPlugin.executeUserTask) {
79
- return await aadPlugin.executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider);
80
- }
81
- }
82
- else if (method === "validateManifest") {
83
- const appStudioPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AppStudioPlugin);
84
- if (appStudioPlugin.executeUserTask) {
85
- return appStudioPlugin.executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider);
86
- }
87
- }
88
- else if (array.length == 2) {
89
- const pluginName = array[1];
90
- const pluginMap = ResourcePluginContainer_1.getAllV2ResourcePluginMap();
91
- const plugin = pluginMap.get(pluginName);
92
- if (plugin && plugin.executeUserTask) {
93
- return plugin.executeUserTask(ctx, inputs, func, localSettings, envInfo, tokenProvider);
94
- }
95
- }
96
- }
97
- return teamsfx_api_1.err(new teamsfx_api_1.UserError(constants_2.SolutionSource, "executeUserTaskRouteFailed", localizeUtils_1.getDefaultString("error.appstudio.executeUserTaskRouteFailed", JSON.stringify(func)), localizeUtils_1.getLocalizedString("error.appstudio.executeUserTaskRouteFailed", JSON.stringify(func))));
98
- }
99
- exports.executeUserTask = executeUserTask;
100
- function canAddCapability(settings, telemetryReporter) {
101
- if (settings && !(settings.hostType === question_2.HostTypeOptionAzure.id) && !common_1.isSPFxMultiTabEnabled()) {
102
- const e = new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.AddCapabilityNotSupport, localizeUtils_1.getDefaultString("core.addCapability.onlySupportAzure"), localizeUtils_1.getLocalizedString("core.addCapability.onlySupportAzure"));
103
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddCapability, e, telemetryReporter));
104
- }
105
- return teamsfx_api_1.ok(teamsfx_api_1.Void);
106
- }
107
- exports.canAddCapability = canAddCapability;
108
- function canAddResource(projectSetting, telemetryReporter) {
109
- const isVS = projectSettingsHelper_1.isVSProject(projectSetting);
110
- if (isVS) {
111
- const e = new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.AddResourceNotSupport, localizeUtils_1.getDefaultString("core.addResource.notSupportForVSProject"), localizeUtils_1.getLocalizedString("core.addResource.notSupportForVSProject"));
112
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddResource, e, telemetryReporter));
113
- }
114
- if (projectSettingsHelper_1.isExistingTabApp(projectSetting)) {
115
- return teamsfx_api_1.err(new error_1.NoCapabilityFoundError(teamsfx_api_1.Stage.addResource));
116
- }
117
- const solutionSettings = projectSetting.solutionSettings;
118
- if (!(solutionSettings.hostType === question_2.HostTypeOptionAzure.id)) {
119
- const e = new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.AddResourceNotSupport, localizeUtils_1.getDefaultString("core.addResource.onlySupportAzure"), localizeUtils_1.getLocalizedString("core.addResource.onlySupportAzure"));
120
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddResource, e, telemetryReporter));
121
- }
122
- return teamsfx_api_1.ok(teamsfx_api_1.Void);
123
- }
124
- exports.canAddResource = canAddResource;
125
- async function addCapability(ctx, inputs, localSettings) {
126
- var _a, _b;
127
- ctx.telemetryReporter.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddCapabilityStart, {
128
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
129
- });
130
- // 0. set programming language if it is empty
131
- const programmingLanguageInputs = inputs[question_1.CoreQuestionNames.ProgrammingLanguage];
132
- if (!ctx.projectSetting.programmingLanguage && programmingLanguageInputs) {
133
- ctx.projectSetting.programmingLanguage = programmingLanguageInputs;
134
- }
135
- // 1. checking addable
136
- let solutionSettings = utils_1.getAzureSolutionSettings(ctx);
137
- let isMiniApp = false;
138
- if (!solutionSettings) {
139
- // pure existing app
140
- solutionSettings = {
141
- name: constants_4.TeamsAppSolutionNameV2,
142
- version: "1.0.0",
143
- hostType: "Azure",
144
- capabilities: [],
145
- azureResources: [],
146
- activeResourcePlugins: [],
147
- };
148
- ctx.projectSetting.solutionSettings = solutionSettings;
149
- if (!common_1.isAadManifestEnabled()) {
150
- //aad need this file
151
- await fs_extra_1.default.writeJSON(`${inputs.projectPath}/permissions.json`, constants_2.DEFAULT_PERMISSION_REQUEST, {
152
- spaces: 4,
153
- });
154
- }
155
- isMiniApp = true;
156
- }
157
- const originalSettings = lodash_1.cloneDeep(solutionSettings);
158
- const inputsNew = Object.assign(Object.assign({}, inputs), { projectPath: inputs.projectPath, existingResources: originalSettings.activeResourcePlugins, existingCapabilities: originalSettings.capabilities });
159
- const canProceed = canAddCapability(solutionSettings, ctx.telemetryReporter);
160
- if (canProceed.isErr()) {
161
- return teamsfx_api_1.err(canProceed.error);
162
- }
163
- // 2. check answer
164
- let capabilitiesAnswer = inputs[question_2.AzureSolutionQuestionNames.Capabilities];
165
- if (!capabilitiesAnswer || capabilitiesAnswer.length === 0) {
166
- (_a = ctx.telemetryReporter) === null || _a === void 0 ? void 0 : _a.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddCapability, {
167
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
168
- [constants_2.SolutionTelemetryProperty.Success]: constants_2.SolutionTelemetrySuccess.Yes,
169
- [constants_2.SolutionTelemetryProperty.Capabilities]: [].join(";"),
170
- });
171
- return teamsfx_api_1.ok({});
172
- }
173
- const validateRes = question_1.validateCapabilities(capabilitiesAnswer);
174
- if (validateRes) {
175
- return teamsfx_api_1.err(error_1.InvalidInputError(validateRes));
176
- }
177
- if (!isMiniApp && capabilitiesAnswer.includes(question_2.TabSPFxNewUIItem.id) && !common_1.isSPFxMultiTabEnabled()) {
178
- return teamsfx_api_1.err(error_1.InvalidInputError(localizeUtils_1.getLocalizedString("core.capability.validation.spfx")));
179
- }
180
- // normalize capability answer
181
- const scenarios = [];
182
- const notificationIndex = capabilitiesAnswer.indexOf(question_2.NotificationOptionItem.id);
183
- if (notificationIndex !== -1) {
184
- capabilitiesAnswer[notificationIndex] = question_2.BotOptionItem.id;
185
- scenarios.push(question_2.BotScenario.NotificationBot);
186
- }
187
- const commandAndResponseIndex = capabilitiesAnswer.indexOf(question_2.CommandAndResponseOptionItem.id);
188
- if (commandAndResponseIndex !== -1) {
189
- capabilitiesAnswer[commandAndResponseIndex] = question_2.BotOptionItem.id;
190
- scenarios.push(question_2.BotScenario.CommandAndResponseBot);
191
- }
192
- const workflowIndex = capabilitiesAnswer.indexOf(question_2.WorkflowOptionItem.id);
193
- if (workflowIndex !== -1) {
194
- capabilitiesAnswer[workflowIndex] = question_2.BotOptionItem.id;
195
- scenarios.push(question_2.BotScenario.WorkflowBot);
196
- }
197
- inputsNew[question_2.AzureSolutionQuestionNames.Scenarios] = scenarios;
198
- capabilitiesAnswer = [...new Set(capabilitiesAnswer)];
199
- // 3. check capability limit
200
- const alreadyHasTab = solutionSettings.capabilities.includes(question_2.TabOptionItem.id);
201
- const alreadyHasBot = solutionSettings.capabilities.includes(question_2.BotOptionItem.id);
202
- const alreadyHasME = solutionSettings.capabilities.includes(question_2.MessageExtensionItem.id);
203
- const alreadyHasTabSso = common_1.isAadManifestEnabled() && solutionSettings.capabilities.includes(question_2.TabSsoItem.id);
204
- const toAddTab = capabilitiesAnswer.includes(question_2.TabOptionItem.id);
205
- const toAddBot = capabilitiesAnswer.includes(question_2.BotOptionItem.id);
206
- const toAddME = capabilitiesAnswer.includes(question_2.MessageExtensionItem.id);
207
- const toAddTabNonSso = common_1.isAadManifestEnabled() && capabilitiesAnswer.includes(question_2.TabNonSsoItem.id);
208
- const toAddSpfx = capabilitiesAnswer.includes(question_2.TabSPFxNewUIItem.id);
209
- if (common_1.isAadManifestEnabled()) {
210
- if (alreadyHasTabSso && toAddTabNonSso) {
211
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.InvalidInput, localizeUtils_1.getLocalizedString("core.addSsoFiles.canNotAddNonSsoTabWhenSsoEnabled"));
212
- return teamsfx_api_1.err(e);
213
- }
214
- if (alreadyHasTab && !alreadyHasTabSso && toAddTab) {
215
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.InvalidInput, localizeUtils_1.getLocalizedString("core.addSsoFiles.canNotAddTabWhenSsoNotEnabled"));
216
- return teamsfx_api_1.err(e);
217
- }
218
- }
219
- const appStudioPlugin = typedi_1.Container.get(constants_5.ComponentNames.AppManifest);
220
- const inputsWithProjectPath = inputs;
221
- const tabExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "staticTab");
222
- if (tabExceedRes.isErr()) {
223
- return teamsfx_api_1.err(tabExceedRes.error);
224
- }
225
- const isTabAddable = !tabExceedRes.value;
226
- const isTabSPFxAddable = !tabExceedRes.value;
227
- const botExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "Bot");
228
- if (botExceedRes.isErr()) {
229
- return teamsfx_api_1.err(botExceedRes.error);
230
- }
231
- const isBotAddable = !botExceedRes.value;
232
- const meExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "MessageExtension");
233
- if (meExceedRes.isErr()) {
234
- return teamsfx_api_1.err(meExceedRes.error);
235
- }
236
- const isMEAddable = !meExceedRes.value;
237
- if (((toAddTab || toAddTabNonSso) && !isTabAddable) ||
238
- (toAddBot && !isBotAddable) ||
239
- (toAddME && !isMEAddable) ||
240
- (toAddSpfx && !isTabSPFxAddable)) {
241
- const error = new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.FailedToAddCapability, localizeUtils_1.getDefaultString("core.addCapability.exceedMaxLimit"), localizeUtils_1.getLocalizedString("core.addCapability.exceedMaxLimit"));
242
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddCapability, error, ctx.telemetryReporter));
243
- }
244
- const capabilitiesToAddManifest = [];
245
- const pluginNamesToScaffold = new Set();
246
- const pluginNamesToArm = new Set();
247
- const newCapabilitySet = new Set();
248
- solutionSettings.capabilities.forEach((c) => newCapabilitySet.add(c));
249
- const vsProject = projectSettingsHelper_1.isVSProject(ctx.projectSetting);
250
- // check SPFx
251
- if (toAddSpfx) {
252
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.SpfxPlugin);
253
- newCapabilitySet.add(question_2.TabSPFxNewUIItem.id);
254
- solutionSettings.hostType = question_2.HostTypeOptionSPFx.id;
255
- }
256
- else {
257
- if (!originalSettings.activeResourcePlugins.includes(constants_3.BuiltInFeaturePluginNames.identity)) {
258
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.IdentityPlugin);
259
- }
260
- if (!common_1.isAadManifestEnabled() &&
261
- !originalSettings.activeResourcePlugins.includes(constants_3.BuiltInFeaturePluginNames.aad)) {
262
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin);
263
- }
264
- // 4. check Tab
265
- if (toAddTab || toAddTabNonSso) {
266
- if (vsProject) {
267
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
268
- if (!alreadyHasTab) {
269
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
270
- }
271
- }
272
- else {
273
- if (!alreadyHasTab) {
274
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
275
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
276
- }
277
- }
278
- capabilitiesToAddManifest.push({ name: "staticTab" });
279
- newCapabilitySet.add(question_2.TabOptionItem.id);
280
- if (toAddTab && !alreadyHasTabSso) {
281
- newCapabilitySet.add(question_2.TabSsoItem.id);
282
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin);
283
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin);
284
- // Add webapplicationInfo in teams app manifest
285
- const appStudioPlugin = typedi_1.Container.get(constants_5.ComponentNames.AppManifest);
286
- await appStudioPlugin.addCapability(inputs, [
287
- { name: "WebApplicationInfo" },
288
- ]);
289
- }
290
- }
291
- // 5. check Bot
292
- if (toAddBot) {
293
- if (vsProject) {
294
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
295
- if (!alreadyHasBot && !alreadyHasME) {
296
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
297
- }
298
- }
299
- else {
300
- if (!alreadyHasBot && !alreadyHasME) {
301
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
302
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
303
- }
304
- }
305
- capabilitiesToAddManifest.push({ name: "Bot" });
306
- newCapabilitySet.add(question_2.BotOptionItem.id);
307
- }
308
- // 6. check MessageExtension
309
- if (toAddME) {
310
- if (vsProject) {
311
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
312
- if (!alreadyHasBot && !alreadyHasME) {
313
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
314
- }
315
- }
316
- else {
317
- if (!alreadyHasBot && !alreadyHasME) {
318
- pluginNamesToScaffold.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
319
- pluginNamesToArm.add(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
320
- }
321
- }
322
- capabilitiesToAddManifest.push({ name: "MessageExtension" });
323
- newCapabilitySet.add(question_2.MessageExtensionItem.id);
324
- }
325
- }
326
- // 7. update solution settings
327
- solutionSettings.capabilities = Array.from(newCapabilitySet);
328
- utils_1.setActivatedResourcePluginsV2(ctx.projectSetting);
329
- if (!toAddSpfx &&
330
- !common_1.isAadManifestEnabled() &&
331
- !solutionSettings.activeResourcePlugins.includes(constants_3.BuiltInFeaturePluginNames.aad)) {
332
- solutionSettings.activeResourcePlugins.push(constants_3.BuiltInFeaturePluginNames.aad);
333
- }
334
- // 8. scaffold and update arm
335
- const pluginsToScaffold = Array.from(pluginNamesToScaffold).map((name) => typedi_1.Container.get(name));
336
- const pluginsToArm = Array.from(pluginNamesToArm).map((name) => typedi_1.Container.get(name));
337
- if (pluginsToScaffold.length > 0) {
338
- const scaffoldRes = await scaffoldCodeAndResourceTemplate(ctx, inputsNew, localSettings, pluginsToScaffold, pluginsToArm);
339
- if (scaffoldRes.isErr()) {
340
- ctx.projectSetting.solutionSettings = originalSettings;
341
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddCapability, scaffoldRes.error, ctx.telemetryReporter));
342
- }
343
- }
344
- // 4. update manifest
345
- if (capabilitiesToAddManifest.length > 0) {
346
- await appStudioPlugin.addCapability(inputsNew, capabilitiesToAddManifest);
347
- }
348
- if (capabilitiesAnswer.length > 0) {
349
- const addNames = capabilitiesAnswer.map((c) => `'${c}'`).join(" and ");
350
- const single = capabilitiesAnswer.length === 1;
351
- const template = inputs.platform === teamsfx_api_1.Platform.CLI
352
- ? single
353
- ? localizeUtils_1.getLocalizedString("core.addCapability.addCapabilityNoticeForCli")
354
- : localizeUtils_1.getLocalizedString("core.addCapability.addCapabilitiesNoticeForCli")
355
- : single
356
- ? localizeUtils_1.getLocalizedString("core.addCapability.addCapabilityNotice")
357
- : localizeUtils_1.getLocalizedString("core.addCapability.addCapabilitiesNotice");
358
- const msg = util.format(template, addNames);
359
- ctx.userInteraction.showMessage("info", msg, false);
360
- (_b = ctx.telemetryReporter) === null || _b === void 0 ? void 0 : _b.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddCapability, {
361
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
362
- [constants_2.SolutionTelemetryProperty.Success]: constants_2.SolutionTelemetrySuccess.Yes,
363
- [constants_2.SolutionTelemetryProperty.Capabilities]: capabilitiesAnswer.join(";"),
364
- });
365
- }
366
- return teamsfx_api_1.ok({
367
- solutionSettings: solutionSettings,
368
- solutionConfig: { provisionSucceeded: false },
369
- });
370
- }
371
- exports.addCapability = addCapability;
372
- function showUpdateArmTemplateNotice(ui) {
373
- const msg = localizeUtils_1.getLocalizedString("core.updateArmTemplate.successNotice");
374
- ui === null || ui === void 0 ? void 0 : ui.showMessage("info", msg, false);
375
- }
376
- exports.showUpdateArmTemplateNotice = showUpdateArmTemplateNotice;
377
- async function scaffoldCodeAndResourceTemplate(ctx, inputs, localSettings, pluginsToScaffold, pluginsToDoArm, concurrent = true) {
378
- const result = await scaffolding_2.scaffoldByPlugins(ctx, inputs, localSettings, pluginsToScaffold, concurrent);
379
- if (result.isErr()) {
380
- return result;
381
- }
382
- const scaffoldLocalDebugSettingsResult = await scaffolding_1.scaffoldLocalDebugSettings(ctx, inputs, localSettings);
383
- if (scaffoldLocalDebugSettingsResult.isErr()) {
384
- return scaffoldLocalDebugSettingsResult;
385
- }
386
- const pluginsToUpdateArm = pluginsToDoArm ? pluginsToDoArm : pluginsToScaffold;
387
- if (pluginsToUpdateArm.length > 0) {
388
- return generateResourceTemplate_1.generateResourceTemplateForPlugins(ctx, inputs, pluginsToUpdateArm);
389
- }
390
- return teamsfx_api_1.ok(undefined);
391
- }
392
- async function addResource(ctx, inputs, localSettings, func, envInfo, tokenProvider) {
393
- var _a, _b, _c, _d;
394
- (_a = ctx.telemetryReporter) === null || _a === void 0 ? void 0 : _a.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddResourceStart, {
395
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
396
- });
397
- // 1. checking addable
398
- const solutionSettings = utils_1.getAzureSolutionSettings(ctx);
399
- if (!solutionSettings) {
400
- return teamsfx_api_1.err(new error_1.OperationNotPermittedError("addResource"));
401
- }
402
- const originalSettings = lodash_1.cloneDeep(solutionSettings);
403
- const inputsNew = Object.assign(Object.assign({}, inputs), { projectPath: inputs.projectPath, existingResources: originalSettings.activeResourcePlugins });
404
- const canProceed = canAddResource(ctx.projectSetting, ctx.telemetryReporter);
405
- if (canProceed.isErr()) {
406
- return teamsfx_api_1.err(canProceed.error);
407
- }
408
- // 2. check answer
409
- const addResourcesAnswer = inputs[question_2.AzureSolutionQuestionNames.AddResources];
410
- if (!addResourcesAnswer || addResourcesAnswer.length === 0) {
411
- (_b = ctx.telemetryReporter) === null || _b === void 0 ? void 0 : _b.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddResource, {
412
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
413
- [constants_2.SolutionTelemetryProperty.Success]: constants_2.SolutionTelemetrySuccess.Yes,
414
- [constants_2.SolutionTelemetryProperty.Resources]: [].join(";"),
415
- });
416
- return teamsfx_api_1.ok({});
417
- }
418
- const alreadyHaveFunction = solutionSettings.azureResources.includes(question_2.AzureResourceFunction.id);
419
- const alreadyHaveApim = solutionSettings.azureResources.includes(question_2.AzureResourceApim.id);
420
- const alreadyHaveKeyVault = solutionSettings.azureResources.includes(question_2.AzureResourceKeyVault.id);
421
- const addSQL = addResourcesAnswer.includes(question_2.AzureResourceSQL.id);
422
- const addApim = addResourcesAnswer.includes(question_2.AzureResourceApim.id);
423
- const addKeyVault = addResourcesAnswer.includes(question_2.AzureResourceKeyVault.id);
424
- const addFunc = addResourcesAnswer.includes(question_2.AzureResourceFunction.id) ||
425
- (addApim && !alreadyHaveFunction) ||
426
- (addSQL && !alreadyHaveFunction);
427
- // 3. check APIM and KeyVault addable
428
- if ((alreadyHaveApim && addApim) || (alreadyHaveKeyVault && addKeyVault)) {
429
- const e = new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.AddResourceNotSupport, "APIM/KeyVault is already added.");
430
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddResource, e, ctx.telemetryReporter));
431
- }
432
- const newResourceSet = new Set();
433
- solutionSettings.azureResources.forEach((r) => newResourceSet.add(r));
434
- const addedResources = [];
435
- const pluginsToScaffold = [];
436
- const pluginsToDoArm = [];
437
- let scaffoldApim = false;
438
- let addSsoRes = {};
439
- // 4. check Function
440
- if (addFunc) {
441
- // AAD plugin needs to be activated when adding function.
442
- // Since APIM also have dependency on Function, will only add depenedency here.
443
- if (!common_1.isAADEnabled(solutionSettings)) {
444
- if (common_1.isAadManifestEnabled()) {
445
- const res = await addSso(ctx, inputs, localSettings);
446
- if (res.isErr()) {
447
- ctx.projectSetting.solutionSettings = originalSettings;
448
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddResource, res.error, ctx.telemetryReporter));
449
- }
450
- addSsoRes = res.value;
451
- }
452
- else {
453
- (_c = solutionSettings.activeResourcePlugins) === null || _c === void 0 ? void 0 : _c.push(constants_2.PluginNames.AAD);
454
- }
455
- }
456
- const functionPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.FunctionPlugin);
457
- pluginsToScaffold.push(functionPlugin);
458
- if (!alreadyHaveFunction) {
459
- pluginsToDoArm.push(functionPlugin);
460
- }
461
- addedResources.push(question_2.AzureResourceFunction.id);
462
- }
463
- // 5. check SQL
464
- if (addSQL) {
465
- const sqlPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.SqlPlugin);
466
- const identityPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.IdentityPlugin);
467
- pluginsToDoArm.push(sqlPlugin);
468
- if (!solutionSettings.activeResourcePlugins.includes(identityPlugin.name)) {
469
- // add identity for first time
470
- pluginsToDoArm.push(identityPlugin);
471
- }
472
- addedResources.push(question_2.AzureResourceSQL.id);
473
- }
474
- // 6. check APIM
475
- const apimPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.ApimPlugin);
476
- if (addApim) {
477
- // We don't add apimPlugin into pluginsToScaffold because
478
- // apim plugin needs to modify config output during scaffolding,
479
- // which is not supported by the scaffoldSourceCode API.
480
- // The scaffolding will run later as a userTask as a work around.
481
- addedResources.push(question_2.AzureResourceApim.id);
482
- pluginsToDoArm.push(apimPlugin);
483
- scaffoldApim = true;
484
- }
485
- if (addKeyVault) {
486
- const keyVaultPlugin = typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.KeyVaultPlugin);
487
- pluginsToDoArm.push(keyVaultPlugin);
488
- addedResources.push(question_2.AzureResourceKeyVault.id);
489
- }
490
- // 7. update solution settings
491
- addedResources.forEach((r) => newResourceSet.add(r));
492
- solutionSettings.azureResources = Array.from(newResourceSet);
493
- utils_1.setActivatedResourcePluginsV2(ctx.projectSetting);
494
- // 8. scaffold and update arm
495
- if (pluginsToScaffold.length > 0 || pluginsToDoArm.length > 0) {
496
- let scaffoldRes = await scaffoldCodeAndResourceTemplate(ctx, inputsNew, localSettings, pluginsToScaffold, pluginsToDoArm);
497
- if (scaffoldApim) {
498
- if (apimPlugin && apimPlugin.executeUserTask) {
499
- const result = await apimPlugin.executeUserTask(ctx, inputs, func, {}, envInfo, tokenProvider);
500
- if (result.isErr()) {
501
- scaffoldRes = teamsfx_api_1.combine([scaffoldRes, result]);
502
- }
503
- }
504
- }
505
- if (scaffoldRes.isErr()) {
506
- ctx.projectSetting.solutionSettings = originalSettings;
507
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddResource, scaffoldRes.error, ctx.telemetryReporter));
508
- }
509
- const addNames = addedResources.map((c) => `'${c}'`).join(" and ");
510
- const single = addedResources.length === 1;
511
- const template = inputs.platform === teamsfx_api_1.Platform.CLI
512
- ? single
513
- ? localizeUtils_1.getLocalizedString("core.addResource.addResourceNoticeForCli")
514
- : localizeUtils_1.getLocalizedString("core.addResource.addResourcesNoticeForCli")
515
- : single
516
- ? localizeUtils_1.getLocalizedString("core.addResource.addResourceNotice")
517
- : localizeUtils_1.getLocalizedString("core.addResource.addResourcesNotice");
518
- ctx.userInteraction.showMessage("info", util.format(template, addNames), false);
519
- }
520
- (_d = ctx.telemetryReporter) === null || _d === void 0 ? void 0 : _d.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddResource, {
521
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
522
- [constants_2.SolutionTelemetryProperty.Success]: constants_2.SolutionTelemetrySuccess.Yes,
523
- [constants_2.SolutionTelemetryProperty.Resources]: addResourcesAnswer.join(";"),
524
- });
525
- return teamsfx_api_1.ok(pluginsToDoArm.length > 0
526
- ? Object.assign({ solutionSettings: solutionSettings, solutionConfig: { provisionSucceeded: false } }, addSsoRes) : teamsfx_api_1.Void);
527
- }
528
- exports.addResource = addResource;
529
- async function addFeature(ctx, inputs, localSettings, func, envInfo, tokenProvider) {
530
- const featureAnswer = inputs[question_2.AzureSolutionQuestionNames.Features];
531
- const capabilityAnswers = new Set([
532
- question_2.TabOptionItem.id,
533
- question_2.BotOptionItem.id,
534
- question_2.CommandAndResponseOptionItem.id,
535
- question_2.NotificationOptionItem.id,
536
- question_2.TabNonSsoItem.id,
537
- question_2.MessageExtensionItem.id,
538
- question_2.TabSPFxNewUIItem.id,
539
- ]);
540
- const resourceAnswers = new Set([
541
- question_2.AzureResourceFunction.id,
542
- question_2.AzureResourceSQL.id,
543
- question_2.AzureResourceApim.id,
544
- question_2.AzureResourceKeyVault.id,
545
- ]);
546
- if (capabilityAnswers.has(featureAnswer)) {
547
- inputs[question_2.AzureSolutionQuestionNames.Capabilities] = [featureAnswer];
548
- return addCapability(ctx, inputs, localSettings);
549
- }
550
- const settings = ctx.projectSetting.solutionSettings;
551
- const alreadyHaveFunction = settings === null || settings === void 0 ? void 0 : settings.azureResources.includes(question_2.AzureResourceFunction.id);
552
- if (resourceAnswers.has(featureAnswer)) {
553
- inputs[question_2.AzureSolutionQuestionNames.AddResources] = [featureAnswer];
554
- if ((featureAnswer === question_2.AzureResourceSQL.id || featureAnswer === question_2.AzureResourceApim.id) &&
555
- !alreadyHaveFunction) {
556
- inputs[question_2.AzureSolutionQuestionNames.AddResources].push(question_2.AzureResourceFunction.id);
557
- }
558
- return addResource(ctx, inputs, localSettings, func, envInfo, tokenProvider);
559
- }
560
- if (featureAnswer === question_2.SingleSignOnOptionItem.id) {
561
- return addSso(ctx, inputs, localSettings);
562
- }
563
- else if (featureAnswer === question_2.CicdOptionItem.id) {
564
- const cicdFunction = {
565
- namespace: "fx-solution-azure/fx-resource-cicd",
566
- method: "addCICDWorkflows",
567
- params: {},
568
- };
569
- return executeUserTask(ctx, inputs, cicdFunction, localSettings, envInfo, tokenProvider);
570
- }
571
- return teamsfx_api_1.ok({});
572
- }
573
- exports.addFeature = addFeature;
574
- function extractParamForRegisterTeamsAppAndAad(answers) {
575
- if (answers == undefined) {
576
- return teamsfx_api_1.err(new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.FailedToGetParamForRegisterTeamsAppAndAad, "Input is undefined"));
577
- }
578
- const param = {
579
- "app-name": "",
580
- endpoint: "",
581
- environment: "local",
582
- "root-path": "",
583
- };
584
- for (const key of Object.keys(param)) {
585
- const value = answers[key];
586
- if (value == undefined) {
587
- return teamsfx_api_1.err(new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.FailedToGetParamForRegisterTeamsAppAndAad, `${key} not found`));
588
- }
589
- param[key] = value;
590
- }
591
- return teamsfx_api_1.ok(param);
592
- }
593
- exports.extractParamForRegisterTeamsAppAndAad = extractParamForRegisterTeamsAppAndAad;
594
- async function addSso(ctx, inputs, localSettings) {
595
- var _a, _b;
596
- ctx.telemetryReporter.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddSsoStart, {
597
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
598
- });
599
- let solutionSettings = utils_1.getAzureSolutionSettings(ctx);
600
- let existingApp = false;
601
- if (!solutionSettings) {
602
- // pure existing app
603
- solutionSettings = {
604
- name: constants_4.TeamsAppSolutionNameV2,
605
- version: "1.0.0",
606
- hostType: "Azure",
607
- capabilities: [],
608
- azureResources: [],
609
- activeResourcePlugins: [],
610
- };
611
- ctx.projectSetting.solutionSettings = solutionSettings;
612
- existingApp = true;
613
- }
614
- // Check whether can add sso
615
- const canProceed = common_1.canAddSso(ctx.projectSetting, true);
616
- if (canProceed.isErr()) {
617
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddSso, canProceed.error, ctx.telemetryReporter));
618
- }
619
- const needsTab = solutionSettings.capabilities.length == 0 ||
620
- (solutionSettings.capabilities.includes(question_2.TabOptionItem.id) &&
621
- !solutionSettings.capabilities.includes(question_2.TabSsoItem.id));
622
- const needsBot = solutionSettings.capabilities.includes(question_2.BotOptionItem.id) &&
623
- !(((_b = (_a = ctx.projectSetting.pluginSettings) === null || _a === void 0 ? void 0 : _a[constants_1.ResourcePlugins.Bot]) === null || _b === void 0 ? void 0 : _b[common_1.BotHostTypeName]) ===
624
- common_1.BotHostTypes.AzureFunctions) &&
625
- !solutionSettings.capabilities.includes(question_2.BotSsoItem.id);
626
- // Update project settings
627
- if (!solutionSettings.activeResourcePlugins.includes(constants_2.PluginNames.AAD)) {
628
- solutionSettings.activeResourcePlugins.push(constants_2.PluginNames.AAD);
629
- }
630
- if (solutionSettings.capabilities.length == 0) {
631
- solutionSettings.capabilities.push(question_2.TabSsoItem.id);
632
- }
633
- if (solutionSettings.capabilities.includes(question_2.TabOptionItem.id) &&
634
- !solutionSettings.capabilities.includes(question_2.TabSsoItem.id)) {
635
- solutionSettings.capabilities.push(question_2.TabSsoItem.id);
636
- }
637
- if (needsBot) {
638
- solutionSettings.capabilities.push(question_2.BotSsoItem.id);
639
- }
640
- const originalSettings = lodash_1.cloneDeep(solutionSettings);
641
- const inputsNew = Object.assign(Object.assign({}, inputs), { projectPath: inputs.projectPath, existingResources: originalSettings.activeResourcePlugins, existingCapabilities: originalSettings.capabilities });
642
- const createAuthFilesRes = await createAuthFiles(inputsNew, ctx, needsTab, needsBot, projectSettingsHelper_1.isVSProject(ctx.projectSetting));
643
- if (createAuthFilesRes.isErr()) {
644
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddSso, createAuthFilesRes.error, ctx.telemetryReporter));
645
- }
646
- // Scaffold aad plugin and arm template
647
- const scaffoldRes = await scaffoldCodeAndResourceTemplate(ctx, inputsNew, localSettings, [typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin)], existingApp ? [] : [typedi_1.Container.get(ResourcePluginContainer_1.ResourcePluginsV2.AadPlugin)]);
648
- if (scaffoldRes.isErr()) {
649
- ctx.projectSetting.solutionSettings = originalSettings;
650
- return teamsfx_api_1.err(util_1.sendErrorTelemetryThenReturnError(constants_2.SolutionTelemetryEvent.AddSso, scaffoldRes.error, ctx.telemetryReporter));
651
- }
652
- // Update manifest
653
- const appStudioPlugin = typedi_1.Container.get(constants_5.ComponentNames.AppManifest);
654
- await appStudioPlugin.addCapability(inputs, [
655
- { name: "WebApplicationInfo" },
656
- ]);
657
- if (inputs.platform == teamsfx_api_1.Platform.VSCode) {
658
- ctx.userInteraction
659
- .showMessage("info", localizeUtils_1.getLocalizedString("core.addSso.learnMore", constants_2.AddSsoParameters.LearnMore), false, constants_2.AddSsoParameters.LearnMore)
660
- .then((result) => {
661
- var _a;
662
- const userSelected = result.isOk() ? result.value : undefined;
663
- if (userSelected === constants_2.AddSsoParameters.LearnMore) {
664
- (_a = ctx.userInteraction) === null || _a === void 0 ? void 0 : _a.openUrl(constants_2.AddSsoParameters.LearnMoreUrl);
665
- ctx.telemetryReporter.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddSsoReadme, {
666
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
667
- });
668
- }
669
- });
670
- }
671
- else if (inputs.platform == teamsfx_api_1.Platform.CLI) {
672
- await ctx.userInteraction.showMessage("info", localizeUtils_1.getLocalizedString("core.addSso.learnMore", constants_2.AddSsoParameters.LearnMoreUrl), false);
673
- }
674
- ctx.telemetryReporter.sendTelemetryEvent(constants_2.SolutionTelemetryEvent.AddSso, {
675
- [constants_2.SolutionTelemetryProperty.Component]: constants_2.SolutionTelemetryComponentName,
676
- [constants_2.SolutionTelemetryProperty.Success]: constants_2.SolutionTelemetrySuccess.Yes,
677
- [constants_2.SolutionTelemetryProperty.AddTabSso]: needsTab
678
- ? constants_2.SolutionTelemetrySuccess.Yes
679
- : constants_2.SolutionTelemetrySuccess.No,
680
- [constants_2.SolutionTelemetryProperty.AddBotSso]: needsBot
681
- ? constants_2.SolutionTelemetrySuccess.Yes
682
- : constants_2.SolutionTelemetrySuccess.No,
683
- });
684
- return teamsfx_api_1.ok({
685
- func: constants_2.AddSsoParameters.AddSso,
686
- capabilities: [
687
- ...(needsTab ? [constants_2.AddSsoParameters.Tab] : []),
688
- ...(needsBot ? [constants_2.AddSsoParameters.Bot] : []),
689
- ],
690
- });
691
- }
692
- exports.addSso = addSso;
693
- // TODO: use 'isVsProject' for changes in VS
694
- async function createAuthFiles(input, ctx, needTab, needBot, isVsProject = false) {
695
- var _a;
696
- const projectPath = input.projectPath;
697
- if (!projectPath) {
698
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.InvalidProjectPath, localizeUtils_1.getLocalizedString("core.addSsoFiles.emptyProjectPath"));
699
- return teamsfx_api_1.err(e);
700
- }
701
- const language = (_a = ctx.projectSetting.programmingLanguage) !== null && _a !== void 0 ? _a : constants_2.Language.JavaScript;
702
- const languageFolderResult = validateAndParseLanguage(language);
703
- if (languageFolderResult.isErr()) {
704
- return teamsfx_api_1.err(languageFolderResult.error);
705
- }
706
- const languageFolderName = languageFolderResult.value;
707
- const projectFolderExists = await fs_extra_1.default.pathExists(projectPath);
708
- if (!projectFolderExists) {
709
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.InvalidProjectPath, localizeUtils_1.getLocalizedString("core.addSsoFiles.projectPathNotExists"));
710
- return teamsfx_api_1.err(e);
711
- }
712
- const authFolder = path_1.default.join(projectPath, isVsProject ? "Auth" : "auth");
713
- const tabFolder = path_1.default.join(authFolder, constants_2.AddSsoParameters.Tab);
714
- const botFolder = path_1.default.join(authFolder, constants_2.AddSsoParameters.Bot);
715
- try {
716
- const authFolderExists = await fs_extra_1.default.pathExists(authFolder);
717
- if (!authFolderExists) {
718
- await fs_extra_1.default.ensureDir(authFolder);
719
- }
720
- if (needTab) {
721
- const tabFolderExists = await fs_extra_1.default.pathExists(tabFolder);
722
- if (!tabFolderExists) {
723
- await fs_extra_1.default.ensureDir(tabFolder);
724
- }
725
- const templateFolder = folder_1.getTemplatesFolder();
726
- const tabTemplateFolder = path_1.default.join(templateFolder, constants_2.AddSsoParameters.filePath, constants_2.AddSsoParameters.Tab);
727
- if (isVsProject) {
728
- // README.md
729
- const readmeSourcePath = path_1.default.join(tabTemplateFolder, constants_2.AddSsoParameters.ReadmeCSharp);
730
- const readmeTargetPath = path_1.default.join(tabFolder, constants_2.AddSsoParameters.ReadmeCSharp);
731
- const readme = await fs_extra_1.default.readFile(readmeSourcePath);
732
- fs_extra_1.default.writeFile(readmeTargetPath, readme);
733
- // Sample Code
734
- const sampleSourceFolder = path_1.default.join(tabTemplateFolder, languageFolderName);
735
- const sampleZip = new adm_zip_1.default();
736
- sampleZip.addLocalFolder(sampleSourceFolder);
737
- await templatesUtils_1.unzip(sampleZip, tabFolder);
738
- // Update appsettings
739
- const appSettingsPath = path_1.default.join(projectPath, constants_2.AddSsoParameters.AppSettings);
740
- const appSettingsDevPath = path_1.default.join(projectPath, constants_2.AddSsoParameters.AppSettingsDev);
741
- if (await fs_extra_1.default.pathExists(appSettingsPath)) {
742
- const appSettings = await fs_extra_1.default.readJson(appSettingsPath);
743
- if (!appSettings.TeamsFx) {
744
- appSettings.TeamsFx = constants_2.AddSsoParameters.AppSettingsToAdd;
745
- }
746
- await fs_extra_1.default.writeFile(appSettingsPath, JSON.stringify(appSettings, null, "\t"), "utf-8");
747
- }
748
- if (await fs_extra_1.default.pathExists(appSettingsDevPath)) {
749
- const appSettings = await fs_extra_1.default.readJson(appSettingsDevPath);
750
- if (!appSettings.TeamsFx) {
751
- appSettings.TeamsFx = constants_2.AddSsoParameters.AppSettingsToAdd;
752
- }
753
- await fs_extra_1.default.writeFile(appSettingsDevPath, JSON.stringify(appSettings, null, "\t"), "utf-8");
754
- }
755
- }
756
- else {
757
- // README.md
758
- const readmeSourcePath = path_1.default.join(tabTemplateFolder, constants_2.AddSsoParameters.Readme);
759
- const readmeTargetPath = path_1.default.join(tabFolder, constants_2.AddSsoParameters.Readme);
760
- const readme = await fs_extra_1.default.readFile(readmeSourcePath);
761
- fs_extra_1.default.writeFile(readmeTargetPath, readme);
762
- // Sample Code
763
- const sampleSourceFolder = path_1.default.join(tabTemplateFolder, languageFolderName);
764
- const sampleZip = new adm_zip_1.default();
765
- sampleZip.addLocalFolder(sampleSourceFolder);
766
- await templatesUtils_1.unzip(sampleZip, tabFolder);
767
- }
768
- }
769
- if (needBot) {
770
- const botFolderExists = await fs_extra_1.default.pathExists(botFolder);
771
- if (!botFolderExists) {
772
- await fs_extra_1.default.ensureDir(botFolder);
773
- }
774
- const templateFolder = folder_1.getTemplatesFolder();
775
- const botTemplateFolder = path_1.default.join(templateFolder, constants_2.AddSsoParameters.filePath, constants_2.AddSsoParameters.Bot);
776
- if (isVsProject) {
777
- // README.md
778
- const readmeSourcePath = path_1.default.join(botTemplateFolder, constants_2.AddSsoParameters.ReadmeCSharp);
779
- const readmeTargetPath = path_1.default.join(botFolder, constants_2.AddSsoParameters.ReadmeCSharp);
780
- const readme = await fs_extra_1.default.readFile(readmeSourcePath);
781
- fs_extra_1.default.writeFile(readmeTargetPath, readme);
782
- // Sample Code
783
- const sampleSourceFolder = path_1.default.join(botTemplateFolder, languageFolderName);
784
- const sampleZip = new adm_zip_1.default();
785
- sampleZip.addLocalFolder(sampleSourceFolder);
786
- await templatesUtils_1.unzip(sampleZip, botFolder);
787
- // Update appsettings
788
- const appSettingsPath = path_1.default.join(projectPath, constants_2.AddSsoParameters.AppSettings);
789
- const appSettingsDevPath = path_1.default.join(projectPath, constants_2.AddSsoParameters.AppSettingsDev);
790
- if (await fs_extra_1.default.pathExists(appSettingsPath)) {
791
- const appSettings = await fs_extra_1.default.readJson(appSettingsPath);
792
- if (!appSettings.TeamsFx ||
793
- !appSettings.TeamsFx.Authentication ||
794
- !appSettings.TeamsFx.Authentication.Bot) {
795
- appSettings.TeamsFx = constants_2.AddSsoParameters.AppSettingsToAddForBot;
796
- }
797
- await fs_extra_1.default.writeFile(appSettingsPath, JSON.stringify(appSettings, null, "\t"), "utf-8");
798
- }
799
- if (await fs_extra_1.default.pathExists(appSettingsDevPath)) {
800
- const appSettings = await fs_extra_1.default.readJson(appSettingsDevPath);
801
- if (!appSettings.TeamsFx ||
802
- !appSettings.TeamsFx.Authentication ||
803
- !appSettings.TeamsFx.Authentication.Bot) {
804
- appSettings.TeamsFx = constants_2.AddSsoParameters.AppSettingsToAddForBot;
805
- }
806
- await fs_extra_1.default.writeFile(appSettingsDevPath, JSON.stringify(appSettings, null, "\t"), "utf-8");
807
- }
808
- }
809
- else {
810
- // README.md
811
- const readmeSourcePath = path_1.default.join(botTemplateFolder, constants_2.AddSsoParameters.Readme);
812
- const readmeTargetPath = path_1.default.join(botFolder, constants_2.AddSsoParameters.Readme);
813
- const readme = await fs_extra_1.default.readFile(readmeSourcePath);
814
- fs_extra_1.default.writeFile(readmeTargetPath, readme);
815
- // Sample Code
816
- const sampleSourceFolder = path_1.default.join(botTemplateFolder, languageFolderName);
817
- const sampleZip = new adm_zip_1.default();
818
- sampleZip.addLocalFolder(sampleSourceFolder);
819
- await templatesUtils_1.unzip(sampleZip, botFolder);
820
- }
821
- }
822
- }
823
- catch (error) {
824
- if (needTab && (await fs_extra_1.default.pathExists(tabFolder))) {
825
- await fs_extra_1.default.remove(tabFolder);
826
- }
827
- if (needBot && (await fs_extra_1.default.pathExists(botFolder))) {
828
- await fs_extra_1.default.remove(botFolder);
829
- }
830
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.FailedToCreateAuthFiles, localizeUtils_1.getLocalizedString("core.addSsoFiles.FailedToCreateAuthFiles", error.message));
831
- return teamsfx_api_1.err(e);
832
- }
833
- return teamsfx_api_1.ok(undefined);
834
- }
835
- exports.createAuthFiles = createAuthFiles;
836
- function validateAndParseLanguage(language) {
837
- if (language.toLowerCase() == constants_2.Language.TypeScript) {
838
- return teamsfx_api_1.ok("ts");
839
- }
840
- if (language.toLowerCase() == constants_2.Language.JavaScript) {
841
- return teamsfx_api_1.ok("js");
842
- }
843
- if (language.toLowerCase() == constants_2.Language.CSharp) {
844
- return teamsfx_api_1.ok("csharp");
845
- }
846
- const e = new teamsfx_api_1.SystemError(constants_2.SolutionSource, constants_2.SolutionError.InvalidInput, localizeUtils_1.getLocalizedString("core.addSsoFiles.invalidLanguage"));
847
- return teamsfx_api_1.err(e);
848
- }
849
- exports.validateAndParseLanguage = validateAndParseLanguage;
850
- //# sourceMappingURL=executeUserTask.js.map