@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
@@ -0,0 +1,62 @@
1
+ // Auto generated content, please customize files under provision folder
2
+
3
+ @secure()
4
+ param provisionParameters object
5
+ param provisionOutputs object
6
+ @secure()
7
+ param currentAppSettings object
8
+
9
+ var functionAppName = split({{azure-function.outputs.resourceId}}, '/')[8]
10
+ {{#if (contains "aad" connections)}}
11
+ var m365ClientId = provisionParameters['m365ClientId']
12
+ {{#if (contains "key-vault" connections) }}
13
+ var m365ClientSecret = {{key-vault.outputs.m365ClientSecretReference}}
14
+ {{else}}
15
+ var m365ClientSecret = provisionParameters['m365ClientSecret']
16
+ {{/if}}
17
+ var m365TenantId = provisionParameters['m365TenantId']
18
+ var m365OauthAuthorityHost = provisionParameters['m365OauthAuthorityHost']
19
+ {{#if (contains "bot-service" connections) }}
20
+ var botId = provisionParameters['botAadAppClientId']
21
+ {{#if (contains "teams-tab" connections)}}
22
+ var m365ApplicationIdUri = 'api://${ {{tabDomainVarName}} }/botid-${botId}'
23
+ {{else}}
24
+ var m365ApplicationIdUri = 'api://botid-${botId}'
25
+ {{/if}}
26
+ {{else}}
27
+ var m365ApplicationIdUri = 'api://${ {{tabDomainVarName}} }'
28
+ {{/if}}
29
+ {{/if}}
30
+ {{#if (contains "teams-bot" connections)}}
31
+ var botAadAppClientId = provisionParameters['botAadAppClientId']
32
+ {{#if (contains "key-vault" connections) }}
33
+ var botAadAppClientSecret = {{key-vault.outputs.botClientSecretReference}}
34
+ {{else}}
35
+ var botAadAppClientSecret = provisionParameters['botAadAppClientSecret']
36
+ {{/if}}
37
+ {{/if}}
38
+
39
+ resource functionAppSettings 'Microsoft.Web/sites/config@2021-02-01' = {
40
+ name: '${functionAppName}/appsettings'
41
+ properties: union({
42
+ {{#if (contains "aad" connections)}}
43
+ INITIATE_LOGIN_ENDPOINT: uri({{azure-web-app.outputs.endpoint}}, 'auth-start.html') // The page is used to let users consent required OAuth permissions during bot SSO process
44
+ M365_AUTHORITY_HOST: m365OauthAuthorityHost // AAD authority host
45
+ M365_CLIENT_ID: m365ClientId // Client id of AAD application
46
+ M365_CLIENT_SECRET: m365ClientSecret // Client secret of AAD application
47
+ M365_TENANT_ID: m365TenantId // Tenant id of AAD application
48
+ M365_APPLICATION_ID_URI: m365ApplicationIdUri // Application ID URI of AAD application
49
+ {{/if}}
50
+ {{#if (contains "teams-bot" connections)}}
51
+ BOT_ID: botAadAppClientId // ID of your bot
52
+ BOT_PASSWORD: botAadAppClientSecret // Secret of your bot
53
+ {{/if}}
54
+ {{#if (contains "azure-sql" connections)}}
55
+ SQL_DATABASE_NAME: {{azure-sql.outputs.sqlDatabaseName}} // SQL database name
56
+ SQL_ENDPOINT: {{azure-sql.outputs.sqlEndpoint}} // SQL server endpoint
57
+ {{/if}}
58
+ {{#if (contains "identity" connections)}}
59
+ IDENTITY_ID: {{identity.outputs.identityClientId}} // User assigned identity id, the identity is used to access other Azure resources
60
+ {{/if}}
61
+ }, currentAppSettings)
62
+ }
@@ -0,0 +1,12 @@
1
+ // Get existing app settings for merge
2
+ var currentAppSettings = list('${provisionOutputs.azureFunctionOutput.value.resourceId}/config/appsettings', '2021-02-01').properties
3
+
4
+ // Merge TeamsFx configurations to Azure Function App
5
+ module teamsFxAzureFunctionConfig './teamsFx/azureFunctionConfig.bicep' = {
6
+ name: 'teamsFxAzureFunctionConfig'
7
+ params: {
8
+ provisionParameters: provisionParameters
9
+ provisionOutputs: provisionOutputs
10
+ currentAppSettings: currentAppSettings
11
+ }
12
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "botAadAppClientId": "{{state.bot-service.botId}}",
3
+ "botAadAppClientSecret": "{{state.bot-service.botPassword}}"
4
+ }
@@ -0,0 +1,97 @@
1
+ @secure()
2
+ param provisionParameters object
3
+
4
+ var resourceBaseName = provisionParameters.resourceBaseName
5
+ var serverfarmsName = contains(provisionParameters, 'functionServerfarmsName') ? provisionParameters['botServerfarmsName'] : '${resourceBaseName}bot' // Try to read name for App Service Plan from parameters
6
+ var functionAppSKU = contains(provisionParameters, 'functionAppSKU') ? provisionParameters['botfunctionAppSKU'] : 'B1' // Try to read SKU for Azure Web App from parameters
7
+ var functionAppName = contains(provisionParameters, 'SitesName') ? provisionParameters['botSitesName'] : '${resourceBaseName}bot' // Try to read name for Azure Web App from parameters
8
+ var storageName = contains(provisionParameters, 'StorageName') ? provisionParameters['botStorageName'] : '${resourceBaseName}bot' // Try to read name for Azure Storage from parameters
9
+ var storageSku = contains(provisionParameters, 'StorageSku') ? provisionParameters['botStorageSku'] : 'Standard_LRS' // Try to read SKU for Azure Storage from parameters
10
+
11
+ // Compute resources for your Web App
12
+ resource serverfarm 'Microsoft.Web/serverfarms@2021-02-01' = {
13
+ kind: 'functionapp'
14
+ location: resourceGroup().location
15
+ name: serverfarmsName
16
+ sku: {
17
+ name: functionAppSKU
18
+ }
19
+ }
20
+
21
+ // Azure Function that host your app
22
+ resource functionApp 'Microsoft.Web/sites@2021-02-01' = {
23
+ kind: 'functionapp'
24
+ location: resourceGroup().location
25
+ name: functionAppName
26
+ properties: {
27
+ serverFarmId: serverfarm.id
28
+ httpsOnly: true
29
+ siteConfig: {
30
+ alwaysOn: true
31
+ appSettings: [
32
+ {
33
+ name: 'AzureWebJobsDashboard'
34
+ value: 'DefaultEndpointsProtocol=https;AccountName=${storage.name};AccountKey=${listKeys(storage.id, storage.apiVersion).keys[0].value};EndpointSuffix=${environment().suffixes.storage}' // Azure Function internal setting
35
+ }
36
+ {
37
+ name: 'AzureWebJobsStorage'
38
+ value: 'DefaultEndpointsProtocol=https;AccountName=${storage.name};AccountKey=${listKeys(storage.id, storage.apiVersion).keys[0].value};EndpointSuffix=${environment().suffixes.storage}' // Azure Function internal setting
39
+ }
40
+ {
41
+ name: 'FUNCTIONS_EXTENSION_VERSION'
42
+ value: '~4' // Use Azure Function runtime v4
43
+ }
44
+ {{#if (contains "node" configs)}}
45
+ {
46
+ name: 'FUNCTIONS_WORKER_RUNTIME'
47
+ value: 'node' // Set runtime to NodeJS
48
+ }
49
+ {
50
+ name: 'WEBSITE_NODE_DEFAULT_VERSION'
51
+ value: '~16' // Set NodeJS version to 16.x
52
+ }
53
+ {{/if}}
54
+ {{#if (contains "dotnet" configs)}}
55
+ {
56
+ name: 'FUNCTIONS_WORKER_RUNTIME'
57
+ value: 'dotnet' // Set runtime to .NET
58
+ }
59
+ {{/if}}
60
+ {
61
+ name: 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING'
62
+ value: 'DefaultEndpointsProtocol=https;AccountName=${storage.name};AccountKey=${listKeys(storage.id, storage.apiVersion).keys[0].value};EndpointSuffix=${environment().suffixes.storage}' // Azure Function internal setting
63
+ }
64
+ {
65
+ name: 'WEBSITE_RUN_FROM_PACKAGE'
66
+ value: '1' // Run Azure Function from a package file
67
+ }
68
+ {
69
+ name: 'RUNNING_ON_AZURE'
70
+ value: '1'
71
+ }
72
+ {
73
+ name: 'SCM_ZIPDEPLOY_DONOT_PRESERVE_FILETIME'
74
+ value: '1' // Zipdeploy files will always be updated. Detail: https://aka.ms/teamsfx-zipdeploy-donot-preserve-filetime
75
+ }
76
+ ]
77
+ ftpsState: 'FtpsOnly'
78
+ }
79
+ }
80
+ }
81
+
82
+ // Azure Storage is required when creating Azure Function instance
83
+ resource storage 'Microsoft.Storage/storageAccounts@2021-06-01' = {
84
+ name: storageName
85
+ kind: 'StorageV2'
86
+ location: resourceGroup().location
87
+ sku: {
88
+ name: storageSku // You can follow https://aka.ms/teamsfx-bicep-add-param-tutorial to add functionStorageSku property to provisionParameters to override the default value "Standard_LRS".
89
+ }
90
+ }
91
+
92
+ output sku string = functionAppSKU
93
+ output appName string = functionAppName
94
+ output domain string = functionApp.properties.defaultHostName
95
+ output appServicePlanName string = serverfarmsName
96
+ output resourceId string = functionApp.id
97
+ output endpoint string = 'https://${functionApp.properties.defaultHostName}'
@@ -0,0 +1,17 @@
1
+ // Resources Azure Function App
2
+ module azureFunctionProvision './provision/azureFunction.bicep' = {
3
+ name: 'azureFunctionProvision'
4
+ params: {
5
+ provisionParameters: provisionParameters
6
+ }
7
+ }
8
+
9
+ output azureFunctionOutput object = {
10
+ teamsFxPluginId: 'azure-function'
11
+ sku: azureFunctionProvision.outputs.sku
12
+ appName: azureFunctionProvision.outputs.appName
13
+ domain: azureFunctionProvision.outputs.domain
14
+ appServicePlanName: azureFunctionProvision.outputs.appServicePlanName
15
+ resourceId: azureFunctionProvision.outputs.resourceId
16
+ endpoint: azureFunctionProvision.outputs.endpoint
17
+ }
@@ -1,5 +1,5 @@
1
1
  // output for database with name suffix [{{suffix}}]
2
2
  output azureSqlOutput_{{suffix}} object = {
3
- teamsFxPluginId: 'fx-resource-azure-sql'
3
+ teamsFxPluginId: 'azure-sql'
4
4
  databaseName_{{suffix}}: azureSqlProvision.outputs.databaseName_{{suffix}}
5
5
  }
@@ -0,0 +1,25 @@
1
+ @secure()
2
+ param provisionParameters object
3
+ var resourceBaseName = provisionParameters.resourceBaseName
4
+ var storageName = contains(provisionParameters, 'frontendHostingStorageName') ? provisionParameters['frontendHostingStorageName'] : '${resourceBaseName}tab' // Try to read name for frontend hosting Storage Account from parameters
5
+ var storageSku = contains(provisionParameters, 'frontendHostingStorageSku') ? provisionParameters['frontendHostingStorageSku'] : 'Standard_LRS' // Try to read SKU for frontend hosting Storage Account from parameters
6
+
7
+ // Azure Storage that hosts your static web site
8
+ resource storage 'Microsoft.Storage/storageAccounts@2021-06-01' = {
9
+ kind: 'StorageV2'
10
+ location: resourceGroup().location
11
+ name: storageName
12
+ properties: {
13
+ supportsHttpsTrafficOnly: true
14
+ }
15
+ sku: {
16
+ name: storageSku // You can follow https://aka.ms/teamsfx-bicep-add-param-tutorial to add frontendHostingStorageSku property to provisionParameters to override the default value "Standard_LRS".
17
+ }
18
+ }
19
+
20
+ var siteDomain = replace(replace(storage.properties.primaryEndpoints.web, 'https://', ''), '/', '')
21
+
22
+ output resourceId string = storage.id
23
+ output endpoint string = 'https://${siteDomain}'
24
+ output domain string = siteDomain
25
+ output indexPath string = '/index.html#'
@@ -0,0 +1,15 @@
1
+ // Resources for frontend hosting
2
+ module azureStorageProvision './provision/azureStorage.bicep' = {
3
+ name: 'azureStorageProvision'
4
+ params: {
5
+ provisionParameters: provisionParameters
6
+ }
7
+ }
8
+
9
+ output azureStorageOutput object = {
10
+ teamsFxPluginId: 'azure-storage'
11
+ domain: azureStorageProvision.outputs.domain
12
+ endpoint: azureStorageProvision.outputs.endpoint
13
+ indexPath: azureStorageProvision.outputs.indexPath
14
+ resourceId: azureStorageProvision.outputs.resourceId
15
+ }
@@ -5,7 +5,7 @@ var resourceBaseName = provisionParameters.resourceBaseName
5
5
  var serverfarmsName = contains(provisionParameters, 'webAppServerfarmsName') ? provisionParameters['webAppServerfarmsName'] : '${resourceBaseName}webApp' // Try to read name for App Service Plan from parameters
6
6
  var webAppSKU = contains(provisionParameters, 'webAppSKU') ? provisionParameters['webAppSKU'] : 'F1' // Try to read SKU for Azure Web App from parameters
7
7
  var webAppName = contains(provisionParameters, 'webAppSitesName') ? provisionParameters['webAppSitesName'] : '${resourceBaseName}webApp' // Try to read name for Azure Web App from parameters
8
-
8
+
9
9
  // Compute resources for your Web App
10
10
  resource serverfarm 'Microsoft.Web/serverfarms@2021-02-01' = {
11
11
  kind: 'app'
@@ -25,14 +25,21 @@ resource webApp 'Microsoft.Web/sites@2021-02-01' = {
25
25
  serverFarmId: serverfarm.id
26
26
  siteConfig: {
27
27
  appSettings: [
28
- {
29
- name: 'SCM_DO_BUILD_DURING_DEPLOYMENT'
30
- value: 'true' // Execute build steps on your site during deployment
31
- }
28
+ {{#if (contains "node" configs)}}
32
29
  {
33
30
  name: 'WEBSITE_NODE_DEFAULT_VERSION'
34
31
  value: '~14' // Set NodeJS version to 14.x for your site
35
32
  }
33
+ {
34
+ name: 'SCM_SCRIPT_GENERATOR_ARGS'
35
+ value: '--node' // Register as node server
36
+ }
37
+ {{else}}
38
+ {
39
+ name: 'SCM_DO_BUILD_DURING_DEPLOYMENT'
40
+ value: 'true' // Execute build steps on your site during deployment
41
+ }
42
+ {{/if}}
36
43
  {
37
44
  name: 'RUNNING_ON_AZURE'
38
45
  value: '1'
@@ -0,0 +1,15 @@
1
+ @secure()
2
+ param provisionParameters object
3
+ var resourceBaseName = provisionParameters.resourceBaseName
4
+ var identityName = contains(provisionParameters, 'userAssignedIdentityName') ? provisionParameters['userAssignedIdentityName'] : '${resourceBaseName}' // Try to read name for user assigned identity from parameters
5
+
6
+ // user assigned identity will be used to access other Azure resources
7
+ resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
8
+ name: identityName
9
+ location: resourceGroup().location
10
+ }
11
+
12
+ output identityName string = identityName
13
+ output identityClientId string = managedIdentity.properties.clientId
14
+ output identityResourceId string = managedIdentity.id
15
+ output identityPrincipalId string = managedIdentity.properties.principalId
@@ -0,0 +1,14 @@
1
+ // Resources for identity
2
+ module userAssignedIdentityProvision './provision/identity.bicep' = {
3
+ name: 'userAssignedIdentityProvision'
4
+ params: {
5
+ provisionParameters: provisionParameters
6
+ }
7
+ }
8
+
9
+ output identityOutput object = {
10
+ teamsFxPluginId: 'identity'
11
+ identityName: userAssignedIdentityProvision.outputs.identityName
12
+ identityResourceId: userAssignedIdentityProvision.outputs.identityResourceId
13
+ identityClientId: userAssignedIdentityProvision.outputs.identityClientId
14
+ }
@@ -9,7 +9,7 @@ module provision './provision.bicep' = {
9
9
  }
10
10
  output provisionOutput object = provision
11
11
  module config './config.bicep' = {
12
- name: 'config'
12
+ name: 'configureResources'
13
13
  params: {
14
14
  provisionParameters: provisionParameters
15
15
  provisionOutputs: provision
Binary file
Binary file
Binary file
Binary file
@@ -53,10 +53,22 @@ resource functionApp 'Microsoft.Web/sites@2021-02-01' = {
53
53
  name: 'FUNCTIONS_EXTENSION_VERSION'
54
54
  value: '~4' // Use Azure Functions runtime v4
55
55
  }
56
+ {{#if (contains "node" configs)}}
56
57
  {
57
58
  name: 'FUNCTIONS_WORKER_RUNTIME'
58
59
  value: 'node' // Set runtime to NodeJS
59
60
  }
61
+ {
62
+ name: 'WEBSITE_NODE_DEFAULT_VERSION'
63
+ value: '~16' // Set NodeJS version to 16.x
64
+ }
65
+ {{/if}}
66
+ {{#if (contains "dotnet" configs)}}
67
+ {
68
+ name: 'FUNCTIONS_WORKER_RUNTIME'
69
+ value: 'dotnet' // Set runtime to .NET
70
+ }
71
+ {{/if}}
60
72
  {
61
73
  name: 'WEBSITE_CONTENTAZUREFILECONNECTIONSTRING'
62
74
  value: 'DefaultEndpointsProtocol=https;AccountName=${storage.name};AccountKey=${listKeys(storage.id, storage.apiVersion).keys[0].value};EndpointSuffix=${environment().suffixes.storage}' // Azure Functions internal setting
@@ -65,12 +77,6 @@ resource functionApp 'Microsoft.Web/sites@2021-02-01' = {
65
77
  name: 'WEBSITE_RUN_FROM_PACKAGE'
66
78
  value: '1' // Run Azure Functions from a package file
67
79
  }
68
- {{#if (contains "node" configs)}}
69
- {
70
- name: 'WEBSITE_NODE_DEFAULT_VERSION'
71
- value: '~16' // Set NodeJS version to 16.x
72
- }
73
- {{/if}}
74
80
  {{#if (contains "running-on-azure" configs)}}
75
81
  {
76
82
  name: 'RUNNING_ON_AZURE'
@@ -1 +0,0 @@
1
- {"version":3,"file":"azureSql.d.ts","sourceRoot":"","sources":["../../../src/component/resource/azureSql.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,OAAO,EAEP,MAAM,EACN,MAAM,EAEN,aAAa,EACb,SAAS,EACT,YAAY,EACZ,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,kBAAkB,CAAC;AAI1B,qBACa,gBAAiB,YAAW,aAAa;IACpD,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,IAAI,eAAe;IAC5B,OAAO;;;;;;;;;;;;;MAaL;IACF,eAAe,WAAiD;IAChE,aAAa,CACX,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,qBAAqB,GAC5B,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC;IAmDpD,SAAS,CACP,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,qBAAqB,GAC5B,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC;IAkBpD,SAAS,CACP,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,qBAAqB,GAC5B,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC;CAcrD"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT license.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.AzureSqlResource = void 0;
6
- const tslib_1 = require("tslib");
7
- const teamsfx_api_1 = require("@microsoft/teamsfx-api");
8
- const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
9
- const path = tslib_1.__importStar(require("path"));
10
- require("reflect-metadata");
11
- const typedi_1 = require("typedi");
12
- const tools_1 = require("../../common/tools");
13
- const folder_1 = require("../../folder");
14
- let AzureSqlResource = class AzureSqlResource {
15
- constructor() {
16
- this.type = "cloud";
17
- this.name = "azure-sql";
18
- this.outputs = {
19
- sqlResourceId: {
20
- key: "resourceId",
21
- bicepVariable: "provisionOutputs.azureSqlOutput.value.resourceId",
22
- },
23
- sqlEndpoint: {
24
- key: "endpoint",
25
- bicepVariable: "provisionOutputs.azureSqlOutput.value.sqlEndpoint",
26
- },
27
- sqlDatabaseName: {
28
- key: "databaseName",
29
- bicepVariable: "provisionOutputs.azureSqlOutput.value.sqlDatabaseName",
30
- },
31
- };
32
- this.finalOutputKeys = ["sqlResourceId", "endpoint", "databaseName"];
33
- }
34
- generateBicep(context, inputs) {
35
- const action = {
36
- name: "azure-sql.generateBicep",
37
- type: "function",
38
- plan: async (context, inputs) => {
39
- const bicep = {
40
- type: "bicep",
41
- Provision: {
42
- Modules: { azureSql: "1" },
43
- Orchestration: "1",
44
- },
45
- };
46
- if (inputs.provisionType === "database") {
47
- bicep.Parameters = {};
48
- }
49
- return teamsfx_api_1.ok([bicep]);
50
- },
51
- execute: async (context, inputs) => {
52
- const prefix = inputs.provisionType === "database"
53
- ? "azureSql.provisionDatabase"
54
- : "azureSql.provisionServer";
55
- const mPath = path.join(folder_1.getTemplatesFolder(), "bicep", `${prefix}.module.bicep`);
56
- const oPath = path.join(folder_1.getTemplatesFolder(), "bicep", `${prefix}.orchestration.bicep`);
57
- let module = await fs_extra_1.default.readFile(mPath, "utf-8");
58
- let orch = await fs_extra_1.default.readFile(oPath, "utf-8");
59
- const suffix = tools_1.getUuid().substring(0, 6);
60
- const compileCtx = {
61
- suffix: suffix,
62
- };
63
- if (inputs.provisionType === "database") {
64
- module = await tools_1.generateBicepFromFile(mPath, compileCtx);
65
- orch = await tools_1.generateBicepFromFile(oPath, compileCtx);
66
- }
67
- const bicep = {
68
- type: "bicep",
69
- Provision: {
70
- Modules: { azureSql: module },
71
- Orchestration: orch,
72
- },
73
- };
74
- if (inputs.provisionType === "server") {
75
- bicep.Parameters = await fs_extra_1.default.readJson(path.join(folder_1.getTemplatesFolder(), "bicep", "azureSql.parameters.json"));
76
- }
77
- return teamsfx_api_1.ok([bicep]);
78
- },
79
- };
80
- return teamsfx_api_1.ok(action);
81
- }
82
- provision(context, inputs) {
83
- //TODO
84
- const action = {
85
- name: "azure-sql.provision",
86
- type: "function",
87
- question: (context, inputs) => {
88
- return teamsfx_api_1.ok(undefined);
89
- },
90
- plan: (context, inputs) => {
91
- return teamsfx_api_1.ok(["collect user inputs for sql account"]);
92
- },
93
- execute: async (context, inputs) => {
94
- context.envInfo.state["azure-sql"].password = "MockSqlPassword";
95
- return teamsfx_api_1.ok([{ type: "service", name: "azure", remarks: "configure azure-sql" }]);
96
- },
97
- };
98
- return teamsfx_api_1.ok(undefined);
99
- }
100
- configure(context, inputs) {
101
- const action = {
102
- name: "azure-sql.configure",
103
- type: "function",
104
- plan: (context, inputs) => {
105
- return teamsfx_api_1.ok([{ type: "service", name: "azure", remarks: "configure azure-sql" }]);
106
- },
107
- execute: async (context, inputs) => {
108
- context.envInfo.state["azure-sql"].password = "MockSqlPassword";
109
- return teamsfx_api_1.ok([{ type: "service", name: "azure", remarks: "configure azure-sql" }]);
110
- },
111
- };
112
- return teamsfx_api_1.ok(action);
113
- }
114
- };
115
- AzureSqlResource = tslib_1.__decorate([
116
- typedi_1.Service("azure-sql")
117
- ], AzureSqlResource);
118
- exports.AzureSqlResource = AzureSqlResource;
119
- //# sourceMappingURL=azureSql.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"azureSql.js","sourceRoot":"","sources":["../../../src/component/resource/azureSql.ts"],"names":[],"mappings":"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"}