@microsoft/teamsfx-core 1.13.0 → 1.13.1-alpha.ae549cb45.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 (280) hide show
  1. package/build/common/deps-checker/depsChecker.d.ts +15 -5
  2. package/build/common/deps-checker/depsChecker.d.ts.map +1 -1
  3. package/build/common/deps-checker/depsChecker.js.map +1 -1
  4. package/build/common/deps-checker/depsManager.d.ts +1 -15
  5. package/build/common/deps-checker/depsManager.d.ts.map +1 -1
  6. package/build/common/deps-checker/depsManager.js +4 -17
  7. package/build/common/deps-checker/depsManager.js.map +1 -1
  8. package/build/common/deps-checker/internal/dotnetChecker.d.ts +4 -5
  9. package/build/common/deps-checker/internal/dotnetChecker.d.ts.map +1 -1
  10. package/build/common/deps-checker/internal/dotnetChecker.js +22 -19
  11. package/build/common/deps-checker/internal/dotnetChecker.js.map +1 -1
  12. package/build/common/deps-checker/internal/funcToolChecker.d.ts +11 -7
  13. package/build/common/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
  14. package/build/common/deps-checker/internal/funcToolChecker.js +40 -28
  15. package/build/common/deps-checker/internal/funcToolChecker.js.map +1 -1
  16. package/build/common/deps-checker/internal/ngrokChecker.d.ts +4 -6
  17. package/build/common/deps-checker/internal/ngrokChecker.d.ts.map +1 -1
  18. package/build/common/deps-checker/internal/ngrokChecker.js +21 -13
  19. package/build/common/deps-checker/internal/ngrokChecker.js.map +1 -1
  20. package/build/common/deps-checker/internal/nodeChecker.d.ts +8 -6
  21. package/build/common/deps-checker/internal/nodeChecker.d.ts.map +1 -1
  22. package/build/common/deps-checker/internal/nodeChecker.js +44 -48
  23. package/build/common/deps-checker/internal/nodeChecker.js.map +1 -1
  24. package/build/common/templates-config.json +2 -2
  25. package/build/component/bicep.d.ts +4 -4
  26. package/build/component/bicep.d.ts.map +1 -1
  27. package/build/component/bicep.js +29 -79
  28. package/build/component/bicep.js.map +1 -1
  29. package/build/component/code/apiCode.d.ts +4 -4
  30. package/build/component/code/apiCode.d.ts.map +1 -1
  31. package/build/component/code/apiCode.js +56 -70
  32. package/build/component/code/apiCode.js.map +1 -1
  33. package/build/component/code/botCode.d.ts +4 -4
  34. package/build/component/code/botCode.d.ts.map +1 -1
  35. package/build/component/code/botCode.js +127 -136
  36. package/build/component/code/botCode.js.map +1 -1
  37. package/build/component/code/spfxTabCode.d.ts +3 -3
  38. package/build/component/code/spfxTabCode.d.ts.map +1 -1
  39. package/build/component/code/spfxTabCode.js +25 -28
  40. package/build/component/code/spfxTabCode.js.map +1 -1
  41. package/build/component/code/tabCode.d.ts +5 -5
  42. package/build/component/code/tabCode.d.ts.map +1 -1
  43. package/build/component/code/tabCode.js +139 -160
  44. package/build/component/code/tabCode.js.map +1 -1
  45. package/build/component/connection/apimConfig.d.ts +0 -2
  46. package/build/component/connection/apimConfig.d.ts.map +1 -1
  47. package/build/component/connection/apimConfig.js +2 -16
  48. package/build/component/connection/apimConfig.js.map +1 -1
  49. package/build/component/connection/azureFunctionConfig.d.ts +0 -2
  50. package/build/component/connection/azureFunctionConfig.d.ts.map +1 -1
  51. package/build/component/connection/azureFunctionConfig.js +2 -15
  52. package/build/component/connection/azureFunctionConfig.js.map +1 -1
  53. package/build/component/connection/azureResourceConfig.d.ts +2 -2
  54. package/build/component/connection/azureResourceConfig.d.ts.map +1 -1
  55. package/build/component/connection/azureResourceConfig.js +43 -60
  56. package/build/component/connection/azureResourceConfig.js.map +1 -1
  57. package/build/component/connection/azureWebAppConfig.d.ts +0 -2
  58. package/build/component/connection/azureWebAppConfig.d.ts.map +1 -1
  59. package/build/component/connection/azureWebAppConfig.js +2 -14
  60. package/build/component/connection/azureWebAppConfig.js.map +1 -1
  61. package/build/component/constants.d.ts +1 -0
  62. package/build/component/constants.d.ts.map +1 -1
  63. package/build/component/constants.js +6 -1
  64. package/build/component/constants.js.map +1 -1
  65. package/build/component/core.d.ts +22 -25
  66. package/build/component/core.d.ts.map +1 -1
  67. package/build/component/core.js +442 -449
  68. package/build/component/core.js.map +1 -1
  69. package/build/component/debug.d.ts +1 -7
  70. package/build/component/debug.d.ts.map +1 -1
  71. package/build/component/debug.js +1 -70
  72. package/build/component/debug.js.map +1 -1
  73. package/build/component/envManager.d.ts +2 -5
  74. package/build/component/envManager.d.ts.map +1 -1
  75. package/build/component/envManager.js +10 -129
  76. package/build/component/envManager.js.map +1 -1
  77. package/build/component/feature/api.d.ts +1 -7
  78. package/build/component/feature/api.d.ts.map +1 -1
  79. package/build/component/feature/api.js +112 -145
  80. package/build/component/feature/api.js.map +1 -1
  81. package/build/component/feature/apim.d.ts.map +1 -1
  82. package/build/component/feature/apim.js +64 -86
  83. package/build/component/feature/apim.js.map +1 -1
  84. package/build/component/feature/bot.d.ts +3 -12
  85. package/build/component/feature/bot.d.ts.map +1 -1
  86. package/build/component/feature/bot.js +221 -210
  87. package/build/component/feature/bot.js.map +1 -1
  88. package/build/component/feature/keyVault.d.ts.map +1 -1
  89. package/build/component/feature/keyVault.js +48 -101
  90. package/build/component/feature/keyVault.js.map +1 -1
  91. package/build/component/feature/spfx.d.ts.map +1 -1
  92. package/build/component/feature/spfx.js +52 -55
  93. package/build/component/feature/spfx.js.map +1 -1
  94. package/build/component/feature/sql.d.ts +0 -6
  95. package/build/component/feature/sql.d.ts.map +1 -1
  96. package/build/component/feature/sql.js +57 -113
  97. package/build/component/feature/sql.js.map +1 -1
  98. package/build/component/feature/sso.d.ts +5 -7
  99. package/build/component/feature/sso.d.ts.map +1 -1
  100. package/build/component/feature/sso.js +101 -175
  101. package/build/component/feature/sso.js.map +1 -1
  102. package/build/component/feature/tab.d.ts +1 -6
  103. package/build/component/feature/tab.d.ts.map +1 -1
  104. package/build/component/feature/tab.js +165 -197
  105. package/build/component/feature/tab.js.map +1 -1
  106. package/build/component/messages.d.ts +3 -0
  107. package/build/component/messages.d.ts.map +1 -1
  108. package/build/component/messages.js +3 -0
  109. package/build/component/messages.js.map +1 -1
  110. package/build/component/middleware/actionExecutionMW.d.ts +20 -0
  111. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -0
  112. package/build/component/middleware/actionExecutionMW.js +100 -0
  113. package/build/component/middleware/actionExecutionMW.js.map +1 -0
  114. package/build/component/migrate.d.ts.map +1 -1
  115. package/build/component/migrate.js +2 -26
  116. package/build/component/migrate.js.map +1 -1
  117. package/build/component/questionV3.d.ts +1 -0
  118. package/build/component/questionV3.d.ts.map +1 -1
  119. package/build/component/questionV3.js +42 -10
  120. package/build/component/questionV3.js.map +1 -1
  121. package/build/component/resource/aadApp/aadApp.d.ts +7 -7
  122. package/build/component/resource/aadApp/aadApp.d.ts.map +1 -1
  123. package/build/component/resource/aadApp/aadApp.js +56 -18
  124. package/build/component/resource/aadApp/aadApp.js.map +1 -1
  125. package/build/component/resource/aadApp/actions/configure.js +2 -2
  126. package/build/component/resource/aadApp/actions/configure.js.map +1 -1
  127. package/build/component/resource/aadApp/actions/deploy.d.ts +3 -0
  128. package/build/component/resource/aadApp/actions/deploy.d.ts.map +1 -0
  129. package/build/component/resource/aadApp/actions/deploy.js +70 -0
  130. package/build/component/resource/aadApp/actions/deploy.js.map +1 -0
  131. package/build/component/resource/aadApp/actions/generateManifest.d.ts.map +1 -1
  132. package/build/component/resource/aadApp/actions/generateManifest.js +3 -1
  133. package/build/component/resource/aadApp/actions/generateManifest.js.map +1 -1
  134. package/build/component/resource/aadApp/actions/provision.d.ts +1 -2
  135. package/build/component/resource/aadApp/actions/provision.d.ts.map +1 -1
  136. package/build/component/resource/aadApp/actions/provision.js +3 -33
  137. package/build/component/resource/aadApp/actions/provision.js.map +1 -1
  138. package/build/component/resource/aadApp/actions/setApplication.js +2 -2
  139. package/build/component/resource/aadApp/actions/setApplication.js.map +1 -1
  140. package/build/component/resource/aadApp/actions/utils.d.ts +3 -0
  141. package/build/component/resource/aadApp/actions/utils.d.ts.map +1 -0
  142. package/build/component/resource/aadApp/actions/utils.js +38 -0
  143. package/build/component/resource/aadApp/actions/utils.js.map +1 -0
  144. package/build/component/resource/apim.d.ts +4 -5
  145. package/build/component/resource/apim.d.ts.map +1 -1
  146. package/build/component/resource/apim.js +21 -63
  147. package/build/component/resource/apim.js.map +1 -1
  148. package/build/component/resource/appManifest/appManifest.d.ts +5 -5
  149. package/build/component/resource/appManifest/appManifest.d.ts.map +1 -1
  150. package/build/component/resource/appManifest/appManifest.js +82 -117
  151. package/build/component/resource/appManifest/appManifest.js.map +1 -1
  152. package/build/component/resource/azureAppService/azureAppService.d.ts +3 -3
  153. package/build/component/resource/azureAppService/azureAppService.d.ts.map +1 -1
  154. package/build/component/resource/azureAppService/azureAppService.js +24 -36
  155. package/build/component/resource/azureAppService/azureAppService.js.map +1 -1
  156. package/build/component/resource/azureAppService/azureFunction.d.ts +2 -2
  157. package/build/component/resource/azureAppService/azureFunction.d.ts.map +1 -1
  158. package/build/component/resource/azureAppService/azureFunction.js +2 -25
  159. package/build/component/resource/azureAppService/azureFunction.js.map +1 -1
  160. package/build/component/resource/azureResource.d.ts +2 -2
  161. package/build/component/resource/azureResource.d.ts.map +1 -1
  162. package/build/component/resource/azureResource.js +29 -47
  163. package/build/component/resource/azureResource.js.map +1 -1
  164. package/build/component/resource/azureSql/actions/configure.d.ts.map +1 -1
  165. package/build/component/resource/azureSql/azureSql.d.ts +4 -4
  166. package/build/component/resource/azureSql/azureSql.d.ts.map +1 -1
  167. package/build/component/resource/azureSql/azureSql.js +41 -7
  168. package/build/component/resource/azureSql/azureSql.js.map +1 -1
  169. package/build/component/resource/azureStorage.d.ts +3 -3
  170. package/build/component/resource/azureStorage.d.ts.map +1 -1
  171. package/build/component/resource/azureStorage.js +45 -56
  172. package/build/component/resource/azureStorage.js.map +1 -1
  173. package/build/component/resource/botService.d.ts +4 -4
  174. package/build/component/resource/botService.d.ts.map +1 -1
  175. package/build/component/resource/botService.js +66 -74
  176. package/build/component/resource/botService.js.map +1 -1
  177. package/build/component/resource/identity.d.ts.map +1 -1
  178. package/build/component/resource/identity.js +9 -4
  179. package/build/component/resource/identity.js.map +1 -1
  180. package/build/component/resource/spfx.d.ts +2 -2
  181. package/build/component/resource/spfx.d.ts.map +1 -1
  182. package/build/component/resource/spfx.js +23 -34
  183. package/build/component/resource/spfx.js.map +1 -1
  184. package/build/component/utils.d.ts +12 -1
  185. package/build/component/utils.d.ts.map +1 -1
  186. package/build/component/utils.js +108 -45
  187. package/build/component/utils.js.map +1 -1
  188. package/build/component/workflow.d.ts +2 -1
  189. package/build/component/workflow.d.ts.map +1 -1
  190. package/build/component/workflow.js +41 -29
  191. package/build/component/workflow.js.map +1 -1
  192. package/build/core/FxCore.d.ts.map +1 -1
  193. package/build/core/FxCore.js +9 -65
  194. package/build/core/FxCore.js.map +1 -1
  195. package/build/core/middleware/questionModel.d.ts.map +1 -1
  196. package/build/core/middleware/questionModel.js +19 -5
  197. package/build/core/middleware/questionModel.js.map +1 -1
  198. package/build/plugins/resource/frontend/dotnet/plugin.d.ts.map +1 -1
  199. package/build/plugins/resource/frontend/dotnet/plugin.js +6 -3
  200. package/build/plugins/resource/frontend/dotnet/plugin.js.map +1 -1
  201. package/build/plugins/resource/frontend/dotnet/resources/templateInfo.d.ts +2 -1
  202. package/build/plugins/resource/frontend/dotnet/resources/templateInfo.d.ts.map +1 -1
  203. package/build/plugins/resource/frontend/dotnet/resources/templateInfo.js +3 -2
  204. package/build/plugins/resource/frontend/dotnet/resources/templateInfo.js.map +1 -1
  205. package/build/plugins/solution/fx-solution/solution.d.ts.map +1 -1
  206. package/build/plugins/solution/fx-solution/solution.js +1 -1
  207. package/build/plugins/solution/fx-solution/solution.js.map +1 -1
  208. package/build/plugins/solution/fx-solution/v2/provisionLocal.d.ts.map +1 -1
  209. package/build/plugins/solution/fx-solution/v2/provisionLocal.js +1 -1
  210. package/build/plugins/solution/fx-solution/v2/provisionLocal.js.map +1 -1
  211. package/build/plugins/solution/fx-solution/v2/utils.d.ts +2 -2
  212. package/build/plugins/solution/fx-solution/v2/utils.d.ts.map +1 -1
  213. package/build/plugins/solution/fx-solution/v2/utils.js +19 -6
  214. package/build/plugins/solution/fx-solution/v2/utils.js.map +1 -1
  215. package/build/plugins/solution/fx-solution/v3/provision.d.ts.map +1 -1
  216. package/build/plugins/solution/fx-solution/v3/provision.js +41 -30
  217. package/build/plugins/solution/fx-solution/v3/provision.js.map +1 -1
  218. package/package.json +4 -4
  219. package/resource/package.nls.cs.json +20 -16
  220. package/resource/package.nls.de.json +20 -16
  221. package/resource/package.nls.es.json +21 -17
  222. package/resource/package.nls.fr.json +20 -16
  223. package/resource/package.nls.it.json +20 -16
  224. package/resource/package.nls.ja.json +21 -17
  225. package/resource/package.nls.json +3 -1
  226. package/resource/package.nls.ko.json +21 -17
  227. package/resource/package.nls.pl.json +21 -17
  228. package/resource/package.nls.pt-BR.json +21 -17
  229. package/resource/package.nls.ru.json +21 -17
  230. package/resource/package.nls.tr.json +21 -17
  231. package/resource/package.nls.zh-Hans.json +21 -17
  232. package/resource/package.nls.zh-Hant.json +21 -17
  233. package/templates/bicep/apim.config.module.bicep +2 -2
  234. package/templates/bicep/azureFunction.config.module.bicep +7 -4
  235. package/templates/bicep/azureFunction.config.orchestration.bicep +2 -2
  236. package/templates/bicep/azureFunction.provision.orchestration.bicep +5 -0
  237. package/templates/bicep/azureStorage.provision.orchestration.bicep +6 -0
  238. package/templates/bicep/azureWebApp.config.module.bicep +5 -5
  239. package/templates/bicep/azureWebApp.config.orchestration.bicep +1 -1
  240. package/templates/bicep/azureWebApp.provision.orchestration.bicep +5 -0
  241. package/templates/fallback/bot.csharp.command-and-response.zip +0 -0
  242. package/templates/fallback/bot.csharp.default.zip +0 -0
  243. package/templates/fallback/bot.csharp.notification-function-base.zip +0 -0
  244. package/templates/fallback/bot.csharp.notification-trigger-http.zip +0 -0
  245. package/templates/fallback/bot.csharp.notification-trigger-timer.zip +0 -0
  246. package/templates/fallback/bot.csharp.notification-webapi.zip +0 -0
  247. package/templates/fallback/bot.js.command-and-response.zip +0 -0
  248. package/templates/fallback/bot.js.default.zip +0 -0
  249. package/templates/fallback/bot.js.m365.zip +0 -0
  250. package/templates/fallback/bot.js.notification-function-base.zip +0 -0
  251. package/templates/fallback/bot.js.notification-restify.zip +0 -0
  252. package/templates/fallback/bot.js.notification-trigger-http.zip +0 -0
  253. package/templates/fallback/bot.js.notification-trigger-timer.zip +0 -0
  254. package/templates/fallback/bot.ts.command-and-response.zip +0 -0
  255. package/templates/fallback/bot.ts.default.zip +0 -0
  256. package/templates/fallback/bot.ts.m365.zip +0 -0
  257. package/templates/fallback/bot.ts.notification-function-base.zip +0 -0
  258. package/templates/fallback/bot.ts.notification-restify.zip +0 -0
  259. package/templates/fallback/bot.ts.notification-trigger-http.zip +0 -0
  260. package/templates/fallback/bot.ts.notification-trigger-timer.zip +0 -0
  261. package/templates/fallback/function-base.js.default.zip +0 -0
  262. package/templates/fallback/function-base.ts.default.zip +0 -0
  263. package/templates/fallback/function-triggers.js.HTTPTrigger.zip +0 -0
  264. package/templates/fallback/function-triggers.ts.HTTPTrigger.zip +0 -0
  265. package/templates/fallback/tab.csharp.default.zip +0 -0
  266. package/templates/fallback/tab.csharp.non-sso.zip +0 -0
  267. package/templates/fallback/tab.js.default.zip +0 -0
  268. package/templates/fallback/tab.js.m365.zip +0 -0
  269. package/templates/fallback/tab.js.non-sso.zip +0 -0
  270. package/templates/fallback/tab.ts.default.zip +0 -0
  271. package/templates/fallback/tab.ts.m365.zip +0 -0
  272. package/templates/fallback/tab.ts.non-sso.zip +0 -0
  273. package/build/component/fx/preDeployAction.d.ts +0 -7
  274. package/build/component/fx/preDeployAction.d.ts.map +0 -1
  275. package/build/component/fx/preDeployAction.js +0 -28
  276. package/build/component/fx/preDeployAction.js.map +0 -1
  277. package/build/component/fx/preProvisionAction.d.ts +0 -7
  278. package/build/component/fx/preProvisionAction.d.ts.map +0 -1
  279. package/build/component/fx/preProvisionAction.js +0 -71
  280. package/build/component/fx/preProvisionAction.js.map +0 -1
@@ -6,22 +6,163 @@ exports.TeamsTab = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  const teamsfx_api_1 = require("@microsoft/teamsfx-api");
8
8
  require("reflect-metadata");
9
- const typedi_1 = require("typedi");
9
+ const typedi_1 = tslib_1.__importStar(require("typedi"));
10
10
  const util_1 = require("util");
11
11
  const localizeUtils_1 = require("../../common/localizeUtils");
12
12
  const projectSettingsHelper_1 = require("../../common/projectSettingsHelper");
13
13
  const globalVars_1 = require("../../core/globalVars");
14
14
  const question_1 = require("../../core/question");
15
+ const constants_1 = require("../../plugins/resource/frontend/constants");
15
16
  const question_2 = require("../../plugins/solution/fx-solution/question");
16
- const constants_1 = require("../constants");
17
- const identity_1 = require("../resource/identity");
17
+ const constants_2 = require("../constants");
18
+ const messages_1 = require("../messages");
18
19
  const workflow_1 = require("../workflow");
20
+ const lodash_1 = require("lodash");
21
+ const projectSettingsHelperV3_1 = require("../../common/projectSettingsHelperV3");
22
+ const utils_1 = require("../utils");
23
+ const utils_2 = require("../../common/utils");
24
+ const debug_1 = require("../debug");
25
+ const constants_3 = require("../../plugins/resource/appstudio/constants");
19
26
  let TeamsTab = class TeamsTab {
20
27
  constructor() {
21
28
  this.name = "teams-tab";
22
29
  }
23
30
  add(context, inputs) {
24
- return teamsfx_api_1.ok(this.addTabAction(context, inputs));
31
+ const action = {
32
+ name: "teams-tab.add",
33
+ type: "function",
34
+ execute: async (context, inputs) => {
35
+ const projectSettings = context.projectSetting;
36
+ const effects = [];
37
+ inputs[question_1.CoreQuestionNames.ProgrammingLanguage] =
38
+ context.projectSetting.programmingLanguage ||
39
+ inputs[question_1.CoreQuestionNames.ProgrammingLanguage] ||
40
+ "javascript";
41
+ inputs.hosting || (inputs.hosting = inputs[question_1.CoreQuestionNames.ProgrammingLanguage] === "csharp"
42
+ ? constants_2.ComponentNames.AzureWebApp
43
+ : constants_2.ComponentNames.AzureStorage);
44
+ // scaffold and config tab
45
+ let tabConfig = workflow_1.getComponent(projectSettings, constants_2.ComponentNames.TeamsTab);
46
+ if (!tabConfig) {
47
+ const clonedInputs = lodash_1.cloneDeep(inputs);
48
+ clonedInputs.folder || (clonedInputs.folder = inputs[question_1.CoreQuestionNames.ProgrammingLanguage] === "csharp"
49
+ ? ""
50
+ : constants_1.FrontendPathInfo.WorkingDir);
51
+ clonedInputs.language = inputs[question_1.CoreQuestionNames.ProgrammingLanguage];
52
+ const tabCode = typedi_1.default.get(constants_2.ComponentNames.TabCode);
53
+ const res = await tabCode.generate(context, clonedInputs);
54
+ if (res.isErr())
55
+ return teamsfx_api_1.err(res.error);
56
+ effects.push("generate tab code");
57
+ tabConfig = {
58
+ name: constants_2.ComponentNames.TeamsTab,
59
+ hosting: inputs.hosting,
60
+ deploy: true,
61
+ provision: inputs[question_1.CoreQuestionNames.ProgrammingLanguage] != "csharp",
62
+ build: true,
63
+ folder: clonedInputs.folder,
64
+ };
65
+ projectSettings.components.push(tabConfig);
66
+ effects.push(messages_1.Plans.generateSourceCodeAndConfig(constants_2.ComponentNames.TeamsTab));
67
+ // 2. generate provision bicep
68
+ // 2.0 bicep.init
69
+ {
70
+ const bicepComponent = typedi_1.default.get("bicep");
71
+ const res = await bicepComponent.init(inputs.projectPath);
72
+ if (res.isErr())
73
+ return teamsfx_api_1.err(res.error);
74
+ }
75
+ const biceps = [];
76
+ // 2.1 hosting bicep
77
+ const hostingConfig = workflow_1.getComponentByScenario(projectSettings, inputs.hosting, constants_2.Scenarios.Tab);
78
+ if (!hostingConfig) {
79
+ const clonedInputs = lodash_1.cloneDeep(inputs);
80
+ lodash_1.assign(clonedInputs, {
81
+ componentId: constants_2.ComponentNames.TeamsTab,
82
+ scenario: constants_2.Scenarios.Tab,
83
+ });
84
+ const hostingComponent = typedi_1.default.get(inputs.hosting);
85
+ const res = await hostingComponent.generateBicep(context, clonedInputs);
86
+ if (res.isErr())
87
+ return teamsfx_api_1.err(res.error);
88
+ res.value.forEach((b) => biceps.push(b));
89
+ projectSettings.components.push({
90
+ name: inputs.hosting,
91
+ scenario: constants_2.Scenarios.Tab,
92
+ provision: true,
93
+ });
94
+ effects.push(messages_1.Plans.generateBicepAndConfig(inputs.hosting));
95
+ }
96
+ // 2.2 identity bicep
97
+ if (!workflow_1.getComponent(projectSettings, constants_2.ComponentNames.Identity)) {
98
+ const clonedInputs = lodash_1.cloneDeep(inputs);
99
+ lodash_1.assign(clonedInputs, {
100
+ componentId: "",
101
+ scenario: "",
102
+ });
103
+ const identityComponent = typedi_1.default.get(constants_2.ComponentNames.Identity);
104
+ const res = await identityComponent.generateBicep(context, clonedInputs);
105
+ if (res.isErr())
106
+ return teamsfx_api_1.err(res.error);
107
+ res.value.forEach((b) => biceps.push(b));
108
+ projectSettings.components.push({
109
+ name: constants_2.ComponentNames.Identity,
110
+ provision: true,
111
+ });
112
+ effects.push(messages_1.Plans.generateBicepAndConfig(constants_2.ComponentNames.Identity));
113
+ }
114
+ //persist bicep
115
+ const bicepRes = await utils_1.bicepUtils.persistBiceps(inputs.projectPath, utils_2.convertToAlphanumericOnly(context.projectSetting.appName), biceps);
116
+ if (bicepRes.isErr())
117
+ return bicepRes;
118
+ // 2.3 add sso
119
+ if (inputs.stage === teamsfx_api_1.Stage.create &&
120
+ inputs[question_2.AzureSolutionQuestionNames.Features] !== question_2.TabNonSsoItem.id) {
121
+ const res = await workflow_1.runActionByName("sso.add", context, inputs);
122
+ if (res.isErr())
123
+ return teamsfx_api_1.err(res.error);
124
+ }
125
+ // 3. generate config bicep
126
+ {
127
+ const res = await utils_1.generateConfigBiceps(context, inputs);
128
+ if (res.isErr())
129
+ return teamsfx_api_1.err(res.error);
130
+ effects.push("generate config biceps");
131
+ }
132
+ // 4. local debug settings
133
+ {
134
+ const res = await debug_1.generateLocalDebugSettings(context, inputs);
135
+ if (res.isErr())
136
+ return teamsfx_api_1.err(res.error);
137
+ effects.push("generate local debug configs");
138
+ }
139
+ }
140
+ // 5. app-manifest.addCapability
141
+ {
142
+ const capabilities = [{ name: "staticTab" }];
143
+ if (!projectSettingsHelperV3_1.hasTab(projectSettings)) {
144
+ capabilities.push({ name: "configurableTab" });
145
+ }
146
+ const clonedInputs = lodash_1.cloneDeep(inputs);
147
+ const manifestComponent = typedi_1.default.get(constants_2.ComponentNames.AppManifest);
148
+ const res = await manifestComponent.addCapability(clonedInputs, capabilities);
149
+ if (res.isErr())
150
+ return teamsfx_api_1.err(res.error);
151
+ effects.push("add tab capability in app manifest");
152
+ }
153
+ globalVars_1.globalVars.isVS = projectSettingsHelper_1.isVSProject(projectSettings);
154
+ projectSettings.programmingLanguage || (projectSettings.programmingLanguage = inputs[question_1.CoreQuestionNames.ProgrammingLanguage]);
155
+ const msg = inputs.platform === teamsfx_api_1.Platform.CLI
156
+ ? localizeUtils_1.getLocalizedString("core.addCapability.addCapabilityNoticeForCli")
157
+ : localizeUtils_1.getLocalizedString("core.addCapability.addCapabilitiesNoticeForCli");
158
+ context.userInteraction.showMessage("info", util_1.format(msg, "Tab"), false);
159
+ return teamsfx_api_1.ok(effects);
160
+ },
161
+ };
162
+ return teamsfx_api_1.ok(action);
163
+ }
164
+ provision() {
165
+ return teamsfx_api_1.ok(provisionTab);
25
166
  }
26
167
  configure() {
27
168
  return teamsfx_api_1.ok(configureTab);
@@ -29,215 +170,42 @@ let TeamsTab = class TeamsTab {
29
170
  build() {
30
171
  return teamsfx_api_1.ok(buildTab);
31
172
  }
32
- addTabAction(context, inputs) {
33
- const actions = [];
34
- this.setupConfiguration(actions, context, inputs);
35
- this.setupCode(actions, context);
36
- this.setupBicep(actions, context, inputs);
37
- this.setupCapabilities(actions, context);
38
- if (this.hasTab(context)) {
39
- actions.push(showTabAlreadyAddMessage);
40
- }
41
- return addTab(actions);
42
- }
43
- hasTab(context) {
44
- const tab = workflow_1.getComponent(context.projectSetting, this.name);
45
- return tab != undefined; // using != to match both undefined and null
46
- }
47
- setupConfiguration(actions, context, inputs) {
48
- if (this.hasTab(context)) {
49
- return actions;
50
- }
51
- if (inputs.feature !== question_2.TabNonSsoItem.id) {
52
- actions.push(addSSO);
53
- }
54
- actions.push(configTab);
55
- return actions;
56
- }
57
- setupCode(actions, context) {
58
- if (this.hasTab(context)) {
59
- return actions;
60
- }
61
- actions.push(generateCode);
62
- actions.push(initLocalDebug);
63
- return actions;
64
- }
65
- setupBicep(actions, context, inputs) {
66
- if (this.hasTab(context)) {
67
- return actions;
68
- }
69
- const configActions = [
70
- {
71
- name: "call:apim-config.generateBicep",
72
- type: "call",
73
- required: true,
74
- targetAction: "apim-config.generateBicep",
75
- condition: (context, inputs) => {
76
- return teamsfx_api_1.ok(workflow_1.getComponent(context.projectSetting, constants_1.ComponentNames.APIM) !== undefined);
77
- },
78
- },
79
- identity_1.identityAction,
80
- ];
81
- actions.push(initBicep);
82
- if (inputs.hosting) {
83
- }
84
- if (inputs.hosting) {
85
- actions.push({
86
- name: `call:${inputs.hosting}.generateBicep`,
87
- type: "call",
88
- required: true,
89
- targetAction: `${inputs.hosting}.generateBicep`,
90
- inputs: inputs,
91
- pre: (context, inputs) => {
92
- inputs.componentId = this.name;
93
- inputs.scenario = "Tab";
94
- return teamsfx_api_1.ok(undefined);
95
- },
96
- });
97
- }
98
- // TODO: connect AAD for blazor web app
99
- actions.push(...configActions);
100
- return actions;
101
- }
102
- setupCapabilities(actions, context) {
103
- const capabilities = [{ name: "staticTab" }];
104
- if (!this.hasTab(context)) {
105
- capabilities.push({ name: "configurableTab" });
106
- }
107
- actions.push(addTabCapability(capabilities));
108
- return actions;
109
- }
110
173
  };
111
174
  TeamsTab = tslib_1.__decorate([
112
175
  typedi_1.Service("teams-tab")
113
176
  ], TeamsTab);
114
177
  exports.TeamsTab = TeamsTab;
115
- const addTabCapability = (capabilities) => ({
116
- name: "call:app-manifest.addCapability",
117
- type: "call",
118
- required: true,
119
- targetAction: "app-manifest.addCapability",
120
- inputs: {
121
- capabilities: capabilities,
122
- },
123
- });
124
- const configTab = {
125
- name: "fx.configTab",
178
+ const provisionTab = {
179
+ name: "teams-tab.provision",
126
180
  type: "function",
127
- plan: (context, inputs) => {
128
- const tabConfig = workflow_1.getComponent(context.projectSetting, constants_1.ComponentNames.TeamsTab);
129
- if (tabConfig) {
130
- return teamsfx_api_1.ok([]);
131
- }
132
- return teamsfx_api_1.ok(["config Tab in projectSettings"]);
133
- },
134
181
  execute: async (context, inputs) => {
135
- var _a;
136
- inputs.hosting = resolveHosting(inputs);
137
- const projectSettings = context.projectSetting;
138
- const tabConfig = workflow_1.getComponent(projectSettings, constants_1.ComponentNames.TeamsTab);
139
- if (tabConfig) {
140
- return teamsfx_api_1.ok([]);
141
- }
142
- // add teams-tab
143
- projectSettings.components.push({
144
- name: constants_1.ComponentNames.TeamsTab,
145
- hosting: inputs.hosting,
146
- deploy: true,
147
- });
148
- // add hosting component
149
- projectSettings.components.push({
150
- name: inputs.hosting,
151
- connections: [constants_1.ComponentNames.TeamsTab],
152
- provision: true,
153
- scenario: constants_1.Scenarios.Tab,
154
- });
155
- const apimConfig = workflow_1.getComponent(projectSettings, constants_1.ComponentNames.APIM);
156
- if (apimConfig) {
157
- (_a = apimConfig.connections) === null || _a === void 0 ? void 0 : _a.push(constants_1.ComponentNames.TeamsTab);
158
- }
159
- // add default identity
160
- if (!workflow_1.getComponent(context.projectSetting, constants_1.ComponentNames.Identity)) {
161
- projectSettings.components.push({
162
- name: constants_1.ComponentNames.Identity,
163
- provision: true,
164
- });
182
+ var _a, _b;
183
+ if (((_a = context.envInfo) === null || _a === void 0 ? void 0 : _a.envName) === "local") {
184
+ (_b = context.envInfo.state[constants_2.ComponentNames.TeamsTab]) === null || _b === void 0 ? void 0 : _b.set(constants_3.FRONTEND_INDEX_PATH, constants_1.Constants.FrontendIndexPath);
165
185
  }
166
- projectSettings.programmingLanguage =
167
- projectSettings.programmingLanguage || inputs[question_1.CoreQuestionNames.ProgrammingLanguage];
168
- globalVars_1.globalVars.isVS = projectSettingsHelper_1.isVSProject(projectSettings);
169
- return teamsfx_api_1.ok(["config Tab in projectSettings"]);
186
+ return teamsfx_api_1.ok([]);
170
187
  },
171
188
  };
172
- const addSSO = {
173
- type: "call",
174
- name: "call:sso.add",
175
- targetAction: "sso.add",
176
- required: true,
177
- };
178
- const showTabAlreadyAddMessage = {
179
- name: "teams-tab.showTabAlreadyAddMessage",
189
+ const configureTab = {
190
+ name: "teams-tab.configure",
180
191
  type: "function",
181
- plan: (context, inputs) => {
182
- return teamsfx_api_1.ok([]);
183
- },
184
192
  execute: async (context, inputs) => {
185
- const msg = inputs.platform === teamsfx_api_1.Platform.CLI
186
- ? localizeUtils_1.getLocalizedString("core.addCapability.addCapabilityNoticeForCli")
187
- : localizeUtils_1.getLocalizedString("core.addCapability.addCapabilitiesNoticeForCli");
188
- context.userInteraction.showMessage("info", util_1.format(msg, "Tab"), false);
193
+ const tabCode = typedi_1.default.get(constants_2.ComponentNames.TabCode);
194
+ const res = await tabCode.configure(context, inputs);
195
+ if (res.isErr())
196
+ return teamsfx_api_1.err(res.error);
189
197
  return teamsfx_api_1.ok([]);
190
198
  },
191
199
  };
192
- const generateCode = {
193
- name: "call:tab-code.generate",
194
- type: "call",
195
- required: true,
196
- targetAction: "tab-code.generate",
197
- };
198
- const initLocalDebug = {
199
- name: "call:debug.generateLocalDebugSettings",
200
- type: "call",
201
- required: true,
202
- targetAction: "debug.generateLocalDebugSettings",
203
- };
204
- const initBicep = {
205
- type: "call",
206
- targetAction: "bicep.init",
207
- required: true,
208
- };
209
- // const generateBicep: (hosting: string, inputs: Record<string, unknown>) => Action = (
210
- // hosting,
211
- // inputs
212
- // ) => ({
213
- // name: `call:${inputs.hosting}.generateBicep`,
214
- // type: "call",
215
- // required: true,
216
- // targetAction: `${inputs.hosting}.generateBicep`,
217
- // inputs: inputs,
218
- // });
219
- const configureTab = {
220
- name: "teams-tab.configure",
221
- type: "call",
222
- targetAction: "tab-code.configure",
223
- required: true,
224
- };
225
200
  const buildTab = {
226
201
  name: "teams-tab.build",
227
- type: "call",
228
- targetAction: "tab-code.build",
229
- required: true,
202
+ type: "function",
203
+ execute: async (context, inputs) => {
204
+ const tabCode = typedi_1.default.get(constants_2.ComponentNames.TabCode);
205
+ const res = await tabCode.build(context, inputs);
206
+ if (res.isErr())
207
+ return teamsfx_api_1.err(res.error);
208
+ return teamsfx_api_1.ok([]);
209
+ },
230
210
  };
231
- const addTab = (actions) => ({
232
- type: "group",
233
- name: "teams-tab.add",
234
- mode: "sequential",
235
- actions: actions,
236
- });
237
- function resolveHosting(inputs) {
238
- return (inputs.hosting ||
239
- ((inputs === null || inputs === void 0 ? void 0 : inputs["programming-language"]) === "csharp"
240
- ? constants_1.ComponentNames.AzureWebApp
241
- : constants_1.ComponentNames.AzureStorage));
242
- }
243
211
  //# sourceMappingURL=tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/component/feature/tab.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/component/feature/tab.ts"],"names":[],"mappings":"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"}
@@ -30,5 +30,8 @@ export declare class Plans {
30
30
  static readonly createAADforBot: () => Effect;
31
31
  static readonly registerBot: () => Effect;
32
32
  static readonly updateBotEndpoint: () => Effect;
33
+ static readonly generateSourceCodeAndConfig: (feature: string) => Effect;
34
+ static readonly generateBicepAndConfig: (feature: string) => Effect;
35
+ static readonly addFeature: (feature: string) => Effect;
33
36
  }
34
37
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/component/messages.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQhD,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,SAA0B;IACrD,MAAM,CAAC,QAAQ,CAAC,WAAW,SAAuC;IAClE,MAAM,CAAC,QAAQ,CAAC,WAAW,qBAAqB;IAChD,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,YAAY,iCAAiC;IAC7D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAA+B;IAE/D,MAAM,CAAC,QAAQ,CAAC,SAAS,cAAe,MAAM,oCAAsB,MAAM,CACX;IAC/D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAAwB;CACzD;AAED,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,SAAmC;IAC9D,MAAM,CAAC,QAAQ,CAAC,WAAW,2BAAgD;IAC3E,MAAM,CAAC,QAAQ,CAAC,WAAW,uCAAuC;IAClE,MAAM,CAAC,QAAQ,CAAC,WAAW,SAA8B;IACzD,MAAM,CAAC,QAAQ,CAAC,WAAW,8BAAgD;IAC3E,MAAM,CAAC,QAAQ,CAAC,WAAW,4BAA4B;IACvD,MAAM,CAAC,QAAQ,CAAC,WAAW,mCAA+C;IAC1E,MAAM,CAAC,QAAQ,CAAC,mBAAmB,SAAmD;IACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,sBAA+C;CAC5E;AAED,qBAAa,KAAK;IAChB,MAAM,CAAC,QAAQ,CAAC,QAAQ,aAAc,MAAM,UAAU,MAAM,KAAG,MAAM,CACX;IAC1D,MAAM,CAAC,QAAQ,CAAC,YAAY,WAAY,MAAM,KAAG,MAAM,CAA+B;IACtF,MAAM,CAAC,QAAQ,CAAC,MAAM,cAAe,MAAM,UAAU,MAAM,KAAG,MAAM,CAIjE;IACH,MAAM,CAAC,QAAQ,CAAC,mBAAmB,QAAO,MAAM,CAI7C;IACH,MAAM,CAAC,QAAQ,CAAC,eAAe,QAAO,MAAM,CAIzC;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,QAAO,MAAM,CAIrC;IACH,MAAM,CAAC,QAAQ,CAAC,iBAAiB,QAAO,MAAM,CAI3C;CACJ"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/component/messages.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQhD,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,SAA0B;IACrD,MAAM,CAAC,QAAQ,CAAC,WAAW,SAAuC;IAClE,MAAM,CAAC,QAAQ,CAAC,WAAW,qBAAqB;IAChD,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,WAAW,kBAAkB;IAC7C,MAAM,CAAC,QAAQ,CAAC,YAAY,iCAAiC;IAC7D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAA+B;IAE/D,MAAM,CAAC,QAAQ,CAAC,SAAS,cAAe,MAAM,oCAAsB,MAAM,CACX;IAC/D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,SAAwB;CACzD;AAED,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,SAAmC;IAC9D,MAAM,CAAC,QAAQ,CAAC,WAAW,2BAAgD;IAC3E,MAAM,CAAC,QAAQ,CAAC,WAAW,uCAAuC;IAClE,MAAM,CAAC,QAAQ,CAAC,WAAW,SAA8B;IACzD,MAAM,CAAC,QAAQ,CAAC,WAAW,8BAAgD;IAC3E,MAAM,CAAC,QAAQ,CAAC,WAAW,4BAA4B;IACvD,MAAM,CAAC,QAAQ,CAAC,WAAW,mCAA+C;IAC1E,MAAM,CAAC,QAAQ,CAAC,mBAAmB,SAAmD;IACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,sBAA+C;CAC5E;AAED,qBAAa,KAAK;IAChB,MAAM,CAAC,QAAQ,CAAC,QAAQ,aAAc,MAAM,UAAU,MAAM,KAAG,MAAM,CACX;IAC1D,MAAM,CAAC,QAAQ,CAAC,YAAY,WAAY,MAAM,KAAG,MAAM,CAA+B;IACtF,MAAM,CAAC,QAAQ,CAAC,MAAM,cAAe,MAAM,UAAU,MAAM,KAAG,MAAM,CAIjE;IACH,MAAM,CAAC,QAAQ,CAAC,mBAAmB,QAAO,MAAM,CAI7C;IACH,MAAM,CAAC,QAAQ,CAAC,eAAe,QAAO,MAAM,CAIzC;IACH,MAAM,CAAC,QAAQ,CAAC,WAAW,QAAO,MAAM,CAIrC;IACH,MAAM,CAAC,QAAQ,CAAC,iBAAiB,QAAO,MAAM,CAI3C;IACH,MAAM,CAAC,QAAQ,CAAC,2BAA2B,YAAa,MAAM,KAAG,MAAM,CACA;IACvE,MAAM,CAAC,QAAQ,CAAC,sBAAsB,YAAa,MAAM,KAAG,MAAM,CACD;IACjE,MAAM,CAAC,QAAQ,CAAC,UAAU,YAAa,MAAM,KAAG,MAAM,CAA4C;CACnG"}
@@ -61,4 +61,7 @@ Plans.updateBotEndpoint = () => ({
61
61
  name: "graph.microsoft.com",
62
62
  remarks: "update message endpoint in AppStudio",
63
63
  });
64
+ Plans.generateSourceCodeAndConfig = (feature) => `generate source code and config for ${feature} in project settings`;
65
+ Plans.generateBicepAndConfig = (feature) => `generate bicep and config for ${feature} in project settings`;
66
+ Plans.addFeature = (feature) => `config ${feature} in project settings`;
64
67
  //# sourceMappingURL=messages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/component/messages.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,iEAAyE;AACzE,wEAIsD;AAEtD,MAAa,cAAc;;AAA3B,wCAaC;AAZiB,0BAAW,GAAG,wBAAgB,CAAC,KAAK,CAAC;AACrC,0BAAW,GAAG,gCAAoB,CAAC,cAAc,CAAC;AAClD,0BAAW,GAAG,iBAAiB,CAAC;AAChC,0BAAW,GAAG,cAAc,CAAC;AAC7B,0BAAW,GAAG,cAAc,CAAC;AAC7B,0BAAW,GAAG,cAAc,CAAC;AAC7B,2BAAY,GAAG,6BAA6B,CAAC;AAC7C,+BAAgB,GAAG,6BAAqB,CAAC,KAAK,CAAC;AAC/D,kCAAkC;AAClB,wBAAS,GAAG,CAAC,SAAiB,EAAE,QAAiB,EAAU,EAAE,CAC3E,aAAa,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC/C,+BAAgB,GAAG,sBAAc,CAAC,KAAK,CAAC;AAG1D,MAAa,gBAAgB;;AAA7B,4CAUC;AATiB,4BAAW,GAAG,wBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;AAC9C,4BAAW,GAAG,gCAAoB,CAAC,uBAAuB,CAAC;AAC3D,4BAAW,GAAG,mCAAmC,CAAC;AAClD,4BAAW,GAAG,sBAAc,CAAC,KAAK,CAAC,KAAK,CAAC;AACzC,4BAAW,GAAG,gCAAoB,CAAC,uBAAuB,CAAC;AAC3D,4BAAW,GAAG,wBAAwB,CAAC;AACvC,4BAAW,GAAG,gCAAoB,CAAC,sBAAsB,CAAC;AAC1D,oCAAmB,GAAG,6BAAqB,CAAC,KAAK,CAAC,mBAAmB,CAAC;AACtE,6BAAY,GAAG,gCAAoB,CAAC,sBAAsB,CAAC;AAG7E,MAAa,KAAK;;AAAlB,sBA6BC;AA5BiB,cAAQ,GAAG,CAAC,QAAgB,EAAE,MAAc,EAAU,EAAE,CACtE,YAAY,QAAQ,2BAA2B,MAAM,EAAE,CAAC;AAC1C,kBAAY,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,kBAAkB,MAAM,EAAE,CAAC;AACtE,YAAM,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAU,EAAE,CAAC,CAAC;IACvE,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,UAAU,SAAS,eAAe,MAAM,EAAE;CACpD,CAAC,CAAC;AACa,yBAAmB,GAAG,GAAW,EAAE,CAAC,CAAC;IACnD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,kDAAkD;CAC5D,CAAC,CAAC;AACa,qBAAe,GAAG,GAAW,EAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,qDAAqD;CAC/D,CAAC,CAAC;AACa,iBAAW,GAAG,GAAW,EAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,yBAAyB;CACnC,CAAC,CAAC;AACa,uBAAiB,GAAG,GAAW,EAAE,CAAC,CAAC;IACjD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,sCAAsC;CAChD,CAAC,CAAC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/component/messages.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAGlC,iEAAyE;AACzE,wEAIsD;AAEtD,MAAa,cAAc;;AAA3B,wCAaC;AAZiB,0BAAW,GAAG,wBAAgB,CAAC,KAAK,CAAC;AACrC,0BAAW,GAAG,gCAAoB,CAAC,cAAc,CAAC;AAClD,0BAAW,GAAG,iBAAiB,CAAC;AAChC,0BAAW,GAAG,cAAc,CAAC;AAC7B,0BAAW,GAAG,cAAc,CAAC;AAC7B,0BAAW,GAAG,cAAc,CAAC;AAC7B,2BAAY,GAAG,6BAA6B,CAAC;AAC7C,+BAAgB,GAAG,6BAAqB,CAAC,KAAK,CAAC;AAC/D,kCAAkC;AAClB,wBAAS,GAAG,CAAC,SAAiB,EAAE,QAAiB,EAAU,EAAE,CAC3E,aAAa,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC/C,+BAAgB,GAAG,sBAAc,CAAC,KAAK,CAAC;AAG1D,MAAa,gBAAgB;;AAA7B,4CAUC;AATiB,4BAAW,GAAG,wBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;AAC9C,4BAAW,GAAG,gCAAoB,CAAC,uBAAuB,CAAC;AAC3D,4BAAW,GAAG,mCAAmC,CAAC;AAClD,4BAAW,GAAG,sBAAc,CAAC,KAAK,CAAC,KAAK,CAAC;AACzC,4BAAW,GAAG,gCAAoB,CAAC,uBAAuB,CAAC;AAC3D,4BAAW,GAAG,wBAAwB,CAAC;AACvC,4BAAW,GAAG,gCAAoB,CAAC,sBAAsB,CAAC;AAC1D,oCAAmB,GAAG,6BAAqB,CAAC,KAAK,CAAC,mBAAmB,CAAC;AACtE,6BAAY,GAAG,gCAAoB,CAAC,sBAAsB,CAAC;AAG7E,MAAa,KAAK;;AAAlB,sBAkCC;AAjCiB,cAAQ,GAAG,CAAC,QAAgB,EAAE,MAAc,EAAU,EAAE,CACtE,YAAY,QAAQ,2BAA2B,MAAM,EAAE,CAAC;AAC1C,kBAAY,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,kBAAkB,MAAM,EAAE,CAAC;AACtE,YAAM,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAU,EAAE,CAAC,CAAC;IACvE,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,UAAU,SAAS,eAAe,MAAM,EAAE;CACpD,CAAC,CAAC;AACa,yBAAmB,GAAG,GAAW,EAAE,CAAC,CAAC;IACnD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,kDAAkD;CAC5D,CAAC,CAAC;AACa,qBAAe,GAAG,GAAW,EAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,qDAAqD;CAC/D,CAAC,CAAC;AACa,iBAAW,GAAG,GAAW,EAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,yBAAyB;CACnC,CAAC,CAAC;AACa,uBAAiB,GAAG,GAAW,EAAE,CAAC,CAAC;IACjD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,qBAAqB;IAC3B,OAAO,EAAE,sCAAsC;CAChD,CAAC,CAAC;AACa,iCAA2B,GAAG,CAAC,OAAe,EAAU,EAAE,CACxE,uCAAuC,OAAO,sBAAsB,CAAC;AACvD,4BAAsB,GAAG,CAAC,OAAe,EAAU,EAAE,CACnE,iCAAiC,OAAO,sBAAsB,CAAC;AACjD,gBAAU,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,UAAU,OAAO,sBAAsB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { Middleware } from "@feathersjs/hooks/lib";
2
+ import { ContextV3, Effect, ErrorHandler, FxError, InputsWithProjectPath, MaybePromise, QTreeNode, Result } from "@microsoft/teamsfx-api";
3
+ export interface ActionOption {
4
+ componentName?: string;
5
+ errorSource?: string;
6
+ errorHelpLink?: string;
7
+ errorIssueLink?: string;
8
+ errorHandler?: ErrorHandler;
9
+ enableTelemetry?: boolean;
10
+ telemetryComponentName?: string;
11
+ telemetryEventName?: string;
12
+ telemetryProps?: Record<string, string>;
13
+ enableProgressBar?: boolean;
14
+ progressTitle?: string;
15
+ progressSteps?: number;
16
+ plan?: (context: ContextV3, inputs: InputsWithProjectPath) => MaybePromise<Result<Effect[], FxError>>;
17
+ question?: (context: ContextV3, inputs: InputsWithProjectPath) => MaybePromise<Result<QTreeNode | undefined, FxError>>;
18
+ }
19
+ export declare function ActionExecutionMW(action: ActionOption): Middleware;
20
+ //# sourceMappingURL=actionExecutionMW.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionExecutionMW.d.ts","sourceRoot":"","sources":["../../../src/component/middleware/actionExecutionMW.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,UAAU,EAAgB,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAGL,SAAS,EACT,MAAM,EAEN,YAAY,EACZ,OAAO,EACP,qBAAqB,EACrB,YAAY,EAEZ,SAAS,EACT,MAAM,EAIP,MAAM,wBAAwB,CAAC;AAMhC,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,CACL,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,qBAAqB,KAC1B,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,CACT,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,qBAAqB,KAC1B,YAAY,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;CAC3D;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU,CAqGlE"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionExecutionMW = void 0;
4
+ const teamsfx_api_1 = require("@microsoft/teamsfx-api");
5
+ const lodash_1 = require("lodash");
6
+ const globalVars_1 = require("../../core/globalVars");
7
+ const constants_1 = require("../constants");
8
+ const workflow_1 = require("../workflow");
9
+ function ActionExecutionMW(action) {
10
+ return async (ctx, next) => {
11
+ var _a, _b, _c, _d;
12
+ const componentName = ((_a = ctx.self) === null || _a === void 0 ? void 0 : _a.constructor.name) || (action === null || action === void 0 ? void 0 : action.componentName);
13
+ const methodName = ctx.method;
14
+ const actionName = `${componentName}.${methodName}`;
15
+ globalVars_1.TOOLS.logProvider.info(`execute [${actionName}] start!`);
16
+ const eventName = action.telemetryEventName || methodName;
17
+ const telemetryProps = {
18
+ [constants_1.TelemetryConstants.properties.component]: componentName,
19
+ [constants_1.TelemetryConstants.properties.appId]: globalVars_1.globalVars.teamsAppId,
20
+ [constants_1.TelemetryConstants.properties.tenantId]: globalVars_1.globalVars.m365TenantId,
21
+ };
22
+ let progressBar;
23
+ try {
24
+ // send start telemetry
25
+ if (action.enableTelemetry) {
26
+ if (action.telemetryProps)
27
+ lodash_1.assign(telemetryProps, action.telemetryProps);
28
+ const startEvent = eventName + "-start";
29
+ (_b = globalVars_1.TOOLS.telemetryReporter) === null || _b === void 0 ? void 0 : _b.sendTelemetryEvent(startEvent, telemetryProps);
30
+ }
31
+ // validate inputs
32
+ if (action.question) {
33
+ const context = ctx.arguments[0];
34
+ const inputs = ctx.arguments[1];
35
+ const getQuestionRes = await action.question(context, inputs);
36
+ if (getQuestionRes.isErr())
37
+ throw getQuestionRes.error;
38
+ const node = getQuestionRes.value;
39
+ if (node) {
40
+ const validationRes = await teamsfx_api_1.traverse(node, inputs, context.userInteraction, context.telemetryReporter, workflow_1.validateQuestion);
41
+ if (validationRes.isErr())
42
+ throw validationRes.error;
43
+ }
44
+ }
45
+ // progress bar
46
+ if (action.enableProgressBar) {
47
+ progressBar = globalVars_1.TOOLS.ui.createProgressBar(action.progressTitle || methodName, action.progressSteps || 1);
48
+ progressBar.start();
49
+ }
50
+ if (action.enableTelemetry || action.enableProgressBar) {
51
+ const actionContext = {
52
+ progressBar: progressBar,
53
+ telemetryProps: telemetryProps,
54
+ };
55
+ ctx.arguments.push(actionContext);
56
+ }
57
+ await next();
58
+ if (ctx.result.isErr())
59
+ throw ctx.result.error;
60
+ // send end telemetry
61
+ if (action.enableTelemetry) {
62
+ (_c = globalVars_1.TOOLS.telemetryReporter) === null || _c === void 0 ? void 0 : _c.sendTelemetryEvent(eventName, Object.assign(Object.assign({}, telemetryProps), { [constants_1.TelemetryConstants.properties.success]: constants_1.TelemetryConstants.values.yes }));
63
+ }
64
+ progressBar === null || progressBar === void 0 ? void 0 : progressBar.end(true);
65
+ globalVars_1.TOOLS.logProvider.info(`execute [${actionName}] success!`);
66
+ return teamsfx_api_1.ok(undefined);
67
+ }
68
+ catch (e) {
69
+ progressBar === null || progressBar === void 0 ? void 0 : progressBar.end(false);
70
+ let fxError;
71
+ if (action.errorHandler) {
72
+ fxError = action.errorHandler(e, telemetryProps);
73
+ }
74
+ else {
75
+ fxError = teamsfx_api_1.assembleError(e);
76
+ if (fxError.source === "unknown") {
77
+ fxError.source = action.errorSource || fxError.source;
78
+ if (fxError instanceof teamsfx_api_1.UserError) {
79
+ fxError.helpLink = fxError.helpLink || action.errorHelpLink;
80
+ }
81
+ if (fxError instanceof teamsfx_api_1.SystemError) {
82
+ fxError.issueLink = fxError.issueLink || action.errorIssueLink;
83
+ }
84
+ }
85
+ }
86
+ // send error telemetry
87
+ if (action.enableTelemetry) {
88
+ const errorCode = fxError.source + "." + fxError.name;
89
+ const errorType = fxError instanceof teamsfx_api_1.SystemError
90
+ ? constants_1.TelemetryConstants.values.systemError
91
+ : constants_1.TelemetryConstants.values.userError;
92
+ (_d = globalVars_1.TOOLS.telemetryReporter) === null || _d === void 0 ? void 0 : _d.sendTelemetryErrorEvent(eventName, Object.assign(Object.assign({}, telemetryProps), { [constants_1.TelemetryConstants.properties.success]: constants_1.TelemetryConstants.values.no, [constants_1.TelemetryConstants.properties.errorCode]: errorCode, [constants_1.TelemetryConstants.properties.errorType]: errorType, [constants_1.TelemetryConstants.properties.errorMessage]: fxError.message }));
93
+ }
94
+ globalVars_1.TOOLS.logProvider.info(`execute [${actionName}] failed!`);
95
+ return teamsfx_api_1.err(fxError);
96
+ }
97
+ };
98
+ }
99
+ exports.ActionExecutionMW = ActionExecutionMW;
100
+ //# sourceMappingURL=actionExecutionMW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionExecutionMW.js","sourceRoot":"","sources":["../../../src/component/middleware/actionExecutionMW.ts"],"names":[],"mappings":";;;AACA,wDAgBgC;AAChC,mCAAgC;AAChC,sDAA0D;AAC1D,4CAAkD;AAClD,0CAA+C;AAyB/C,SAAgB,iBAAiB,CAAC,MAAoB;IACpD,OAAO,KAAK,EAAE,GAAgB,EAAE,IAAkB,EAAE,EAAE;;QACpD,MAAM,aAAa,GAAG,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,WAAW,CAAC,IAAI,MAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAA,CAAC;QAC1E,MAAM,UAAU,GAAG,GAAG,CAAC,MAAO,CAAC;QAC/B,MAAM,UAAU,GAAG,GAAG,aAAa,IAAI,UAAU,EAAE,CAAC;QACpD,kBAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,UAAU,UAAU,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,IAAI,UAAU,CAAC;QAC1D,MAAM,cAAc,GAAG;YACrB,CAAC,8BAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,aAAa;YACxD,CAAC,8BAAkB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,uBAAU,CAAC,UAAU;YAC5D,CAAC,8BAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,uBAAU,CAAC,YAAY;SAClE,CAAC;QACF,IAAI,WAAW,CAAC;QAChB,IAAI;YACF,uBAAuB;YACvB,IAAI,MAAM,CAAC,eAAe,EAAE;gBAC1B,IAAI,MAAM,CAAC,cAAc;oBAAE,eAAM,CAAC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;gBACzE,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;gBACxC,MAAA,kBAAK,CAAC,iBAAiB,0CAAE,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;aACzE;YACD,kBAAkB;YAClB,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACnB,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAc,CAAC;gBAC9C,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAA0B,CAAC;gBACzD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC9D,IAAI,cAAc,CAAC,KAAK,EAAE;oBAAE,MAAM,cAAc,CAAC,KAAK,CAAC;gBACvD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC;gBAClC,IAAI,IAAI,EAAE;oBACR,MAAM,aAAa,GAAG,MAAM,sBAAQ,CAClC,IAAI,EACJ,MAAM,EACN,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,iBAAiB,EACzB,2BAAgB,CACjB,CAAC;oBACF,IAAI,aAAa,CAAC,KAAK,EAAE;wBAAE,MAAM,aAAa,CAAC,KAAK,CAAC;iBACtD;aACF;YACD,eAAe;YACf,IAAI,MAAM,CAAC,iBAAiB,EAAE;gBAC5B,WAAW,GAAG,kBAAK,CAAC,EAAE,CAAC,iBAAiB,CACtC,MAAM,CAAC,aAAa,IAAI,UAAU,EAClC,MAAM,CAAC,aAAa,IAAI,CAAC,CAC1B,CAAC;gBACF,WAAW,CAAC,KAAK,EAAE,CAAC;aACrB;YACD,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,iBAAiB,EAAE;gBACtD,MAAM,aAAa,GAAkB;oBACnC,WAAW,EAAE,WAAW;oBACxB,cAAc,EAAE,cAAc;iBAC/B,CAAC;gBACF,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC;YACD,MAAM,IAAI,EAAE,CAAC;YACb,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE;gBAAE,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/C,qBAAqB;YACrB,IAAI,MAAM,CAAC,eAAe,EAAE;gBAC1B,MAAA,kBAAK,CAAC,iBAAiB,0CAAE,kBAAkB,CAAC,SAAS,kCAChD,cAAc,KACjB,CAAC,8BAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,8BAAkB,CAAC,MAAM,CAAC,GAAG,IACtE,CAAC;aACJ;YACD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACvB,kBAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,UAAU,YAAY,CAAC,CAAC;YAC3D,OAAO,gBAAE,CAAC,SAAS,CAAC,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,OAAO,CAAC;YACZ,IAAI,MAAM,CAAC,YAAY,EAAE;gBACvB,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;aAClD;iBAAM;gBACL,OAAO,GAAG,2BAAa,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;oBAChC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;oBACtD,IAAI,OAAO,YAAY,uBAAS,EAAE;wBAChC,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC;qBAC7D;oBACD,IAAI,OAAO,YAAY,yBAAW,EAAE;wBAClC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC;qBAChE;iBACF;aACF;YACD,uBAAuB;YACvB,IAAI,MAAM,CAAC,eAAe,EAAE;gBAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;gBACtD,MAAM,SAAS,GACb,OAAO,YAAY,yBAAW;oBAC5B,CAAC,CAAC,8BAAkB,CAAC,MAAM,CAAC,WAAW;oBACvC,CAAC,CAAC,8BAAkB,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC1C,MAAA,kBAAK,CAAC,iBAAiB,0CAAE,uBAAuB,CAAC,SAAS,kCACrD,cAAc,KACjB,CAAC,8BAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,8BAAkB,CAAC,MAAM,CAAC,EAAE,EACrE,CAAC,8BAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,SAAS,EACpD,CAAC,8BAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,SAAS,EACpD,CAAC,8BAAkB,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,OAAO,IAC7D,CAAC;aACJ;YACD,kBAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,UAAU,WAAW,CAAC,CAAC;YAC1D,OAAO,iBAAG,CAAC,OAAO,CAAC,CAAC;SACrB;IACH,CAAC,CAAC;AACJ,CAAC;AArGD,8CAqGC"}