@microsoft/teamsfx-core 2.0.4-alpha.e83c26af7.0 → 2.0.4-alpha.ea55e6d34.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 (603) hide show
  1. package/build/common/constants.d.ts +1 -0
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +1 -0
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/deps-checker/checkerFactory.d.ts +1 -2
  6. package/build/common/deps-checker/checkerFactory.d.ts.map +1 -1
  7. package/build/common/deps-checker/checkerFactory.js +2 -2
  8. package/build/common/deps-checker/checkerFactory.js.map +1 -1
  9. package/build/common/deps-checker/depsLogger.d.ts +14 -14
  10. package/build/common/deps-checker/depsLogger.d.ts.map +1 -1
  11. package/build/common/deps-checker/depsLogger.js +7 -21
  12. package/build/common/deps-checker/depsLogger.js.map +1 -1
  13. package/build/common/deps-checker/internal/dotnetChecker.d.ts.map +1 -1
  14. package/build/common/deps-checker/internal/dotnetChecker.js +42 -37
  15. package/build/common/deps-checker/internal/dotnetChecker.js.map +1 -1
  16. package/build/common/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
  17. package/build/common/deps-checker/internal/funcToolChecker.js +2 -2
  18. package/build/common/deps-checker/internal/funcToolChecker.js.map +1 -1
  19. package/build/common/deps-checker/internal/nodeChecker.d.ts.map +1 -1
  20. package/build/common/deps-checker/internal/nodeChecker.js +8 -8
  21. package/build/common/deps-checker/internal/nodeChecker.js.map +1 -1
  22. package/build/common/deps-checker/internal/vxTestAppChecker.js +1 -1
  23. package/build/common/deps-checker/internal/vxTestAppChecker.js.map +1 -1
  24. package/build/common/deps-checker/util/cpUtils.d.ts +1 -1
  25. package/build/common/deps-checker/util/cpUtils.d.ts.map +1 -1
  26. package/build/common/deps-checker/util/cpUtils.js +4 -4
  27. package/build/common/deps-checker/util/cpUtils.js.map +1 -1
  28. package/build/common/deps-checker/util/progressIndicator.js +2 -2
  29. package/build/common/deps-checker/util/progressIndicator.js.map +1 -1
  30. package/build/common/featureFlags.d.ts +1 -0
  31. package/build/common/featureFlags.d.ts.map +1 -1
  32. package/build/common/featureFlags.js +5 -1
  33. package/build/common/featureFlags.js.map +1 -1
  34. package/build/common/local/localCertificateManager.d.ts.map +1 -1
  35. package/build/common/local/localCertificateManager.js +4 -1
  36. package/build/common/local/localCertificateManager.js.map +1 -1
  37. package/build/common/local/packageJsonHelper.d.ts.map +1 -1
  38. package/build/common/local/packageJsonHelper.js +1 -0
  39. package/build/common/local/packageJsonHelper.js.map +1 -1
  40. package/build/common/local/portChecker.js.map +1 -1
  41. package/build/common/m365/launchHelper.d.ts +2 -2
  42. package/build/common/m365/launchHelper.d.ts.map +1 -1
  43. package/build/common/m365/launchHelper.js +24 -6
  44. package/build/common/m365/launchHelper.js.map +1 -1
  45. package/build/common/m365/packageService.d.ts.map +1 -1
  46. package/build/common/m365/packageService.js +66 -19
  47. package/build/common/m365/packageService.js.map +1 -1
  48. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  49. package/build/common/projectSettingsHelper.js +1 -0
  50. package/build/common/projectSettingsHelper.js.map +1 -1
  51. package/build/common/samples.d.ts +13 -5
  52. package/build/common/samples.d.ts.map +1 -1
  53. package/build/common/samples.js +58 -38
  54. package/build/common/samples.js.map +1 -1
  55. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +5 -0
  56. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -0
  57. package/build/common/spec-parser/adaptiveCardGenerator.js +120 -0
  58. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -0
  59. package/build/common/spec-parser/constants.d.ts +21 -7
  60. package/build/common/spec-parser/constants.d.ts.map +1 -1
  61. package/build/common/spec-parser/constants.js +45 -7
  62. package/build/common/spec-parser/constants.js.map +1 -1
  63. package/build/common/spec-parser/interfaces.d.ts +83 -13
  64. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  65. package/build/common/spec-parser/interfaces.js +23 -13
  66. package/build/common/spec-parser/interfaces.js.map +1 -1
  67. package/build/common/spec-parser/manifestUpdater.d.ts +6 -0
  68. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -0
  69. package/build/common/spec-parser/manifestUpdater.js +133 -0
  70. package/build/common/spec-parser/manifestUpdater.js.map +1 -0
  71. package/build/common/spec-parser/specFilter.d.ts +3 -0
  72. package/build/common/spec-parser/specFilter.d.ts.map +1 -0
  73. package/build/common/spec-parser/specFilter.js +40 -0
  74. package/build/common/spec-parser/specFilter.js.map +1 -0
  75. package/build/common/spec-parser/specParser.d.ts +14 -5
  76. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  77. package/build/common/spec-parser/specParser.js +181 -94
  78. package/build/common/spec-parser/specParser.js.map +1 -1
  79. package/build/common/spec-parser/utils.d.ts +29 -0
  80. package/build/common/spec-parser/utils.d.ts.map +1 -0
  81. package/build/common/spec-parser/utils.js +309 -0
  82. package/build/common/spec-parser/utils.js.map +1 -0
  83. package/build/common/telemetry.d.ts +7 -5
  84. package/build/common/telemetry.d.ts.map +1 -1
  85. package/build/common/telemetry.js +41 -15
  86. package/build/common/telemetry.js.map +1 -1
  87. package/build/common/tools.d.ts.map +1 -1
  88. package/build/common/tools.js +7 -2
  89. package/build/common/tools.js.map +1 -1
  90. package/build/common/utils.d.ts +1 -0
  91. package/build/common/utils.d.ts.map +1 -1
  92. package/build/common/utils.js +5 -1
  93. package/build/common/utils.js.map +1 -1
  94. package/build/component/configManager/interface.d.ts +5 -1
  95. package/build/component/configManager/interface.d.ts.map +1 -1
  96. package/build/component/configManager/interface.js.map +1 -1
  97. package/build/component/configManager/lifecycle.d.ts +1 -3
  98. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  99. package/build/component/configManager/lifecycle.js +25 -52
  100. package/build/component/configManager/lifecycle.js.map +1 -1
  101. package/build/component/configManager/parser.d.ts.map +1 -1
  102. package/build/component/configManager/parser.js +12 -6
  103. package/build/component/configManager/parser.js.map +1 -1
  104. package/build/component/configManager/validator.d.ts +0 -3
  105. package/build/component/configManager/validator.d.ts.map +1 -1
  106. package/build/component/configManager/validator.js +2 -12
  107. package/build/component/configManager/validator.js.map +1 -1
  108. package/build/component/constants.d.ts +11 -0
  109. package/build/component/constants.d.ts.map +1 -1
  110. package/build/component/constants.js +11 -0
  111. package/build/component/constants.js.map +1 -1
  112. package/build/component/coordinator/index.d.ts +12 -8
  113. package/build/component/coordinator/index.d.ts.map +1 -1
  114. package/build/component/coordinator/index.js +80 -67
  115. package/build/component/coordinator/index.js.map +1 -1
  116. package/build/component/coordinator/summary.d.ts.map +1 -1
  117. package/build/component/coordinator/summary.js +2 -1
  118. package/build/component/coordinator/summary.js.map +1 -1
  119. package/build/component/developerPortalScaffoldUtils.d.ts +1 -1
  120. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  121. package/build/component/developerPortalScaffoldUtils.js +7 -7
  122. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  123. package/build/component/driver/aad/create.d.ts +1 -2
  124. package/build/component/driver/aad/create.d.ts.map +1 -1
  125. package/build/component/driver/aad/create.js +4 -11
  126. package/build/component/driver/aad/create.js.map +1 -1
  127. package/build/component/driver/aad/error/aadManifestError.d.ts +3 -0
  128. package/build/component/driver/aad/error/aadManifestError.d.ts.map +1 -1
  129. package/build/component/driver/aad/error/aadManifestError.js +13 -1
  130. package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
  131. package/build/component/driver/aad/update.d.ts +1 -2
  132. package/build/component/driver/aad/update.d.ts.map +1 -1
  133. package/build/component/driver/aad/update.js +4 -11
  134. package/build/component/driver/aad/update.js.map +1 -1
  135. package/build/component/driver/aad/utility/aadAppClient.d.ts +1 -1
  136. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  137. package/build/component/driver/aad/utility/aadAppClient.js +58 -13
  138. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  139. package/build/component/driver/aad/utility/constants.d.ts +3 -0
  140. package/build/component/driver/aad/utility/constants.d.ts.map +1 -1
  141. package/build/component/driver/aad/utility/constants.js +4 -1
  142. package/build/component/driver/aad/utility/constants.js.map +1 -1
  143. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  144. package/build/component/driver/add/addWebPart.js +10 -1
  145. package/build/component/driver/add/addWebPart.js.map +1 -1
  146. package/build/component/driver/arm/deploy.d.ts +1 -3
  147. package/build/component/driver/arm/deploy.d.ts.map +1 -1
  148. package/build/component/driver/arm/deploy.js +1 -14
  149. package/build/component/driver/arm/deploy.js.map +1 -1
  150. package/build/component/driver/arm/deployImpl.d.ts +2 -1
  151. package/build/component/driver/arm/deployImpl.d.ts.map +1 -1
  152. package/build/component/driver/arm/deployImpl.js +15 -0
  153. package/build/component/driver/arm/deployImpl.js.map +1 -1
  154. package/build/component/driver/arm/util/bicepChecker.js +7 -6
  155. package/build/component/driver/arm/util/bicepChecker.js.map +1 -1
  156. package/build/component/driver/arm/util/handleError.js.map +1 -1
  157. package/build/component/driver/arm/validator.d.ts.map +1 -1
  158. package/build/component/driver/arm/validator.js +3 -3
  159. package/build/component/driver/arm/validator.js.map +1 -1
  160. package/build/component/driver/botAadApp/create.d.ts +2 -1
  161. package/build/component/driver/botAadApp/create.d.ts.map +1 -1
  162. package/build/component/driver/botAadApp/create.js +7 -10
  163. package/build/component/driver/botAadApp/create.js.map +1 -1
  164. package/build/component/driver/botFramework/createOrUpdateBot.d.ts +1 -0
  165. package/build/component/driver/botFramework/createOrUpdateBot.d.ts.map +1 -1
  166. package/build/component/driver/botFramework/createOrUpdateBot.js +8 -12
  167. package/build/component/driver/botFramework/createOrUpdateBot.js.map +1 -1
  168. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts +0 -2
  169. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts.map +1 -1
  170. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js +0 -10
  171. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js.map +1 -1
  172. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts +0 -2
  173. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts.map +1 -1
  174. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js +0 -10
  175. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js.map +1 -1
  176. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts +0 -2
  177. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts.map +1 -1
  178. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js +17 -19
  179. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js.map +1 -1
  180. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.d.ts.map +1 -1
  181. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js +11 -4
  182. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js.map +1 -1
  183. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  184. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +29 -16
  185. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  186. package/build/component/driver/deploy/azure/impl/azureDeployImpl.d.ts.map +1 -1
  187. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +18 -15
  188. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
  189. package/build/component/driver/deploy/azure/impl/baseDeployImpl.d.ts.map +1 -1
  190. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js +4 -4
  191. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js.map +1 -1
  192. package/build/component/driver/deploy/spfx/deployDriver.d.ts +1 -0
  193. package/build/component/driver/deploy/spfx/deployDriver.d.ts.map +1 -1
  194. package/build/component/driver/deploy/spfx/deployDriver.js +27 -5
  195. package/build/component/driver/deploy/spfx/deployDriver.js.map +1 -1
  196. package/build/component/driver/devTool/installDriver.d.ts +1 -0
  197. package/build/component/driver/devTool/installDriver.d.ts.map +1 -1
  198. package/build/component/driver/devTool/installDriver.js +33 -11
  199. package/build/component/driver/devTool/installDriver.js.map +1 -1
  200. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts +1 -0
  201. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts.map +1 -1
  202. package/build/component/driver/file/createOrUpdateEnvironmentFile.js +12 -18
  203. package/build/component/driver/file/createOrUpdateEnvironmentFile.js.map +1 -1
  204. package/build/component/driver/file/createOrUpdateJsonFile.d.ts +1 -0
  205. package/build/component/driver/file/createOrUpdateJsonFile.d.ts.map +1 -1
  206. package/build/component/driver/file/createOrUpdateJsonFile.js +5 -11
  207. package/build/component/driver/file/createOrUpdateJsonFile.js.map +1 -1
  208. package/build/component/driver/interface/stepDriver.d.ts +2 -7
  209. package/build/component/driver/interface/stepDriver.d.ts.map +1 -1
  210. package/build/component/driver/m365/acquire.d.ts +1 -0
  211. package/build/component/driver/m365/acquire.d.ts.map +1 -1
  212. package/build/component/driver/m365/acquire.js +6 -12
  213. package/build/component/driver/m365/acquire.js.map +1 -1
  214. package/build/component/driver/script/baseBuildDriver.d.ts.map +1 -1
  215. package/build/component/driver/script/baseBuildDriver.js +1 -0
  216. package/build/component/driver/script/baseBuildDriver.js.map +1 -1
  217. package/build/component/driver/script/baseBuildStepDriver.d.ts +0 -2
  218. package/build/component/driver/script/baseBuildStepDriver.d.ts.map +1 -1
  219. package/build/component/driver/script/baseBuildStepDriver.js +0 -4
  220. package/build/component/driver/script/baseBuildStepDriver.js.map +1 -1
  221. package/build/component/driver/script/dotnetBuildDriver.d.ts +0 -2
  222. package/build/component/driver/script/dotnetBuildDriver.d.ts.map +1 -1
  223. package/build/component/driver/script/dotnetBuildDriver.js +0 -9
  224. package/build/component/driver/script/dotnetBuildDriver.js.map +1 -1
  225. package/build/component/driver/script/npmBuildDriver.d.ts +0 -2
  226. package/build/component/driver/script/npmBuildDriver.d.ts.map +1 -1
  227. package/build/component/driver/script/npmBuildDriver.js +0 -9
  228. package/build/component/driver/script/npmBuildDriver.js.map +1 -1
  229. package/build/component/driver/script/npxBuildDriver.d.ts +0 -2
  230. package/build/component/driver/script/npxBuildDriver.d.ts.map +1 -1
  231. package/build/component/driver/script/npxBuildDriver.js +0 -9
  232. package/build/component/driver/script/npxBuildDriver.js.map +1 -1
  233. package/build/component/driver/script/scriptDriver.d.ts +10 -1
  234. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  235. package/build/component/driver/script/scriptDriver.js +31 -30
  236. package/build/component/driver/script/scriptDriver.js.map +1 -1
  237. package/build/component/driver/teamsApp/appStudio.d.ts.map +1 -1
  238. package/build/component/driver/teamsApp/appStudio.js +11 -11
  239. package/build/component/driver/teamsApp/appStudio.js.map +1 -1
  240. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +5 -5
  241. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  242. package/build/component/driver/teamsApp/clients/appStudioClient.js +31 -11
  243. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  244. package/build/component/driver/teamsApp/clients/authSvcClient.d.ts.map +1 -1
  245. package/build/component/driver/teamsApp/clients/authSvcClient.js +2 -0
  246. package/build/component/driver/teamsApp/clients/authSvcClient.js.map +1 -1
  247. package/build/component/driver/teamsApp/configure.d.ts +1 -1
  248. package/build/component/driver/teamsApp/configure.d.ts.map +1 -1
  249. package/build/component/driver/teamsApp/configure.js +5 -23
  250. package/build/component/driver/teamsApp/configure.js.map +1 -1
  251. package/build/component/driver/teamsApp/constants.d.ts +0 -1
  252. package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
  253. package/build/component/driver/teamsApp/constants.js +1 -2
  254. package/build/component/driver/teamsApp/constants.js.map +1 -1
  255. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts +1 -2
  256. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts.map +1 -1
  257. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js +4 -11
  258. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js.map +1 -1
  259. package/build/component/driver/teamsApp/create.d.ts +1 -1
  260. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  261. package/build/component/driver/teamsApp/create.js +6 -11
  262. package/build/component/driver/teamsApp/create.js.map +1 -1
  263. package/build/component/driver/teamsApp/createAppPackage.d.ts +4 -3
  264. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  265. package/build/component/driver/teamsApp/createAppPackage.js +68 -32
  266. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  267. package/build/component/driver/teamsApp/errors.d.ts.map +1 -1
  268. package/build/component/driver/teamsApp/errors.js +2 -0
  269. package/build/component/driver/teamsApp/errors.js.map +1 -1
  270. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts +2 -0
  271. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts.map +1 -1
  272. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts +1 -0
  273. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts.map +1 -1
  274. package/build/component/driver/teamsApp/publishAppPackage.d.ts +1 -1
  275. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  276. package/build/component/driver/teamsApp/publishAppPackage.js +4 -12
  277. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  278. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +8 -2
  279. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  280. package/build/component/driver/teamsApp/utils/ManifestUtils.js +24 -4
  281. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  282. package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
  283. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  284. package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
  285. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  286. package/build/component/driver/teamsApp/utils/utils.d.ts +2 -3
  287. package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
  288. package/build/component/driver/teamsApp/utils/utils.js +21 -19
  289. package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
  290. package/build/component/driver/teamsApp/validate.d.ts +1 -1
  291. package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
  292. package/build/component/driver/teamsApp/validate.js +17 -12
  293. package/build/component/driver/teamsApp/validate.js.map +1 -1
  294. package/build/component/driver/teamsApp/validateAppPackage.d.ts +1 -1
  295. package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
  296. package/build/component/driver/teamsApp/validateAppPackage.js +22 -18
  297. package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
  298. package/build/component/error/componentError.d.ts +2 -1
  299. package/build/component/error/componentError.d.ts.map +1 -1
  300. package/build/component/error/componentError.js +8 -4
  301. package/build/component/error/componentError.js.map +1 -1
  302. package/build/component/feature/collaboration.d.ts.map +1 -1
  303. package/build/component/feature/collaboration.js +55 -26
  304. package/build/component/feature/collaboration.js.map +1 -1
  305. package/build/component/feature/createAuthFiles.js.map +1 -1
  306. package/build/component/generator/copilotPlugin/generator.d.ts +7 -2
  307. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  308. package/build/component/generator/copilotPlugin/generator.js +133 -25
  309. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  310. package/build/component/generator/copilotPlugin/helper.d.ts +12 -12
  311. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  312. package/build/component/generator/copilotPlugin/helper.js +214 -28
  313. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  314. package/build/component/generator/error.d.ts +7 -1
  315. package/build/component/generator/error.d.ts.map +1 -1
  316. package/build/component/generator/error.js +15 -3
  317. package/build/component/generator/error.js.map +1 -1
  318. package/build/component/generator/generator.d.ts.map +1 -1
  319. package/build/component/generator/generator.js +31 -22
  320. package/build/component/generator/generator.js.map +1 -1
  321. package/build/component/generator/generatorAction.d.ts +2 -1
  322. package/build/component/generator/generatorAction.d.ts.map +1 -1
  323. package/build/component/generator/generatorAction.js +12 -5
  324. package/build/component/generator/generatorAction.js.map +1 -1
  325. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  326. package/build/component/generator/officeAddin/generator.js +9 -1
  327. package/build/component/generator/officeAddin/generator.js.map +1 -1
  328. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  329. package/build/component/generator/officeAddin/helperMethods.js +9 -5
  330. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  331. package/build/component/generator/spfx/depsChecker/generatorChecker.d.ts +1 -1
  332. package/build/component/generator/spfx/depsChecker/generatorChecker.d.ts.map +1 -1
  333. package/build/component/generator/spfx/depsChecker/generatorChecker.js +12 -12
  334. package/build/component/generator/spfx/depsChecker/generatorChecker.js.map +1 -1
  335. package/build/component/generator/spfx/depsChecker/yoChecker.d.ts +1 -1
  336. package/build/component/generator/spfx/depsChecker/yoChecker.d.ts.map +1 -1
  337. package/build/component/generator/spfx/depsChecker/yoChecker.js +10 -10
  338. package/build/component/generator/spfx/depsChecker/yoChecker.js.map +1 -1
  339. package/build/component/generator/spfx/spfxGenerator.d.ts.map +1 -1
  340. package/build/component/generator/spfx/spfxGenerator.js +16 -14
  341. package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
  342. package/build/component/generator/spfx/utils/constants.d.ts +1 -0
  343. package/build/component/generator/spfx/utils/constants.d.ts.map +1 -1
  344. package/build/component/generator/spfx/utils/constants.js +1 -0
  345. package/build/component/generator/spfx/utils/constants.js.map +1 -1
  346. package/build/component/generator/spfx/utils/utils.js +3 -3
  347. package/build/component/generator/spfx/utils/utils.js.map +1 -1
  348. package/build/component/generator/utils.d.ts +12 -4
  349. package/build/component/generator/utils.d.ts.map +1 -1
  350. package/build/component/generator/utils.js +17 -16
  351. package/build/component/generator/utils.js.map +1 -1
  352. package/build/component/messages.d.ts +2 -3
  353. package/build/component/messages.d.ts.map +1 -1
  354. package/build/component/messages.js +3 -4
  355. package/build/component/messages.js.map +1 -1
  356. package/build/component/middleware/actionExecutionMW.d.ts +2 -2
  357. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
  358. package/build/component/middleware/envMW.js +1 -1
  359. package/build/component/middleware/envMW.js.map +1 -1
  360. package/build/component/middleware/questionMW.d.ts +2 -2
  361. package/build/component/middleware/questionMW.d.ts.map +1 -1
  362. package/build/component/middleware/questionMW.js +7 -11
  363. package/build/component/middleware/questionMW.js.map +1 -1
  364. package/build/component/migrate.js.map +1 -1
  365. package/build/component/provisionUtils.d.ts +3 -3
  366. package/build/component/provisionUtils.d.ts.map +1 -1
  367. package/build/component/provisionUtils.js +3 -3
  368. package/build/component/provisionUtils.js.map +1 -1
  369. package/build/component/resource/botService/appStudio/appStudioClient.d.ts.map +1 -1
  370. package/build/component/resource/botService/appStudio/appStudioClient.js +24 -2
  371. package/build/component/resource/botService/appStudio/appStudioClient.js.map +1 -1
  372. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts +2 -2
  373. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts.map +1 -1
  374. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js +6 -1
  375. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js.map +1 -1
  376. package/build/component/telemetry.d.ts.map +1 -1
  377. package/build/component/telemetry.js +3 -6
  378. package/build/component/telemetry.js.map +1 -1
  379. package/build/component/utils/ResourceGroupHelper.d.ts +2 -2
  380. package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
  381. package/build/component/utils/ResourceGroupHelper.js +1 -4
  382. package/build/component/utils/ResourceGroupHelper.js.map +1 -1
  383. package/build/component/utils/azureResourceOperation.js +2 -2
  384. package/build/component/utils/azureResourceOperation.js.map +1 -1
  385. package/build/component/utils/charsetUtils.js +3 -3
  386. package/build/component/utils/charsetUtils.js.map +1 -1
  387. package/build/component/utils/common.d.ts +1 -1
  388. package/build/component/utils/common.d.ts.map +1 -1
  389. package/build/component/utils/common.js +4 -5
  390. package/build/component/utils/common.js.map +1 -1
  391. package/build/component/utils/depsChecker/cpUtils.d.ts.map +1 -1
  392. package/build/component/utils/depsChecker/cpUtils.js +8 -4
  393. package/build/component/utils/depsChecker/cpUtils.js.map +1 -1
  394. package/build/component/utils/envUtil.js +2 -2
  395. package/build/component/utils/envUtil.js.map +1 -1
  396. package/build/component/utils/metadataUtil.d.ts +3 -0
  397. package/build/component/utils/metadataUtil.d.ts.map +1 -1
  398. package/build/component/utils/metadataUtil.js +16 -4
  399. package/build/component/utils/metadataUtil.js.map +1 -1
  400. package/build/component/utils/teamsFxTelemetryReporter.d.ts.map +1 -1
  401. package/build/component/utils/teamsFxTelemetryReporter.js +3 -6
  402. package/build/component/utils/teamsFxTelemetryReporter.js.map +1 -1
  403. package/build/component/utils.js.map +1 -1
  404. package/build/core/FxCore.d.ts +44 -33
  405. package/build/core/FxCore.d.ts.map +1 -1
  406. package/build/core/FxCore.js +821 -64
  407. package/build/core/FxCore.js.map +1 -1
  408. package/build/core/collaborator.d.ts +1 -1
  409. package/build/core/collaborator.d.ts.map +1 -1
  410. package/build/core/collaborator.js +16 -10
  411. package/build/core/collaborator.js.map +1 -1
  412. package/build/core/error.d.ts +6 -0
  413. package/build/core/error.d.ts.map +1 -1
  414. package/build/core/error.js +23 -1
  415. package/build/core/error.js.map +1 -1
  416. package/build/core/globalVars.d.ts +16 -0
  417. package/build/core/globalVars.d.ts.map +1 -1
  418. package/build/core/globalVars.js +34 -1
  419. package/build/core/globalVars.js.map +1 -1
  420. package/build/core/middleware/concurrentLocker.d.ts.map +1 -1
  421. package/build/core/middleware/concurrentLocker.js +7 -3
  422. package/build/core/middleware/concurrentLocker.js.map +1 -1
  423. package/build/core/middleware/errorHandler.d.ts +2 -0
  424. package/build/core/middleware/errorHandler.d.ts.map +1 -1
  425. package/build/core/middleware/errorHandler.js +16 -25
  426. package/build/core/middleware/errorHandler.js.map +1 -1
  427. package/build/core/middleware/projectMigratorV3.d.ts +7 -1
  428. package/build/core/middleware/projectMigratorV3.d.ts.map +1 -1
  429. package/build/core/middleware/projectMigratorV3.js +35 -34
  430. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  431. package/build/core/middleware/projectVersionChecker.js +8 -8
  432. package/build/core/middleware/projectVersionChecker.js.map +1 -1
  433. package/build/core/middleware/utils/appYmlGenerator.d.ts.map +1 -1
  434. package/build/core/middleware/utils/appYmlGenerator.js +2 -1
  435. package/build/core/middleware/utils/appYmlGenerator.js.map +1 -1
  436. package/build/core/middleware/utils/debug/appLocalYmlGenerator.d.ts.map +1 -1
  437. package/build/core/middleware/utils/debug/appLocalYmlGenerator.js +3 -2
  438. package/build/core/middleware/utils/debug/appLocalYmlGenerator.js.map +1 -1
  439. package/build/core/middleware/utils/debug/debugV3MigrationUtils.js.map +1 -1
  440. package/build/core/middleware/utils/debug/taskMigrator.d.ts.map +1 -1
  441. package/build/core/middleware/utils/debug/taskMigrator.js +33 -15
  442. package/build/core/middleware/utils/debug/taskMigrator.js.map +1 -1
  443. package/build/core/middleware/utils/migrationContext.d.ts +1 -0
  444. package/build/core/middleware/utils/migrationContext.d.ts.map +1 -1
  445. package/build/core/middleware/utils/migrationContext.js.map +1 -1
  446. package/build/core/middleware/utils/v3MigrationUtils.d.ts.map +1 -1
  447. package/build/core/middleware/utils/v3MigrationUtils.js +6 -2
  448. package/build/core/middleware/utils/v3MigrationUtils.js.map +1 -1
  449. package/build/error/common.d.ts +10 -4
  450. package/build/error/common.d.ts.map +1 -1
  451. package/build/error/common.js +132 -24
  452. package/build/error/common.js.map +1 -1
  453. package/build/index.d.ts +4 -1
  454. package/build/index.d.ts.map +1 -1
  455. package/build/index.js +5 -1
  456. package/build/index.js.map +1 -1
  457. package/build/question/constants.d.ts +6 -0
  458. package/build/question/constants.d.ts.map +1 -0
  459. package/build/question/constants.js +18 -0
  460. package/build/question/constants.js.map +1 -0
  461. package/build/question/create.d.ts +19 -21
  462. package/build/question/create.d.ts.map +1 -1
  463. package/build/question/create.js +454 -344
  464. package/build/question/create.js.map +1 -1
  465. package/build/question/generator.d.ts +4 -0
  466. package/build/question/generator.d.ts.map +1 -0
  467. package/build/question/generator.js +365 -0
  468. package/build/question/generator.js.map +1 -0
  469. package/build/question/index.d.ts +19 -30
  470. package/build/question/index.d.ts.map +1 -1
  471. package/build/question/index.js +14 -47
  472. package/build/question/index.js.map +1 -1
  473. package/build/question/inputs/CreateEnvInputs.d.ts +14 -0
  474. package/build/question/inputs/CreateEnvInputs.d.ts.map +1 -0
  475. package/build/question/inputs/CreateEnvInputs.js +5 -0
  476. package/build/question/inputs/CreateEnvInputs.js.map +1 -0
  477. package/build/question/inputs/CreateProjectInputs.d.ts +38 -0
  478. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -0
  479. package/build/question/inputs/CreateProjectInputs.js +5 -0
  480. package/build/question/inputs/CreateProjectInputs.js.map +1 -0
  481. package/build/question/inputs/CreateSampleProjectInputs.d.ts +12 -0
  482. package/build/question/inputs/CreateSampleProjectInputs.d.ts.map +1 -0
  483. package/build/question/inputs/CreateSampleProjectInputs.js +5 -0
  484. package/build/question/inputs/CreateSampleProjectInputs.js.map +1 -0
  485. package/build/question/inputs/DeployAadManifestInputs.d.ts +14 -0
  486. package/build/question/inputs/DeployAadManifestInputs.d.ts.map +1 -0
  487. package/build/question/inputs/DeployAadManifestInputs.js +5 -0
  488. package/build/question/inputs/DeployAadManifestInputs.js.map +1 -0
  489. package/build/question/inputs/PermissionGrantInputs.d.ts +18 -0
  490. package/build/question/inputs/PermissionGrantInputs.d.ts.map +1 -0
  491. package/build/question/inputs/PermissionGrantInputs.js +5 -0
  492. package/build/question/inputs/PermissionGrantInputs.js.map +1 -0
  493. package/build/question/inputs/PermissionListInputs.d.ts +16 -0
  494. package/build/question/inputs/PermissionListInputs.d.ts.map +1 -0
  495. package/build/question/inputs/PermissionListInputs.js +5 -0
  496. package/build/question/inputs/PermissionListInputs.js.map +1 -0
  497. package/build/question/inputs/PreviewTeamsAppInputs.d.ts +14 -0
  498. package/build/question/inputs/PreviewTeamsAppInputs.d.ts.map +1 -0
  499. package/build/question/inputs/PreviewTeamsAppInputs.js +5 -0
  500. package/build/question/inputs/PreviewTeamsAppInputs.js.map +1 -0
  501. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +18 -0
  502. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -0
  503. package/build/question/inputs/SPFxAddWebpartInputs.js +5 -0
  504. package/build/question/inputs/SPFxAddWebpartInputs.js.map +1 -0
  505. package/build/question/inputs/SelectTeamsManifestInputs.d.ts +12 -0
  506. package/build/question/inputs/SelectTeamsManifestInputs.d.ts.map +1 -0
  507. package/build/question/inputs/SelectTeamsManifestInputs.js +5 -0
  508. package/build/question/inputs/SelectTeamsManifestInputs.js.map +1 -0
  509. package/build/question/inputs/ValidateTeamsAppInputs.d.ts +14 -0
  510. package/build/question/inputs/ValidateTeamsAppInputs.d.ts.map +1 -0
  511. package/build/question/inputs/ValidateTeamsAppInputs.js +5 -0
  512. package/build/question/inputs/ValidateTeamsAppInputs.js.map +1 -0
  513. package/build/question/inputs/index.d.ts +11 -0
  514. package/build/question/inputs/index.d.ts.map +1 -0
  515. package/build/question/inputs/index.js +16 -0
  516. package/build/question/inputs/index.js.map +1 -0
  517. package/build/question/options/CreateEnvOptions.d.ts +10 -0
  518. package/build/question/options/CreateEnvOptions.d.ts.map +1 -0
  519. package/build/question/options/CreateEnvOptions.js +24 -0
  520. package/build/question/options/CreateEnvOptions.js.map +1 -0
  521. package/build/question/options/CreateProjectOptions.d.ts +10 -0
  522. package/build/question/options/CreateProjectOptions.d.ts.map +1 -0
  523. package/build/question/options/CreateProjectOptions.js +132 -0
  524. package/build/question/options/CreateProjectOptions.js.map +1 -0
  525. package/build/question/options/CreateSampleProjectOptions.d.ts +10 -0
  526. package/build/question/options/CreateSampleProjectOptions.d.ts.map +1 -0
  527. package/build/question/options/CreateSampleProjectOptions.js +52 -0
  528. package/build/question/options/CreateSampleProjectOptions.js.map +1 -0
  529. package/build/question/options/DeployAadManifestOptions.d.ts +10 -0
  530. package/build/question/options/DeployAadManifestOptions.d.ts.map +1 -0
  531. package/build/question/options/DeployAadManifestOptions.js +21 -0
  532. package/build/question/options/DeployAadManifestOptions.js.map +1 -0
  533. package/build/question/options/PermissionGrantOptions.d.ts +10 -0
  534. package/build/question/options/PermissionGrantOptions.d.ts.map +1 -0
  535. package/build/question/options/PermissionGrantOptions.js +33 -0
  536. package/build/question/options/PermissionGrantOptions.js.map +1 -0
  537. package/build/question/options/PermissionListOptions.d.ts +10 -0
  538. package/build/question/options/PermissionListOptions.d.ts.map +1 -0
  539. package/build/question/options/PermissionListOptions.js +28 -0
  540. package/build/question/options/PermissionListOptions.js.map +1 -0
  541. package/build/question/options/PreviewTeamsAppOptions.d.ts +10 -0
  542. package/build/question/options/PreviewTeamsAppOptions.d.ts.map +1 -0
  543. package/build/question/options/PreviewTeamsAppOptions.js +26 -0
  544. package/build/question/options/PreviewTeamsAppOptions.js.map +1 -0
  545. package/build/question/options/SPFxAddWebpartOptions.d.ts +10 -0
  546. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -0
  547. package/build/question/options/SPFxAddWebpartOptions.js +39 -0
  548. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -0
  549. package/build/question/options/SelectTeamsManifestOptions.d.ts +10 -0
  550. package/build/question/options/SelectTeamsManifestOptions.d.ts.map +1 -0
  551. package/build/question/options/SelectTeamsManifestOptions.js +17 -0
  552. package/build/question/options/SelectTeamsManifestOptions.js.map +1 -0
  553. package/build/question/options/ValidateTeamsAppOptions.d.ts +10 -0
  554. package/build/question/options/ValidateTeamsAppOptions.d.ts.map +1 -0
  555. package/build/question/options/ValidateTeamsAppOptions.js +23 -0
  556. package/build/question/options/ValidateTeamsAppOptions.js.map +1 -0
  557. package/build/question/options/index.d.ts +11 -0
  558. package/build/question/options/index.d.ts.map +1 -0
  559. package/build/question/options/index.js +16 -0
  560. package/build/question/options/index.js.map +1 -0
  561. package/build/question/other.d.ts +12 -1
  562. package/build/question/other.d.ts.map +1 -1
  563. package/build/question/other.js +129 -31
  564. package/build/question/other.js.map +1 -1
  565. package/build/question/questionNames.d.ts +6 -2
  566. package/build/question/questionNames.d.ts.map +1 -1
  567. package/build/question/questionNames.js +8 -3
  568. package/build/question/questionNames.js.map +1 -1
  569. package/build/ui/validationUtils.d.ts +31 -0
  570. package/build/ui/validationUtils.d.ts.map +1 -0
  571. package/build/ui/validationUtils.js +297 -0
  572. package/build/ui/validationUtils.js.map +1 -0
  573. package/build/ui/visitor.d.ts +13 -1
  574. package/build/ui/visitor.d.ts.map +1 -1
  575. package/build/ui/visitor.js +264 -215
  576. package/build/ui/visitor.js.map +1 -1
  577. package/package.json +21 -14
  578. package/resource/package.nls.json +59 -18
  579. package/resource/yaml-schema/v1.2/yaml.schema.json +1474 -0
  580. package/templates/fallback/common.zip +0 -0
  581. package/templates/fallback/csharp.zip +0 -0
  582. package/templates/fallback/js.zip +0 -0
  583. package/templates/fallback/ts.zip +0 -0
  584. package/templates/plugins/resource/aad/auth/V3/Tab/GetUserProfile.razor +1 -2
  585. package/templates/plugins/resource/aad/auth/bot/README.md +281 -263
  586. package/templates/plugins/resource/aad/auth/bot/js/sso/handleMessageExtensionQueryWithToken.js +13 -3
  587. package/templates/plugins/resource/aad/auth/bot/js/sso/profileSsoCommandHandler.js +14 -5
  588. package/templates/plugins/resource/aad/auth/bot/ts/sso/handleMessageExtensionQueryWithToken.ts +11 -3
  589. package/templates/plugins/resource/aad/auth/bot/ts/sso/profileSsoCommandHandler.ts +12 -3
  590. package/templates/plugins/resource/aad/auth/tab/csharp/GetUserProfile.razor +1 -2
  591. package/build/common/samples-config-v3.json +0 -233
  592. package/build/component/configManager/diagnostic.d.ts +0 -9
  593. package/build/component/configManager/diagnostic.d.ts.map +0 -1
  594. package/build/component/configManager/diagnostic.js +0 -49
  595. package/build/component/configManager/diagnostic.js.map +0 -1
  596. package/build/component/driver/middleware/updateProgress.d.ts +0 -6
  597. package/build/component/driver/middleware/updateProgress.d.ts.map +0 -1
  598. package/build/component/driver/middleware/updateProgress.js +0 -15
  599. package/build/component/driver/middleware/updateProgress.js.map +0 -1
  600. package/build/core/FxCoreImplementV3.d.ts +0 -44
  601. package/build/core/FxCoreImplementV3.d.ts.map +0 -1
  602. package/build/core/FxCoreImplementV3.js +0 -663
  603. package/build/core/FxCoreImplementV3.js.map +0 -1
@@ -9,6 +9,13 @@ const swagger_parser_1 = tslib_1.__importDefault(require("@apidevtools/swagger-p
9
9
  const specParserError_1 = require("./specParserError");
10
10
  const interfaces_1 = require("./interfaces");
11
11
  const constants_1 = require("./constants");
12
+ const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
13
+ const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
14
+ const specFilter_1 = require("./specFilter");
15
+ const utils_1 = require("./utils");
16
+ const manifestUpdater_1 = require("./manifestUpdater");
17
+ const adaptiveCardGenerator_1 = require("./adaptiveCardGenerator");
18
+ const path_1 = tslib_1.__importDefault(require("path"));
12
19
  /**
13
20
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
14
21
  */
@@ -19,6 +26,7 @@ class SpecParser {
19
26
  */
20
27
  constructor(path) {
21
28
  this.specPath = path;
29
+ this.parser = new swagger_parser_1.default();
22
30
  }
23
31
  /**
24
32
  * Validates the OpenAPI specification file and returns a validation result.
@@ -26,92 +34,87 @@ class SpecParser {
26
34
  * @returns A validation result object that contains information about any errors or warnings in the specification file.
27
35
  */
28
36
  async validate() {
29
- const errors = [];
30
- const warnings = [];
31
- const parser = new swagger_parser_1.default();
32
37
  try {
33
- if (!this.spec) {
34
- this.spec = (await parser.validate(this.specPath));
38
+ const errors = [];
39
+ const warnings = [];
40
+ try {
41
+ await this.loadSpec();
42
+ await this.parser.validate(this.spec);
43
+ }
44
+ catch (e) {
45
+ // Spec not valid
46
+ errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
47
+ return {
48
+ status: interfaces_1.ValidationStatus.Error,
49
+ warnings,
50
+ errors,
51
+ };
52
+ }
53
+ // TODO: we will support swagger 2.0
54
+ if (!this.spec.openapi || this.spec.openapi < "3.0.0") {
55
+ errors.push({
56
+ type: interfaces_1.ErrorType.VersionNotSupported,
57
+ content: constants_1.ConstantString.SpecVersionNotSupported,
58
+ data: this.spec.openapi,
59
+ });
60
+ return {
61
+ status: interfaces_1.ValidationStatus.Error,
62
+ warnings,
63
+ errors,
64
+ };
65
+ }
66
+ // Server validation
67
+ const serverErrors = utils_1.validateServer(this.spec);
68
+ errors.push(...serverErrors);
69
+ // Remote reference not supported
70
+ const refPaths = this.parser.$refs.paths();
71
+ // refPaths [0] is the current spec file path
72
+ if (refPaths.length > 1) {
73
+ errors.push({
74
+ type: interfaces_1.ErrorType.RemoteRefNotSupported,
75
+ content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
76
+ data: refPaths,
77
+ });
78
+ }
79
+ // No supported API
80
+ const apiMap = this.getAllSupportedApi(this.spec);
81
+ if (Object.keys(apiMap).length === 0) {
82
+ errors.push({
83
+ type: interfaces_1.ErrorType.NoSupportedApi,
84
+ content: constants_1.ConstantString.NoSupportedApi,
85
+ });
86
+ }
87
+ // OperationId missing
88
+ const apisMissingOperationId = [];
89
+ for (const key in apiMap) {
90
+ const pathObjectItem = apiMap[key];
91
+ if (!pathObjectItem.operationId) {
92
+ apisMissingOperationId.push(key);
93
+ }
94
+ }
95
+ if (apisMissingOperationId.length > 0) {
96
+ warnings.push({
97
+ type: interfaces_1.WarningType.OperationIdMissing,
98
+ content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
99
+ data: apisMissingOperationId,
100
+ });
101
+ }
102
+ let status = interfaces_1.ValidationStatus.Valid;
103
+ if (warnings.length > 0 && errors.length === 0) {
104
+ status = interfaces_1.ValidationStatus.Warning;
105
+ }
106
+ else if (errors.length > 0) {
107
+ status = interfaces_1.ValidationStatus.Error;
35
108
  }
36
- }
37
- catch (e) {
38
- // Spec not valid
39
- errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
40
- return {
41
- status: interfaces_1.ValidationStatus.Error,
42
- warnings,
43
- errors,
44
- };
45
- }
46
- // Spec version not supported
47
- if (!this.spec.openapi || this.spec.openapi < "3.0.0") {
48
- errors.push({
49
- type: interfaces_1.ErrorType.VersionNotSupported,
50
- content: constants_1.ConstantString.SpecVersionNotSupported,
51
- });
52
109
  return {
53
- status: interfaces_1.ValidationStatus.Error,
110
+ status,
54
111
  warnings,
55
112
  errors,
56
113
  };
57
114
  }
58
- // Server information invalid
59
- if (!this.spec.servers || this.spec.servers.length === 0) {
60
- errors.push({
61
- type: interfaces_1.ErrorType.NoServerInformation,
62
- content: constants_1.ConstantString.NoServerInformation,
63
- });
64
- }
65
- else if (this.spec.servers.length > 1) {
66
- errors.push({
67
- type: interfaces_1.ErrorType.MultipleServerInformation,
68
- content: constants_1.ConstantString.MultipleServerInformation,
69
- });
70
- }
71
- // Remote reference not supported
72
- const refPaths = parser.$refs.paths();
73
- // refPaths [0] is the current spec file path
74
- if (refPaths.length > 1) {
75
- console.log("refPaths", refPaths);
76
- errors.push({
77
- type: interfaces_1.ErrorType.RemoteRefNotSupported,
78
- content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
79
- });
80
- }
81
- // No supported API
82
- const apiMap = await this.getAllSupportedApi(this.spec);
83
- if (Object.keys(apiMap).length === 0) {
84
- errors.push({
85
- type: interfaces_1.ErrorType.NoSupportedApi,
86
- content: constants_1.ConstantString.NoSupportedApi,
87
- });
88
- }
89
- // OperationId missing
90
- const apisMissingOperationId = [];
91
- for (const key in apiMap) {
92
- const pathObjectItem = apiMap[key];
93
- if (!pathObjectItem.operationId) {
94
- apisMissingOperationId.push(key);
95
- }
96
- }
97
- if (apisMissingOperationId.length > 0) {
98
- warnings.push({
99
- type: interfaces_1.WarningType.OperationIdMissing,
100
- content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
101
- });
102
- }
103
- let status = interfaces_1.ValidationStatus.Valid;
104
- if (warnings.length > 0 && errors.length === 0) {
105
- status = interfaces_1.ValidationStatus.Warning;
106
- }
107
- else if (errors.length > 0) {
108
- status = interfaces_1.ValidationStatus.Error;
115
+ catch (err) {
116
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ValidateFailed);
109
117
  }
110
- return {
111
- status,
112
- warnings,
113
- errors,
114
- };
115
118
  }
116
119
  /**
117
120
  * Lists all the OpenAPI operations in the specification file.
@@ -120,31 +123,115 @@ class SpecParser {
120
123
  */
121
124
  async list() {
122
125
  try {
123
- if (!this.spec) {
124
- this.spec = (await swagger_parser_1.default.validate(this.specPath));
125
- }
126
- const apiMap = await this.getAllSupportedApi(this.spec);
126
+ await this.loadSpec();
127
+ const apiMap = this.getAllSupportedApi(this.spec);
127
128
  return Array.from(Object.keys(apiMap));
128
129
  }
129
130
  catch (err) {
130
131
  throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListFailed);
131
132
  }
132
133
  }
134
+ /**
135
+ * List all the OpenAPI operations in the specification file and return a map of operationId and operation path.
136
+ * @returns A map of operationId and operation path, such as [{'getPetById': 'GET /pets/{petId}'}, {'getUser': 'GET /user/{userId}'}]
137
+ */
138
+ async listOperationMap() {
139
+ try {
140
+ await this.loadSpec();
141
+ const apiMap = this.getAllSupportedApi(this.spec);
142
+ const operationMap = new Map();
143
+ for (const key in apiMap) {
144
+ const pathObjectItem = apiMap[key];
145
+ let operationId = pathObjectItem.operationId;
146
+ if (!operationId) {
147
+ const [method, path] = key.split(" ");
148
+ const methodName = method.toLowerCase();
149
+ operationId = `${methodName}${utils_1.convertPathToCamelCase(path)}`;
150
+ }
151
+ operationMap.set(operationId, key);
152
+ }
153
+ return operationMap;
154
+ }
155
+ catch (err) {
156
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListOperationMapFailed);
157
+ }
158
+ }
133
159
  /**
134
160
  * Generates and update artifacts from the OpenAPI specification file. Generate Adaptive Cards, update Teams app manifest, and generate a new OpenAPI specification file.
135
161
  * @param manifestPath A file path of the Teams app manifest file to update.
136
162
  * @param filter An array of strings that represent the filters to apply when generating the artifacts. If filter is empty, it would process nothing.
137
- * @param specPath An optional file path of the new OpenAPI specification file to generate. If not specified or empty, no spec file will be generated.
138
- * @param adaptiveCardFolder An optional folder path where the Adaptive Card files will be generated. If not specified or empty, Adaptive Card files will not be generated.
163
+ * @param outputSpecPath File path of the new OpenAPI specification file to generate. If not specified or empty, no spec file will be generated.
164
+ * @param adaptiveCardFolder Folder path where the Adaptive Card files will be generated. If not specified or empty, Adaptive Card files will not be generated.
139
165
  */
140
- async generate(manifestPath, filter, specPath, adaptiveCardFolder, signal) {
141
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
142
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
166
+ async generate(manifestPath, filter, outputSpecPath, adaptiveCardFolder, signal) {
167
+ const result = {
168
+ allSuccess: true,
169
+ warnings: [],
170
+ };
171
+ try {
172
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
173
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
174
+ }
175
+ await this.loadSpec();
176
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
177
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
178
+ }
179
+ const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec);
180
+ let resultStr;
181
+ if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
182
+ resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
183
+ }
184
+ else {
185
+ resultStr = JSON.stringify(newUnResolvedSpec, null, 2);
186
+ }
187
+ await fs_extra_1.default.outputFile(outputSpecPath, resultStr);
188
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
189
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
190
+ }
191
+ const newSpec = (await this.parser.dereference(newUnResolvedSpec));
192
+ for (const url in newSpec.paths) {
193
+ for (const method in newSpec.paths[url]) {
194
+ if (method === constants_1.ConstantString.GetMethod || method === constants_1.ConstantString.PostMethod) {
195
+ const operation = newSpec.paths[url][method];
196
+ try {
197
+ const card = adaptiveCardGenerator_1.generateAdaptiveCard(operation);
198
+ const fileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.json`);
199
+ await fs_extra_1.default.outputJSON(fileName, card, { spaces: 2 });
200
+ }
201
+ catch (err) {
202
+ result.allSuccess = false;
203
+ result.warnings.push({
204
+ type: interfaces_1.WarningType.GenerateCardFailed,
205
+ content: err.toString(),
206
+ data: operation.operationId,
207
+ });
208
+ }
209
+ }
210
+ }
211
+ }
212
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
213
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
214
+ }
215
+ const [updatedManifest, warnings] = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec);
216
+ await fs_extra_1.default.outputJSON(manifestPath, updatedManifest, { spaces: 2 });
217
+ result.warnings.push(...warnings);
218
+ }
219
+ catch (err) {
220
+ if (err instanceof specParserError_1.SpecParserError) {
221
+ throw err;
222
+ }
223
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.GenerateFailed);
224
+ }
225
+ return result;
226
+ }
227
+ async loadSpec() {
228
+ if (!this.spec) {
229
+ this.unResolveSpec = (await this.parser.parse(this.specPath));
230
+ const clonedUnResolveSpec = JSON.parse(JSON.stringify(this.unResolveSpec));
231
+ this.spec = (await this.parser.dereference(clonedUnResolveSpec));
143
232
  }
144
- // TODO: implementation
145
233
  }
146
- async getAllSupportedApi(spec) {
147
- var _a;
234
+ getAllSupportedApi(spec) {
148
235
  if (this.apiMap !== undefined) {
149
236
  return this.apiMap;
150
237
  }
@@ -153,10 +240,10 @@ class SpecParser {
153
240
  for (const path in paths) {
154
241
  const methods = paths[path];
155
242
  for (const method in methods) {
156
- // only list get and post method without auth
157
- if ((method === constants_1.ConstantString.GetMethod || method === constants_1.ConstantString.PostMethod) &&
158
- !((_a = methods[method]) === null || _a === void 0 ? void 0 : _a.security)) {
159
- result[`${method.toUpperCase()} ${path}`] = methods[method];
243
+ // For developer preview, only support GET operation with only 1 parameter without auth
244
+ if (utils_1.isSupportedApi(method, path, spec)) {
245
+ const operationObject = methods[method];
246
+ result[`${method.toUpperCase()} ${path}`] = operationObject;
160
247
  }
161
248
  }
162
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"specParser.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"specParser.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { OpenAPIV3 } from "openapi-types";
2
+ import { CheckParamResult, ErrorResult } from "./interfaces";
3
+ export declare function isYamlSpecFile(specPath: string): Promise<boolean>;
4
+ export declare function checkParameters(paramObject: OpenAPIV3.ParameterObject[]): CheckParamResult;
5
+ export declare function checkPostBody(schema: OpenAPIV3.SchemaObject): CheckParamResult;
6
+ /**
7
+ * Checks if the given API is supported.
8
+ * @param {string} method - The HTTP method of the API.
9
+ * @param {string} path - The path of the API.
10
+ * @param {OpenAPIV3.Document} spec - The OpenAPI specification document.
11
+ * @returns {boolean} - Returns true if the API is supported, false otherwise.
12
+ * @description The following APIs are supported:
13
+ * 1. only support Get/Post operation without auth property
14
+ * 2. parameter inside query or path only support string, number, boolean and integer
15
+ * 3. parameter inside post body only support string, number, boolean, integer and object
16
+ * 4. request body + required parameters <= 1
17
+ * 5. response body should be “application/json” and not empty, and response code should be 20X
18
+ * 6. only support request body with “application/json” content type
19
+ */
20
+ export declare function isSupportedApi(method: string, path: string, spec: OpenAPIV3.Document): boolean;
21
+ export declare function updateFirstLetter(str: string): string;
22
+ export declare function getRelativePath(from: string, to: string): string;
23
+ export declare function getResponseJson(operationObject: OpenAPIV3.OperationObject | undefined): OpenAPIV3.MediaTypeObject;
24
+ export declare function convertPathToCamelCase(path: string): string;
25
+ export declare function getUrlProtocol(urlString: string): string | undefined;
26
+ export declare function resolveServerUrl(url: string): string;
27
+ export declare function checkServerUrl(servers: OpenAPIV3.ServerObject[]): ErrorResult[];
28
+ export declare function validateServer(spec: OpenAPIV3.Document): ErrorResult[];
29
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAa,MAAM,cAAc,CAAC;AAGxE,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiBvE;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,eAAe,EAAE,GAAG,gBAAgB,CA2C1F;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAoC9E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CA0D9F;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED,wBAAgB,eAAe,CAC7B,eAAe,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,GACrD,SAAS,CAAC,eAAe,CAY3B;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU3D;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOpE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAepD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,EAAE,GAAG,WAAW,EAAE,CAiC/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,WAAW,EAAE,CA2CtE"}