@microsoft/teamsfx-core 1.11.0 → 1.11.1-alpha.10d9b00a6.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 (549) hide show
  1. package/build/common/local/index.d.ts +1 -0
  2. package/build/common/local/index.d.ts.map +1 -1
  3. package/build/common/local/index.js +1 -0
  4. package/build/common/local/index.js.map +1 -1
  5. package/build/common/local/localCertificateManager.d.ts +1 -0
  6. package/build/common/local/localCertificateManager.d.ts.map +1 -1
  7. package/build/common/local/localCertificateManager.js +2 -0
  8. package/build/common/local/localCertificateManager.js.map +1 -1
  9. package/build/common/local/localTelemetryReporter.d.ts +69 -0
  10. package/build/common/local/localTelemetryReporter.d.ts.map +1 -0
  11. package/build/common/local/localTelemetryReporter.js +118 -0
  12. package/build/common/local/localTelemetryReporter.js.map +1 -0
  13. package/build/common/local/projectSettingsHelper.d.ts.map +1 -1
  14. package/build/common/local/projectSettingsHelper.js +20 -4
  15. package/build/common/local/projectSettingsHelper.js.map +1 -1
  16. package/build/common/projectSettingsHelperV3.d.ts +6 -0
  17. package/build/common/projectSettingsHelperV3.d.ts.map +1 -1
  18. package/build/common/projectSettingsHelperV3.js +33 -1
  19. package/build/common/projectSettingsHelperV3.js.map +1 -1
  20. package/build/common/telemetry.d.ts +2 -1
  21. package/build/common/telemetry.d.ts.map +1 -1
  22. package/build/common/telemetry.js +1 -0
  23. package/build/common/telemetry.js.map +1 -1
  24. package/build/common/templates-config.json +2 -2
  25. package/build/common/tools.d.ts +2 -5
  26. package/build/common/tools.d.ts.map +1 -1
  27. package/build/common/tools.js +17 -9
  28. package/build/common/tools.js.map +1 -1
  29. package/build/common/utils.d.ts +1 -0
  30. package/build/common/utils.d.ts.map +1 -1
  31. package/build/common/utils.js +11 -2
  32. package/build/common/utils.js.map +1 -1
  33. package/build/component/bicep.d.ts.map +1 -1
  34. package/build/component/bicep.js +0 -8
  35. package/build/component/bicep.js.map +1 -1
  36. package/build/component/code/botCode.d.ts +7 -2
  37. package/build/component/code/botCode.d.ts.map +1 -1
  38. package/build/component/code/botCode.js +94 -40
  39. package/build/component/code/botCode.js.map +1 -1
  40. package/build/component/code/tabCode.d.ts +10 -0
  41. package/build/component/code/tabCode.d.ts.map +1 -1
  42. package/build/component/code/tabCode.js +121 -0
  43. package/build/component/code/tabCode.js.map +1 -1
  44. package/build/component/connection/azureFunctionConfig.d.ts +10 -0
  45. package/build/component/connection/azureFunctionConfig.d.ts.map +1 -1
  46. package/build/component/connection/azureFunctionConfig.js +33 -0
  47. package/build/component/connection/azureFunctionConfig.js.map +1 -1
  48. package/build/component/connection/azureResourceConfig.d.ts +11 -0
  49. package/build/component/connection/azureResourceConfig.d.ts.map +1 -0
  50. package/build/component/connection/azureResourceConfig.js +77 -0
  51. package/build/component/connection/azureResourceConfig.js.map +1 -0
  52. package/build/component/connection/azureWebAppConfig.d.ts +4 -1
  53. package/build/component/connection/azureWebAppConfig.d.ts.map +1 -1
  54. package/build/component/connection/azureWebAppConfig.js +14 -63
  55. package/build/component/connection/azureWebAppConfig.js.map +1 -1
  56. package/build/component/constants.d.ts +60 -0
  57. package/build/component/constants.d.ts.map +1 -1
  58. package/build/component/constants.js +62 -2
  59. package/build/component/constants.js.map +1 -1
  60. package/build/component/core.d.ts +2 -1
  61. package/build/component/core.d.ts.map +1 -1
  62. package/build/component/core.js +68 -126
  63. package/build/component/core.js.map +1 -1
  64. package/build/component/debug.d.ts +4 -2
  65. package/build/component/debug.d.ts.map +1 -1
  66. package/build/component/debug.js +133 -16
  67. package/build/component/debug.js.map +1 -1
  68. package/build/component/envManager.d.ts +0 -2
  69. package/build/component/envManager.d.ts.map +1 -1
  70. package/build/component/envManager.js +84 -63
  71. package/build/component/envManager.js.map +1 -1
  72. package/build/component/feature/apiConnector.d.ts +17 -0
  73. package/build/component/feature/apiConnector.d.ts.map +1 -0
  74. package/build/component/feature/apiConnector.js +40 -0
  75. package/build/component/feature/apiConnector.js.map +1 -0
  76. package/build/component/feature/bot.d.ts +1 -0
  77. package/build/component/feature/bot.d.ts.map +1 -1
  78. package/build/component/feature/bot.js +29 -8
  79. package/build/component/feature/bot.js.map +1 -1
  80. package/build/component/feature/cicd.d.ts +15 -0
  81. package/build/component/feature/cicd.d.ts.map +1 -0
  82. package/build/component/feature/cicd.js +121 -0
  83. package/build/component/feature/cicd.js.map +1 -0
  84. package/build/component/feature/sql.d.ts +4 -2
  85. package/build/component/feature/sql.d.ts.map +1 -1
  86. package/build/component/feature/sql.js +25 -2
  87. package/build/component/feature/sql.js.map +1 -1
  88. package/build/component/feature/tab.d.ts.map +1 -1
  89. package/build/component/feature/tab.js +59 -57
  90. package/build/component/feature/tab.js.map +1 -1
  91. package/build/component/fx/preDeployAction.d.ts +7 -0
  92. package/build/component/fx/preDeployAction.d.ts.map +1 -0
  93. package/build/component/fx/preDeployAction.js +32 -0
  94. package/build/component/fx/preDeployAction.js.map +1 -0
  95. package/build/component/fx/preProvisionAction.d.ts +7 -0
  96. package/build/component/fx/preProvisionAction.d.ts.map +1 -0
  97. package/build/component/fx/preProvisionAction.js +63 -0
  98. package/build/component/fx/preProvisionAction.js.map +1 -0
  99. package/build/component/middleware/logger.d.ts +20 -0
  100. package/build/component/middleware/logger.d.ts.map +1 -0
  101. package/build/component/middleware/logger.js +50 -0
  102. package/build/component/middleware/logger.js.map +1 -0
  103. package/build/component/middleware/progressbar.d.ts +3 -0
  104. package/build/component/middleware/progressbar.d.ts.map +1 -0
  105. package/build/component/middleware/progressbar.js +22 -0
  106. package/build/component/middleware/progressbar.js.map +1 -0
  107. package/build/component/middleware/runWithCatchError.d.ts +6 -0
  108. package/build/component/middleware/runWithCatchError.d.ts.map +1 -0
  109. package/build/component/middleware/runWithCatchError.js +43 -0
  110. package/build/component/middleware/runWithCatchError.js.map +1 -0
  111. package/build/component/middleware/telemetry.d.ts +37 -0
  112. package/build/component/middleware/telemetry.d.ts.map +1 -0
  113. package/build/component/middleware/telemetry.js +70 -0
  114. package/build/component/middleware/telemetry.js.map +1 -0
  115. package/build/component/middleware/types.d.ts +25 -0
  116. package/build/component/middleware/types.d.ts.map +1 -0
  117. package/build/component/middleware/types.js +5 -0
  118. package/build/component/middleware/types.js.map +1 -0
  119. package/build/component/projectSettingsManager.d.ts +1 -1
  120. package/build/component/projectSettingsManager.d.ts.map +1 -1
  121. package/build/component/projectSettingsManager.js +7 -3
  122. package/build/component/projectSettingsManager.js.map +1 -1
  123. package/build/component/resource/appManifest/appManifest.d.ts +2 -1
  124. package/build/component/resource/appManifest/appManifest.d.ts.map +1 -1
  125. package/build/component/resource/appManifest/appManifest.js +141 -107
  126. package/build/component/resource/appManifest/appManifest.js.map +1 -1
  127. package/build/component/resource/appManifest/appStudio.d.ts +10 -3
  128. package/build/component/resource/appManifest/appStudio.d.ts.map +1 -1
  129. package/build/component/resource/appManifest/appStudio.js +136 -53
  130. package/build/component/resource/appManifest/appStudio.js.map +1 -1
  131. package/build/component/resource/appManifest/manifestProvider.d.ts +8 -0
  132. package/build/component/resource/appManifest/manifestProvider.d.ts.map +1 -0
  133. package/build/component/resource/appManifest/manifestProvider.js +27 -0
  134. package/build/component/resource/appManifest/manifestProvider.js.map +1 -0
  135. package/build/component/resource/azureFunction.d.ts +5 -3
  136. package/build/component/resource/azureFunction.d.ts.map +1 -1
  137. package/build/component/resource/azureFunction.js +55 -19
  138. package/build/component/resource/azureFunction.js.map +1 -1
  139. package/build/component/resource/azureResource.d.ts +12 -0
  140. package/build/component/resource/azureResource.d.ts.map +1 -0
  141. package/build/component/resource/azureResource.js +62 -0
  142. package/build/component/resource/azureResource.js.map +1 -0
  143. package/build/component/resource/azureSql/actions/configure.d.ts +27 -0
  144. package/build/component/resource/azureSql/actions/configure.d.ts.map +1 -0
  145. package/build/component/resource/azureSql/actions/configure.js +181 -0
  146. package/build/component/resource/azureSql/actions/configure.js.map +1 -0
  147. package/build/component/resource/azureSql/actions/generateBicep.d.ts +3 -0
  148. package/build/component/resource/azureSql/actions/generateBicep.d.ts.map +1 -0
  149. package/build/component/resource/azureSql/actions/generateBicep.js +59 -0
  150. package/build/component/resource/azureSql/actions/generateBicep.js.map +1 -0
  151. package/build/component/resource/azureSql/actions/provision.d.ts +11 -0
  152. package/build/component/resource/azureSql/actions/provision.d.ts.map +1 -0
  153. package/build/component/resource/azureSql/actions/provision.js +76 -0
  154. package/build/component/resource/azureSql/actions/provision.js.map +1 -0
  155. package/build/component/resource/{azureSql.d.ts → azureSql/azureSql.d.ts} +3 -4
  156. package/build/component/resource/azureSql/azureSql.d.ts.map +1 -0
  157. package/build/component/resource/azureSql/azureSql.js +34 -0
  158. package/build/component/resource/azureSql/azureSql.js.map +1 -0
  159. package/build/component/resource/azureSql/clients/management.d.ts +18 -0
  160. package/build/component/resource/azureSql/clients/management.d.ts.map +1 -0
  161. package/build/component/resource/azureSql/clients/management.js +111 -0
  162. package/build/component/resource/azureSql/clients/management.js.map +1 -0
  163. package/build/component/resource/azureSql/clients/sql.d.ts +13 -0
  164. package/build/component/resource/azureSql/clients/sql.d.ts.map +1 -0
  165. package/build/component/resource/azureSql/clients/sql.js +153 -0
  166. package/build/component/resource/azureSql/clients/sql.js.map +1 -0
  167. package/build/component/resource/azureSql/config.d.ts +7 -0
  168. package/build/component/resource/azureSql/config.d.ts.map +1 -0
  169. package/build/component/resource/azureSql/config.js +77 -0
  170. package/build/component/resource/azureSql/config.js.map +1 -0
  171. package/build/component/resource/azureSql/constants.d.ts +85 -0
  172. package/build/component/resource/azureSql/constants.d.ts.map +1 -0
  173. package/build/component/resource/azureSql/constants.js +95 -0
  174. package/build/component/resource/azureSql/constants.js.map +1 -0
  175. package/build/component/resource/azureSql/errors.d.ts +63 -0
  176. package/build/component/resource/azureSql/errors.d.ts.map +1 -0
  177. package/build/component/resource/azureSql/errors.js +107 -0
  178. package/build/component/resource/azureSql/errors.js.map +1 -0
  179. package/build/component/resource/azureSql/index.d.ts +2 -0
  180. package/build/component/resource/azureSql/index.d.ts.map +1 -0
  181. package/build/component/resource/azureSql/index.js +7 -0
  182. package/build/component/resource/azureSql/index.js.map +1 -0
  183. package/build/component/resource/azureSql/questions.d.ts +5 -0
  184. package/build/component/resource/azureSql/questions.d.ts.map +1 -0
  185. package/build/component/resource/azureSql/questions.js +48 -0
  186. package/build/component/resource/azureSql/questions.js.map +1 -0
  187. package/build/component/resource/azureSql/results.d.ts +10 -0
  188. package/build/component/resource/azureSql/results.d.ts.map +1 -0
  189. package/build/component/resource/azureSql/results.js +34 -0
  190. package/build/component/resource/azureSql/results.js.map +1 -0
  191. package/build/component/resource/azureSql/types.d.ts +12 -0
  192. package/build/component/resource/azureSql/types.d.ts.map +1 -0
  193. package/build/component/resource/azureSql/types.js +5 -0
  194. package/build/component/resource/azureSql/types.js.map +1 -0
  195. package/build/component/resource/azureSql/utils/checkInput.d.ts +10 -0
  196. package/build/component/resource/azureSql/utils/checkInput.d.ts.map +1 -0
  197. package/build/component/resource/azureSql/utils/checkInput.js +89 -0
  198. package/build/component/resource/azureSql/utils/checkInput.js.map +1 -0
  199. package/build/component/resource/azureSql/utils/common.d.ts +12 -0
  200. package/build/component/resource/azureSql/utils/common.d.ts.map +1 -0
  201. package/build/component/resource/azureSql/utils/common.js +51 -0
  202. package/build/component/resource/azureSql/utils/common.js.map +1 -0
  203. package/build/component/resource/azureStorage.d.ts +16 -3
  204. package/build/component/resource/azureStorage.d.ts.map +1 -1
  205. package/build/component/resource/azureStorage.js +51 -28
  206. package/build/component/resource/azureStorage.js.map +1 -1
  207. package/build/component/resource/azureWebApp.d.ts +8 -3
  208. package/build/component/resource/azureWebApp.d.ts.map +1 -1
  209. package/build/component/resource/azureWebApp.js +39 -35
  210. package/build/component/resource/azureWebApp.js.map +1 -1
  211. package/build/component/resource/botService.d.ts.map +1 -1
  212. package/build/component/resource/botService.js +26 -13
  213. package/build/component/resource/botService.js.map +1 -1
  214. package/build/component/resource/identity.d.ts +22 -0
  215. package/build/component/resource/identity.d.ts.map +1 -0
  216. package/build/component/resource/identity.js +24 -0
  217. package/build/component/resource/identity.js.map +1 -0
  218. package/build/component/utils.d.ts +5 -4
  219. package/build/component/utils.d.ts.map +1 -1
  220. package/build/component/utils.js +31 -15
  221. package/build/component/utils.js.map +1 -1
  222. package/build/component/workflow.d.ts.map +1 -1
  223. package/build/component/workflow.js +25 -15
  224. package/build/component/workflow.js.map +1 -1
  225. package/build/core/FxCore.d.ts +1 -0
  226. package/build/core/FxCore.d.ts.map +1 -1
  227. package/build/core/FxCore.js +67 -47
  228. package/build/core/FxCore.js.map +1 -1
  229. package/build/core/collaborator.d.ts.map +1 -1
  230. package/build/core/collaborator.js +14 -8
  231. package/build/core/collaborator.js.map +1 -1
  232. package/build/core/middleware/projectSettingsLoader.d.ts.map +1 -1
  233. package/build/core/middleware/projectSettingsLoader.js +9 -5
  234. package/build/core/middleware/projectSettingsLoader.js.map +1 -1
  235. package/build/core/middleware/questionModel.js +1 -1
  236. package/build/core/middleware/questionModel.js.map +1 -1
  237. package/build/core/middleware/questionModelV3.d.ts.map +1 -1
  238. package/build/core/middleware/questionModelV3.js +125 -5
  239. package/build/core/middleware/questionModelV3.js.map +1 -1
  240. package/build/core/question.d.ts +3 -2
  241. package/build/core/question.d.ts.map +1 -1
  242. package/build/core/question.js +3 -2
  243. package/build/core/question.js.map +1 -1
  244. package/build/plugins/resource/aad/aadAppClient.d.ts +3 -3
  245. package/build/plugins/resource/aad/aadAppClient.d.ts.map +1 -1
  246. package/build/plugins/resource/aad/aadAppClient.js +4 -4
  247. package/build/plugins/resource/aad/aadAppClient.js.map +1 -1
  248. package/build/plugins/resource/aad/plugin.d.ts.map +1 -1
  249. package/build/plugins/resource/aad/plugin.js +11 -11
  250. package/build/plugins/resource/aad/plugin.js.map +1 -1
  251. package/build/plugins/resource/aad/utils/configs.d.ts +3 -2
  252. package/build/plugins/resource/aad/utils/configs.d.ts.map +1 -1
  253. package/build/plugins/resource/aad/utils/configs.js +16 -23
  254. package/build/plugins/resource/aad/utils/configs.js.map +1 -1
  255. package/build/plugins/resource/aad/utils/tokenProvider.d.ts +2 -3
  256. package/build/plugins/resource/aad/utils/tokenProvider.d.ts.map +1 -1
  257. package/build/plugins/resource/aad/utils/tokenProvider.js +9 -4
  258. package/build/plugins/resource/aad/utils/tokenProvider.js.map +1 -1
  259. package/build/plugins/resource/aad/v3/index.d.ts.map +1 -1
  260. package/build/plugins/resource/aad/v3/index.js +6 -8
  261. package/build/plugins/resource/aad/v3/index.js.map +1 -1
  262. package/build/plugins/resource/apiconnector/plugin.d.ts.map +1 -1
  263. package/build/plugins/resource/apiconnector/plugin.js +40 -18
  264. package/build/plugins/resource/apiconnector/plugin.js.map +1 -1
  265. package/build/plugins/resource/apim/factory.d.ts +4 -4
  266. package/build/plugins/resource/apim/factory.d.ts.map +1 -1
  267. package/build/plugins/resource/apim/factory.js +10 -7
  268. package/build/plugins/resource/apim/factory.js.map +1 -1
  269. package/build/plugins/resource/apim/index.js +6 -4
  270. package/build/plugins/resource/apim/index.js.map +1 -1
  271. package/build/plugins/resource/apim/v3/index.d.ts.map +1 -1
  272. package/build/plugins/resource/apim/v3/index.js +5 -4
  273. package/build/plugins/resource/apim/v3/index.js.map +1 -1
  274. package/build/plugins/resource/appstudio/appStudio.d.ts +0 -4
  275. package/build/plugins/resource/appstudio/appStudio.d.ts.map +1 -1
  276. package/build/plugins/resource/appstudio/appStudio.js +41 -64
  277. package/build/plugins/resource/appstudio/appStudio.js.map +1 -1
  278. package/build/plugins/resource/appstudio/constants.d.ts +4 -4
  279. package/build/plugins/resource/appstudio/constants.d.ts.map +1 -1
  280. package/build/plugins/resource/appstudio/constants.js +25 -25
  281. package/build/plugins/resource/appstudio/constants.js.map +1 -1
  282. package/build/plugins/resource/appstudio/errors.d.ts +1 -1
  283. package/build/plugins/resource/appstudio/errors.d.ts.map +1 -1
  284. package/build/plugins/resource/appstudio/errors.js +3 -1
  285. package/build/plugins/resource/appstudio/errors.js.map +1 -1
  286. package/build/plugins/resource/appstudio/index.d.ts.map +1 -1
  287. package/build/plugins/resource/appstudio/index.js +16 -7
  288. package/build/plugins/resource/appstudio/index.js.map +1 -1
  289. package/build/plugins/resource/appstudio/manifestTemplate.d.ts.map +1 -1
  290. package/build/plugins/resource/appstudio/manifestTemplate.js +12 -11
  291. package/build/plugins/resource/appstudio/manifestTemplate.js.map +1 -1
  292. package/build/plugins/resource/appstudio/plugin.d.ts.map +1 -1
  293. package/build/plugins/resource/appstudio/plugin.js +98 -42
  294. package/build/plugins/resource/appstudio/plugin.js.map +1 -1
  295. package/build/plugins/resource/appstudio/utils/utils.d.ts +4 -0
  296. package/build/plugins/resource/appstudio/utils/utils.d.ts.map +1 -1
  297. package/build/plugins/resource/appstudio/utils/utils.js +34 -1
  298. package/build/plugins/resource/appstudio/utils/utils.js.map +1 -1
  299. package/build/plugins/resource/appstudio/v2/index.d.ts +2 -2
  300. package/build/plugins/resource/appstudio/v2/index.d.ts.map +1 -1
  301. package/build/plugins/resource/appstudio/v2/index.js +1 -1
  302. package/build/plugins/resource/appstudio/v2/index.js.map +1 -1
  303. package/build/plugins/resource/appstudio/v3/index.d.ts +5 -5
  304. package/build/plugins/resource/appstudio/v3/index.d.ts.map +1 -1
  305. package/build/plugins/resource/appstudio/v3/index.js +10 -6
  306. package/build/plugins/resource/appstudio/v3/index.js.map +1 -1
  307. package/build/plugins/resource/bot/appStudio/appStudio.d.ts.map +1 -1
  308. package/build/plugins/resource/bot/appStudio/appStudio.js +15 -2
  309. package/build/plugins/resource/bot/appStudio/appStudio.js.map +1 -1
  310. package/build/plugins/resource/bot/configs/scaffoldConfig.d.ts +2 -1
  311. package/build/plugins/resource/bot/configs/scaffoldConfig.d.ts.map +1 -1
  312. package/build/plugins/resource/bot/configs/scaffoldConfig.js +7 -7
  313. package/build/plugins/resource/bot/configs/scaffoldConfig.js.map +1 -1
  314. package/build/plugins/resource/bot/functionsHostedBot/plugin.d.ts.map +1 -1
  315. package/build/plugins/resource/bot/functionsHostedBot/plugin.js +2 -1
  316. package/build/plugins/resource/bot/functionsHostedBot/plugin.js.map +1 -1
  317. package/build/plugins/resource/bot/index.d.ts.map +1 -1
  318. package/build/plugins/resource/bot/index.js +19 -47
  319. package/build/plugins/resource/bot/index.js.map +1 -1
  320. package/build/plugins/resource/bot/languageStrategy.d.ts.map +1 -1
  321. package/build/plugins/resource/bot/languageStrategy.js +2 -1
  322. package/build/plugins/resource/bot/languageStrategy.js.map +1 -1
  323. package/build/plugins/resource/bot/plugin.d.ts.map +1 -1
  324. package/build/plugins/resource/bot/plugin.js +30 -9
  325. package/build/plugins/resource/bot/plugin.js.map +1 -1
  326. package/build/plugins/resource/bot/question.d.ts +8 -6
  327. package/build/plugins/resource/bot/question.d.ts.map +1 -1
  328. package/build/plugins/resource/bot/question.js +42 -61
  329. package/build/plugins/resource/bot/question.js.map +1 -1
  330. package/build/plugins/resource/bot/resources/strings.d.ts +0 -5
  331. package/build/plugins/resource/bot/resources/strings.d.ts.map +1 -1
  332. package/build/plugins/resource/bot/resources/strings.js +1 -5
  333. package/build/plugins/resource/bot/resources/strings.js.map +1 -1
  334. package/build/plugins/resource/bot/utils/retryHandler.d.ts +1 -1
  335. package/build/plugins/resource/bot/utils/retryHandler.d.ts.map +1 -1
  336. package/build/plugins/resource/bot/utils/retryHandler.js +1 -3
  337. package/build/plugins/resource/bot/utils/retryHandler.js.map +1 -1
  338. package/build/plugins/resource/bot/v2/common.d.ts +3 -1
  339. package/build/plugins/resource/bot/v2/common.d.ts.map +1 -1
  340. package/build/plugins/resource/bot/v2/common.js +23 -9
  341. package/build/plugins/resource/bot/v2/common.js.map +1 -1
  342. package/build/plugins/resource/bot/v2/enum.d.ts +5 -1
  343. package/build/plugins/resource/bot/v2/enum.d.ts.map +1 -1
  344. package/build/plugins/resource/bot/v2/enum.js +7 -2
  345. package/build/plugins/resource/bot/v2/enum.js.map +1 -1
  346. package/build/plugins/resource/bot/v2/mapping.d.ts +2 -0
  347. package/build/plugins/resource/bot/v2/mapping.d.ts.map +1 -1
  348. package/build/plugins/resource/bot/v2/mapping.js +27 -10
  349. package/build/plugins/resource/bot/v2/mapping.js.map +1 -1
  350. package/build/plugins/resource/bot/v2/plugin.d.ts.map +1 -1
  351. package/build/plugins/resource/bot/v2/plugin.js +2 -0
  352. package/build/plugins/resource/bot/v2/plugin.js.map +1 -1
  353. package/build/plugins/resource/bot/v3/index.d.ts.map +1 -1
  354. package/build/plugins/resource/bot/v3/index.js +16 -5
  355. package/build/plugins/resource/bot/v3/index.js.map +1 -1
  356. package/build/plugins/resource/cicd/index.d.ts.map +1 -1
  357. package/build/plugins/resource/cicd/index.js +9 -67
  358. package/build/plugins/resource/cicd/index.js.map +1 -1
  359. package/build/plugins/resource/cicd/plugin.d.ts +1 -2
  360. package/build/plugins/resource/cicd/plugin.d.ts.map +1 -1
  361. package/build/plugins/resource/cicd/plugin.js +3 -8
  362. package/build/plugins/resource/cicd/plugin.js.map +1 -1
  363. package/build/plugins/resource/cicd/providers/provider.d.ts +2 -2
  364. package/build/plugins/resource/cicd/providers/provider.d.ts.map +1 -1
  365. package/build/plugins/resource/cicd/providers/provider.js +28 -10
  366. package/build/plugins/resource/cicd/providers/provider.js.map +1 -1
  367. package/build/plugins/resource/frontend/dotnet/plugin.d.ts.map +1 -1
  368. package/build/plugins/resource/frontend/dotnet/plugin.js +6 -3
  369. package/build/plugins/resource/frontend/dotnet/plugin.js.map +1 -1
  370. package/build/plugins/resource/function/v3/index.d.ts.map +1 -1
  371. package/build/plugins/resource/function/v3/index.js +2 -1
  372. package/build/plugins/resource/function/v3/index.js.map +1 -1
  373. package/build/plugins/resource/simpleauth/plugin.js +1 -1
  374. package/build/plugins/resource/simpleauth/plugin.js.map +1 -1
  375. package/build/plugins/resource/spfx/depsChecker/generatorChecker.d.ts +0 -1
  376. package/build/plugins/resource/spfx/depsChecker/generatorChecker.d.ts.map +1 -1
  377. package/build/plugins/resource/spfx/depsChecker/generatorChecker.js +0 -14
  378. package/build/plugins/resource/spfx/depsChecker/generatorChecker.js.map +1 -1
  379. package/build/plugins/resource/spfx/depsChecker/yoChecker.d.ts +0 -2
  380. package/build/plugins/resource/spfx/depsChecker/yoChecker.d.ts.map +1 -1
  381. package/build/plugins/resource/spfx/depsChecker/yoChecker.js +1 -43
  382. package/build/plugins/resource/spfx/depsChecker/yoChecker.js.map +1 -1
  383. package/build/plugins/resource/spfx/error.d.ts +2 -0
  384. package/build/plugins/resource/spfx/error.d.ts.map +1 -1
  385. package/build/plugins/resource/spfx/error.js +9 -1
  386. package/build/plugins/resource/spfx/error.js.map +1 -1
  387. package/build/plugins/resource/spfx/index.d.ts.map +1 -1
  388. package/build/plugins/resource/spfx/index.js +4 -2
  389. package/build/plugins/resource/spfx/index.js.map +1 -1
  390. package/build/plugins/resource/spfx/plugin.d.ts.map +1 -1
  391. package/build/plugins/resource/spfx/plugin.js +15 -13
  392. package/build/plugins/resource/spfx/plugin.js.map +1 -1
  393. package/build/plugins/resource/spfx/utils/constants.d.ts +3 -0
  394. package/build/plugins/resource/spfx/utils/constants.d.ts.map +1 -1
  395. package/build/plugins/resource/spfx/utils/constants.js +3 -0
  396. package/build/plugins/resource/spfx/utils/constants.js.map +1 -1
  397. package/build/plugins/resource/spfx/utils/questions.d.ts +3 -1
  398. package/build/plugins/resource/spfx/utils/questions.d.ts.map +1 -1
  399. package/build/plugins/resource/spfx/utils/questions.js +28 -2
  400. package/build/plugins/resource/spfx/utils/questions.js.map +1 -1
  401. package/build/plugins/resource/spfx/utils/utils.d.ts +4 -0
  402. package/build/plugins/resource/spfx/utils/utils.d.ts.map +1 -1
  403. package/build/plugins/resource/spfx/utils/utils.js +37 -0
  404. package/build/plugins/resource/spfx/utils/utils.js.map +1 -1
  405. package/build/plugins/resource/spfx/v3/plugin.d.ts.map +1 -1
  406. package/build/plugins/resource/spfx/v3/plugin.js +18 -13
  407. package/build/plugins/resource/spfx/v3/plugin.js.map +1 -1
  408. package/build/plugins/resource/utils4v2.d.ts.map +1 -1
  409. package/build/plugins/resource/utils4v2.js +9 -19
  410. package/build/plugins/resource/utils4v2.js.map +1 -1
  411. package/build/plugins/solution/fx-solution/arm.d.ts.map +1 -1
  412. package/build/plugins/solution/fx-solution/arm.js +2 -5
  413. package/build/plugins/solution/fx-solution/arm.js.map +1 -1
  414. package/build/plugins/solution/fx-solution/commonQuestions.d.ts.map +1 -1
  415. package/build/plugins/solution/fx-solution/commonQuestions.js +5 -21
  416. package/build/plugins/solution/fx-solution/commonQuestions.js.map +1 -1
  417. package/build/plugins/solution/fx-solution/constants.d.ts +3 -1
  418. package/build/plugins/solution/fx-solution/constants.d.ts.map +1 -1
  419. package/build/plugins/solution/fx-solution/constants.js +2 -0
  420. package/build/plugins/solution/fx-solution/constants.js.map +1 -1
  421. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts +2 -0
  422. package/build/plugins/solution/fx-solution/debug/scaffolding.d.ts.map +1 -1
  423. package/build/plugins/solution/fx-solution/debug/scaffolding.js +3 -1
  424. package/build/plugins/solution/fx-solution/debug/scaffolding.js.map +1 -1
  425. package/build/plugins/solution/fx-solution/debug/util/tasks.d.ts.map +1 -1
  426. package/build/plugins/solution/fx-solution/debug/util/tasks.js +1 -2
  427. package/build/plugins/solution/fx-solution/debug/util/tasks.js.map +1 -1
  428. package/build/plugins/solution/fx-solution/question.d.ts +1 -0
  429. package/build/plugins/solution/fx-solution/question.d.ts.map +1 -1
  430. package/build/plugins/solution/fx-solution/question.js +4 -2
  431. package/build/plugins/solution/fx-solution/question.js.map +1 -1
  432. package/build/plugins/solution/fx-solution/solution.d.ts.map +1 -1
  433. package/build/plugins/solution/fx-solution/solution.js +89 -69
  434. package/build/plugins/solution/fx-solution/solution.js.map +1 -1
  435. package/build/plugins/solution/fx-solution/v2/adaptor.d.ts +2 -3
  436. package/build/plugins/solution/fx-solution/v2/adaptor.d.ts.map +1 -1
  437. package/build/plugins/solution/fx-solution/v2/adaptor.js +3 -6
  438. package/build/plugins/solution/fx-solution/v2/adaptor.js.map +1 -1
  439. package/build/plugins/solution/fx-solution/v2/checkPermission.js +6 -6
  440. package/build/plugins/solution/fx-solution/v2/checkPermission.js.map +1 -1
  441. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts +3 -3
  442. package/build/plugins/solution/fx-solution/v2/collaborationUtil.d.ts.map +1 -1
  443. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js +7 -5
  444. package/build/plugins/solution/fx-solution/v2/collaborationUtil.js.map +1 -1
  445. package/build/plugins/solution/fx-solution/v2/deploy.d.ts.map +1 -1
  446. package/build/plugins/solution/fx-solution/v2/deploy.js +10 -3
  447. package/build/plugins/solution/fx-solution/v2/deploy.js.map +1 -1
  448. package/build/plugins/solution/fx-solution/v2/executeUserTask.d.ts.map +1 -1
  449. package/build/plugins/solution/fx-solution/v2/executeUserTask.js +7 -1
  450. package/build/plugins/solution/fx-solution/v2/executeUserTask.js.map +1 -1
  451. package/build/plugins/solution/fx-solution/v2/getQuestions.d.ts.map +1 -1
  452. package/build/plugins/solution/fx-solution/v2/getQuestions.js +4 -1
  453. package/build/plugins/solution/fx-solution/v2/getQuestions.js.map +1 -1
  454. package/build/plugins/solution/fx-solution/v2/grantPermission.js +7 -7
  455. package/build/plugins/solution/fx-solution/v2/grantPermission.js.map +1 -1
  456. package/build/plugins/solution/fx-solution/v2/listCollaborator.js +6 -6
  457. package/build/plugins/solution/fx-solution/v2/listCollaborator.js.map +1 -1
  458. package/build/plugins/solution/fx-solution/v2/provision.js +7 -2
  459. package/build/plugins/solution/fx-solution/v2/provision.js.map +1 -1
  460. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts.map +1 -1
  461. package/build/plugins/solution/fx-solution/v2/provisionLocal.js +12 -3
  462. package/build/plugins/solution/fx-solution/v2/provisionLocal.js.map +1 -1
  463. package/build/plugins/solution/fx-solution/v2/publish.d.ts +2 -2
  464. package/build/plugins/solution/fx-solution/v2/publish.d.ts.map +1 -1
  465. package/build/plugins/solution/fx-solution/v2/publish.js.map +1 -1
  466. package/build/plugins/solution/fx-solution/v2/solution.d.ts +2 -2
  467. package/build/plugins/solution/fx-solution/v2/solution.d.ts.map +1 -1
  468. package/build/plugins/solution/fx-solution/v2/utils.d.ts +2 -2
  469. package/build/plugins/solution/fx-solution/v2/utils.d.ts.map +1 -1
  470. package/build/plugins/solution/fx-solution/v2/utils.js +9 -3
  471. package/build/plugins/solution/fx-solution/v2/utils.js.map +1 -1
  472. package/build/plugins/solution/fx-solution/v3/addFeature.d.ts.map +1 -1
  473. package/build/plugins/solution/fx-solution/v3/provision.d.ts +2 -2
  474. package/build/plugins/solution/fx-solution/v3/provision.d.ts.map +1 -1
  475. package/build/plugins/solution/fx-solution/v3/provision.js +13 -8
  476. package/build/plugins/solution/fx-solution/v3/provision.js.map +1 -1
  477. package/build/plugins/solution/fx-solution/v3/publish.d.ts +3 -3
  478. package/build/plugins/solution/fx-solution/v3/publish.d.ts.map +1 -1
  479. package/build/plugins/solution/fx-solution/v3/publish.js.map +1 -1
  480. package/build/plugins/solution/fx-solution/v3/solution.d.ts +2 -2
  481. package/build/plugins/solution/fx-solution/v3/solution.d.ts.map +1 -1
  482. package/build/plugins/solution/fx-solution/v3/solution.js.map +1 -1
  483. package/build/plugins/solution/spfx-solution/addFeature.d.ts +2 -2
  484. package/build/plugins/solution/spfx-solution/addFeature.d.ts.map +1 -1
  485. package/build/plugins/solution/spfx-solution/addFeature.js.map +1 -1
  486. package/package.json +4 -4
  487. package/resource/package.nls.cs.json +884 -641
  488. package/resource/package.nls.de.json +884 -641
  489. package/resource/package.nls.es.json +884 -641
  490. package/resource/package.nls.fr.json +884 -641
  491. package/resource/package.nls.it.json +884 -641
  492. package/resource/package.nls.ja.json +884 -641
  493. package/resource/package.nls.json +11 -2
  494. package/resource/package.nls.ko.json +884 -641
  495. package/resource/package.nls.pl.json +884 -641
  496. package/resource/package.nls.pt-BR.json +884 -641
  497. package/resource/package.nls.ru.json +884 -641
  498. package/resource/package.nls.tr.json +884 -641
  499. package/resource/package.nls.zh-Hans.json +884 -641
  500. package/resource/package.nls.zh-Hant.json +884 -641
  501. package/templates/bicep/azureFunction.config.module.bicep +62 -0
  502. package/templates/bicep/azureFunction.config.orchestration.bicep +12 -0
  503. package/templates/bicep/azureFunction.parameters.json +4 -0
  504. package/templates/bicep/azureFunction.provision.module.bicep +97 -0
  505. package/templates/bicep/azureFunction.provision.orchestration.bicep +17 -0
  506. package/templates/bicep/azureSql.provisionDatabase.orchestration.bicep +1 -1
  507. package/templates/bicep/azureStorage.provision.module.bicep +25 -0
  508. package/templates/bicep/azureStorage.provision.orchestration.bicep +15 -0
  509. package/templates/bicep/azureWebApp.provision.module.bicep +12 -5
  510. package/templates/bicep/identity.provision.module.bicep +15 -0
  511. package/templates/bicep/identity.provision.orchestration.bicep +14 -0
  512. package/templates/bicep/main.bicep +1 -1
  513. package/templates/fallback/bot.csharp.command-and-response.zip +0 -0
  514. package/templates/fallback/bot.csharp.default.zip +0 -0
  515. package/templates/fallback/bot.csharp.notification-function-base.zip +0 -0
  516. package/templates/fallback/bot.csharp.notification-trigger-http.zip +0 -0
  517. package/templates/fallback/bot.csharp.notification-trigger-timer.zip +0 -0
  518. package/templates/fallback/bot.csharp.notification-webapi.zip +0 -0
  519. package/templates/fallback/bot.js.command-and-response.zip +0 -0
  520. package/templates/fallback/bot.js.default.zip +0 -0
  521. package/templates/fallback/bot.js.m365.zip +0 -0
  522. package/templates/fallback/bot.js.notification-function-base.zip +0 -0
  523. package/templates/fallback/bot.js.notification-restify.zip +0 -0
  524. package/templates/fallback/bot.js.notification-trigger-http.zip +0 -0
  525. package/templates/fallback/bot.js.notification-trigger-timer.zip +0 -0
  526. package/templates/fallback/bot.ts.command-and-response.zip +0 -0
  527. package/templates/fallback/bot.ts.default.zip +0 -0
  528. package/templates/fallback/bot.ts.m365.zip +0 -0
  529. package/templates/fallback/bot.ts.notification-function-base.zip +0 -0
  530. package/templates/fallback/bot.ts.notification-restify.zip +0 -0
  531. package/templates/fallback/bot.ts.notification-trigger-http.zip +0 -0
  532. package/templates/fallback/bot.ts.notification-trigger-timer.zip +0 -0
  533. package/templates/fallback/function-base.js.default.zip +0 -0
  534. package/templates/fallback/function-base.ts.default.zip +0 -0
  535. package/templates/fallback/function-triggers.js.HTTPTrigger.zip +0 -0
  536. package/templates/fallback/function-triggers.ts.HTTPTrigger.zip +0 -0
  537. package/templates/fallback/tab.csharp.default.zip +0 -0
  538. package/templates/fallback/tab.js.default.zip +0 -0
  539. package/templates/fallback/tab.js.m365.zip +0 -0
  540. package/templates/fallback/tab.js.non-sso.zip +0 -0
  541. package/templates/fallback/tab.ts.default.zip +0 -0
  542. package/templates/fallback/tab.ts.m365.zip +0 -0
  543. package/templates/fallback/tab.ts.non-sso.zip +0 -0
  544. package/templates/plugins/resource/hosting/bicep/function/functionProvision.template.bicep +12 -6
  545. package/build/component/resource/azureSql.d.ts.map +0 -1
  546. package/build/component/resource/azureSql.js +0 -119
  547. package/build/component/resource/azureSql.js.map +0 -1
  548. package/templates/fallback/blazor-base.csharp.default.zip +0 -0
  549. package/templates/fallback/bot.ts.notification.zip +0 -0
@@ -30,15 +30,21 @@ const manifestTemplate_1 = require("./manifestTemplate");
30
30
  const environment_1 = require("../../../core/environment");
31
31
  const localizeUtils_1 = require("../../../common/localizeUtils");
32
32
  const utils_2 = require("../../../common/utils");
33
+ const utils_3 = require("./utils/utils");
33
34
  class AppStudioPluginImpl {
34
35
  constructor() {
35
36
  this.commonProperties = {};
36
37
  }
37
38
  async getAppDefinitionAndUpdate(ctx, isLocalDebug, manifest) {
38
- var _a, _b;
39
39
  let teamsAppId;
40
40
  const appDirectory = await common_1.getAppDirectory(ctx.root);
41
- const appStudioToken = await ((_a = ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
41
+ const appStudioTokenRes = await ctx.m365TokenProvider.getAccessToken({
42
+ scopes: common_1.AppStudioScopes,
43
+ });
44
+ if (appStudioTokenRes.isErr()) {
45
+ return teamsfx_api_1.err(appStudioTokenRes.error);
46
+ }
47
+ const appStudioToken = appStudioTokenRes.value;
42
48
  if (isLocalDebug) {
43
49
  const appDefinitionAndManifest = await this.getAppDefinitionAndManifest(ctx, true);
44
50
  if (appDefinitionAndManifest.isErr()) {
@@ -50,7 +56,6 @@ class AppStudioPluginImpl {
50
56
  createIfNotExist = true;
51
57
  }
52
58
  else {
53
- const appStudioToken = await ((_b = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _b === void 0 ? void 0 : _b.getAccessToken());
54
59
  try {
55
60
  await appStudio_1.AppStudioClient.getApp(localTeamsAppID, appStudioToken, ctx.logProvider);
56
61
  }
@@ -71,9 +76,14 @@ class AppStudioPluginImpl {
71
76
  }
72
77
  }
73
78
  async getSPFxLocalDebugAppDefinitionAndUpdate(ctx, manifest) {
74
- var _a;
75
79
  const appDirectory = await common_1.getAppDirectory(ctx.root);
76
- const appStudioToken = await ((_a = ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
80
+ const appStudioTokenRes = await ctx.m365TokenProvider.getAccessToken({
81
+ scopes: common_1.AppStudioScopes,
82
+ });
83
+ if (appStudioTokenRes.isErr()) {
84
+ return teamsfx_api_1.err(appStudioTokenRes.error);
85
+ }
86
+ const appStudioToken = appStudioTokenRes.value;
77
87
  const localTeamsAppID = await this.getTeamsAppId(ctx, true);
78
88
  let create = !localTeamsAppID;
79
89
  if (localTeamsAppID) {
@@ -92,8 +102,7 @@ class AppStudioPluginImpl {
92
102
  },
93
103
  },
94
104
  };
95
- mustache_1.default.escape = (value) => value;
96
- const manifestString = mustache_1.default.render(JSON.stringify(manifest), view);
105
+ const manifestString = utils_3.renderTemplate(JSON.stringify(manifest), view);
97
106
  manifest = JSON.parse(manifestString);
98
107
  const appDefinition = await this.convertToAppDefinition(ctx, manifest, false);
99
108
  if (appDefinition.isErr()) {
@@ -103,7 +112,7 @@ class AppStudioPluginImpl {
103
112
  return teamsAppId;
104
113
  }
105
114
  async provision(ctx) {
106
- var _a, _b, _c, _d;
115
+ var _a, _b, _c;
107
116
  const provisionProgress = (_a = ctx.ui) === null || _a === void 0 ? void 0 : _a.createProgressBar(localizeUtils_1.getLocalizedString("plugins.appstudio.provisionTitle"), 1);
108
117
  await (provisionProgress === null || provisionProgress === void 0 ? void 0 : provisionProgress.start());
109
118
  await (provisionProgress === null || provisionProgress === void 0 ? void 0 : provisionProgress.next(localizeUtils_1.getLocalizedString("plugins.appstudio.provisionProgress", ctx.projectSettings.appName)));
@@ -113,7 +122,13 @@ class AppStudioPluginImpl {
113
122
  create = true;
114
123
  }
115
124
  else {
116
- const appStudioToken = await ((_b = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _b === void 0 ? void 0 : _b.getAccessToken());
125
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
126
+ scopes: common_1.AppStudioScopes,
127
+ }));
128
+ if (appStudioTokenRes.isErr()) {
129
+ return teamsfx_api_1.err(appStudioTokenRes.error);
130
+ }
131
+ const appStudioToken = appStudioTokenRes.value;
117
132
  try {
118
133
  await appStudio_1.AppStudioClient.getApp(remoteTeamsAppId, appStudioToken, ctx.logProvider);
119
134
  }
@@ -128,14 +143,14 @@ class AppStudioPluginImpl {
128
143
  return teamsfx_api_1.err(result.error);
129
144
  }
130
145
  remoteTeamsAppId = result.value.teamsAppId;
131
- (_c = ctx.logProvider) === null || _c === void 0 ? void 0 : _c.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppCreatedNotice", remoteTeamsAppId));
146
+ (_b = ctx.logProvider) === null || _b === void 0 ? void 0 : _b.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppCreatedNotice", remoteTeamsAppId));
132
147
  }
133
- (_d = ctx.envInfo.state.get(constants_1.PluginNames.APPST)) === null || _d === void 0 ? void 0 : _d.set(constants_2.Constants.TEAMS_APP_ID, remoteTeamsAppId);
148
+ (_c = ctx.envInfo.state.get(constants_1.PluginNames.APPST)) === null || _c === void 0 ? void 0 : _c.set(constants_2.Constants.TEAMS_APP_ID, remoteTeamsAppId);
134
149
  await (provisionProgress === null || provisionProgress === void 0 ? void 0 : provisionProgress.end(true));
135
150
  return teamsfx_api_1.ok(remoteTeamsAppId);
136
151
  }
137
152
  async postProvision(ctx) {
138
- var _a, _b, _c;
153
+ var _a, _b;
139
154
  const postProvisionProgress = (_a = ctx.ui) === null || _a === void 0 ? void 0 : _a.createProgressBar(localizeUtils_1.getLocalizedString("plugins.appstudio.provisionTitle"), 1);
140
155
  await (postProvisionProgress === null || postProvisionProgress === void 0 ? void 0 : postProvisionProgress.start(localizeUtils_1.getLocalizedString("plugins.appstudio.postProvisionProgress", ctx.projectSettings.appName)));
141
156
  await (postProvisionProgress === null || postProvisionProgress === void 0 ? void 0 : postProvisionProgress.next());
@@ -168,13 +183,19 @@ class AppStudioPluginImpl {
168
183
  [appDefinition] = remoteManifest.value;
169
184
  }
170
185
  const appDirectory = await common_1.getAppDirectory(ctx.root);
171
- const appStudioToken = await ((_b = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _b === void 0 ? void 0 : _b.getAccessToken());
186
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
187
+ scopes: common_1.AppStudioScopes,
188
+ }));
189
+ if (appStudioTokenRes.isErr()) {
190
+ return teamsfx_api_1.err(appStudioTokenRes.error);
191
+ }
192
+ const appStudioToken = appStudioTokenRes.value;
172
193
  const result = await this.updateApp(ctx, appDefinition, appStudioToken, false, false, appDirectory, remoteTeamsAppId, ctx.logProvider);
173
194
  if (result.isErr()) {
174
195
  await (postProvisionProgress === null || postProvisionProgress === void 0 ? void 0 : postProvisionProgress.end(false));
175
196
  return teamsfx_api_1.err(result.error);
176
197
  }
177
- (_c = ctx.logProvider) === null || _c === void 0 ? void 0 : _c.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedLog", remoteTeamsAppId));
198
+ (_b = ctx.logProvider) === null || _b === void 0 ? void 0 : _b.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedLog", remoteTeamsAppId));
178
199
  await (postProvisionProgress === null || postProvisionProgress === void 0 ? void 0 : postProvisionProgress.end(true));
179
200
  return teamsfx_api_1.ok(remoteTeamsAppId);
180
201
  }
@@ -239,7 +260,7 @@ class AppStudioPluginImpl {
239
260
  return this.updateManifest(ctx, false);
240
261
  }
241
262
  async updateManifest(ctx, isLocalDebug) {
242
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
263
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
243
264
  const teamsAppId = await this.getTeamsAppId(ctx, isLocalDebug);
244
265
  let manifest;
245
266
  let manifestString;
@@ -309,16 +330,22 @@ class AppStudioPluginImpl {
309
330
  return teamsfx_api_1.err(error);
310
331
  }
311
332
  }
312
- const appStudioToken = await ((_e = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _e === void 0 ? void 0 : _e.getAccessToken());
333
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
334
+ scopes: common_1.AppStudioScopes,
335
+ }));
336
+ if (appStudioTokenRes.isErr()) {
337
+ return teamsfx_api_1.err(appStudioTokenRes.error);
338
+ }
339
+ const appStudioToken = appStudioTokenRes.value;
313
340
  try {
314
341
  const localUpdateTime = isLocalDebug
315
342
  ? undefined
316
- : (_f = ctx.envInfo.state.get(constants_1.PluginNames.APPST)) === null || _f === void 0 ? void 0 : _f.get(constants_2.Constants.TEAMS_APP_UPDATED_AT);
343
+ : (_e = ctx.envInfo.state.get(constants_1.PluginNames.APPST)) === null || _e === void 0 ? void 0 : _e.get(constants_2.Constants.TEAMS_APP_UPDATED_AT);
317
344
  if (localUpdateTime) {
318
345
  const app = await appStudio_1.AppStudioClient.getApp(teamsAppId, appStudioToken, ctx.logProvider);
319
- const devPortalUpdateTime = (_h = (_g = new Date(app.updatedAt)) === null || _g === void 0 ? void 0 : _g.getTime()) !== null && _h !== void 0 ? _h : -1;
346
+ const devPortalUpdateTime = (_g = (_f = new Date(app.updatedAt)) === null || _f === void 0 ? void 0 : _f.getTime()) !== null && _g !== void 0 ? _g : -1;
320
347
  if (localUpdateTime < devPortalUpdateTime) {
321
- const res = await ((_j = ctx.ui) === null || _j === void 0 ? void 0 : _j.showMessage("warn", localizeUtils_1.getLocalizedString("plugins.appstudio.updateOverwriteTip"), true, "Overwrite and update"));
348
+ const res = await ((_h = ctx.ui) === null || _h === void 0 ? void 0 : _h.showMessage("warn", localizeUtils_1.getLocalizedString("plugins.appstudio.updateOverwriteTip"), true, "Overwrite and update"));
322
349
  if (!((res === null || res === void 0 ? void 0 : res.isOk()) && res.value === "Overwrite and update")) {
323
350
  const error = results_1.AppStudioResultFactory.UserError(errors_1.AppStudioError.UpdateManifestCancelError.name, errors_1.AppStudioError.UpdateManifestCancelError.message(manifest.name.short));
324
351
  return teamsfx_api_1.err(error);
@@ -330,8 +357,8 @@ class AppStudioPluginImpl {
330
357
  if (result.isErr()) {
331
358
  return teamsfx_api_1.err(result.error);
332
359
  }
333
- (_k = ctx.logProvider) === null || _k === void 0 ? void 0 : _k.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedLog", teamsAppId));
334
- (_l = ctx.ui) === null || _l === void 0 ? void 0 : _l.showMessage("info", localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedNotice"), false, constants_2.Constants.VIEW_DEVELOPER_PORTAL).then((res) => {
360
+ (_j = ctx.logProvider) === null || _j === void 0 ? void 0 : _j.info(localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedLog", teamsAppId));
361
+ (_k = ctx.ui) === null || _k === void 0 ? void 0 : _k.showMessage("info", localizeUtils_1.getLocalizedString("plugins.appstudio.teamsAppUpdatedNotice"), false, constants_2.Constants.VIEW_DEVELOPER_PORTAL).then((res) => {
335
362
  var _a;
336
363
  if ((res === null || res === void 0 ? void 0 : res.isOk()) && res.value === constants_2.Constants.VIEW_DEVELOPER_PORTAL) {
337
364
  (_a = ctx.ui) === null || _a === void 0 ? void 0 : _a.openUrl(util.format(constants_2.Constants.DEVELOPER_PORTAL_APP_PACKAGE_URL, result.value));
@@ -526,7 +553,7 @@ class AppStudioPluginImpl {
526
553
  return zipFileName;
527
554
  }
528
555
  async publish(ctx) {
529
- var _a, _b, _c;
556
+ var _a, _b;
530
557
  let manifest;
531
558
  const appDirectory = await common_1.getAppDirectory(ctx.root);
532
559
  if (common_1.isSPFxProject(ctx.projectSettings)) {
@@ -546,7 +573,13 @@ class AppStudioPluginImpl {
546
573
  throw results_1.AppStudioResultFactory.SystemError(errors_1.AppStudioError.ManifestLoadFailedError.name, errors_1.AppStudioError.ManifestLoadFailedError.message(""));
547
574
  }
548
575
  // manifest.id === externalID
549
- const appStudioToken = await ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
576
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
577
+ scopes: common_1.AppStudioScopes,
578
+ }));
579
+ if (appStudioTokenRes.isErr()) {
580
+ throw appStudioTokenRes.error;
581
+ }
582
+ const appStudioToken = appStudioTokenRes.value;
550
583
  const existApp = await appStudio_1.AppStudioClient.getAppByTeamsAppId(manifest.id, appStudioToken);
551
584
  if (existApp) {
552
585
  let executePublishUpdate = false;
@@ -554,10 +587,10 @@ class AppStudioPluginImpl {
554
587
  if (existApp.lastModifiedDateTime) {
555
588
  description =
556
589
  description +
557
- localizeUtils_1.getLocalizedString("plugins.appstudio.lastModifiedTip", (_b = existApp.lastModifiedDateTime) === null || _b === void 0 ? void 0 : _b.toLocaleString());
590
+ localizeUtils_1.getLocalizedString("plugins.appstudio.lastModifiedTip", (_a = existApp.lastModifiedDateTime) === null || _a === void 0 ? void 0 : _a.toLocaleString());
558
591
  }
559
592
  description = description + localizeUtils_1.getLocalizedString("plugins.appstudio.updatePublihsedAppConfirm");
560
- const res = await ((_c = ctx.ui) === null || _c === void 0 ? void 0 : _c.showMessage("warn", description, true, "Confirm"));
593
+ const res = await ((_b = ctx.ui) === null || _b === void 0 ? void 0 : _b.showMessage("warn", description, true, "Confirm"));
561
594
  if ((res === null || res === void 0 ? void 0 : res.isOk()) && res.value === "Confirm")
562
595
  executePublishUpdate = true;
563
596
  if (executePublishUpdate) {
@@ -600,8 +633,13 @@ class AppStudioPluginImpl {
600
633
  return teamsfx_api_1.ok(teamsAppId.value);
601
634
  }
602
635
  async checkPermission(ctx, userInfo) {
603
- var _a;
604
- const appStudioToken = await ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
636
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
637
+ scopes: common_1.AppStudioScopes,
638
+ }));
639
+ if (appStudioTokenRes.isErr()) {
640
+ throw appStudioTokenRes.error;
641
+ }
642
+ const appStudioToken = appStudioTokenRes.value;
605
643
  const teamsAppId = await this.getTeamsAppId(ctx, false);
606
644
  if (!teamsAppId) {
607
645
  throw new Error(constants_2.ErrorMessages.GetConfigError(constants_2.Constants.TEAMS_APP_ID, constants_1.PluginNames.APPST));
@@ -618,8 +656,13 @@ class AppStudioPluginImpl {
618
656
  return result;
619
657
  }
620
658
  async listCollaborator(ctx) {
621
- var _a;
622
- const appStudioToken = await ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
659
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
660
+ scopes: common_1.AppStudioScopes,
661
+ }));
662
+ if (appStudioTokenRes.isErr()) {
663
+ throw appStudioTokenRes.error;
664
+ }
665
+ const appStudioToken = appStudioTokenRes.value;
623
666
  const teamsAppId = await this.getTeamsAppId(ctx, false);
624
667
  if (!teamsAppId) {
625
668
  throw new Error(constants_2.ErrorMessages.GetConfigError(constants_2.Constants.TEAMS_APP_ID, constants_1.PluginNames.APPST));
@@ -652,8 +695,13 @@ class AppStudioPluginImpl {
652
695
  return teamsAppAdmin;
653
696
  }
654
697
  async grantPermission(ctx, userInfo) {
655
- var _a;
656
- const appStudioToken = await ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
698
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
699
+ scopes: common_1.AppStudioScopes,
700
+ }));
701
+ if (appStudioTokenRes.isErr()) {
702
+ throw appStudioTokenRes.error;
703
+ }
704
+ const appStudioToken = appStudioTokenRes.value;
657
705
  const teamsAppId = await this.getTeamsAppId(ctx, false);
658
706
  if (!teamsAppId) {
659
707
  const msgs = errors_1.AppStudioError.GrantPermissionFailedError.message(constants_2.ErrorMessages.GetConfigError(constants_2.Constants.TEAMS_APP_ID, constants_1.PluginNames.APPST));
@@ -677,7 +725,7 @@ class AppStudioPluginImpl {
677
725
  return result;
678
726
  }
679
727
  async beforePublish(ctx, appDirectory, manifestString, update) {
680
- var _a, _b, _c, _d;
728
+ var _a, _b;
681
729
  const manifest = JSON.parse(manifestString);
682
730
  const publishProgress = (_a = ctx.ui) === null || _a === void 0 ? void 0 : _a.createProgressBar(`Publishing ${manifest.name.short}`, 3);
683
731
  try {
@@ -697,7 +745,13 @@ class AppStudioPluginImpl {
697
745
  if (appDefinitionRes.isErr()) {
698
746
  throw appDefinitionRes.error;
699
747
  }
700
- let appStudioToken = await ((_b = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _b === void 0 ? void 0 : _b.getAccessToken());
748
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
749
+ scopes: common_1.AppStudioScopes,
750
+ }));
751
+ if (appStudioTokenRes.isErr()) {
752
+ throw appStudioTokenRes.error;
753
+ }
754
+ const appStudioToken = appStudioTokenRes.value;
701
755
  const colorIconContent = manifest.icons.color
702
756
  ? (await fs.readFile(`${appDirectory}/${manifest.icons.color}`)).toString("base64")
703
757
  : undefined;
@@ -707,8 +761,8 @@ class AppStudioPluginImpl {
707
761
  try {
708
762
  const app = await appStudio_1.AppStudioClient.updateApp(remoteTeamsAppId, appDefinitionRes.value, appStudioToken, undefined, colorIconContent, outlineIconContent);
709
763
  if (app.updatedAt) {
710
- (_c = ctx.envInfo.state
711
- .get(constants_1.PluginNames.APPST)) === null || _c === void 0 ? void 0 : _c.set(constants_2.Constants.TEAMS_APP_UPDATED_AT, new Date(app.updatedAt).getTime());
764
+ (_b = ctx.envInfo.state
765
+ .get(constants_1.PluginNames.APPST)) === null || _b === void 0 ? void 0 : _b.set(constants_2.Constants.TEAMS_APP_UPDATED_AT, new Date(app.updatedAt).getTime());
712
766
  }
713
767
  }
714
768
  catch (e) {
@@ -721,7 +775,6 @@ class AppStudioPluginImpl {
721
775
  await (publishProgress === null || publishProgress === void 0 ? void 0 : publishProgress.next(localizeUtils_1.getLocalizedString("plugins.appstudio.publishProgressBuild", appDirectory)));
722
776
  const appPackage = await this.buildTeamsAppPackage(ctx, false);
723
777
  const appContent = await fs.readFile(appPackage);
724
- appStudioToken = await ((_d = ctx.appStudioToken) === null || _d === void 0 ? void 0 : _d.getAccessToken());
725
778
  await (publishProgress === null || publishProgress === void 0 ? void 0 : publishProgress.next(localizeUtils_1.getLocalizedString("plugins.appstudio.publishProgressPublish", manifest.name.short)));
726
779
  if (update) {
727
780
  // Update existing app in App Catalog
@@ -960,7 +1013,6 @@ class AppStudioPluginImpl {
960
1013
  return teamsfx_api_1.ok(appDefinition);
961
1014
  }
962
1015
  async createApp(ctx, isLocalDebug) {
963
- var _a;
964
1016
  const appDirectory = await common_1.getAppDirectory(ctx.root);
965
1017
  const status = await fs.lstat(appDirectory);
966
1018
  if (!status.isDirectory()) {
@@ -989,7 +1041,13 @@ class AppStudioPluginImpl {
989
1041
  zip.addLocalFile(colorFile);
990
1042
  zip.addLocalFile(outlineFile);
991
1043
  const archivedFile = zip.toBuffer();
992
- const appStudioToken = await ((_a = ctx === null || ctx === void 0 ? void 0 : ctx.appStudioToken) === null || _a === void 0 ? void 0 : _a.getAccessToken());
1044
+ const appStudioTokenRes = await (ctx === null || ctx === void 0 ? void 0 : ctx.m365TokenProvider.getAccessToken({
1045
+ scopes: common_1.AppStudioScopes,
1046
+ }));
1047
+ if (appStudioTokenRes.isErr()) {
1048
+ return teamsfx_api_1.err(appStudioTokenRes.error);
1049
+ }
1050
+ const appStudioToken = appStudioTokenRes.value;
993
1051
  try {
994
1052
  const appDefinition = await appStudio_1.AppStudioClient.createApp(archivedFile, appStudioToken, ctx.logProvider);
995
1053
  return teamsfx_api_1.ok(appDefinition);
@@ -1169,8 +1227,7 @@ class AppStudioPluginImpl {
1169
1227
  },
1170
1228
  },
1171
1229
  };
1172
- mustache_1.default.escape = (value) => value;
1173
- manifestString = mustache_1.default.render(manifestString, view);
1230
+ manifestString = utils_3.renderTemplate(manifestString, view);
1174
1231
  const tokens = [
1175
1232
  ...new Set(mustache_1.default.parse(manifestString)
1176
1233
  .filter((x) => {
@@ -1242,8 +1299,7 @@ class AppStudioPluginImpl {
1242
1299
  },
1243
1300
  },
1244
1301
  };
1245
- mustache_1.default.escape = (value) => value;
1246
- manifestString = mustache_1.default.render(manifestString, view);
1302
+ manifestString = utils_3.renderTemplate(manifestString, view);
1247
1303
  return manifestString;
1248
1304
  }
1249
1305
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../src/plugins/resource/appstudio/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../src/plugins/resource/appstudio/plugin.ts"],"names":[],"mappings":"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"}
@@ -19,4 +19,8 @@ export declare function getLocalAppName(appName: string): string;
19
19
  export declare function convertToAppDefinition(appManifest: TeamsAppManifest): AppDefinition;
20
20
  export declare function convertToAppDefinitionBots(appManifest: TeamsAppManifest): Bot[];
21
21
  export declare function convertToAppDefinitionMessagingExtensions(appManifest: TeamsAppManifest): MessagingExtension[];
22
+ export declare function renderTemplate(manifestString: string, view: any): string;
23
+ export declare class RetryHandler {
24
+ static Retry<T>(fn: () => Promise<T>): Promise<T | undefined>;
25
+ }
22
26
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/resource/appstudio/utils/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAKjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAItE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQpF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAc5F;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,MAAM,EAAE,CAmBzE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,gBAAgB,GAAG,aAAa,CAmFnF;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,gBAAgB,GAAG,GAAG,EAAE,CA4C/E;AAED,wBAAgB,yCAAyC,CACvD,WAAW,EAAE,gBAAgB,GAC5B,kBAAkB,EAAE,CA8CtB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/resource/appstudio/utils/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,gBAAgB,EAKjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAItE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQpF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAc5F;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,MAAM,EAAE,CAmBzE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,gBAAgB,GAAG,aAAa,CAmFnF;AAED,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,gBAAgB,GAAG,GAAG,EAAE,CA4C/E;AAED,wBAAgB,yCAAyC,CACvD,WAAW,EAAE,gBAAgB,GAC5B,kBAAkB,EAAE,CA8CtB;AAED,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,CAKxE;AAED,qBAAa,YAAY;WACH,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAkB3E"}