@microsoft/teamsfx-core 1.16.2 → 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 (749) 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/keyVault.js +2 -2
  77. package/build/component/feature/keyVault.js.map +1 -1
  78. package/build/component/feature/spfx.d.ts.map +1 -1
  79. package/build/component/feature/spfx.js +5 -12
  80. package/build/component/feature/spfx.js.map +1 -1
  81. package/build/component/feature/sql.d.ts.map +1 -1
  82. package/build/component/feature/sql.js +3 -3
  83. package/build/component/feature/sql.js.map +1 -1
  84. package/build/component/feature/sso.d.ts.map +1 -1
  85. package/build/component/feature/sso.js +45 -44
  86. package/build/component/feature/sso.js.map +1 -1
  87. package/build/component/feature/tab.js +2 -2
  88. package/build/component/feature/tab.js.map +1 -1
  89. package/build/component/migrate.d.ts.map +1 -1
  90. package/build/component/migrate.js +41 -47
  91. package/build/component/migrate.js.map +1 -1
  92. package/build/component/provisionUtils.js +2 -2
  93. package/build/component/provisionUtils.js.map +1 -1
  94. package/build/component/questionV3.d.ts +3 -0
  95. package/build/component/questionV3.d.ts.map +1 -1
  96. package/build/component/questionV3.js +27 -4
  97. package/build/component/questionV3.js.map +1 -1
  98. package/build/component/resource/aadApp/aadApp.d.ts +5 -0
  99. package/build/component/resource/aadApp/aadApp.d.ts.map +1 -1
  100. package/build/component/resource/aadApp/aadApp.js +60 -13
  101. package/build/component/resource/aadApp/aadApp.js.map +1 -1
  102. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppClient.d.ts +0 -0
  103. package/build/component/resource/aadApp/aadAppClient.d.ts.map +1 -0
  104. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppClient.js +2 -2
  105. package/build/component/resource/aadApp/aadAppClient.js.map +1 -0
  106. package/build/{plugins/resource/aad/plugin.d.ts → component/resource/aadApp/aadAppForTeamsImpl.d.ts} +6 -9
  107. package/build/component/resource/aadApp/aadAppForTeamsImpl.d.ts.map +1 -0
  108. package/build/{plugins/resource/aad/plugin.js → component/resource/aadApp/aadAppForTeamsImpl.js} +44 -119
  109. package/build/component/resource/aadApp/aadAppForTeamsImpl.js.map +1 -0
  110. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppManifestManager.d.ts +0 -0
  111. package/build/component/resource/aadApp/aadAppManifestManager.d.ts.map +1 -0
  112. package/build/{plugins/resource/aad → component/resource/aadApp}/aadAppManifestManager.js +0 -0
  113. package/build/component/resource/aadApp/aadAppManifestManager.js.map +1 -0
  114. package/build/{plugins/resource/aad → component/resource/aadApp}/appStudio.d.ts +0 -0
  115. package/build/component/resource/aadApp/appStudio.d.ts.map +1 -0
  116. package/build/{plugins/resource/aad → component/resource/aadApp}/appStudio.js +1 -1
  117. package/build/component/resource/aadApp/appStudio.js.map +1 -0
  118. package/build/{plugins/resource/aad → component/resource/aadApp}/constants.d.ts +0 -0
  119. package/build/component/resource/aadApp/constants.d.ts.map +1 -0
  120. package/build/{plugins/resource/aad → component/resource/aadApp}/constants.js +0 -0
  121. package/build/component/resource/aadApp/constants.js.map +1 -0
  122. package/build/{plugins/resource/aad → component/resource/aadApp}/errorCodes.d.ts +0 -0
  123. package/build/component/resource/aadApp/errorCodes.d.ts.map +1 -0
  124. package/build/{plugins/resource/aad → component/resource/aadApp}/errorCodes.js +0 -0
  125. package/build/component/resource/aadApp/errorCodes.js.map +1 -0
  126. package/build/{plugins/resource/aad → component/resource/aadApp}/errors.d.ts +0 -0
  127. package/build/component/resource/aadApp/errors.d.ts.map +1 -0
  128. package/build/{plugins/resource/aad → component/resource/aadApp}/errors.js +0 -0
  129. package/build/component/resource/aadApp/errors.js.map +1 -0
  130. package/build/{plugins/resource/aad → component/resource/aadApp}/graph.d.ts +0 -0
  131. package/build/component/resource/aadApp/graph.d.ts.map +1 -0
  132. package/build/{plugins/resource/aad → component/resource/aadApp}/graph.js +0 -0
  133. package/build/component/resource/aadApp/graph.js.map +1 -0
  134. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADApplication.d.ts +0 -0
  135. package/build/component/resource/aadApp/interfaces/AADApplication.d.ts.map +1 -0
  136. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADApplication.js +0 -0
  137. package/build/component/resource/aadApp/interfaces/AADApplication.js.map +1 -0
  138. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADManifest.d.ts +0 -0
  139. package/build/component/resource/aadApp/interfaces/AADManifest.d.ts.map +1 -0
  140. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/AADManifest.js +0 -0
  141. package/build/component/resource/aadApp/interfaces/AADManifest.js.map +1 -0
  142. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADApplication.d.ts +0 -0
  143. package/build/component/resource/aadApp/interfaces/IAADApplication.d.ts.map +1 -0
  144. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADApplication.js +0 -0
  145. package/build/component/resource/aadApp/interfaces/IAADApplication.js.map +1 -0
  146. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADDefinition.d.ts +0 -0
  147. package/build/component/resource/aadApp/interfaces/IAADDefinition.d.ts.map +1 -0
  148. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IAADDefinition.js +0 -0
  149. package/build/component/resource/aadApp/interfaces/IAADDefinition.js.map +1 -0
  150. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermission.d.ts +0 -0
  151. package/build/component/resource/aadApp/interfaces/IPermission.d.ts.map +1 -0
  152. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermission.js +0 -0
  153. package/build/component/resource/aadApp/interfaces/IPermission.js.map +1 -0
  154. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermissionList.d.ts +0 -0
  155. package/build/component/resource/aadApp/interfaces/IPermissionList.d.ts.map +1 -0
  156. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/IPermissionList.js +0 -0
  157. package/build/component/resource/aadApp/interfaces/IPermissionList.js.map +1 -0
  158. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/models.d.ts +0 -0
  159. package/build/component/resource/aadApp/interfaces/models.d.ts.map +1 -0
  160. package/build/{plugins/resource/aad → component/resource/aadApp}/interfaces/models.js +0 -0
  161. package/build/component/resource/aadApp/interfaces/models.js.map +1 -0
  162. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/index.d.ts +0 -0
  163. package/build/component/resource/aadApp/permissions/index.d.ts.map +1 -0
  164. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/index.js +1 -1
  165. package/build/component/resource/aadApp/permissions/index.js.map +1 -0
  166. package/build/{plugins/resource/aad → component/resource/aadApp}/permissions/permissions.json +0 -0
  167. package/build/{plugins/resource/aad → component/resource/aadApp}/results.d.ts +0 -0
  168. package/build/component/resource/aadApp/results.d.ts.map +1 -0
  169. package/build/{plugins/resource/aad → component/resource/aadApp}/results.js +0 -0
  170. package/build/component/resource/aadApp/results.js.map +1 -0
  171. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/aadManifestHelper.d.ts +0 -0
  172. package/build/component/resource/aadApp/utils/aadManifestHelper.d.ts.map +1 -0
  173. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/aadManifestHelper.js +0 -0
  174. package/build/component/resource/aadApp/utils/aadManifestHelper.js.map +1 -0
  175. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/configs.d.ts +0 -0
  176. package/build/component/resource/aadApp/utils/configs.d.ts.map +1 -0
  177. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/configs.js +9 -11
  178. package/build/component/resource/aadApp/utils/configs.js.map +1 -0
  179. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/dialog.d.ts +0 -0
  180. package/build/component/resource/aadApp/utils/dialog.d.ts.map +1 -0
  181. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/dialog.js +0 -0
  182. package/build/component/resource/aadApp/utils/dialog.js.map +1 -0
  183. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/format.d.ts +0 -0
  184. package/build/component/resource/aadApp/utils/format.d.ts.map +1 -0
  185. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/format.js +0 -0
  186. package/build/component/resource/aadApp/utils/format.js.map +1 -0
  187. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/telemetry.d.ts +0 -0
  188. package/build/component/resource/aadApp/utils/telemetry.d.ts.map +1 -0
  189. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/telemetry.js +1 -1
  190. package/build/component/resource/aadApp/utils/telemetry.js.map +1 -0
  191. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/tokenProvider.d.ts +0 -0
  192. package/build/component/resource/aadApp/utils/tokenProvider.d.ts.map +1 -0
  193. package/build/{plugins/resource/aad → component/resource/aadApp}/utils/tokenProvider.js +5 -5
  194. package/build/component/resource/aadApp/utils/tokenProvider.js.map +1 -0
  195. package/build/component/resource/aadApp/utils.d.ts +3 -1
  196. package/build/component/resource/aadApp/utils.d.ts.map +1 -1
  197. package/build/component/resource/aadApp/utils.js +165 -1
  198. package/build/component/resource/aadApp/utils.js.map +1 -1
  199. package/build/component/resource/apim/config.d.ts.map +1 -1
  200. package/build/component/resource/apim/config.js +5 -6
  201. package/build/component/resource/apim/config.js.map +1 -1
  202. package/build/component/resource/apim/factory.js +2 -2
  203. package/build/component/resource/apim/factory.js.map +1 -1
  204. package/build/component/resource/appManifest/constants.d.ts.map +1 -1
  205. package/build/component/resource/appManifest/constants.js +5 -7
  206. package/build/component/resource/appManifest/constants.js.map +1 -1
  207. package/build/component/resource/appManifest/utils.d.ts.map +1 -1
  208. package/build/component/resource/appManifest/utils.js +2 -3
  209. package/build/component/resource/appManifest/utils.js.map +1 -1
  210. package/build/component/resource/azureSql/config.js +3 -3
  211. package/build/component/resource/azureSql/config.js.map +1 -1
  212. package/build/component/resource/keyVault.d.ts +2 -0
  213. package/build/component/resource/keyVault.d.ts.map +1 -1
  214. package/build/component/resource/keyVault.js +18 -0
  215. package/build/component/resource/keyVault.js.map +1 -1
  216. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/constants.d.ts +0 -0
  217. package/build/component/resource/simpleAuth/constants.d.ts.map +1 -0
  218. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/constants.js +0 -0
  219. package/build/component/resource/simpleAuth/constants.js.map +1 -0
  220. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/errors.d.ts +0 -0
  221. package/build/component/resource/simpleAuth/errors.d.ts.map +1 -0
  222. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/errors.js +0 -0
  223. package/build/component/resource/simpleAuth/errors.js.map +1 -0
  224. package/build/component/resource/{simpleAuth.d.ts → simpleAuth/index.d.ts} +1 -1
  225. package/build/component/resource/simpleAuth/index.d.ts.map +1 -0
  226. package/build/component/resource/{simpleAuth.js → simpleAuth/index.js} +10 -10
  227. package/build/component/resource/simpleAuth/index.js.map +1 -0
  228. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/result.d.ts +0 -0
  229. package/build/component/resource/simpleAuth/result.d.ts.map +1 -0
  230. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/result.js +0 -0
  231. package/build/component/resource/simpleAuth/result.js.map +1 -0
  232. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/common.d.ts +0 -0
  233. package/build/component/resource/simpleAuth/utils/common.d.ts.map +1 -0
  234. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/common.js +0 -0
  235. package/build/component/resource/simpleAuth/utils/common.js.map +1 -0
  236. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/dialog.d.ts +0 -0
  237. package/build/component/resource/simpleAuth/utils/dialog.d.ts.map +1 -0
  238. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/dialog.js +0 -0
  239. package/build/component/resource/simpleAuth/utils/dialog.js.map +1 -0
  240. package/build/{plugins/resource/keyvault → component/resource/simpleAuth}/utils/telemetry.d.ts +0 -0
  241. package/build/component/resource/simpleAuth/utils/telemetry.d.ts.map +1 -0
  242. package/build/{plugins/resource/simpleauth → component/resource/simpleAuth}/utils/telemetry.js +0 -0
  243. package/build/component/resource/simpleAuth/utils/telemetry.js.map +1 -0
  244. package/build/{plugins → component}/resource/spfx/depsChecker/dependencyChecker.d.ts +0 -0
  245. package/build/component/resource/spfx/depsChecker/dependencyChecker.d.ts.map +1 -0
  246. package/build/{plugins → component}/resource/spfx/depsChecker/dependencyChecker.js +0 -0
  247. package/build/component/resource/spfx/depsChecker/dependencyChecker.js.map +1 -0
  248. package/build/{plugins → component}/resource/spfx/depsChecker/generatorChecker.d.ts +0 -0
  249. package/build/component/resource/spfx/depsChecker/generatorChecker.d.ts.map +1 -0
  250. package/build/{plugins → component}/resource/spfx/depsChecker/generatorChecker.js +16 -7
  251. package/build/component/resource/spfx/depsChecker/generatorChecker.js.map +1 -0
  252. package/build/{plugins → component}/resource/spfx/depsChecker/yoChecker.d.ts +0 -0
  253. package/build/component/resource/spfx/depsChecker/yoChecker.d.ts.map +1 -0
  254. package/build/{plugins → component}/resource/spfx/depsChecker/yoChecker.js +0 -0
  255. package/build/component/resource/spfx/depsChecker/yoChecker.js.map +1 -0
  256. package/build/{plugins → component}/resource/spfx/error.d.ts +0 -0
  257. package/build/component/resource/spfx/error.d.ts.map +1 -0
  258. package/build/{plugins → component}/resource/spfx/error.js +5 -4
  259. package/build/component/resource/spfx/error.js.map +1 -0
  260. package/build/component/resource/spfx/index.d.ts.map +1 -1
  261. package/build/component/resource/spfx/index.js +9 -9
  262. package/build/component/resource/spfx/index.js.map +1 -1
  263. package/build/{plugins → component}/resource/spfx/spoClient.d.ts +0 -0
  264. package/build/component/resource/spfx/spoClient.d.ts.map +1 -0
  265. package/build/{plugins → component}/resource/spfx/spoClient.js +0 -0
  266. package/build/component/resource/spfx/spoClient.js.map +1 -0
  267. package/build/{plugins → component}/resource/spfx/utils/constants.d.ts +3 -0
  268. package/build/component/resource/spfx/utils/constants.d.ts.map +1 -0
  269. package/build/{plugins → component}/resource/spfx/utils/constants.js +3 -0
  270. package/build/component/resource/spfx/utils/constants.js.map +1 -0
  271. package/build/{plugins → component}/resource/spfx/utils/progress-helper.d.ts +0 -0
  272. package/build/component/resource/spfx/utils/progress-helper.d.ts.map +1 -0
  273. package/build/{plugins → component}/resource/spfx/utils/progress-helper.js +0 -0
  274. package/build/component/resource/spfx/utils/progress-helper.js.map +1 -0
  275. package/build/{plugins → component}/resource/spfx/utils/questions.d.ts +0 -0
  276. package/build/component/resource/spfx/utils/questions.d.ts.map +1 -0
  277. package/build/{plugins → component}/resource/spfx/utils/questions.js +8 -2
  278. package/build/component/resource/spfx/utils/questions.js.map +1 -0
  279. package/build/{plugins → component}/resource/spfx/utils/telemetry-helper.d.ts +0 -0
  280. package/build/component/resource/spfx/utils/telemetry-helper.d.ts.map +1 -0
  281. package/build/{plugins → component}/resource/spfx/utils/telemetry-helper.js +0 -0
  282. package/build/component/resource/spfx/utils/telemetry-helper.js.map +1 -0
  283. package/build/{plugins → component}/resource/spfx/utils/telemetryEvents.d.ts +0 -0
  284. package/build/component/resource/spfx/utils/telemetryEvents.d.ts.map +1 -0
  285. package/build/{plugins → component}/resource/spfx/utils/telemetryEvents.js +0 -0
  286. package/build/component/resource/spfx/utils/telemetryEvents.js.map +1 -0
  287. package/build/{plugins → component}/resource/spfx/utils/utils.d.ts +2 -1
  288. package/build/component/resource/spfx/utils/utils.d.ts.map +1 -0
  289. package/build/{plugins → component}/resource/spfx/utils/utils.js +9 -4
  290. package/build/component/resource/spfx/utils/utils.js.map +1 -0
  291. package/build/core/FxCore.d.ts +10 -44
  292. package/build/core/FxCore.d.ts.map +1 -1
  293. package/build/core/FxCore.js +54 -696
  294. package/build/core/FxCore.js.map +1 -1
  295. package/build/core/collaborator.d.ts +6 -1
  296. package/build/core/collaborator.d.ts.map +1 -1
  297. package/build/core/collaborator.js +75 -23
  298. package/build/core/collaborator.js.map +1 -1
  299. package/build/core/environment.d.ts.map +1 -1
  300. package/build/core/environment.js +2 -7
  301. package/build/core/environment.js.map +1 -1
  302. package/build/core/generateAadManifestTemplate.d.ts +1 -1
  303. package/build/core/generateAadManifestTemplate.d.ts.map +1 -1
  304. package/build/core/generateAadManifestTemplate.js +11 -14
  305. package/build/core/generateAadManifestTemplate.js.map +1 -1
  306. package/build/core/globalVars.d.ts +0 -1
  307. package/build/core/globalVars.d.ts.map +1 -1
  308. package/build/core/globalVars.js +1 -5
  309. package/build/core/globalVars.js.map +1 -1
  310. package/build/core/index.d.ts +0 -5
  311. package/build/core/index.d.ts.map +1 -1
  312. package/build/core/index.js +0 -7
  313. package/build/core/index.js.map +1 -1
  314. package/build/core/middleware/MigrationUtils.d.ts +1 -1
  315. package/build/core/middleware/MigrationUtils.d.ts.map +1 -1
  316. package/build/core/middleware/MigrationUtils.js +2 -2
  317. package/build/core/middleware/MigrationUtils.js.map +1 -1
  318. package/build/core/middleware/consolidateLocalRemote.js +1 -1
  319. package/build/core/middleware/consolidateLocalRemote.js.map +1 -1
  320. package/build/core/middleware/envInfoLoader.d.ts.map +1 -1
  321. package/build/core/middleware/envInfoLoader.js +1 -4
  322. package/build/core/middleware/envInfoLoader.js.map +1 -1
  323. package/build/core/middleware/envInfoLoaderV3.d.ts.map +1 -1
  324. package/build/core/middleware/envInfoLoaderV3.js +1 -4
  325. package/build/core/middleware/envInfoLoaderV3.js.map +1 -1
  326. package/build/core/middleware/projectMigrator.js +2 -2
  327. package/build/core/middleware/projectMigrator.js.map +1 -1
  328. package/build/core/middleware/projectSettingsLoader.d.ts.map +1 -1
  329. package/build/core/middleware/projectSettingsLoader.js +1 -10
  330. package/build/core/middleware/projectSettingsLoader.js.map +1 -1
  331. package/build/core/middleware/projectSettingsWriter.d.ts.map +1 -1
  332. package/build/core/middleware/projectSettingsWriter.js +1 -3
  333. package/build/core/middleware/projectSettingsWriter.js.map +1 -1
  334. package/build/core/middleware/questionModel.d.ts +1 -10
  335. package/build/core/middleware/questionModel.d.ts.map +1 -1
  336. package/build/core/middleware/questionModel.js +26 -225
  337. package/build/core/middleware/questionModel.js.map +1 -1
  338. package/build/index.d.ts +2 -8
  339. package/build/index.d.ts.map +1 -1
  340. package/build/index.js +4 -8
  341. package/build/index.js.map +1 -1
  342. package/build/plugins/resource/appstudio/appStudio.d.ts.map +1 -1
  343. package/build/plugins/resource/appstudio/appStudio.js +8 -1
  344. package/build/plugins/resource/appstudio/appStudio.js.map +1 -1
  345. package/build/plugins/resource/appstudio/errors.d.ts +4 -0
  346. package/build/plugins/resource/appstudio/errors.d.ts.map +1 -1
  347. package/build/plugins/resource/appstudio/errors.js +7 -0
  348. package/build/plugins/resource/appstudio/errors.js.map +1 -1
  349. package/build/plugins/resource/appstudio/index.js +2 -2
  350. package/build/plugins/resource/appstudio/index.js.map +1 -1
  351. package/build/plugins/resource/appstudio/plugin.d.ts.map +1 -1
  352. package/build/plugins/resource/appstudio/plugin.js +21 -21
  353. package/build/plugins/resource/appstudio/plugin.js.map +1 -1
  354. package/build/plugins/resource/appstudio/v2/index.js +2 -2
  355. package/build/plugins/resource/appstudio/v2/index.js.map +1 -1
  356. package/build/plugins/resource/bot/configs/teamsBotConfig.js +2 -2
  357. package/build/plugins/resource/bot/configs/teamsBotConfig.js.map +1 -1
  358. package/build/plugins/resource/bot/errors.d.ts.map +1 -1
  359. package/build/plugins/resource/bot/errors.js +2 -2
  360. package/build/plugins/resource/bot/errors.js.map +1 -1
  361. package/build/plugins/resource/bot/functionsHostedBot/plugin.js +8 -8
  362. package/build/plugins/resource/bot/functionsHostedBot/plugin.js.map +1 -1
  363. package/build/plugins/resource/bot/index.d.ts.map +1 -1
  364. package/build/plugins/resource/bot/index.js +9 -7
  365. package/build/plugins/resource/bot/index.js.map +1 -1
  366. package/build/plugins/resource/bot/plugin.d.ts.map +1 -1
  367. package/build/plugins/resource/bot/plugin.js +16 -15
  368. package/build/plugins/resource/bot/plugin.js.map +1 -1
  369. package/build/plugins/resource/bot/question.d.ts.map +1 -1
  370. package/build/plugins/resource/bot/question.js +9 -10
  371. package/build/plugins/resource/bot/question.js.map +1 -1
  372. package/build/plugins/resource/function/plugin.js +3 -4
  373. package/build/plugins/resource/function/plugin.js.map +1 -1
  374. package/build/plugins/resource/function/utils/depsChecker/funcHelper.d.ts +1 -1
  375. package/build/plugins/resource/function/utils/depsChecker/funcHelper.d.ts.map +1 -1
  376. package/build/plugins/resource/index.d.ts +0 -5
  377. package/build/plugins/resource/index.d.ts.map +1 -1
  378. package/build/plugins/resource/index.js +0 -5
  379. package/build/plugins/resource/index.js.map +1 -1
  380. package/build/plugins/solution/fx-solution/ResourcePluginContainer.d.ts +0 -10
  381. package/build/plugins/solution/fx-solution/ResourcePluginContainer.d.ts.map +1 -1
  382. package/build/plugins/solution/fx-solution/ResourcePluginContainer.js +0 -10
  383. package/build/plugins/solution/fx-solution/ResourcePluginContainer.js.map +1 -1
  384. package/build/plugins/solution/fx-solution/arm.d.ts.map +1 -1
  385. package/build/plugins/solution/fx-solution/arm.js +15 -15
  386. package/build/plugins/solution/fx-solution/arm.js.map +1 -1
  387. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts +4 -0
  388. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts.map +1 -1
  389. package/build/plugins/solution/fx-solution/debug/scaffolding.js +47 -1
  390. package/build/plugins/solution/fx-solution/debug/scaffolding.js.map +1 -1
  391. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.d.ts +7 -0
  392. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.d.ts.map +1 -0
  393. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.js +52 -0
  394. package/build/plugins/solution/fx-solution/debug/util/launchTransparency.js.map +1 -0
  395. package/build/plugins/solution/fx-solution/debug/util/ngrok.d.ts.map +1 -1
  396. package/build/plugins/solution/fx-solution/debug/util/ngrok.js +2 -4
  397. package/build/plugins/solution/fx-solution/debug/util/ngrok.js.map +1 -1
  398. package/build/plugins/solution/fx-solution/debug/util/settings.js +2 -2
  399. package/build/plugins/solution/fx-solution/debug/util/settings.js.map +1 -1
  400. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.d.ts +7 -0
  401. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.d.ts.map +1 -0
  402. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.js +553 -0
  403. package/build/plugins/solution/fx-solution/debug/util/tasksTransparency.js.map +1 -0
  404. package/build/plugins/solution/fx-solution/utils/backupFiles.js +2 -2
  405. package/build/plugins/solution/fx-solution/utils/backupFiles.js.map +1 -1
  406. package/build/plugins/solution/fx-solution/v2/utils.d.ts.map +1 -1
  407. package/build/plugins/solution/fx-solution/v2/utils.js.map +1 -1
  408. package/package.json +9 -23
  409. package/resource/package.nls.json +8 -6
  410. package/templates/debug/ngrok.yml +4 -0
  411. package/templates/fallback/bot.csharp.command-and-response.zip +0 -0
  412. package/templates/fallback/bot.csharp.default.zip +0 -0
  413. package/templates/fallback/bot.csharp.notification-function-base.zip +0 -0
  414. package/templates/fallback/bot.csharp.notification-trigger-http.zip +0 -0
  415. package/templates/fallback/bot.csharp.notification-trigger-timer.zip +0 -0
  416. package/templates/fallback/bot.csharp.notification-webapi.zip +0 -0
  417. package/templates/fallback/bot.csharp.workflow.zip +0 -0
  418. package/templates/fallback/bot.js.command-and-response.zip +0 -0
  419. package/templates/fallback/bot.js.default.zip +0 -0
  420. package/templates/fallback/bot.js.m365.zip +0 -0
  421. package/templates/fallback/bot.js.notification-function-base.zip +0 -0
  422. package/templates/fallback/bot.js.notification-restify.zip +0 -0
  423. package/templates/fallback/bot.js.notification-trigger-http.zip +0 -0
  424. package/templates/fallback/bot.js.notification-trigger-timer.zip +0 -0
  425. package/templates/fallback/bot.js.workflow.zip +0 -0
  426. package/templates/fallback/bot.ts.command-and-response.zip +0 -0
  427. package/templates/fallback/bot.ts.default.zip +0 -0
  428. package/templates/fallback/bot.ts.m365.zip +0 -0
  429. package/templates/fallback/bot.ts.notification-function-base.zip +0 -0
  430. package/templates/fallback/bot.ts.notification-restify.zip +0 -0
  431. package/templates/fallback/bot.ts.notification-trigger-http.zip +0 -0
  432. package/templates/fallback/bot.ts.notification-trigger-timer.zip +0 -0
  433. package/templates/fallback/bot.ts.workflow.zip +0 -0
  434. package/templates/fallback/function-base.js.default.zip +0 -0
  435. package/templates/fallback/function-base.ts.default.zip +0 -0
  436. package/templates/fallback/function-triggers.js.HTTPTrigger.zip +0 -0
  437. package/templates/fallback/function-triggers.ts.HTTPTrigger.zip +0 -0
  438. package/templates/fallback/tab.csharp.default.zip +0 -0
  439. package/templates/fallback/tab.csharp.non-sso.zip +0 -0
  440. package/templates/fallback/tab.js.default.zip +0 -0
  441. package/templates/fallback/tab.js.m365.zip +0 -0
  442. package/templates/fallback/tab.js.non-sso.zip +0 -0
  443. package/templates/fallback/tab.ts.default.zip +0 -0
  444. package/templates/fallback/tab.ts.m365.zip +0 -0
  445. package/templates/fallback/tab.ts.non-sso.zip +0 -0
  446. package/templates/plugins/resource/aad/auth/bot/README.md +202 -124
  447. package/templates/plugins/resource/aad/auth/bot/js/sso/profileSsoCommandHandler.js +30 -0
  448. package/templates/plugins/resource/aad/auth/bot/ts/sso/profileSsoCommandHandler.ts +38 -0
  449. package/templates/plugins/resource/spfx/solution/prereleaseREADME.md +82 -0
  450. package/build/common/index.d.ts +0 -10
  451. package/build/common/index.d.ts.map +0 -1
  452. package/build/common/index.js +0 -15
  453. package/build/common/index.js.map +0 -1
  454. package/build/component/resource/simpleAuth.d.ts.map +0 -1
  455. package/build/component/resource/simpleAuth.js.map +0 -1
  456. package/build/core/middleware/index.d.ts +0 -11
  457. package/build/core/middleware/index.d.ts.map +0 -1
  458. package/build/core/middleware/index.js +0 -14
  459. package/build/core/middleware/index.js.map +0 -1
  460. package/build/core/middleware/solutionLoader.d.ts +0 -4
  461. package/build/core/middleware/solutionLoader.d.ts.map +0 -1
  462. package/build/core/middleware/solutionLoader.js +0 -34
  463. package/build/core/middleware/solutionLoader.js.map +0 -1
  464. package/build/plugins/index.d.ts +0 -3
  465. package/build/plugins/index.d.ts.map +0 -1
  466. package/build/plugins/index.js +0 -8
  467. package/build/plugins/index.js.map +0 -1
  468. package/build/plugins/resource/aad/aadAppClient.d.ts.map +0 -1
  469. package/build/plugins/resource/aad/aadAppClient.js.map +0 -1
  470. package/build/plugins/resource/aad/aadAppManifestManager.d.ts.map +0 -1
  471. package/build/plugins/resource/aad/aadAppManifestManager.js.map +0 -1
  472. package/build/plugins/resource/aad/appStudio.d.ts.map +0 -1
  473. package/build/plugins/resource/aad/appStudio.js.map +0 -1
  474. package/build/plugins/resource/aad/constants.d.ts.map +0 -1
  475. package/build/plugins/resource/aad/constants.js.map +0 -1
  476. package/build/plugins/resource/aad/errorCodes.d.ts.map +0 -1
  477. package/build/plugins/resource/aad/errorCodes.js.map +0 -1
  478. package/build/plugins/resource/aad/errors.d.ts.map +0 -1
  479. package/build/plugins/resource/aad/errors.js.map +0 -1
  480. package/build/plugins/resource/aad/graph.d.ts.map +0 -1
  481. package/build/plugins/resource/aad/graph.js.map +0 -1
  482. package/build/plugins/resource/aad/index.d.ts +0 -32
  483. package/build/plugins/resource/aad/index.d.ts.map +0 -1
  484. package/build/plugins/resource/aad/index.js +0 -154
  485. package/build/plugins/resource/aad/index.js.map +0 -1
  486. package/build/plugins/resource/aad/interfaces/AADApplication.d.ts.map +0 -1
  487. package/build/plugins/resource/aad/interfaces/AADApplication.js.map +0 -1
  488. package/build/plugins/resource/aad/interfaces/AADManifest.d.ts.map +0 -1
  489. package/build/plugins/resource/aad/interfaces/AADManifest.js.map +0 -1
  490. package/build/plugins/resource/aad/interfaces/IAADApplication.d.ts.map +0 -1
  491. package/build/plugins/resource/aad/interfaces/IAADApplication.js.map +0 -1
  492. package/build/plugins/resource/aad/interfaces/IAADDefinition.d.ts.map +0 -1
  493. package/build/plugins/resource/aad/interfaces/IAADDefinition.js.map +0 -1
  494. package/build/plugins/resource/aad/interfaces/IPermission.d.ts.map +0 -1
  495. package/build/plugins/resource/aad/interfaces/IPermission.js.map +0 -1
  496. package/build/plugins/resource/aad/interfaces/IPermissionList.d.ts.map +0 -1
  497. package/build/plugins/resource/aad/interfaces/IPermissionList.js.map +0 -1
  498. package/build/plugins/resource/aad/interfaces/models.d.ts.map +0 -1
  499. package/build/plugins/resource/aad/interfaces/models.js.map +0 -1
  500. package/build/plugins/resource/aad/permissions/index.d.ts.map +0 -1
  501. package/build/plugins/resource/aad/permissions/index.js.map +0 -1
  502. package/build/plugins/resource/aad/plugin.d.ts.map +0 -1
  503. package/build/plugins/resource/aad/plugin.js.map +0 -1
  504. package/build/plugins/resource/aad/results.d.ts.map +0 -1
  505. package/build/plugins/resource/aad/results.js.map +0 -1
  506. package/build/plugins/resource/aad/utils/aadManifestHelper.d.ts.map +0 -1
  507. package/build/plugins/resource/aad/utils/aadManifestHelper.js.map +0 -1
  508. package/build/plugins/resource/aad/utils/configs.d.ts.map +0 -1
  509. package/build/plugins/resource/aad/utils/configs.js.map +0 -1
  510. package/build/plugins/resource/aad/utils/dialog.d.ts.map +0 -1
  511. package/build/plugins/resource/aad/utils/dialog.js.map +0 -1
  512. package/build/plugins/resource/aad/utils/format.d.ts.map +0 -1
  513. package/build/plugins/resource/aad/utils/format.js.map +0 -1
  514. package/build/plugins/resource/aad/utils/telemetry.d.ts.map +0 -1
  515. package/build/plugins/resource/aad/utils/telemetry.js.map +0 -1
  516. package/build/plugins/resource/aad/utils/tokenProvider.d.ts.map +0 -1
  517. package/build/plugins/resource/aad/utils/tokenProvider.js.map +0 -1
  518. package/build/plugins/resource/aad/v2/index.d.ts +0 -22
  519. package/build/plugins/resource/aad/v2/index.d.ts.map +0 -1
  520. package/build/plugins/resource/aad/v2/index.js +0 -65
  521. package/build/plugins/resource/aad/v2/index.js.map +0 -1
  522. package/build/plugins/resource/aad/v3/index.d.ts +0 -22
  523. package/build/plugins/resource/aad/v3/index.d.ts.map +0 -1
  524. package/build/plugins/resource/aad/v3/index.js +0 -283
  525. package/build/plugins/resource/aad/v3/index.js.map +0 -1
  526. package/build/plugins/resource/keyvault/constants.d.ts +0 -36
  527. package/build/plugins/resource/keyvault/constants.d.ts.map +0 -1
  528. package/build/plugins/resource/keyvault/constants.js +0 -43
  529. package/build/plugins/resource/keyvault/constants.js.map +0 -1
  530. package/build/plugins/resource/keyvault/index.d.ts +0 -16
  531. package/build/plugins/resource/keyvault/index.d.ts.map +0 -1
  532. package/build/plugins/resource/keyvault/index.js +0 -65
  533. package/build/plugins/resource/keyvault/index.js.map +0 -1
  534. package/build/plugins/resource/keyvault/plugin.d.ts +0 -7
  535. package/build/plugins/resource/keyvault/plugin.d.ts.map +0 -1
  536. package/build/plugins/resource/keyvault/plugin.js +0 -44
  537. package/build/plugins/resource/keyvault/plugin.js.map +0 -1
  538. package/build/plugins/resource/keyvault/result.d.ts +0 -9
  539. package/build/plugins/resource/keyvault/result.d.ts.map +0 -1
  540. package/build/plugins/resource/keyvault/result.js +0 -35
  541. package/build/plugins/resource/keyvault/result.js.map +0 -1
  542. package/build/plugins/resource/keyvault/utils/telemetry.d.ts.map +0 -1
  543. package/build/plugins/resource/keyvault/utils/telemetry.js +0 -45
  544. package/build/plugins/resource/keyvault/utils/telemetry.js.map +0 -1
  545. package/build/plugins/resource/keyvault/v2/index.d.ts +0 -12
  546. package/build/plugins/resource/keyvault/v2/index.d.ts.map +0 -1
  547. package/build/plugins/resource/keyvault/v2/index.js +0 -38
  548. package/build/plugins/resource/keyvault/v2/index.js.map +0 -1
  549. package/build/plugins/resource/simpleauth/constants.d.ts.map +0 -1
  550. package/build/plugins/resource/simpleauth/constants.js.map +0 -1
  551. package/build/plugins/resource/simpleauth/errors.d.ts.map +0 -1
  552. package/build/plugins/resource/simpleauth/errors.js.map +0 -1
  553. package/build/plugins/resource/simpleauth/index.d.ts +0 -20
  554. package/build/plugins/resource/simpleauth/index.d.ts.map +0 -1
  555. package/build/plugins/resource/simpleauth/index.js +0 -78
  556. package/build/plugins/resource/simpleauth/index.js.map +0 -1
  557. package/build/plugins/resource/simpleauth/plugin.d.ts +0 -14
  558. package/build/plugins/resource/simpleauth/plugin.d.ts.map +0 -1
  559. package/build/plugins/resource/simpleauth/plugin.js +0 -141
  560. package/build/plugins/resource/simpleauth/plugin.js.map +0 -1
  561. package/build/plugins/resource/simpleauth/result.d.ts.map +0 -1
  562. package/build/plugins/resource/simpleauth/result.js.map +0 -1
  563. package/build/plugins/resource/simpleauth/utils/common.d.ts.map +0 -1
  564. package/build/plugins/resource/simpleauth/utils/common.js.map +0 -1
  565. package/build/plugins/resource/simpleauth/utils/dialog.d.ts.map +0 -1
  566. package/build/plugins/resource/simpleauth/utils/dialog.js.map +0 -1
  567. package/build/plugins/resource/simpleauth/utils/telemetry.d.ts +0 -17
  568. package/build/plugins/resource/simpleauth/utils/telemetry.d.ts.map +0 -1
  569. package/build/plugins/resource/simpleauth/utils/telemetry.js.map +0 -1
  570. package/build/plugins/resource/simpleauth/v2/index.d.ts +0 -15
  571. package/build/plugins/resource/simpleauth/v2/index.d.ts.map +0 -1
  572. package/build/plugins/resource/simpleauth/v2/index.js +0 -47
  573. package/build/plugins/resource/simpleauth/v2/index.js.map +0 -1
  574. package/build/plugins/resource/simpleauth/webAppClient.d.ts +0 -31
  575. package/build/plugins/resource/simpleauth/webAppClient.d.ts.map +0 -1
  576. package/build/plugins/resource/simpleauth/webAppClient.js +0 -136
  577. package/build/plugins/resource/simpleauth/webAppClient.js.map +0 -1
  578. package/build/plugins/resource/spfx/depsChecker/dependencyChecker.d.ts.map +0 -1
  579. package/build/plugins/resource/spfx/depsChecker/dependencyChecker.js.map +0 -1
  580. package/build/plugins/resource/spfx/depsChecker/generatorChecker.d.ts.map +0 -1
  581. package/build/plugins/resource/spfx/depsChecker/generatorChecker.js.map +0 -1
  582. package/build/plugins/resource/spfx/depsChecker/yoChecker.d.ts.map +0 -1
  583. package/build/plugins/resource/spfx/depsChecker/yoChecker.js.map +0 -1
  584. package/build/plugins/resource/spfx/error.d.ts.map +0 -1
  585. package/build/plugins/resource/spfx/error.js.map +0 -1
  586. package/build/plugins/resource/spfx/index.d.ts +0 -18
  587. package/build/plugins/resource/spfx/index.d.ts.map +0 -1
  588. package/build/plugins/resource/spfx/index.js +0 -96
  589. package/build/plugins/resource/spfx/index.js.map +0 -1
  590. package/build/plugins/resource/spfx/plugin.d.ts +0 -12
  591. package/build/plugins/resource/spfx/plugin.d.ts.map +0 -1
  592. package/build/plugins/resource/spfx/plugin.js +0 -216
  593. package/build/plugins/resource/spfx/plugin.js.map +0 -1
  594. package/build/plugins/resource/spfx/spoClient.d.ts.map +0 -1
  595. package/build/plugins/resource/spfx/spoClient.js.map +0 -1
  596. package/build/plugins/resource/spfx/utils/constants.d.ts.map +0 -1
  597. package/build/plugins/resource/spfx/utils/constants.js.map +0 -1
  598. package/build/plugins/resource/spfx/utils/progress-helper.d.ts.map +0 -1
  599. package/build/plugins/resource/spfx/utils/progress-helper.js.map +0 -1
  600. package/build/plugins/resource/spfx/utils/questions.d.ts.map +0 -1
  601. package/build/plugins/resource/spfx/utils/questions.js.map +0 -1
  602. package/build/plugins/resource/spfx/utils/telemetry-helper.d.ts.map +0 -1
  603. package/build/plugins/resource/spfx/utils/telemetry-helper.js.map +0 -1
  604. package/build/plugins/resource/spfx/utils/telemetryEvents.d.ts.map +0 -1
  605. package/build/plugins/resource/spfx/utils/telemetryEvents.js.map +0 -1
  606. package/build/plugins/resource/spfx/utils/utils.d.ts.map +0 -1
  607. package/build/plugins/resource/spfx/utils/utils.js.map +0 -1
  608. package/build/plugins/resource/spfx/v2/index.d.ts +0 -14
  609. package/build/plugins/resource/spfx/v2/index.d.ts.map +0 -1
  610. package/build/plugins/resource/spfx/v2/index.js +0 -41
  611. package/build/plugins/resource/spfx/v2/index.js.map +0 -1
  612. package/build/plugins/resource/sql/config.d.ts +0 -22
  613. package/build/plugins/resource/sql/config.d.ts.map +0 -1
  614. package/build/plugins/resource/sql/config.js +0 -30
  615. package/build/plugins/resource/sql/config.js.map +0 -1
  616. package/build/plugins/resource/sql/constants.d.ts +0 -82
  617. package/build/plugins/resource/sql/constants.d.ts.map +0 -1
  618. package/build/plugins/resource/sql/constants.js +0 -92
  619. package/build/plugins/resource/sql/constants.js.map +0 -1
  620. package/build/plugins/resource/sql/errors.d.ts +0 -63
  621. package/build/plugins/resource/sql/errors.d.ts.map +0 -1
  622. package/build/plugins/resource/sql/errors.js +0 -107
  623. package/build/plugins/resource/sql/errors.js.map +0 -1
  624. package/build/plugins/resource/sql/index.d.ts +0 -20
  625. package/build/plugins/resource/sql/index.d.ts.map +0 -1
  626. package/build/plugins/resource/sql/index.js +0 -92
  627. package/build/plugins/resource/sql/index.js.map +0 -1
  628. package/build/plugins/resource/sql/managementClient.d.ts +0 -18
  629. package/build/plugins/resource/sql/managementClient.d.ts.map +0 -1
  630. package/build/plugins/resource/sql/managementClient.js +0 -123
  631. package/build/plugins/resource/sql/managementClient.js.map +0 -1
  632. package/build/plugins/resource/sql/plugin.d.ts +0 -30
  633. package/build/plugins/resource/sql/plugin.d.ts.map +0 -1
  634. package/build/plugins/resource/sql/plugin.js +0 -340
  635. package/build/plugins/resource/sql/plugin.js.map +0 -1
  636. package/build/plugins/resource/sql/questions.d.ts +0 -5
  637. package/build/plugins/resource/sql/questions.d.ts.map +0 -1
  638. package/build/plugins/resource/sql/questions.js +0 -46
  639. package/build/plugins/resource/sql/questions.js.map +0 -1
  640. package/build/plugins/resource/sql/results.d.ts +0 -10
  641. package/build/plugins/resource/sql/results.d.ts.map +0 -1
  642. package/build/plugins/resource/sql/results.js +0 -32
  643. package/build/plugins/resource/sql/results.js.map +0 -1
  644. package/build/plugins/resource/sql/sqlClient.d.ts +0 -13
  645. package/build/plugins/resource/sql/sqlClient.d.ts.map +0 -1
  646. package/build/plugins/resource/sql/sqlClient.js +0 -153
  647. package/build/plugins/resource/sql/sqlClient.js.map +0 -1
  648. package/build/plugins/resource/sql/utils/checkInput.d.ts +0 -10
  649. package/build/plugins/resource/sql/utils/checkInput.d.ts.map +0 -1
  650. package/build/plugins/resource/sql/utils/checkInput.js +0 -87
  651. package/build/plugins/resource/sql/utils/checkInput.js.map +0 -1
  652. package/build/plugins/resource/sql/utils/commonUtils.d.ts +0 -13
  653. package/build/plugins/resource/sql/utils/commonUtils.d.ts.map +0 -1
  654. package/build/plugins/resource/sql/utils/commonUtils.js +0 -51
  655. package/build/plugins/resource/sql/utils/commonUtils.js.map +0 -1
  656. package/build/plugins/resource/sql/utils/contextUtils.d.ts +0 -5
  657. package/build/plugins/resource/sql/utils/contextUtils.d.ts.map +0 -1
  658. package/build/plugins/resource/sql/utils/contextUtils.js +0 -11
  659. package/build/plugins/resource/sql/utils/contextUtils.js.map +0 -1
  660. package/build/plugins/resource/sql/utils/dialogUtils.d.ts +0 -13
  661. package/build/plugins/resource/sql/utils/dialogUtils.d.ts.map +0 -1
  662. package/build/plugins/resource/sql/utils/dialogUtils.js +0 -21
  663. package/build/plugins/resource/sql/utils/dialogUtils.js.map +0 -1
  664. package/build/plugins/resource/sql/utils/message.d.ts +0 -16
  665. package/build/plugins/resource/sql/utils/message.d.ts.map +0 -1
  666. package/build/plugins/resource/sql/utils/message.js +0 -23
  667. package/build/plugins/resource/sql/utils/message.js.map +0 -1
  668. package/build/plugins/resource/sql/utils/telemetryUtils.d.ts +0 -17
  669. package/build/plugins/resource/sql/utils/telemetryUtils.d.ts.map +0 -1
  670. package/build/plugins/resource/sql/utils/telemetryUtils.js +0 -45
  671. package/build/plugins/resource/sql/utils/telemetryUtils.js.map +0 -1
  672. package/build/plugins/resource/sql/v2/index.d.ts +0 -15
  673. package/build/plugins/resource/sql/v2/index.d.ts.map +0 -1
  674. package/build/plugins/resource/sql/v2/index.js +0 -44
  675. package/build/plugins/resource/sql/v2/index.js.map +0 -1
  676. package/build/plugins/solution/fx-solution/index.d.ts +0 -5
  677. package/build/plugins/solution/fx-solution/index.d.ts.map +0 -1
  678. package/build/plugins/solution/fx-solution/index.js +0 -8
  679. package/build/plugins/solution/fx-solution/index.js.map +0 -1
  680. package/build/plugins/solution/fx-solution/solution.d.ts +0 -94
  681. package/build/plugins/solution/fx-solution/solution.d.ts.map +0 -1
  682. package/build/plugins/solution/fx-solution/solution.js +0 -1530
  683. package/build/plugins/solution/fx-solution/solution.js.map +0 -1
  684. package/build/plugins/solution/fx-solution/v2/checkPermission.d.ts +0 -5
  685. package/build/plugins/solution/fx-solution/v2/checkPermission.d.ts.map +0 -1
  686. package/build/plugins/solution/fx-solution/v2/checkPermission.js +0 -196
  687. package/build/plugins/solution/fx-solution/v2/checkPermission.js.map +0 -1
  688. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts +0 -28
  689. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts.map +0 -1
  690. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js +0 -131
  691. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js.map +0 -1
  692. package/build/plugins/solution/fx-solution/v2/createEnv.d.ts +0 -3
  693. package/build/plugins/solution/fx-solution/v2/createEnv.d.ts.map +0 -1
  694. package/build/plugins/solution/fx-solution/v2/createEnv.js +0 -37
  695. package/build/plugins/solution/fx-solution/v2/createEnv.js.map +0 -1
  696. package/build/plugins/solution/fx-solution/v2/deploy.d.ts +0 -3
  697. package/build/plugins/solution/fx-solution/v2/deploy.d.ts.map +0 -1
  698. package/build/plugins/solution/fx-solution/v2/deploy.js +0 -143
  699. package/build/plugins/solution/fx-solution/v2/deploy.js.map +0 -1
  700. package/build/plugins/solution/fx-solution/v2/executeUserTask.d.ts +0 -22
  701. package/build/plugins/solution/fx-solution/v2/executeUserTask.d.ts.map +0 -1
  702. package/build/plugins/solution/fx-solution/v2/executeUserTask.js +0 -850
  703. package/build/plugins/solution/fx-solution/v2/executeUserTask.js.map +0 -1
  704. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.d.ts +0 -4
  705. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.d.ts.map +0 -1
  706. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.js +0 -31
  707. package/build/plugins/solution/fx-solution/v2/generateResourceTemplate.js.map +0 -1
  708. package/build/plugins/solution/fx-solution/v2/getQuestions.d.ts +0 -15
  709. package/build/plugins/solution/fx-solution/v2/getQuestions.d.ts.map +0 -1
  710. package/build/plugins/solution/fx-solution/v2/getQuestions.js +0 -847
  711. package/build/plugins/solution/fx-solution/v2/getQuestions.js.map +0 -1
  712. package/build/plugins/solution/fx-solution/v2/grantPermission.d.ts +0 -5
  713. package/build/plugins/solution/fx-solution/v2/grantPermission.d.ts.map +0 -1
  714. package/build/plugins/solution/fx-solution/v2/grantPermission.js +0 -209
  715. package/build/plugins/solution/fx-solution/v2/grantPermission.js.map +0 -1
  716. package/build/plugins/solution/fx-solution/v2/listCollaborator.d.ts +0 -8
  717. package/build/plugins/solution/fx-solution/v2/listCollaborator.d.ts.map +0 -1
  718. package/build/plugins/solution/fx-solution/v2/listCollaborator.js +0 -226
  719. package/build/plugins/solution/fx-solution/v2/listCollaborator.js.map +0 -1
  720. package/build/plugins/solution/fx-solution/v2/provision.d.ts +0 -3
  721. package/build/plugins/solution/fx-solution/v2/provision.d.ts.map +0 -1
  722. package/build/plugins/solution/fx-solution/v2/provision.js +0 -262
  723. package/build/plugins/solution/fx-solution/v2/provision.js.map +0 -1
  724. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts +0 -3
  725. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts.map +0 -1
  726. package/build/plugins/solution/fx-solution/v2/provisionLocal.js +0 -117
  727. package/build/plugins/solution/fx-solution/v2/provisionLocal.js.map +0 -1
  728. package/build/plugins/solution/fx-solution/v2/publish.d.ts +0 -3
  729. package/build/plugins/solution/fx-solution/v2/publish.d.ts.map +0 -1
  730. package/build/plugins/solution/fx-solution/v2/publish.js +0 -46
  731. package/build/plugins/solution/fx-solution/v2/publish.js.map +0 -1
  732. package/build/plugins/solution/fx-solution/v2/scaffolding.d.ts +0 -5
  733. package/build/plugins/solution/fx-solution/v2/scaffolding.d.ts.map +0 -1
  734. package/build/plugins/solution/fx-solution/v2/scaffolding.js +0 -161
  735. package/build/plugins/solution/fx-solution/v2/scaffolding.js.map +0 -1
  736. package/build/plugins/solution/fx-solution/v2/solution.d.ts +0 -22
  737. package/build/plugins/solution/fx-solution/v2/solution.d.ts.map +0 -1
  738. package/build/plugins/solution/fx-solution/v2/solution.js +0 -48
  739. package/build/plugins/solution/fx-solution/v2/solution.js.map +0 -1
  740. package/build/plugins/solution/index.d.ts +0 -2
  741. package/build/plugins/solution/index.d.ts.map +0 -1
  742. package/build/plugins/solution/index.js +0 -7
  743. package/build/plugins/solution/index.js.map +0 -1
  744. package/templates/plugins/resource/aad/auth/bot/js/sso/showUserInfo.js +0 -36
  745. package/templates/plugins/resource/aad/auth/bot/js/sso/ssoDialog.js +0 -201
  746. package/templates/plugins/resource/aad/auth/bot/js/sso/teamsSsoBot.js +0 -63
  747. package/templates/plugins/resource/aad/auth/bot/ts/sso/showUserInfo.ts +0 -38
  748. package/templates/plugins/resource/aad/auth/bot/ts/sso/ssoDialog.ts +0 -213
  749. package/templates/plugins/resource/aad/auth/bot/ts/sso/teamsSsoBot.ts +0 -75
@@ -1,847 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getQuestionsForAddFeature = exports.getQuestionsForAddResource = exports.getQuestionsForAddCapability = exports.getQuestionsForUserTask = exports.getQuestions = exports.getPluginCLIName = exports.getTabScaffoldQuestionsV2 = exports.getQuestionsForScaffoldingPreview = exports.getQuestionsForScaffolding = void 0;
4
- const tslib_1 = require("tslib");
5
- const teamsfx_api_1 = require("@microsoft/teamsfx-api");
6
- const typedi_1 = tslib_1.__importDefault(require("typedi"));
7
- const constants_1 = require("../../../../common/constants");
8
- const constants_2 = require("../constants");
9
- const question_1 = require("../question");
10
- const ResourcePluginContainer_1 = require("../ResourcePluginContainer");
11
- const utils_1 = require("./utils");
12
- const globalVars_1 = require("../../../../core/globalVars");
13
- const constants_3 = require("./constants");
14
- const executeUserTask_1 = require("./executeUserTask");
15
- const error_1 = require("../../../../core/error");
16
- const projectSettingsHelper_1 = require("../../../../common/projectSettingsHelper");
17
- const tools_1 = require("../../../../common/tools");
18
- const featureFlags_1 = require("../../../../common/featureFlags");
19
- const question_2 = require("../../../../core/question");
20
- const localizeUtils_1 = require("../../../../common/localizeUtils");
21
- const constants_4 = require("../../../resource/aad/constants");
22
- const strings_1 = require("../../../resource/bot/resources/strings");
23
- const constants_5 = require("../../../../component/constants");
24
- async function getQuestionsForScaffolding(ctx, inputs) {
25
- const node = new teamsfx_api_1.QTreeNode({
26
- name: "azure-solution-group",
27
- type: "func",
28
- func: (inputs) => {
29
- inputs[question_1.AzureSolutionQuestionNames.Solution] = constants_3.TeamsAppSolutionNameV2;
30
- },
31
- });
32
- if (!globalVars_1.isV3()) {
33
- node.condition = {
34
- containsAny: [
35
- question_1.TabSPFxItem.id,
36
- question_1.TabOptionItem.id,
37
- question_1.BotOptionItem.id,
38
- question_1.NotificationOptionItem.id,
39
- question_1.CommandAndResponseOptionItem.id,
40
- question_1.WorkflowOptionItem.id,
41
- question_1.MessageExtensionItem.id,
42
- ...(tools_1.isAadManifestEnabled() ? [question_1.TabNonSsoItem.id] : []),
43
- question_1.M365SsoLaunchPageOptionItem.id,
44
- question_1.M365SearchAppOptionItem.id,
45
- ],
46
- };
47
- // 1.1.1 SPFX Tab
48
- const spfxPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.SpfxPlugin);
49
- if (spfxPlugin.getQuestionsForScaffolding) {
50
- const res = await spfxPlugin.getQuestionsForScaffolding(ctx, inputs);
51
- if (res.isErr())
52
- return res;
53
- if (res.value) {
54
- const spfxNode = res.value;
55
- spfxNode.condition = {
56
- validFunc: (input, inputs) => {
57
- if (!inputs) {
58
- return "Invalid inputs";
59
- }
60
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
61
- if (cap.includes(question_1.TabSPFxItem.id)) {
62
- return undefined;
63
- }
64
- return "SPFx is not selected";
65
- },
66
- };
67
- if (spfxNode.data)
68
- node.addChild(spfxNode);
69
- }
70
- }
71
- }
72
- else {
73
- node.condition = { containsAny: [question_1.TabOptionItem.id, question_1.BotOptionItem.id, question_1.MessageExtensionItem.id] };
74
- }
75
- // 1.1.2 Azure Tab
76
- const tabRes = await getTabScaffoldQuestionsV2(ctx, inputs, !featureFlags_1.isPreviewFeaturesEnabled() && teamsfx_api_1.CLIPlatforms.includes(inputs.platform) // only CLI and CLI_HELP support azure-resources question
77
- );
78
- if (tabRes.isErr())
79
- return tabRes;
80
- if (tabRes.value) {
81
- const tabNode = tabRes.value;
82
- tabNode.condition = {
83
- validFunc: (input, inputs) => {
84
- if (!inputs) {
85
- return "Invalid inputs";
86
- }
87
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
88
- if (cap.includes(question_1.TabOptionItem.id) ||
89
- (tools_1.isAadManifestEnabled() && cap.includes(question_1.TabNonSsoItem.id))) {
90
- return undefined;
91
- }
92
- return "Tab is not selected";
93
- },
94
- };
95
- node.addChild(tabNode);
96
- }
97
- // 1.2 Bot
98
- const botPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
99
- if (botPlugin.getQuestionsForScaffolding) {
100
- const res = await botPlugin.getQuestionsForScaffolding(ctx, inputs);
101
- if (res.isErr())
102
- return res;
103
- if (res.value) {
104
- // Create a parent node of the node returned by plugin to prevent overwriting node.condition.
105
- const botGroup = new teamsfx_api_1.QTreeNode({ type: "group" });
106
- botGroup.addChild(res.value);
107
- botGroup.condition = {
108
- validFunc: (input, inputs) => {
109
- if (!inputs) {
110
- return "Invalid inputs";
111
- }
112
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
113
- if (cap.includes(question_1.BotOptionItem.id) ||
114
- cap.includes(question_1.MessageExtensionItem.id) ||
115
- cap.includes(question_1.NotificationOptionItem.id) ||
116
- cap.includes(question_1.CommandAndResponseOptionItem.id) ||
117
- cap.includes(question_1.WorkflowOptionItem.id)) {
118
- return undefined;
119
- }
120
- return "Bot/Message Extension is not selected";
121
- },
122
- };
123
- node.addChild(botGroup);
124
- }
125
- }
126
- return teamsfx_api_1.ok(node);
127
- }
128
- exports.getQuestionsForScaffolding = getQuestionsForScaffolding;
129
- async function getQuestionsForScaffoldingPreview(ctx, inputs) {
130
- const node = new teamsfx_api_1.QTreeNode({
131
- name: "azure-solution-group",
132
- type: "func",
133
- func: (inputs) => {
134
- inputs[question_1.AzureSolutionQuestionNames.Solution] = constants_3.TeamsAppSolutionNameV2;
135
- },
136
- });
137
- if (!globalVars_1.isV3()) {
138
- node.condition = {
139
- enum: [
140
- question_1.TabSPFxItem.id,
141
- question_1.TabOptionItem.id,
142
- question_1.BotOptionItem.id,
143
- question_1.NotificationOptionItem.id,
144
- question_1.CommandAndResponseOptionItem.id,
145
- question_1.WorkflowOptionItem.id,
146
- question_1.MessageExtensionItem.id,
147
- ...(tools_1.isAadManifestEnabled() ? [question_1.TabNonSsoItem.id] : []),
148
- question_1.M365SsoLaunchPageOptionItem.id,
149
- question_1.M365SearchAppOptionItem.id,
150
- ],
151
- };
152
- // 1.1.1 SPFX Tab
153
- const spfxPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.SpfxPlugin);
154
- if (spfxPlugin.getQuestionsForScaffolding) {
155
- const res = await spfxPlugin.getQuestionsForScaffolding(ctx, inputs);
156
- if (res.isErr())
157
- return res;
158
- if (res.value) {
159
- const spfxNode = res.value;
160
- spfxNode.condition = {
161
- validFunc: (input, inputs) => {
162
- if (!inputs) {
163
- return "Invalid inputs";
164
- }
165
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
166
- if (cap === question_1.TabSPFxItem.id) {
167
- return undefined;
168
- }
169
- return "SPFx is not selected";
170
- },
171
- };
172
- if (spfxNode.data)
173
- node.addChild(spfxNode);
174
- }
175
- }
176
- }
177
- else {
178
- node.condition = { enum: [question_1.TabOptionItem.id, question_1.BotOptionItem.id, question_1.MessageExtensionItem.id] };
179
- }
180
- // 1.1.2 Azure Tab
181
- const tabRes = await getTabScaffoldQuestionsV2(ctx, inputs, !featureFlags_1.isPreviewFeaturesEnabled() && teamsfx_api_1.CLIPlatforms.includes(inputs.platform) // only CLI and CLI_HELP support azure-resources question
182
- );
183
- if (tabRes.isErr())
184
- return tabRes;
185
- if (tabRes.value) {
186
- const tabNode = tabRes.value;
187
- tabNode.condition = {
188
- validFunc: (input, inputs) => {
189
- if (!inputs) {
190
- return "Invalid inputs";
191
- }
192
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
193
- if (cap === question_1.TabOptionItem.id || cap === question_1.TabNonSsoItem.id) {
194
- return undefined;
195
- }
196
- return "Tab is not selected";
197
- },
198
- };
199
- node.addChild(tabNode);
200
- }
201
- // 1.2 Bot
202
- const botPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin);
203
- if (botPlugin.getQuestionsForScaffolding) {
204
- const res = await botPlugin.getQuestionsForScaffolding(ctx, inputs);
205
- if (res.isErr())
206
- return res;
207
- if (res.value) {
208
- // Create a parent node of the node returned by plugin to prevent overwriting node.condition.
209
- const botGroup = new teamsfx_api_1.QTreeNode({ type: "group" });
210
- botGroup.addChild(res.value);
211
- botGroup.condition = {
212
- validFunc: (input, inputs) => {
213
- if (!inputs) {
214
- return "Invalid inputs";
215
- }
216
- const cap = inputs[question_1.AzureSolutionQuestionNames.Capabilities];
217
- if (cap === question_1.BotOptionItem.id ||
218
- cap === question_1.MessageExtensionItem.id ||
219
- cap === question_1.NotificationOptionItem.id ||
220
- cap === question_1.CommandAndResponseOptionItem.id ||
221
- cap === question_1.WorkflowOptionItem.id) {
222
- return undefined;
223
- }
224
- return "Bot/Message Extension is not selected";
225
- },
226
- };
227
- node.addChild(botGroup);
228
- }
229
- }
230
- return teamsfx_api_1.ok(node);
231
- }
232
- exports.getQuestionsForScaffoldingPreview = getQuestionsForScaffoldingPreview;
233
- async function getTabScaffoldQuestionsV2(ctx, inputs, addAzureResource) {
234
- const tabNode = new teamsfx_api_1.QTreeNode({ type: "group" });
235
- //Frontend plugin
236
- const fehostPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.FrontendPlugin);
237
- if (fehostPlugin.getQuestionsForScaffolding) {
238
- const res = await fehostPlugin.getQuestionsForScaffolding(ctx, inputs);
239
- if (res.isErr())
240
- return res;
241
- if (res.value) {
242
- const frontendNode = res.value;
243
- if (frontendNode.data)
244
- tabNode.addChild(frontendNode);
245
- }
246
- }
247
- if (addAzureResource) {
248
- const azureResourceNode = new teamsfx_api_1.QTreeNode(question_1.AzureResourcesQuestion);
249
- tabNode.addChild(azureResourceNode);
250
- const functionPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.FunctionPlugin);
251
- //Azure Function
252
- if (functionPlugin.getQuestionsForScaffolding) {
253
- const res = await functionPlugin.getQuestionsForScaffolding(ctx, inputs);
254
- if (res.isErr())
255
- return res;
256
- if (res.value) {
257
- const azure_function = res.value;
258
- azure_function.condition = { minItems: 1 };
259
- if (azure_function.data)
260
- azureResourceNode.addChild(azure_function);
261
- }
262
- }
263
- const sqlPlugin = typedi_1.default.get(ResourcePluginContainer_1.ResourcePluginsV2.SqlPlugin);
264
- //Azure SQL
265
- if (sqlPlugin.getQuestionsForScaffolding) {
266
- const res = await sqlPlugin.getQuestionsForScaffolding(ctx, inputs);
267
- if (res.isErr())
268
- return res;
269
- if (res.value) {
270
- const azure_sql = res.value;
271
- azure_sql.condition = { contains: question_1.AzureResourceSQL.id };
272
- if (azure_sql.data)
273
- azureResourceNode.addChild(azure_sql);
274
- }
275
- }
276
- }
277
- return teamsfx_api_1.ok(tabNode);
278
- }
279
- exports.getTabScaffoldQuestionsV2 = getTabScaffoldQuestionsV2;
280
- function getPluginCLIName(name) {
281
- const pluginPrefix = "fx-resource-";
282
- if (name === constants_1.ResourcePlugins.Aad) {
283
- return "aad-manifest";
284
- }
285
- else if (name === constants_1.ResourcePlugins.AppStudio) {
286
- return "manifest";
287
- }
288
- else {
289
- return name.replace(pluginPrefix, "");
290
- }
291
- }
292
- exports.getPluginCLIName = getPluginCLIName;
293
- async function getQuestions(ctx, inputs, envInfo, tokenProvider) {
294
- const stage = inputs.stage;
295
- if (!stage) {
296
- return teamsfx_api_1.err(new teamsfx_api_1.InvalidInputError(constants_2.SolutionSource, "inputs.stage", "undefined"));
297
- }
298
- const isDynamicQuestion = teamsfx_api_1.DynamicPlatforms.includes(inputs.platform);
299
- const node = new teamsfx_api_1.QTreeNode({ type: "group" });
300
- const solutionSettings = ctx.projectSetting.solutionSettings;
301
- if (stage === teamsfx_api_1.Stage.provision) {
302
- if (isDynamicQuestion) {
303
- const provisioned = utils_1.checkWetherProvisionSucceeded(envInfo.state);
304
- if (provisioned)
305
- return teamsfx_api_1.ok(undefined);
306
- }
307
- let plugins = [];
308
- if (isDynamicQuestion) {
309
- plugins = utils_1.getSelectedPlugins(ctx.projectSetting);
310
- }
311
- else {
312
- plugins = ResourcePluginContainer_1.getAllV2ResourcePlugins();
313
- node.addChild(new teamsfx_api_1.QTreeNode(question_1.AskSubscriptionQuestion));
314
- }
315
- for (const plugin of plugins) {
316
- if (plugin.getQuestions) {
317
- const getQuestionRes = await plugin.getQuestions(ctx, inputs, envInfo, tokenProvider);
318
- if (getQuestionRes.isErr())
319
- return getQuestionRes;
320
- if (getQuestionRes.value) {
321
- const subnode = getQuestionRes.value;
322
- node.addChild(subnode);
323
- }
324
- }
325
- }
326
- }
327
- else if (stage === teamsfx_api_1.Stage.deploy) {
328
- if (inputs.platform === teamsfx_api_1.Platform.VSCode && inputs[constants_4.Constants.INCLUDE_AAD_MANIFEST] === "yes") {
329
- return teamsfx_api_1.ok(node);
330
- }
331
- if (isDynamicQuestion) {
332
- const isAzure = utils_1.isAzureProject(solutionSettings);
333
- const provisioned = utils_1.checkWetherProvisionSucceeded(envInfo.state);
334
- if (isAzure && !provisioned) {
335
- return teamsfx_api_1.err(new teamsfx_api_1.UserError({
336
- source: constants_2.SolutionSource,
337
- name: constants_2.SolutionError.CannotDeployBeforeProvision,
338
- message: localizeUtils_1.getDefaultString("core.deploy.FailedToDeployBeforeProvision"),
339
- displayMessage: localizeUtils_1.getLocalizedString("core.deploy.FailedToDeployBeforeProvision"),
340
- helpLink: constants_1.HelpLinks.WhyNeedProvision,
341
- }));
342
- }
343
- }
344
- let plugins = [];
345
- if (isDynamicQuestion) {
346
- plugins = utils_1.getSelectedPlugins(ctx.projectSetting);
347
- }
348
- else {
349
- plugins = ResourcePluginContainer_1.getAllV2ResourcePlugins();
350
- }
351
- if (tools_1.isDeployManifestEnabled() && inputs.platform === teamsfx_api_1.Platform.VSCode) {
352
- plugins = plugins.filter((plugin) => plugin.name !== constants_1.ResourcePlugins.AppStudio);
353
- }
354
- if (tools_1.isAadManifestEnabled() &&
355
- (inputs.platform === teamsfx_api_1.Platform.CLI_HELP || inputs.platform === teamsfx_api_1.Platform.CLI)) {
356
- plugins = plugins.filter((plugin) => !!plugin.deploy);
357
- }
358
- else {
359
- plugins = plugins.filter((plugin) => !!plugin.deploy && plugin.displayName !== "AAD");
360
- }
361
- if (plugins.length === 0 && inputs[constants_4.Constants.INCLUDE_AAD_MANIFEST] !== "yes") {
362
- return teamsfx_api_1.err(new error_1.NoCapabilityFoundError(teamsfx_api_1.Stage.deploy));
363
- }
364
- // On VS, users are not expected to select plugins to deploy.
365
- if (!projectSettingsHelper_1.isVSProject(ctx.projectSetting)) {
366
- const options = plugins.map((plugin) => {
367
- const item = {
368
- id: plugin.name,
369
- label: plugin.displayName,
370
- cliName: getPluginCLIName(plugin.name),
371
- };
372
- return item;
373
- });
374
- const selectQuestion = question_1.DeployPluginSelectQuestion;
375
- selectQuestion.staticOptions = options;
376
- selectQuestion.default = options.map((i) => i.id);
377
- const pluginSelection = new teamsfx_api_1.QTreeNode(selectQuestion);
378
- node.addChild(pluginSelection);
379
- for (const plugin of plugins) {
380
- if (plugin.getQuestions) {
381
- const getQuestionRes = await plugin.getQuestions(ctx, inputs, envInfo, tokenProvider);
382
- if (getQuestionRes.isErr())
383
- return getQuestionRes;
384
- if (getQuestionRes.value) {
385
- const subnode = getQuestionRes.value;
386
- subnode.condition = { contains: plugin.name };
387
- if (subnode.data)
388
- pluginSelection.addChild(subnode);
389
- }
390
- }
391
- }
392
- }
393
- }
394
- else if (stage === teamsfx_api_1.Stage.publish) {
395
- if (isDynamicQuestion) {
396
- const isAzure = utils_1.isAzureProject(solutionSettings);
397
- const provisioned = utils_1.checkWetherProvisionSucceeded(envInfo.state);
398
- if (!provisioned) {
399
- const errorMsg = isAzure
400
- ? localizeUtils_1.getLocalizedString("core.publish.FailedToPublishBeforeProvision")
401
- : localizeUtils_1.getLocalizedString("core.publish.SPFxAskProvisionBeforePublish");
402
- const defaultMsg = isAzure
403
- ? localizeUtils_1.getDefaultString("core.publish.FailedToPublishBeforeProvision")
404
- : localizeUtils_1.getDefaultString("core.publish.SPFxAskProvisionBeforePublish");
405
- return teamsfx_api_1.err(new teamsfx_api_1.UserError({
406
- source: constants_2.SolutionSource,
407
- name: constants_2.SolutionError.CannotPublishBeforeProvision,
408
- message: defaultMsg,
409
- displayMessage: errorMsg,
410
- helpLink: constants_1.HelpLinks.WhyNeedProvision,
411
- }));
412
- }
413
- }
414
- let plugins = [];
415
- if (isDynamicQuestion) {
416
- plugins = utils_1.getSelectedPlugins(ctx.projectSetting);
417
- }
418
- else {
419
- plugins = ResourcePluginContainer_1.getAllV2ResourcePlugins();
420
- }
421
- plugins = plugins.filter((plugin) => !!plugin.publishApplication);
422
- for (const plugin of plugins) {
423
- if (plugin.getQuestions) {
424
- const getQuestionRes = await plugin.getQuestions(ctx, inputs, envInfo, tokenProvider);
425
- if (getQuestionRes.isErr())
426
- return getQuestionRes;
427
- if (getQuestionRes.value) {
428
- const subnode = getQuestionRes.value;
429
- node.addChild(subnode);
430
- }
431
- }
432
- }
433
- }
434
- else if (stage === teamsfx_api_1.Stage.grantPermission) {
435
- if (isDynamicQuestion) {
436
- const jsonObjectRes = await tokenProvider.m365TokenProvider.getJsonObject({
437
- scopes: tools_1.AppStudioScopes,
438
- });
439
- const jsonObject = jsonObjectRes.isOk() ? jsonObjectRes.value : undefined;
440
- node.addChild(new teamsfx_api_1.QTreeNode(question_1.getUserEmailQuestion(jsonObject.upn)));
441
- }
442
- }
443
- return teamsfx_api_1.ok(node);
444
- }
445
- exports.getQuestions = getQuestions;
446
- async function getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider) {
447
- const namespace = func.namespace;
448
- const array = namespace.split("/");
449
- if (func.method === "addCapability") {
450
- return await getQuestionsForAddCapability(ctx, inputs, func, envInfo, tokenProvider);
451
- }
452
- if (func.method === "addResource") {
453
- return await getQuestionsForAddResource(ctx, inputs, func, envInfo, tokenProvider);
454
- }
455
- if (func.method === "addFeature") {
456
- return await getQuestionsForAddFeature(ctx, inputs, func, envInfo, tokenProvider);
457
- }
458
- if (array.length == 2) {
459
- const pluginName = array[1];
460
- const pluginMap = ResourcePluginContainer_1.getAllV2ResourcePluginMap();
461
- const plugin = pluginMap.get(pluginName);
462
- if (plugin && plugin.getQuestionsForUserTask) {
463
- return await plugin.getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider);
464
- }
465
- }
466
- return teamsfx_api_1.ok(undefined);
467
- }
468
- exports.getQuestionsForUserTask = getQuestionsForUserTask;
469
- async function getQuestionsForAddCapability(ctx, inputs, func, envInfo, tokenProvider) {
470
- var _a;
471
- if (ctx.projectSetting.isM365) {
472
- return teamsfx_api_1.err(new teamsfx_api_1.UserError(constants_2.SolutionSource, constants_2.SolutionError.AddCapabilityNotSupport, localizeUtils_1.getDefaultString("core.addCapability.notSupportedForM365Project"), localizeUtils_1.getLocalizedString("core.addCapability.notSupportedForM365Project")));
473
- }
474
- const settings = ctx.projectSetting.solutionSettings;
475
- const addCapQuestion = {
476
- name: question_1.AzureSolutionQuestionNames.Capabilities,
477
- title: featureFlags_1.isBotNotificationEnabled() ? "Capabilities" : "Choose capabilities",
478
- type: "multiSelect",
479
- staticOptions: [],
480
- default: [],
481
- validation: {
482
- validFunc: question_2.validateCapabilities,
483
- },
484
- onDidChangeSelection: question_2.onChangeSelectionForCapabilities,
485
- };
486
- const isDynamicQuestion = teamsfx_api_1.DynamicPlatforms.includes(inputs.platform);
487
- if (!isDynamicQuestion) {
488
- // For CLI_HELP
489
- addCapQuestion.staticOptions = [
490
- ...(featureFlags_1.isBotNotificationEnabled() ? [question_1.TabNewUIOptionItem] : [question_1.TabOptionItem]),
491
- ...[question_1.BotOptionItem],
492
- ...(featureFlags_1.isBotNotificationEnabled()
493
- ? [question_1.NotificationOptionItem, question_1.CommandAndResponseOptionItem, question_1.WorkflowOptionItem]
494
- : []),
495
- ...(featureFlags_1.isBotNotificationEnabled() ? [question_1.MessageExtensionNewUIItem] : [question_1.MessageExtensionItem]),
496
- ...(tools_1.isAadManifestEnabled() ? [question_1.TabNonSsoItem] : []),
497
- ];
498
- const addCapNode = new teamsfx_api_1.QTreeNode(addCapQuestion);
499
- if (featureFlags_1.isBotNotificationEnabled()) {
500
- // Hardcoded to call bot plugin to get notification trigger questions.
501
- // Originally, v2 solution will not call getQuestionForUserTask of plugins on addCapability.
502
- // V3 will not need this hardcoding.
503
- const pluginMap = ResourcePluginContainer_1.getAllV2ResourcePluginMap();
504
- const plugin = pluginMap.get(constants_2.PluginNames.BOT);
505
- if (plugin && plugin.getQuestionsForUserTask) {
506
- const result = await plugin.getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider);
507
- if (result.isErr()) {
508
- return result;
509
- }
510
- const botQuestionNode = result.value;
511
- if (botQuestionNode) {
512
- addCapNode.addChild(botQuestionNode);
513
- }
514
- }
515
- }
516
- return teamsfx_api_1.ok(addCapNode);
517
- }
518
- const canProceed = executeUserTask_1.canAddCapability(settings, ctx.telemetryReporter);
519
- if (canProceed.isErr()) {
520
- return teamsfx_api_1.err(canProceed.error);
521
- }
522
- const appStudioPlugin = typedi_1.default.get(constants_5.ComponentNames.AppManifest);
523
- const tabExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "staticTab");
524
- if (tabExceedRes.isErr()) {
525
- return teamsfx_api_1.err(tabExceedRes.error);
526
- }
527
- const isTabAddable = !tabExceedRes.value;
528
- const botExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "Bot");
529
- if (botExceedRes.isErr()) {
530
- return teamsfx_api_1.err(botExceedRes.error);
531
- }
532
- const isBotAddable = !botExceedRes.value;
533
- const meExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "MessageExtension");
534
- if (meExceedRes.isErr()) {
535
- return teamsfx_api_1.err(meExceedRes.error);
536
- }
537
- // for the new bot, messaging extension and other bots are mutally exclusive
538
- const isMEAddable = !meExceedRes.value && (!featureFlags_1.isBotNotificationEnabled() || isBotAddable);
539
- if (!(isTabAddable || isBotAddable || isMEAddable)) {
540
- (_a = ctx.userInteraction) === null || _a === void 0 ? void 0 : _a.showMessage("error", localizeUtils_1.getLocalizedString("core.addCapability.exceedMaxLimit"), false);
541
- return teamsfx_api_1.ok(undefined);
542
- }
543
- const options = [];
544
- if (isBotAddable) {
545
- if (featureFlags_1.isBotNotificationEnabled()) {
546
- options.push(question_1.CommandAndResponseOptionItem);
547
- options.push(question_1.WorkflowOptionItem);
548
- options.push(question_1.NotificationOptionItem);
549
- options.push(question_1.BotOptionItem);
550
- }
551
- else {
552
- options.push(question_1.BotOptionItem);
553
- }
554
- }
555
- const tabOptionItem = featureFlags_1.isBotNotificationEnabled() ? question_1.TabNewUIOptionItem : question_1.TabOptionItem;
556
- if (isTabAddable) {
557
- if (!tools_1.isAadManifestEnabled()) {
558
- options.push(tabOptionItem);
559
- }
560
- else {
561
- if (!(settings === null || settings === void 0 ? void 0 : settings.capabilities.includes(question_1.TabOptionItem.id))) {
562
- options.push(question_1.TabNonSsoItem, tabOptionItem);
563
- }
564
- else {
565
- options.push((settings === null || settings === void 0 ? void 0 : settings.capabilities.includes(question_1.TabSsoItem.id)) ? tabOptionItem : question_1.TabNonSsoItem);
566
- }
567
- }
568
- }
569
- if (isMEAddable) {
570
- options.push(featureFlags_1.isBotNotificationEnabled() ? question_1.MessageExtensionNewUIItem : question_1.MessageExtensionItem);
571
- }
572
- addCapQuestion.staticOptions = options;
573
- const addCapNode = new teamsfx_api_1.QTreeNode(addCapQuestion);
574
- // // mini app can add SPFx tab
575
- // if (!settings) {
576
- // options.push(TabSPFxItem);
577
- // const spfxPlugin = Container.get<v2.ResourcePlugin>(ResourcePluginsV2.SpfxPlugin);
578
- // if (spfxPlugin && spfxPlugin.getQuestionsForScaffolding) {
579
- // const result = await spfxPlugin.getQuestionsForScaffolding(ctx, inputs);
580
- // if (result.isErr()) {
581
- // return result;
582
- // }
583
- // const spfxQuestionNode = result.value;
584
- // if (spfxQuestionNode) {
585
- // spfxQuestionNode.condition = { contains: TabSPFxItem.id };
586
- // addCapNode.addChild(spfxQuestionNode);
587
- // }
588
- // }
589
- // }
590
- if (featureFlags_1.isBotNotificationEnabled()) {
591
- // Hardcoded to call bot plugin to get notification trigger questions.
592
- // Originally, v2 solution will not call getQuestionForUserTask of plugins on addCapability.
593
- // V3 will not need this hardcoding.
594
- const pluginMap = ResourcePluginContainer_1.getAllV2ResourcePluginMap();
595
- const plugin = pluginMap.get(constants_2.PluginNames.BOT);
596
- if (plugin && plugin.getQuestionsForUserTask) {
597
- const result = await plugin.getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider);
598
- if (result.isErr()) {
599
- return result;
600
- }
601
- const botQuestionNode = result.value;
602
- if (botQuestionNode) {
603
- addCapNode.addChild(botQuestionNode);
604
- }
605
- }
606
- }
607
- if (!ctx.projectSetting.programmingLanguage) {
608
- // Language
609
- const programmingLanguage = new teamsfx_api_1.QTreeNode(question_2.ProgrammingLanguageQuestion);
610
- addCapNode.addChild(programmingLanguage);
611
- }
612
- return teamsfx_api_1.ok(addCapNode);
613
- }
614
- exports.getQuestionsForAddCapability = getQuestionsForAddCapability;
615
- async function getQuestionsForAddResource(ctx, inputs, func, envInfo, tokenProvider) {
616
- const settings = ctx.projectSetting.solutionSettings;
617
- const isDynamicQuestion = teamsfx_api_1.DynamicPlatforms.includes(inputs.platform);
618
- let addQuestion;
619
- if (!isDynamicQuestion) {
620
- addQuestion = question_1.createAddAzureResourceQuestion(false, false, false, false);
621
- }
622
- else {
623
- if (!settings) {
624
- return teamsfx_api_1.err(new error_1.NoCapabilityFoundError(teamsfx_api_1.Stage.addResource));
625
- }
626
- const alreadyHaveFunction = settings.azureResources.includes(question_1.AzureResourceFunction.id);
627
- const alreadyHaveSQL = settings.azureResources.includes(question_1.AzureResourceSQL.id);
628
- const alreadyHaveAPIM = settings.azureResources.includes(question_1.AzureResourceApim.id);
629
- const alreadyHaveKeyVault = settings.azureResources.includes(question_1.AzureResourceKeyVault.id);
630
- addQuestion = question_1.createAddAzureResourceQuestion(alreadyHaveFunction, alreadyHaveSQL, alreadyHaveAPIM, alreadyHaveKeyVault);
631
- const canProceed = executeUserTask_1.canAddResource(ctx.projectSetting, ctx.telemetryReporter);
632
- if (canProceed.isErr()) {
633
- return teamsfx_api_1.err(canProceed.error);
634
- }
635
- }
636
- const addAzureResourceNode = new teamsfx_api_1.QTreeNode(addQuestion);
637
- //traverse plugins' getQuestionsForUserTask
638
- const pluginsWithResources = [
639
- [ResourcePluginContainer_1.ResourcePluginsV2.FunctionPlugin, question_1.AzureResourceFunction.id],
640
- [ResourcePluginContainer_1.ResourcePluginsV2.SqlPlugin, question_1.AzureResourceSQL.id],
641
- [ResourcePluginContainer_1.ResourcePluginsV2.ApimPlugin, question_1.AzureResourceApim.id],
642
- [ResourcePluginContainer_1.ResourcePluginsV2.KeyVaultPlugin, question_1.AzureResourceKeyVault.id],
643
- ];
644
- for (const pair of pluginsWithResources) {
645
- const pluginName = pair[0];
646
- const resourceName = pair[1];
647
- const plugin = typedi_1.default.get(pluginName);
648
- if (plugin.getQuestionsForUserTask) {
649
- const res = await plugin.getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider);
650
- if (res.isErr())
651
- return res;
652
- if (res.value) {
653
- const node = res.value;
654
- node.condition = { contains: resourceName };
655
- if (node.data)
656
- addAzureResourceNode.addChild(node);
657
- }
658
- }
659
- }
660
- return teamsfx_api_1.ok(addAzureResourceNode);
661
- }
662
- exports.getQuestionsForAddResource = getQuestionsForAddResource;
663
- async function getStaticOptionsForAddCapability(ctx, inputs, settings) {
664
- var _a, _b, _c;
665
- if (inputs.platform === teamsfx_api_1.Platform.CLI_HELP) {
666
- const options = [];
667
- options.push(question_1.NotificationOptionItem);
668
- options.push(question_1.CommandAndResponseOptionItem);
669
- options.push(question_1.WorkflowOptionItem);
670
- options.push(question_1.TabNewUIOptionItem, question_1.TabNonSsoItem);
671
- options.push(question_1.BotNewUIOptionItem);
672
- options.push(question_1.MessageExtensionNewUIItem);
673
- return teamsfx_api_1.ok(options);
674
- }
675
- const appStudioPlugin = typedi_1.default.get(constants_5.ComponentNames.AppManifest);
676
- const tabExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "staticTab");
677
- if (tabExceedRes.isErr()) {
678
- return teamsfx_api_1.err(tabExceedRes.error);
679
- }
680
- const isTabSPFxAddable = !tabExceedRes.value && tools_1.isSPFxProject(ctx.projectSetting) && featureFlags_1.isSPFxMultiTabEnabled();
681
- if (isTabSPFxAddable) {
682
- return teamsfx_api_1.ok([question_1.TabSPFxNewUIItem]);
683
- }
684
- const isTabAddable = !tabExceedRes.value;
685
- const botExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "Bot");
686
- if (botExceedRes.isErr()) {
687
- return teamsfx_api_1.err(botExceedRes.error);
688
- }
689
- const hasMe = settings === null || settings === void 0 ? void 0 : settings.capabilities.includes(question_1.MessageExtensionItem.id);
690
- const isScenarioBotAddable = !botExceedRes.value && !hasMe;
691
- const isDefaultBotAddable = !botExceedRes.value;
692
- const meExceedRes = await appStudioPlugin.capabilityExceedLimit(inputs, "MessageExtension");
693
- if (meExceedRes.isErr()) {
694
- return teamsfx_api_1.err(meExceedRes.error);
695
- }
696
- // For the new bot, messaging extension and other bots are mutally exclusive.
697
- // For the old bot, messaging extension can be added when bot exists.
698
- const botCapabilities = (_b = (_a = ctx.projectSetting.pluginSettings) === null || _a === void 0 ? void 0 : _a[constants_2.PluginNames.BOT]) === null || _b === void 0 ? void 0 : _b[strings_1.PluginBot.BOT_CAPABILITIES];
699
- const hasNewBot = Array.isArray(botCapabilities) && botCapabilities.length > 0;
700
- const isMEAddable = featureFlags_1.isBotNotificationEnabled()
701
- ? !meExceedRes.value && !hasNewBot
702
- : !meExceedRes.value;
703
- if (!(isTabAddable || isDefaultBotAddable || isScenarioBotAddable || isMEAddable)) {
704
- (_c = ctx.userInteraction) === null || _c === void 0 ? void 0 : _c.showMessage("error", localizeUtils_1.getLocalizedString("core.addCapability.exceedMaxLimit"), false);
705
- return teamsfx_api_1.ok([]);
706
- }
707
- const options = [];
708
- if (isScenarioBotAddable) {
709
- options.push(question_1.NotificationOptionItem);
710
- options.push(question_1.CommandAndResponseOptionItem);
711
- options.push(question_1.WorkflowOptionItem);
712
- }
713
- if (isTabAddable) {
714
- if (!(settings === null || settings === void 0 ? void 0 : settings.capabilities.includes(question_1.TabOptionItem.id))) {
715
- options.push(question_1.TabNewUIOptionItem, question_1.TabNonSsoItem);
716
- }
717
- else {
718
- options.push((settings === null || settings === void 0 ? void 0 : settings.capabilities.includes(question_1.TabSsoItem.id)) ? question_1.TabNewUIOptionItem : question_1.TabNonSsoItem);
719
- }
720
- }
721
- if (isDefaultBotAddable) {
722
- options.push(question_1.BotNewUIOptionItem);
723
- }
724
- if (isMEAddable) {
725
- options.push(question_1.MessageExtensionNewUIItem);
726
- }
727
- return teamsfx_api_1.ok(options);
728
- }
729
- /**
730
- * Combines the options of AddCapability and AddResource.
731
- * Only works for VS Code new UI with Preview feature flag enabled.
732
- */
733
- async function getQuestionsForAddFeature(ctx, inputs, func, envInfo, tokenProvider) {
734
- const settings = ctx.projectSetting.solutionSettings;
735
- const options = [];
736
- const addFeatureQuestion = {
737
- name: question_1.AzureSolutionQuestionNames.Features,
738
- title: localizeUtils_1.getLocalizedString("core.addFeatureQuestion.title"),
739
- type: "singleSelect",
740
- staticOptions: [],
741
- };
742
- // check and generate capability options
743
- const canAddCapabilityResult = executeUserTask_1.canAddCapability(settings, ctx.telemetryReporter);
744
- if (canAddCapabilityResult.isOk() && !ctx.projectSetting.isM365) {
745
- const optionsResult = await getStaticOptionsForAddCapability(ctx, inputs, settings);
746
- if (optionsResult.isErr()) {
747
- return teamsfx_api_1.err(optionsResult.error);
748
- }
749
- options.push(...optionsResult.value);
750
- }
751
- // check and generate cloud resource options
752
- if (inputs.platform === teamsfx_api_1.Platform.CLI_HELP) {
753
- options.push(...question_1.createAddCloudResourceOptions(false, false));
754
- }
755
- else {
756
- const canAddResourceResult = executeUserTask_1.canAddResource(ctx.projectSetting, ctx.telemetryReporter);
757
- if (canAddResourceResult.isOk()) {
758
- // resources
759
- if (!settings) {
760
- return teamsfx_api_1.err(new error_1.NoCapabilityFoundError(teamsfx_api_1.Stage.addResource));
761
- }
762
- const alreadyHaveAPIM = settings.azureResources.includes(question_1.AzureResourceApim.id);
763
- const alreadyHaveKeyVault = settings.azureResources.includes(question_1.AzureResourceKeyVault.id);
764
- const addResourceOptions = question_1.createAddCloudResourceOptions(alreadyHaveAPIM, alreadyHaveKeyVault);
765
- options.push(...addResourceOptions);
766
- }
767
- }
768
- // check and generate additional feature options
769
- if (inputs.platform === teamsfx_api_1.Platform.CLI_HELP || tools_1.canAddSso(ctx.projectSetting)) {
770
- options.push(question_1.SingleSignOnOptionItem);
771
- }
772
- const isApiConnectionAddable = tools_1.canAddApiConnection(settings);
773
- if (inputs.platform === teamsfx_api_1.Platform.CLI_HELP || isApiConnectionAddable) {
774
- options.push(question_1.ApiConnectionOptionItem);
775
- }
776
- const isCicdAddable = await tools_1.canAddCICDWorkflows(inputs, ctx);
777
- if (inputs.platform === teamsfx_api_1.Platform.CLI_HELP || isCicdAddable) {
778
- options.push(question_1.CicdOptionItem);
779
- }
780
- addFeatureQuestion.staticOptions = options;
781
- const addFeatureNode = new teamsfx_api_1.QTreeNode(addFeatureQuestion);
782
- if (inputs.platform !== teamsfx_api_1.Platform.CLI_HELP && !ctx.projectSetting.programmingLanguage) {
783
- // Language
784
- const programmingLanguage = new teamsfx_api_1.QTreeNode(question_2.ProgrammingLanguageQuestion);
785
- programmingLanguage.condition = {
786
- enum: [
787
- question_1.NotificationOptionItem.id,
788
- question_1.CommandAndResponseOptionItem.id,
789
- question_1.WorkflowOptionItem.id,
790
- question_1.TabNewUIOptionItem.id,
791
- question_1.TabNonSsoItem.id,
792
- question_1.BotNewUIOptionItem.id,
793
- question_1.MessageExtensionItem.id,
794
- question_1.SingleSignOnOptionItem.id,
795
- ],
796
- };
797
- addFeatureNode.addChild(programmingLanguage);
798
- }
799
- // traverse plugins' getQuestionsForUserTask
800
- const pluginsWithResources = [
801
- [ResourcePluginContainer_1.ResourcePluginsV2.BotPlugin, question_1.BotNewUIOptionItem.id],
802
- [ResourcePluginContainer_1.ResourcePluginsV2.FunctionPlugin, question_1.AzureResourceFunction.id],
803
- ];
804
- if (featureFlags_1.isSPFxMultiTabEnabled()) {
805
- pluginsWithResources.push([ResourcePluginContainer_1.ResourcePluginsV2.SpfxPlugin, question_1.TabSPFxNewUIItem.id]);
806
- }
807
- const alreadyHaveFunction = settings === null || settings === void 0 ? void 0 : settings.azureResources.includes(question_1.AzureResourceFunction.id);
808
- for (const pair of pluginsWithResources) {
809
- const pluginName = pair[0];
810
- const resourceName = pair[1];
811
- const plugin = typedi_1.default.get(pluginName);
812
- if (plugin.getQuestionsForUserTask) {
813
- const res = await plugin.getQuestionsForUserTask(ctx, inputs, func, envInfo, tokenProvider);
814
- if (res.isErr())
815
- return res;
816
- if (res.value) {
817
- const node = res.value;
818
- if (!node.condition) {
819
- if (resourceName !== question_1.AzureResourceFunction.id) {
820
- node.condition = { equals: resourceName };
821
- }
822
- else {
823
- // Azure Function question is related to APIM and SQL
824
- node.condition = {
825
- validFunc: (input, inputs) => {
826
- if (input === question_1.AzureResourceFunction.id) {
827
- return undefined;
828
- }
829
- if (!alreadyHaveFunction &&
830
- (input === question_1.AzureResourceSQL.id || input === question_1.AzureResourceApim.id)) {
831
- return undefined;
832
- }
833
- return "Function related is not selected";
834
- },
835
- };
836
- }
837
- }
838
- if (node.data) {
839
- addFeatureNode.addChild(node);
840
- }
841
- }
842
- }
843
- }
844
- return teamsfx_api_1.ok(addFeatureNode);
845
- }
846
- exports.getQuestionsForAddFeature = getQuestionsForAddFeature;
847
- //# sourceMappingURL=getQuestions.js.map