@microsoft/teamsfx-core 2.0.4-alpha.6ff4defd0.0 → 2.0.4-alpha.7313f757f.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 (553) 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 +40 -35
  15. package/build/common/deps-checker/internal/dotnetChecker.js.map +1 -1
  16. package/build/common/deps-checker/internal/nodeChecker.js +3 -3
  17. package/build/common/deps-checker/internal/nodeChecker.js.map +1 -1
  18. package/build/common/deps-checker/util/cpUtils.d.ts +1 -1
  19. package/build/common/deps-checker/util/cpUtils.d.ts.map +1 -1
  20. package/build/common/deps-checker/util/cpUtils.js +4 -4
  21. package/build/common/deps-checker/util/cpUtils.js.map +1 -1
  22. package/build/common/deps-checker/util/progressIndicator.js +2 -2
  23. package/build/common/deps-checker/util/progressIndicator.js.map +1 -1
  24. package/build/common/featureFlags.d.ts +1 -0
  25. package/build/common/featureFlags.d.ts.map +1 -1
  26. package/build/common/featureFlags.js +5 -1
  27. package/build/common/featureFlags.js.map +1 -1
  28. package/build/common/local/localCertificateManager.d.ts.map +1 -1
  29. package/build/common/local/localCertificateManager.js +3 -0
  30. package/build/common/local/localCertificateManager.js.map +1 -1
  31. package/build/common/local/packageJsonHelper.d.ts.map +1 -1
  32. package/build/common/local/packageJsonHelper.js +1 -0
  33. package/build/common/local/packageJsonHelper.js.map +1 -1
  34. package/build/common/local/portChecker.js.map +1 -1
  35. package/build/common/m365/launchHelper.d.ts +2 -2
  36. package/build/common/m365/launchHelper.d.ts.map +1 -1
  37. package/build/common/m365/launchHelper.js +24 -6
  38. package/build/common/m365/launchHelper.js.map +1 -1
  39. package/build/common/m365/packageService.d.ts.map +1 -1
  40. package/build/common/m365/packageService.js +66 -19
  41. package/build/common/m365/packageService.js.map +1 -1
  42. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  43. package/build/common/projectSettingsHelper.js +1 -0
  44. package/build/common/projectSettingsHelper.js.map +1 -1
  45. package/build/common/samples.d.ts +15 -4
  46. package/build/common/samples.d.ts.map +1 -1
  47. package/build/common/samples.js +58 -28
  48. package/build/common/samples.js.map +1 -1
  49. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
  50. package/build/common/spec-parser/adaptiveCardGenerator.js +39 -32
  51. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
  52. package/build/common/spec-parser/constants.d.ts +17 -10
  53. package/build/common/spec-parser/constants.d.ts.map +1 -1
  54. package/build/common/spec-parser/constants.js +42 -10
  55. package/build/common/spec-parser/constants.js.map +1 -1
  56. package/build/common/spec-parser/interfaces.d.ts +44 -21
  57. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  58. package/build/common/spec-parser/interfaces.js +24 -13
  59. package/build/common/spec-parser/interfaces.js.map +1 -1
  60. package/build/common/spec-parser/manifestUpdater.d.ts +4 -3
  61. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
  62. package/build/common/spec-parser/manifestUpdater.js +104 -49
  63. package/build/common/spec-parser/manifestUpdater.js.map +1 -1
  64. package/build/common/spec-parser/specFilter.d.ts +1 -1
  65. package/build/common/spec-parser/specFilter.d.ts.map +1 -1
  66. package/build/common/spec-parser/specFilter.js +28 -35
  67. package/build/common/spec-parser/specFilter.js.map +1 -1
  68. package/build/common/spec-parser/specParser.d.ts +8 -2
  69. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  70. package/build/common/spec-parser/specParser.js +156 -97
  71. package/build/common/spec-parser/specParser.js.map +1 -1
  72. package/build/common/spec-parser/utils.d.ts +22 -0
  73. package/build/common/spec-parser/utils.d.ts.map +1 -1
  74. package/build/common/spec-parser/utils.js +251 -21
  75. package/build/common/spec-parser/utils.js.map +1 -1
  76. package/build/common/telemetry.d.ts +7 -4
  77. package/build/common/telemetry.d.ts.map +1 -1
  78. package/build/common/telemetry.js +43 -8
  79. package/build/common/telemetry.js.map +1 -1
  80. package/build/common/tools.d.ts.map +1 -1
  81. package/build/common/tools.js +5 -0
  82. package/build/common/tools.js.map +1 -1
  83. package/build/component/configManager/interface.d.ts +5 -3
  84. package/build/component/configManager/interface.d.ts.map +1 -1
  85. package/build/component/configManager/interface.js.map +1 -1
  86. package/build/component/configManager/lifecycle.d.ts +1 -3
  87. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  88. package/build/component/configManager/lifecycle.js +23 -51
  89. package/build/component/configManager/lifecycle.js.map +1 -1
  90. package/build/component/configManager/parser.d.ts.map +1 -1
  91. package/build/component/configManager/parser.js +6 -7
  92. package/build/component/configManager/parser.js.map +1 -1
  93. package/build/component/configManager/validator.d.ts.map +1 -1
  94. package/build/component/configManager/validator.js +2 -3
  95. package/build/component/configManager/validator.js.map +1 -1
  96. package/build/component/constants.d.ts +6 -0
  97. package/build/component/constants.d.ts.map +1 -1
  98. package/build/component/constants.js +7 -1
  99. package/build/component/constants.js.map +1 -1
  100. package/build/component/coordinator/index.d.ts +11 -8
  101. package/build/component/coordinator/index.d.ts.map +1 -1
  102. package/build/component/coordinator/index.js +78 -67
  103. package/build/component/coordinator/index.js.map +1 -1
  104. package/build/component/coordinator/summary.d.ts.map +1 -1
  105. package/build/component/coordinator/summary.js +2 -1
  106. package/build/component/coordinator/summary.js.map +1 -1
  107. package/build/component/developerPortalScaffoldUtils.d.ts +1 -1
  108. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  109. package/build/component/developerPortalScaffoldUtils.js +7 -7
  110. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  111. package/build/component/driver/aad/create.d.ts +1 -2
  112. package/build/component/driver/aad/create.d.ts.map +1 -1
  113. package/build/component/driver/aad/create.js +4 -11
  114. package/build/component/driver/aad/create.js.map +1 -1
  115. package/build/component/driver/aad/error/aadManifestError.d.ts +3 -0
  116. package/build/component/driver/aad/error/aadManifestError.d.ts.map +1 -1
  117. package/build/component/driver/aad/error/aadManifestError.js +13 -1
  118. package/build/component/driver/aad/error/aadManifestError.js.map +1 -1
  119. package/build/component/driver/aad/update.d.ts +1 -2
  120. package/build/component/driver/aad/update.d.ts.map +1 -1
  121. package/build/component/driver/aad/update.js +4 -11
  122. package/build/component/driver/aad/update.js.map +1 -1
  123. package/build/component/driver/aad/utility/aadAppClient.d.ts +1 -1
  124. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  125. package/build/component/driver/aad/utility/aadAppClient.js +58 -13
  126. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  127. package/build/component/driver/aad/utility/constants.d.ts +3 -0
  128. package/build/component/driver/aad/utility/constants.d.ts.map +1 -1
  129. package/build/component/driver/aad/utility/constants.js +4 -1
  130. package/build/component/driver/aad/utility/constants.js.map +1 -1
  131. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  132. package/build/component/driver/add/addWebPart.js +10 -1
  133. package/build/component/driver/add/addWebPart.js.map +1 -1
  134. package/build/component/driver/arm/deploy.d.ts +1 -3
  135. package/build/component/driver/arm/deploy.d.ts.map +1 -1
  136. package/build/component/driver/arm/deploy.js +1 -14
  137. package/build/component/driver/arm/deploy.js.map +1 -1
  138. package/build/component/driver/arm/deployImpl.d.ts +2 -1
  139. package/build/component/driver/arm/deployImpl.d.ts.map +1 -1
  140. package/build/component/driver/arm/deployImpl.js +15 -0
  141. package/build/component/driver/arm/deployImpl.js.map +1 -1
  142. package/build/component/driver/arm/util/bicepChecker.js +7 -6
  143. package/build/component/driver/arm/util/bicepChecker.js.map +1 -1
  144. package/build/component/driver/arm/util/handleError.js.map +1 -1
  145. package/build/component/driver/botAadApp/create.d.ts +2 -1
  146. package/build/component/driver/botAadApp/create.d.ts.map +1 -1
  147. package/build/component/driver/botAadApp/create.js +7 -10
  148. package/build/component/driver/botAadApp/create.js.map +1 -1
  149. package/build/component/driver/botFramework/createOrUpdateBot.d.ts +1 -0
  150. package/build/component/driver/botFramework/createOrUpdateBot.d.ts.map +1 -1
  151. package/build/component/driver/botFramework/createOrUpdateBot.js +6 -12
  152. package/build/component/driver/botFramework/createOrUpdateBot.js.map +1 -1
  153. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts +0 -2
  154. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.d.ts.map +1 -1
  155. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js +0 -10
  156. package/build/component/driver/deploy/azure/azureAppServiceDeployDriver.js.map +1 -1
  157. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts +0 -2
  158. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.d.ts.map +1 -1
  159. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js +0 -10
  160. package/build/component/driver/deploy/azure/azureFunctionDeployDriver.js.map +1 -1
  161. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts +0 -2
  162. package/build/component/driver/deploy/azure/azureStorageDeployDriver.d.ts.map +1 -1
  163. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js +17 -19
  164. package/build/component/driver/deploy/azure/azureStorageDeployDriver.js.map +1 -1
  165. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.d.ts.map +1 -1
  166. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js +11 -4
  167. package/build/component/driver/deploy/azure/azureStorageStaticWebsiteConfigDriver.js.map +1 -1
  168. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  169. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +29 -16
  170. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  171. package/build/component/driver/deploy/azure/impl/azureDeployImpl.d.ts.map +1 -1
  172. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +18 -15
  173. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
  174. package/build/component/driver/deploy/azure/impl/baseDeployImpl.d.ts.map +1 -1
  175. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js +4 -4
  176. package/build/component/driver/deploy/azure/impl/baseDeployImpl.js.map +1 -1
  177. package/build/component/driver/deploy/spfx/deployDriver.d.ts +1 -0
  178. package/build/component/driver/deploy/spfx/deployDriver.d.ts.map +1 -1
  179. package/build/component/driver/deploy/spfx/deployDriver.js +25 -3
  180. package/build/component/driver/deploy/spfx/deployDriver.js.map +1 -1
  181. package/build/component/driver/devTool/installDriver.d.ts +1 -0
  182. package/build/component/driver/devTool/installDriver.d.ts.map +1 -1
  183. package/build/component/driver/devTool/installDriver.js +33 -11
  184. package/build/component/driver/devTool/installDriver.js.map +1 -1
  185. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts +1 -0
  186. package/build/component/driver/file/createOrUpdateEnvironmentFile.d.ts.map +1 -1
  187. package/build/component/driver/file/createOrUpdateEnvironmentFile.js +12 -18
  188. package/build/component/driver/file/createOrUpdateEnvironmentFile.js.map +1 -1
  189. package/build/component/driver/file/createOrUpdateJsonFile.d.ts +1 -0
  190. package/build/component/driver/file/createOrUpdateJsonFile.d.ts.map +1 -1
  191. package/build/component/driver/file/createOrUpdateJsonFile.js +5 -11
  192. package/build/component/driver/file/createOrUpdateJsonFile.js.map +1 -1
  193. package/build/component/driver/interface/stepDriver.d.ts +2 -7
  194. package/build/component/driver/interface/stepDriver.d.ts.map +1 -1
  195. package/build/component/driver/m365/acquire.d.ts +1 -0
  196. package/build/component/driver/m365/acquire.d.ts.map +1 -1
  197. package/build/component/driver/m365/acquire.js +6 -12
  198. package/build/component/driver/m365/acquire.js.map +1 -1
  199. package/build/component/driver/script/baseBuildDriver.d.ts.map +1 -1
  200. package/build/component/driver/script/baseBuildDriver.js +1 -0
  201. package/build/component/driver/script/baseBuildDriver.js.map +1 -1
  202. package/build/component/driver/script/baseBuildStepDriver.d.ts +0 -2
  203. package/build/component/driver/script/baseBuildStepDriver.d.ts.map +1 -1
  204. package/build/component/driver/script/baseBuildStepDriver.js +0 -4
  205. package/build/component/driver/script/baseBuildStepDriver.js.map +1 -1
  206. package/build/component/driver/script/dotnetBuildDriver.d.ts +0 -2
  207. package/build/component/driver/script/dotnetBuildDriver.d.ts.map +1 -1
  208. package/build/component/driver/script/dotnetBuildDriver.js +0 -9
  209. package/build/component/driver/script/dotnetBuildDriver.js.map +1 -1
  210. package/build/component/driver/script/npmBuildDriver.d.ts +0 -2
  211. package/build/component/driver/script/npmBuildDriver.d.ts.map +1 -1
  212. package/build/component/driver/script/npmBuildDriver.js +0 -9
  213. package/build/component/driver/script/npmBuildDriver.js.map +1 -1
  214. package/build/component/driver/script/npxBuildDriver.d.ts +0 -2
  215. package/build/component/driver/script/npxBuildDriver.d.ts.map +1 -1
  216. package/build/component/driver/script/npxBuildDriver.js +0 -9
  217. package/build/component/driver/script/npxBuildDriver.js.map +1 -1
  218. package/build/component/driver/script/scriptDriver.d.ts +10 -1
  219. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  220. package/build/component/driver/script/scriptDriver.js +31 -30
  221. package/build/component/driver/script/scriptDriver.js.map +1 -1
  222. package/build/component/driver/teamsApp/appStudio.d.ts.map +1 -1
  223. package/build/component/driver/teamsApp/appStudio.js +8 -8
  224. package/build/component/driver/teamsApp/appStudio.js.map +1 -1
  225. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +5 -5
  226. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  227. package/build/component/driver/teamsApp/clients/appStudioClient.js +31 -11
  228. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  229. package/build/component/driver/teamsApp/clients/authSvcClient.d.ts.map +1 -1
  230. package/build/component/driver/teamsApp/clients/authSvcClient.js +2 -0
  231. package/build/component/driver/teamsApp/clients/authSvcClient.js.map +1 -1
  232. package/build/component/driver/teamsApp/configure.d.ts +1 -1
  233. package/build/component/driver/teamsApp/configure.d.ts.map +1 -1
  234. package/build/component/driver/teamsApp/configure.js +3 -11
  235. package/build/component/driver/teamsApp/configure.js.map +1 -1
  236. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts +1 -2
  237. package/build/component/driver/teamsApp/copyAppPackageToSPFx.d.ts.map +1 -1
  238. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js +4 -11
  239. package/build/component/driver/teamsApp/copyAppPackageToSPFx.js.map +1 -1
  240. package/build/component/driver/teamsApp/create.d.ts +1 -1
  241. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  242. package/build/component/driver/teamsApp/create.js +6 -11
  243. package/build/component/driver/teamsApp/create.js.map +1 -1
  244. package/build/component/driver/teamsApp/createAppPackage.d.ts +4 -3
  245. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  246. package/build/component/driver/teamsApp/createAppPackage.js +53 -43
  247. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  248. package/build/component/driver/teamsApp/errors.d.ts.map +1 -1
  249. package/build/component/driver/teamsApp/errors.js +2 -0
  250. package/build/component/driver/teamsApp/errors.js.map +1 -1
  251. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts +2 -0
  252. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtension.d.ts.map +1 -1
  253. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts +1 -0
  254. package/build/component/driver/teamsApp/interfaces/appdefinitions/messagingExtensionCommand.d.ts.map +1 -1
  255. package/build/component/driver/teamsApp/publishAppPackage.d.ts +1 -1
  256. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  257. package/build/component/driver/teamsApp/publishAppPackage.js +5 -13
  258. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  259. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +2 -1
  260. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  261. package/build/component/driver/teamsApp/utils/ManifestUtils.js +7 -2
  262. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  263. package/build/component/driver/teamsApp/utils/telemetry.d.ts +1 -0
  264. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  265. package/build/component/driver/teamsApp/utils/telemetry.js +1 -0
  266. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  267. package/build/component/driver/teamsApp/utils/utils.d.ts +2 -2
  268. package/build/component/driver/teamsApp/utils/utils.d.ts.map +1 -1
  269. package/build/component/driver/teamsApp/utils/utils.js +22 -10
  270. package/build/component/driver/teamsApp/utils/utils.js.map +1 -1
  271. package/build/component/driver/teamsApp/validate.d.ts +1 -1
  272. package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
  273. package/build/component/driver/teamsApp/validate.js +18 -13
  274. package/build/component/driver/teamsApp/validate.js.map +1 -1
  275. package/build/component/driver/teamsApp/validateAppPackage.d.ts +1 -1
  276. package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
  277. package/build/component/driver/teamsApp/validateAppPackage.js +3 -11
  278. package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
  279. package/build/component/error/componentError.d.ts +2 -1
  280. package/build/component/error/componentError.d.ts.map +1 -1
  281. package/build/component/error/componentError.js +8 -4
  282. package/build/component/error/componentError.js.map +1 -1
  283. package/build/component/feature/collaboration.d.ts.map +1 -1
  284. package/build/component/feature/collaboration.js +32 -13
  285. package/build/component/feature/collaboration.js.map +1 -1
  286. package/build/component/generator/copilotPlugin/generator.d.ts +7 -2
  287. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  288. package/build/component/generator/copilotPlugin/generator.js +91 -20
  289. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  290. package/build/component/generator/copilotPlugin/helper.d.ts +8 -3
  291. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  292. package/build/component/generator/copilotPlugin/helper.js +135 -40
  293. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  294. package/build/component/generator/error.d.ts +7 -1
  295. package/build/component/generator/error.d.ts.map +1 -1
  296. package/build/component/generator/error.js +15 -3
  297. package/build/component/generator/error.js.map +1 -1
  298. package/build/component/generator/generator.d.ts.map +1 -1
  299. package/build/component/generator/generator.js +30 -21
  300. package/build/component/generator/generator.js.map +1 -1
  301. package/build/component/generator/generatorAction.d.ts +2 -1
  302. package/build/component/generator/generatorAction.d.ts.map +1 -1
  303. package/build/component/generator/generatorAction.js +8 -2
  304. package/build/component/generator/generatorAction.js.map +1 -1
  305. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  306. package/build/component/generator/officeAddin/generator.js +9 -1
  307. package/build/component/generator/officeAddin/generator.js.map +1 -1
  308. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  309. package/build/component/generator/officeAddin/helperMethods.js +8 -4
  310. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  311. package/build/component/generator/spfx/depsChecker/generatorChecker.d.ts.map +1 -1
  312. package/build/component/generator/spfx/depsChecker/generatorChecker.js +4 -2
  313. package/build/component/generator/spfx/depsChecker/generatorChecker.js.map +1 -1
  314. package/build/component/generator/spfx/depsChecker/yoChecker.d.ts.map +1 -1
  315. package/build/component/generator/spfx/depsChecker/yoChecker.js +3 -3
  316. package/build/component/generator/spfx/depsChecker/yoChecker.js.map +1 -1
  317. package/build/component/generator/spfx/spfxGenerator.d.ts.map +1 -1
  318. package/build/component/generator/spfx/spfxGenerator.js +2 -2
  319. package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
  320. package/build/component/generator/spfx/utils/utils.js +3 -3
  321. package/build/component/generator/spfx/utils/utils.js.map +1 -1
  322. package/build/component/generator/utils.d.ts +12 -4
  323. package/build/component/generator/utils.d.ts.map +1 -1
  324. package/build/component/generator/utils.js +15 -14
  325. package/build/component/generator/utils.js.map +1 -1
  326. package/build/component/messages.d.ts +2 -3
  327. package/build/component/messages.d.ts.map +1 -1
  328. package/build/component/messages.js +3 -4
  329. package/build/component/messages.js.map +1 -1
  330. package/build/component/middleware/actionExecutionMW.d.ts +2 -2
  331. package/build/component/middleware/actionExecutionMW.d.ts.map +1 -1
  332. package/build/component/middleware/envMW.js +1 -1
  333. package/build/component/middleware/envMW.js.map +1 -1
  334. package/build/component/middleware/questionMW.d.ts +2 -2
  335. package/build/component/middleware/questionMW.d.ts.map +1 -1
  336. package/build/component/middleware/questionMW.js +7 -11
  337. package/build/component/middleware/questionMW.js.map +1 -1
  338. package/build/component/provisionUtils.d.ts +3 -3
  339. package/build/component/provisionUtils.d.ts.map +1 -1
  340. package/build/component/provisionUtils.js +3 -3
  341. package/build/component/provisionUtils.js.map +1 -1
  342. package/build/component/resource/botService/appStudio/appStudioClient.d.ts.map +1 -1
  343. package/build/component/resource/botService/appStudio/appStudioClient.js +24 -2
  344. package/build/component/resource/botService/appStudio/appStudioClient.js.map +1 -1
  345. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts +2 -2
  346. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.d.ts.map +1 -1
  347. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js +6 -1
  348. package/build/component/resource/botService/botRegistration/botFrameworkRegistration.js.map +1 -1
  349. package/build/component/telemetry.js +2 -2
  350. package/build/component/telemetry.js.map +1 -1
  351. package/build/component/utils/ResourceGroupHelper.d.ts +2 -2
  352. package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
  353. package/build/component/utils/ResourceGroupHelper.js +1 -4
  354. package/build/component/utils/ResourceGroupHelper.js.map +1 -1
  355. package/build/component/utils/charsetUtils.js +3 -3
  356. package/build/component/utils/charsetUtils.js.map +1 -1
  357. package/build/component/utils/common.d.ts +1 -1
  358. package/build/component/utils/common.d.ts.map +1 -1
  359. package/build/component/utils/common.js +4 -5
  360. package/build/component/utils/common.js.map +1 -1
  361. package/build/component/utils/depsChecker/cpUtils.d.ts.map +1 -1
  362. package/build/component/utils/depsChecker/cpUtils.js +8 -4
  363. package/build/component/utils/depsChecker/cpUtils.js.map +1 -1
  364. package/build/component/utils/envUtil.js +2 -2
  365. package/build/component/utils/envUtil.js.map +1 -1
  366. package/build/component/utils/metadataUtil.d.ts +3 -0
  367. package/build/component/utils/metadataUtil.d.ts.map +1 -1
  368. package/build/component/utils/metadataUtil.js +16 -3
  369. package/build/component/utils/metadataUtil.js.map +1 -1
  370. package/build/component/utils/teamsFxTelemetryReporter.js +2 -2
  371. package/build/component/utils/teamsFxTelemetryReporter.js.map +1 -1
  372. package/build/core/FxCore.d.ts +41 -33
  373. package/build/core/FxCore.d.ts.map +1 -1
  374. package/build/core/FxCore.js +817 -66
  375. package/build/core/FxCore.js.map +1 -1
  376. package/build/core/collaborator.js +2 -2
  377. package/build/core/collaborator.js.map +1 -1
  378. package/build/core/globalVars.d.ts +16 -0
  379. package/build/core/globalVars.d.ts.map +1 -1
  380. package/build/core/globalVars.js +34 -1
  381. package/build/core/globalVars.js.map +1 -1
  382. package/build/core/middleware/concurrentLocker.d.ts.map +1 -1
  383. package/build/core/middleware/concurrentLocker.js +7 -3
  384. package/build/core/middleware/concurrentLocker.js.map +1 -1
  385. package/build/core/middleware/projectMigratorV3.d.ts +4 -0
  386. package/build/core/middleware/projectMigratorV3.d.ts.map +1 -1
  387. package/build/core/middleware/projectMigratorV3.js +34 -32
  388. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  389. package/build/core/middleware/projectVersionChecker.js +5 -5
  390. package/build/core/middleware/projectVersionChecker.js.map +1 -1
  391. package/build/core/middleware/utils/appYmlGenerator.d.ts.map +1 -1
  392. package/build/core/middleware/utils/appYmlGenerator.js +2 -1
  393. package/build/core/middleware/utils/appYmlGenerator.js.map +1 -1
  394. package/build/core/middleware/utils/debug/taskMigrator.d.ts.map +1 -1
  395. package/build/core/middleware/utils/debug/taskMigrator.js +3 -0
  396. package/build/core/middleware/utils/debug/taskMigrator.js.map +1 -1
  397. package/build/core/middleware/utils/migrationContext.d.ts +1 -0
  398. package/build/core/middleware/utils/migrationContext.d.ts.map +1 -1
  399. package/build/core/middleware/utils/migrationContext.js.map +1 -1
  400. package/build/core/middleware/utils/v3MigrationUtils.d.ts.map +1 -1
  401. package/build/core/middleware/utils/v3MigrationUtils.js +5 -1
  402. package/build/core/middleware/utils/v3MigrationUtils.js.map +1 -1
  403. package/build/error/common.d.ts +4 -10
  404. package/build/error/common.d.ts.map +1 -1
  405. package/build/error/common.js +13 -35
  406. package/build/error/common.js.map +1 -1
  407. package/build/index.d.ts +4 -1
  408. package/build/index.d.ts.map +1 -1
  409. package/build/index.js +3 -0
  410. package/build/index.js.map +1 -1
  411. package/build/question/constants.d.ts +6 -0
  412. package/build/question/constants.d.ts.map +1 -0
  413. package/build/question/constants.js +18 -0
  414. package/build/question/constants.js.map +1 -0
  415. package/build/question/create.d.ts +23 -9
  416. package/build/question/create.d.ts.map +1 -1
  417. package/build/question/create.js +342 -281
  418. package/build/question/create.js.map +1 -1
  419. package/build/question/generator.d.ts +4 -0
  420. package/build/question/generator.d.ts.map +1 -0
  421. package/build/question/generator.js +365 -0
  422. package/build/question/generator.js.map +1 -0
  423. package/build/question/index.d.ts +19 -30
  424. package/build/question/index.d.ts.map +1 -1
  425. package/build/question/index.js +14 -47
  426. package/build/question/index.js.map +1 -1
  427. package/build/question/inputs/CreateEnvInputs.d.ts +14 -0
  428. package/build/question/inputs/CreateEnvInputs.d.ts.map +1 -0
  429. package/build/question/inputs/CreateEnvInputs.js +5 -0
  430. package/build/question/inputs/CreateEnvInputs.js.map +1 -0
  431. package/build/question/inputs/CreateProjectInputs.d.ts +38 -0
  432. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -0
  433. package/build/question/inputs/CreateProjectInputs.js +5 -0
  434. package/build/question/inputs/CreateProjectInputs.js.map +1 -0
  435. package/build/question/inputs/CreateSampleProjectInputs.d.ts +12 -0
  436. package/build/question/inputs/CreateSampleProjectInputs.d.ts.map +1 -0
  437. package/build/question/inputs/CreateSampleProjectInputs.js +5 -0
  438. package/build/question/inputs/CreateSampleProjectInputs.js.map +1 -0
  439. package/build/question/inputs/DeployAadManifestInputs.d.ts +14 -0
  440. package/build/question/inputs/DeployAadManifestInputs.d.ts.map +1 -0
  441. package/build/question/inputs/DeployAadManifestInputs.js +5 -0
  442. package/build/question/inputs/DeployAadManifestInputs.js.map +1 -0
  443. package/build/question/inputs/PermissionGrantInputs.d.ts +18 -0
  444. package/build/question/inputs/PermissionGrantInputs.d.ts.map +1 -0
  445. package/build/question/inputs/PermissionGrantInputs.js +5 -0
  446. package/build/question/inputs/PermissionGrantInputs.js.map +1 -0
  447. package/build/question/inputs/PermissionListInputs.d.ts +16 -0
  448. package/build/question/inputs/PermissionListInputs.d.ts.map +1 -0
  449. package/build/question/inputs/PermissionListInputs.js +5 -0
  450. package/build/question/inputs/PermissionListInputs.js.map +1 -0
  451. package/build/question/inputs/PreviewTeamsAppInputs.d.ts +14 -0
  452. package/build/question/inputs/PreviewTeamsAppInputs.d.ts.map +1 -0
  453. package/build/question/inputs/PreviewTeamsAppInputs.js +5 -0
  454. package/build/question/inputs/PreviewTeamsAppInputs.js.map +1 -0
  455. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +18 -0
  456. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -0
  457. package/build/question/inputs/SPFxAddWebpartInputs.js +5 -0
  458. package/build/question/inputs/SPFxAddWebpartInputs.js.map +1 -0
  459. package/build/question/inputs/SelectTeamsManifestInputs.d.ts +12 -0
  460. package/build/question/inputs/SelectTeamsManifestInputs.d.ts.map +1 -0
  461. package/build/question/inputs/SelectTeamsManifestInputs.js +5 -0
  462. package/build/question/inputs/SelectTeamsManifestInputs.js.map +1 -0
  463. package/build/question/inputs/ValidateTeamsAppInputs.d.ts +14 -0
  464. package/build/question/inputs/ValidateTeamsAppInputs.d.ts.map +1 -0
  465. package/build/question/inputs/ValidateTeamsAppInputs.js +5 -0
  466. package/build/question/inputs/ValidateTeamsAppInputs.js.map +1 -0
  467. package/build/question/inputs/index.d.ts +11 -0
  468. package/build/question/inputs/index.d.ts.map +1 -0
  469. package/build/question/inputs/index.js +16 -0
  470. package/build/question/inputs/index.js.map +1 -0
  471. package/build/question/options/CreateEnvOptions.d.ts +10 -0
  472. package/build/question/options/CreateEnvOptions.d.ts.map +1 -0
  473. package/build/question/options/CreateEnvOptions.js +24 -0
  474. package/build/question/options/CreateEnvOptions.js.map +1 -0
  475. package/build/question/options/CreateProjectOptions.d.ts +10 -0
  476. package/build/question/options/CreateProjectOptions.d.ts.map +1 -0
  477. package/build/question/options/CreateProjectOptions.js +133 -0
  478. package/build/question/options/CreateProjectOptions.js.map +1 -0
  479. package/build/question/options/CreateSampleProjectOptions.d.ts +10 -0
  480. package/build/question/options/CreateSampleProjectOptions.d.ts.map +1 -0
  481. package/build/question/options/CreateSampleProjectOptions.js +52 -0
  482. package/build/question/options/CreateSampleProjectOptions.js.map +1 -0
  483. package/build/question/options/DeployAadManifestOptions.d.ts +10 -0
  484. package/build/question/options/DeployAadManifestOptions.d.ts.map +1 -0
  485. package/build/question/options/DeployAadManifestOptions.js +21 -0
  486. package/build/question/options/DeployAadManifestOptions.js.map +1 -0
  487. package/build/question/options/PermissionGrantOptions.d.ts +10 -0
  488. package/build/question/options/PermissionGrantOptions.d.ts.map +1 -0
  489. package/build/question/options/PermissionGrantOptions.js +33 -0
  490. package/build/question/options/PermissionGrantOptions.js.map +1 -0
  491. package/build/question/options/PermissionListOptions.d.ts +10 -0
  492. package/build/question/options/PermissionListOptions.d.ts.map +1 -0
  493. package/build/question/options/PermissionListOptions.js +28 -0
  494. package/build/question/options/PermissionListOptions.js.map +1 -0
  495. package/build/question/options/PreviewTeamsAppOptions.d.ts +10 -0
  496. package/build/question/options/PreviewTeamsAppOptions.d.ts.map +1 -0
  497. package/build/question/options/PreviewTeamsAppOptions.js +26 -0
  498. package/build/question/options/PreviewTeamsAppOptions.js.map +1 -0
  499. package/build/question/options/SPFxAddWebpartOptions.d.ts +10 -0
  500. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -0
  501. package/build/question/options/SPFxAddWebpartOptions.js +39 -0
  502. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -0
  503. package/build/question/options/SelectTeamsManifestOptions.d.ts +10 -0
  504. package/build/question/options/SelectTeamsManifestOptions.d.ts.map +1 -0
  505. package/build/question/options/SelectTeamsManifestOptions.js +17 -0
  506. package/build/question/options/SelectTeamsManifestOptions.js.map +1 -0
  507. package/build/question/options/ValidateTeamsAppOptions.d.ts +10 -0
  508. package/build/question/options/ValidateTeamsAppOptions.d.ts.map +1 -0
  509. package/build/question/options/ValidateTeamsAppOptions.js +23 -0
  510. package/build/question/options/ValidateTeamsAppOptions.js.map +1 -0
  511. package/build/question/options/index.d.ts +11 -0
  512. package/build/question/options/index.d.ts.map +1 -0
  513. package/build/question/options/index.js +16 -0
  514. package/build/question/options/index.js.map +1 -0
  515. package/build/question/other.d.ts +12 -1
  516. package/build/question/other.d.ts.map +1 -1
  517. package/build/question/other.js +128 -30
  518. package/build/question/other.js.map +1 -1
  519. package/build/question/questionNames.d.ts +6 -2
  520. package/build/question/questionNames.d.ts.map +1 -1
  521. package/build/question/questionNames.js +8 -3
  522. package/build/question/questionNames.js.map +1 -1
  523. package/build/ui/validationUtils.d.ts +31 -0
  524. package/build/ui/validationUtils.d.ts.map +1 -0
  525. package/build/ui/validationUtils.js +297 -0
  526. package/build/ui/validationUtils.js.map +1 -0
  527. package/build/ui/visitor.d.ts +13 -1
  528. package/build/ui/visitor.d.ts.map +1 -1
  529. package/build/ui/visitor.js +262 -234
  530. package/build/ui/visitor.js.map +1 -1
  531. package/package.json +19 -15
  532. package/resource/package.nls.json +42 -16
  533. package/resource/yaml-schema/{1.1.1 → v1.2}/yaml.schema.json +11 -5
  534. package/templates/fallback/common.zip +0 -0
  535. package/templates/fallback/csharp.zip +0 -0
  536. package/templates/fallback/js.zip +0 -0
  537. package/templates/fallback/ts.zip +0 -0
  538. package/templates/plugins/resource/aad/auth/V3/Tab/GetUserProfile.razor +1 -2
  539. package/templates/plugins/resource/aad/auth/bot/README.md +281 -263
  540. package/templates/plugins/resource/aad/auth/bot/js/sso/handleMessageExtensionQueryWithToken.js +13 -3
  541. package/templates/plugins/resource/aad/auth/bot/js/sso/profileSsoCommandHandler.js +14 -5
  542. package/templates/plugins/resource/aad/auth/bot/ts/sso/handleMessageExtensionQueryWithToken.ts +11 -3
  543. package/templates/plugins/resource/aad/auth/bot/ts/sso/profileSsoCommandHandler.ts +12 -3
  544. package/templates/plugins/resource/aad/auth/tab/csharp/GetUserProfile.razor +1 -2
  545. package/build/common/samples-config-v3.json +0 -233
  546. package/build/component/driver/middleware/updateProgress.d.ts +0 -6
  547. package/build/component/driver/middleware/updateProgress.d.ts.map +0 -1
  548. package/build/component/driver/middleware/updateProgress.js +0 -15
  549. package/build/component/driver/middleware/updateProgress.js.map +0 -1
  550. package/build/core/FxCoreImplementV3.d.ts +0 -47
  551. package/build/core/FxCoreImplementV3.d.ts.map +0 -1
  552. package/build/core/FxCoreImplementV3.js +0 -702
  553. package/build/core/FxCoreImplementV3.js.map +0 -1
@@ -2,76 +2,131 @@
2
2
  // Licensed under the MIT license.
3
3
  "use strict";
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.generateCommands = exports.updateManifest = void 0;
5
+ exports.generateCommands = exports.generateParametersFromSchema = exports.updateManifest = void 0;
6
6
  const tslib_1 = require("tslib");
7
+ const interfaces_1 = require("./interfaces");
7
8
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
8
9
  const path_1 = tslib_1.__importDefault(require("path"));
9
10
  const utils_1 = require("./utils");
11
+ const specParserError_1 = require("./specParserError");
12
+ const constants_1 = require("./constants");
13
+ const util_1 = require("util");
10
14
  async function updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, spec) {
11
15
  var _a;
12
- // TODO: manifest interface can be updated when manifest parser library is ready
13
- const originalManifest = await fs_extra_1.default.readJSON(manifestPath);
14
- const commands = generateCommands(spec, adaptiveCardFolder, manifestPath);
15
- const ComposeExtension = {
16
- type: "apiBased",
17
- apiSpecFile: path_1.default.basename(outputSpecPath),
18
- commands: commands,
19
- };
20
- const updatedPart = {
21
- name: {
22
- short: spec.info.title,
23
- full: spec.info.title,
24
- },
25
- description: {
26
- short: spec.info.title,
27
- full: (_a = spec.info.description) !== null && _a !== void 0 ? _a : "",
28
- },
29
- composeExtensions: [ComposeExtension],
30
- };
31
- const updatedManifest = Object.assign(Object.assign({}, originalManifest), updatedPart);
32
- return updatedManifest;
16
+ try {
17
+ // TODO: manifest interface can be updated when manifest parser library is ready
18
+ const originalManifest = await fs_extra_1.default.readJSON(manifestPath);
19
+ const [commands, warnings] = await generateCommands(spec, adaptiveCardFolder, manifestPath);
20
+ const ComposeExtension = {
21
+ composeExtensionType: "apiBased",
22
+ apiSpecificationFile: utils_1.getRelativePath(manifestPath, outputSpecPath),
23
+ commands: commands,
24
+ };
25
+ const updatedPart = {
26
+ description: {
27
+ short: spec.info.title,
28
+ full: (_a = spec.info.description) !== null && _a !== void 0 ? _a : originalManifest.description.full,
29
+ },
30
+ composeExtensions: [ComposeExtension],
31
+ };
32
+ const updatedManifest = Object.assign(Object.assign({}, originalManifest), updatedPart);
33
+ return [updatedManifest, warnings];
34
+ }
35
+ catch (err) {
36
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.UpdateManifestFailed);
37
+ }
33
38
  }
34
39
  exports.updateManifest = updateManifest;
35
- function generateCommands(spec, adaptiveCardFolder, manifestPath) {
40
+ function generateParametersFromSchema(schema, name) {
41
+ var _a;
42
+ const parameters = [];
43
+ if (schema.type === "string" ||
44
+ schema.type === "integer" ||
45
+ schema.type === "boolean" ||
46
+ schema.type === "number") {
47
+ if (schema.required) {
48
+ parameters.push({
49
+ name: name,
50
+ title: utils_1.updateFirstLetter(name),
51
+ description: (_a = schema.description) !== null && _a !== void 0 ? _a : "",
52
+ });
53
+ }
54
+ }
55
+ else if (schema.type === "object") {
56
+ const { properties } = schema;
57
+ for (const property in properties) {
58
+ const result = generateParametersFromSchema(properties[property], property);
59
+ parameters.push(...result);
60
+ }
61
+ }
62
+ return parameters;
63
+ }
64
+ exports.generateParametersFromSchema = generateParametersFromSchema;
65
+ async function generateCommands(spec, adaptiveCardFolder, manifestPath) {
36
66
  var _a;
37
67
  const paths = spec.paths;
38
68
  const commands = [];
69
+ const warnings = [];
39
70
  if (paths) {
40
71
  for (const pathUrl in paths) {
41
72
  const pathItem = paths[pathUrl];
42
73
  if (pathItem) {
43
74
  const operations = pathItem;
44
- // Currently only support GET method
45
- const operationItem = operations.get;
46
- if (operationItem) {
47
- const parameters = [];
48
- const paramObject = operationItem.parameters;
49
- if (paramObject) {
50
- paramObject.forEach((param) => {
51
- var _a;
52
- param = param;
53
- parameters.push({
54
- name: param.name,
55
- title: utils_1.updateFirstLetter(param.name),
56
- description: (_a = param.description) !== null && _a !== void 0 ? _a : "",
57
- });
58
- });
75
+ // Currently only support GET and POST method
76
+ for (const method in operations) {
77
+ if (method === constants_1.ConstantString.PostMethod || method === constants_1.ConstantString.GetMethod) {
78
+ const operationItem = operations[method];
79
+ if (operationItem) {
80
+ const parameters = [];
81
+ const paramObject = operationItem.parameters;
82
+ if (paramObject) {
83
+ paramObject.forEach((param) => {
84
+ var _a;
85
+ if (param.required) {
86
+ parameters.push({
87
+ name: param.name,
88
+ title: utils_1.updateFirstLetter(param.name),
89
+ description: (_a = param.description) !== null && _a !== void 0 ? _a : "",
90
+ });
91
+ }
92
+ });
93
+ }
94
+ if (operationItem.requestBody) {
95
+ const requestJson = operationItem.requestBody
96
+ .content["application/json"];
97
+ if (Object.keys(requestJson).length !== 0) {
98
+ const schema = requestJson.schema;
99
+ const result = generateParametersFromSchema(schema, "requestBody");
100
+ parameters.push(...result);
101
+ }
102
+ }
103
+ const operationId = operationItem.operationId;
104
+ const adaptiveCardPath = path_1.default.join(adaptiveCardFolder, operationId + ".json");
105
+ const command = {
106
+ context: ["compose"],
107
+ type: "query",
108
+ title: (_a = operationItem.summary) !== null && _a !== void 0 ? _a : "",
109
+ id: operationId,
110
+ parameters: parameters,
111
+ apiResponseRenderingTemplateFile: (await fs_extra_1.default.pathExists(adaptiveCardPath))
112
+ ? utils_1.getRelativePath(manifestPath, adaptiveCardPath)
113
+ : "",
114
+ };
115
+ commands.push(command);
116
+ if (parameters.length === 0) {
117
+ warnings.push({
118
+ type: interfaces_1.WarningType.OperationOnlyContainsOptionalParam,
119
+ content: util_1.format(constants_1.ConstantString.OperationOnlyContainsOptionalParam, operationId),
120
+ data: operationId,
121
+ });
122
+ }
123
+ }
59
124
  }
60
- const adaptiveCardPath = path_1.default.join(adaptiveCardFolder, operationItem.operationId + ".json");
61
- const command = {
62
- context: ["compose"],
63
- type: "query",
64
- title: (_a = operationItem.summary) !== null && _a !== void 0 ? _a : "",
65
- id: operationItem.operationId,
66
- parameters: parameters,
67
- apiResponseRenderingTemplate: utils_1.getRelativePath(manifestPath, adaptiveCardPath),
68
- };
69
- commands.push(command);
70
125
  }
71
126
  }
72
127
  }
73
128
  }
74
- return commands;
129
+ return [commands, warnings];
75
130
  }
76
131
  exports.generateCommands = generateCommands;
77
132
  //# sourceMappingURL=manifestUpdater.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifestUpdater.js","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;;AAIb,gEAA0B;AAC1B,wDAAwB;AACxB,mCAA6D;AAEtD,KAAK,UAAU,cAAc,CAClC,YAAoB,EACpB,cAAsB,EACtB,kBAA0B,EAC1B,IAAwB;;IAExB,gFAAgF;IAChF,MAAM,gBAAgB,GAAoB,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE1E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;IAC1E,MAAM,gBAAgB,GAAqB;QACzC,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,cAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC1C,QAAQ,EAAE,QAAQ;KACnB,CAAC;IAEF,MAAM,WAAW,GAAoB;QACnC,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;SACtB;QACD,WAAW,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACtB,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,CAAC,WAAW,mCAAI,EAAE;SAClC;QACD,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;KACtC,CAAC;IAEF,MAAM,eAAe,mCAAQ,gBAAgB,GAAK,WAAW,CAAE,CAAC;IAEhE,OAAO,eAAe,CAAC;AACzB,CAAC;AA/BD,wCA+BC;AAED,SAAgB,gBAAgB,CAC9B,IAAwB,EACxB,kBAA0B,EAC1B,YAAoB;;IAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,IAAI,KAAK,EAAE;QACT,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE;YAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,QAAQ,EAAE;gBACZ,MAAM,UAAU,GAAG,QAAQ,CAAC;gBAE5B,oCAAoC;gBACpC,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC;gBAErC,IAAI,aAAa,EAAE;oBACjB,MAAM,UAAU,GAAgB,EAAE,CAAC;oBACnC,MAAM,WAAW,GAAG,aAAa,CAAC,UAAU,CAAC;oBAE7C,IAAI,WAAW,EAAE;wBACf,WAAW,CAAC,OAAO,CAAC,CAAC,KAA4D,EAAE,EAAE;;4BACnF,KAAK,GAAG,KAAkC,CAAC;4BAC3C,UAAU,CAAC,IAAI,CAAC;gCACd,IAAI,EAAE,KAAK,CAAC,IAAI;gCAChB,KAAK,EAAE,yBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;gCACpC,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,EAAE;6BACrC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;qBACJ;oBAED,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAChC,kBAAkB,EAClB,aAAa,CAAC,WAAY,GAAG,OAAO,CACrC,CAAC;oBAEF,MAAM,OAAO,GAAY;wBACvB,OAAO,EAAE,CAAC,SAAS,CAAC;wBACpB,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,MAAA,aAAa,CAAC,OAAO,mCAAI,EAAE;wBAClC,EAAE,EAAE,aAAa,CAAC,WAAY;wBAC9B,UAAU,EAAE,UAAU;wBACtB,4BAA4B,EAAE,uBAAe,CAAC,YAAY,EAAE,gBAAgB,CAAC;qBAC9E,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACxB;aACF;SACF;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAnDD,4CAmDC"}
1
+ {"version":3,"file":"manifestUpdater.js","sourceRoot":"","sources":["../../../src/common/spec-parser/manifestUpdater.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
- export declare function specFilter(filter: string[], unResolveSpec: OpenAPIV3.Document): OpenAPIV3.Document;
2
+ export declare function specFilter(filter: string[], unResolveSpec: OpenAPIV3.Document, resolvedSpec: OpenAPIV3.Document): OpenAPIV3.Document;
3
3
  //# sourceMappingURL=specFilter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"specFilter.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAK1C,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,SAAS,CAAC,QAAQ,GAChC,SAAS,CAAC,QAAQ,CA8BpB"}
1
+ {"version":3,"file":"specFilter.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAM1C,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EAAE,EAChB,aAAa,EAAE,SAAS,CAAC,QAAQ,EACjC,YAAY,EAAE,SAAS,CAAC,QAAQ,GAC/B,SAAS,CAAC,QAAQ,CAkCpB"}
@@ -4,44 +4,37 @@
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.specFilter = void 0;
6
6
  const utils_1 = require("./utils");
7
- const allMethodNames = ["get", "post", "put", "delete", "patch", "head", "options", "trace"];
8
- function specFilter(filter, unResolveSpec) {
9
- const newSpec = Object.assign({}, unResolveSpec);
10
- const newPaths = {};
11
- for (const filterItem of filter) {
12
- const [method, path] = filterItem.split(" ");
13
- const methodName = method.toLowerCase();
14
- if (!utils_1.isSupportedApi(methodName, path, unResolveSpec)) {
15
- continue;
16
- }
17
- if (!newPaths[path]) {
18
- newPaths[path] = Object.assign({}, unResolveSpec.paths[path]);
19
- for (const m of allMethodNames) {
20
- delete newPaths[path][m];
7
+ const specParserError_1 = require("./specParserError");
8
+ const interfaces_1 = require("./interfaces");
9
+ const constants_1 = require("./constants");
10
+ function specFilter(filter, unResolveSpec, resolvedSpec) {
11
+ try {
12
+ const newSpec = Object.assign({}, unResolveSpec);
13
+ const newPaths = {};
14
+ for (const filterItem of filter) {
15
+ const [method, path] = filterItem.split(" ");
16
+ const methodName = method.toLowerCase();
17
+ if (!utils_1.isSupportedApi(methodName, path, resolvedSpec)) {
18
+ continue;
19
+ }
20
+ if (!newPaths[path]) {
21
+ newPaths[path] = Object.assign({}, unResolveSpec.paths[path]);
22
+ for (const m of constants_1.ConstantString.AllOperationMethods) {
23
+ delete newPaths[path][m];
24
+ }
25
+ }
26
+ newPaths[path][methodName] = unResolveSpec.paths[path][methodName];
27
+ // Add the operationId if missing
28
+ if (!newPaths[path][methodName].operationId) {
29
+ newPaths[path][methodName].operationId = `${methodName}${utils_1.convertPathToCamelCase(path)}`;
21
30
  }
22
31
  }
23
- newPaths[path][methodName] = unResolveSpec.paths[path][methodName];
24
- // Add the operationId if missing
25
- if (!newPaths[path][methodName].operationId) {
26
- newPaths[path][methodName].operationId = `${methodName}${convertPathToCamelCase(path)}`;
27
- }
32
+ newSpec.paths = newPaths;
33
+ return newSpec;
34
+ }
35
+ catch (err) {
36
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.FilterSpecFailed);
28
37
  }
29
- newSpec.paths = newPaths;
30
- return newSpec;
31
38
  }
32
39
  exports.specFilter = specFilter;
33
- function convertPathToCamelCase(path) {
34
- const pathSegments = path.split("/");
35
- const camelCaseSegments = pathSegments.map((segment) => {
36
- if (segment.startsWith("{")) {
37
- const name = segment.substring(1, segment.length - 1);
38
- return name.charAt(0).toUpperCase() + name.slice(1);
39
- }
40
- else {
41
- return segment;
42
- }
43
- });
44
- const camelCasePath = camelCaseSegments.join("");
45
- return camelCasePath.charAt(0).toUpperCase() + camelCasePath.slice(1);
46
- }
47
40
  //# sourceMappingURL=specFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"specFilter.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAGb,mCAAyC;AAEzC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAE7F,SAAgB,UAAU,CACxB,MAAgB,EAChB,aAAiC;IAEjC,MAAM,OAAO,qBAAQ,aAAa,CAAE,CAAC;IACrC,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAC3C,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE;QAC/B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAExC,IAAI,CAAC,sBAAc,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE;YACpD,SAAS;SACV;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACnB,QAAQ,CAAC,IAAI,CAAC,qBAAQ,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE,CAAC;YAClD,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE;gBAC9B,OAAQ,QAAQ,CAAC,IAAI,CAAS,CAAC,CAAC,CAAC,CAAC;aACnC;SACF;QAEA,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,GAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC;QAErF,iCAAiC;QACjC,IAAI,CAAE,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;YACnD,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,GAAG,GAAG,UAAU,GAAG,sBAAsB,CACtF,IAAI,CACL,EAAE,CAAC;SACL;KACF;IAED,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;IACzB,OAAO,OAAO,CAAC;AACjB,CAAC;AAjCD,gCAiCC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACrD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACrD;aAAM;YACL,OAAO,OAAO,CAAC;SAChB;IACH,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"specFilter.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specFilter.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAGb,mCAAiE;AACjE,uDAAoD;AACpD,6CAAyC;AACzC,2CAA6C;AAE7C,SAAgB,UAAU,CACxB,MAAgB,EAChB,aAAiC,EACjC,YAAgC;IAEhC,IAAI;QACF,MAAM,OAAO,qBAAQ,aAAa,CAAE,CAAC;QACrC,MAAM,QAAQ,GAA0B,EAAE,CAAC;QAC3C,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE;YAC/B,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAExC,IAAI,CAAC,sBAAc,CAAC,UAAU,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE;gBACnD,SAAS;aACV;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACnB,QAAQ,CAAC,IAAI,CAAC,qBAAQ,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,0BAAc,CAAC,mBAAmB,EAAE;oBAClD,OAAQ,QAAQ,CAAC,IAAI,CAAS,CAAC,CAAC,CAAC,CAAC;iBACnC;aACF;YAEA,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,GAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC;YAErF,iCAAiC;YACjC,IAAI,CAAE,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE;gBACnD,QAAQ,CAAC,IAAI,CAAS,CAAC,UAAU,CAAC,CAAC,WAAW,GAAG,GAAG,UAAU,GAAG,8BAAsB,CACtF,IAAI,CACL,EAAE,CAAC;aACL;SACF;QAED,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;QACzB,OAAO,OAAO,CAAC;KAChB;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,gBAAgB,CAAC,CAAC;KAClF;AACH,CAAC;AAtCD,gCAsCC"}
@@ -1,5 +1,5 @@
1
1
  import SwaggerParser from "@apidevtools/swagger-parser";
2
- import { ValidateResult } from "./interfaces";
2
+ import { GenerateResult, ValidateResult } from "./interfaces";
3
3
  /**
4
4
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
5
5
  */
@@ -9,6 +9,7 @@ export declare class SpecParser {
9
9
  private apiMap;
10
10
  private spec;
11
11
  private unResolveSpec;
12
+ private isSwaggerFile;
12
13
  /**
13
14
  * Creates a new instance of the SpecParser class.
14
15
  * @param path The URL or file path of the OpenAPI specification file. The OpenAPI specification file must have a version of 3.0 or higher.
@@ -26,6 +27,11 @@ export declare class SpecParser {
26
27
  * according to copilot plugin spec, only list get and post method without auth
27
28
  */
28
29
  list(): Promise<string[]>;
30
+ /**
31
+ * List all the OpenAPI operations in the specification file and return a map of operationId and operation path.
32
+ * @returns A map of operationId and operation path, such as [{'getPetById': 'GET /pets/{petId}'}, {'getUser': 'GET /user/{userId}'}]
33
+ */
34
+ listOperationMap(): Promise<Map<string, string>>;
29
35
  /**
30
36
  * Generates and update artifacts from the OpenAPI specification file. Generate Adaptive Cards, update Teams app manifest, and generate a new OpenAPI specification file.
31
37
  * @param manifestPath A file path of the Teams app manifest file to update.
@@ -33,7 +39,7 @@ export declare class SpecParser {
33
39
  * @param outputSpecPath File path of the new OpenAPI specification file to generate. If not specified or empty, no spec file will be generated.
34
40
  * @param adaptiveCardFolder Folder path where the Adaptive Card files will be generated. If not specified or empty, Adaptive Card files will not be generated.
35
41
  */
36
- generate(manifestPath: string, filter: string[], outputSpecPath: string, adaptiveCardFolder: string, signal?: AbortSignal): Promise<void>;
42
+ generate(manifestPath: string, filter: string[], outputSpecPath: string, adaptiveCardFolder: string, signal?: AbortSignal): Promise<GenerateResult>;
37
43
  private loadSpec;
38
44
  private getAllSupportedApi;
39
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"specParser.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"AAKA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AAGxD,OAAO,EAIL,cAAc,EAIf,MAAM,cAAc,CAAC;AAUtB;;GAEG;AACH,qBAAa,UAAU;IACrB,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,MAAM,EAAE,aAAa,CAAC;IAEtC,OAAO,CAAC,MAAM,CAA0D;IACxE,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,aAAa,CAAiC;IAEtD;;;OAGG;gBACS,IAAI,EAAE,MAAM;IAKxB;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IA4FzC;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU/B;;;;;;OAMG;IACG,QAAQ,CACZ,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC;YAkCF,QAAQ;IAQtB,OAAO,CAAC,kBAAkB;CAqB3B"}
1
+ {"version":3,"file":"specParser.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"AAKA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AAIxD,OAAO,EAIL,cAAc,EACd,cAAc,EAIf,MAAM,cAAc,CAAC;AAUtB;;GAEG;AACH,qBAAa,UAAU;IACrB,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,MAAM,EAAE,aAAa,CAAC;IAEtC,OAAO,CAAC,MAAM,CAA0D;IACxE,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,aAAa,CAAsB;IAE3C;;;OAGG;gBACS,IAAI,EAAE,MAAM;IAKxB;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAsFzC;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU/B;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAqBtD;;;;;;OAMG;IACG,QAAQ,CACZ,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC;YA0EZ,QAAQ;IAetB,OAAO,CAAC,kBAAkB;CAqB3B"}
@@ -7,6 +7,7 @@ const tslib_1 = require("tslib");
7
7
  const util = tslib_1.__importStar(require("util"));
8
8
  const swagger_parser_1 = tslib_1.__importDefault(require("@apidevtools/swagger-parser"));
9
9
  const specParserError_1 = require("./specParserError");
10
+ const swagger2openapi_1 = tslib_1.__importDefault(require("swagger2openapi"));
10
11
  const interfaces_1 = require("./interfaces");
11
12
  const constants_1 = require("./constants");
12
13
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
@@ -34,89 +35,80 @@ class SpecParser {
34
35
  * @returns A validation result object that contains information about any errors or warnings in the specification file.
35
36
  */
36
37
  async validate() {
37
- const errors = [];
38
- const warnings = [];
39
38
  try {
40
- await this.loadSpec();
41
- await this.parser.validate(this.spec);
42
- }
43
- catch (e) {
44
- // Spec not valid
45
- errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
46
- return {
47
- status: interfaces_1.ValidationStatus.Error,
48
- warnings,
49
- errors,
50
- };
51
- }
52
- // Spec version not supported
53
- if (!this.spec.openapi || this.spec.openapi < "3.0.0") {
54
- errors.push({
55
- type: interfaces_1.ErrorType.VersionNotSupported,
56
- content: constants_1.ConstantString.SpecVersionNotSupported,
57
- });
39
+ const errors = [];
40
+ const warnings = [];
41
+ try {
42
+ await this.loadSpec();
43
+ await this.parser.validate(this.spec);
44
+ }
45
+ catch (e) {
46
+ // Spec not valid
47
+ errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
48
+ return {
49
+ status: interfaces_1.ValidationStatus.Error,
50
+ warnings,
51
+ errors,
52
+ };
53
+ }
54
+ if (this.isSwaggerFile) {
55
+ warnings.push({
56
+ type: interfaces_1.WarningType.ConvertSwaggerToOpenAPI,
57
+ content: constants_1.ConstantString.ConvertSwaggerToOpenAPI,
58
+ });
59
+ }
60
+ // Server validation
61
+ const serverErrors = utils_1.validateServer(this.spec);
62
+ errors.push(...serverErrors);
63
+ // Remote reference not supported
64
+ const refPaths = this.parser.$refs.paths();
65
+ // refPaths [0] is the current spec file path
66
+ if (refPaths.length > 1) {
67
+ errors.push({
68
+ type: interfaces_1.ErrorType.RemoteRefNotSupported,
69
+ content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
70
+ data: refPaths,
71
+ });
72
+ }
73
+ // No supported API
74
+ const apiMap = this.getAllSupportedApi(this.spec);
75
+ if (Object.keys(apiMap).length === 0) {
76
+ errors.push({
77
+ type: interfaces_1.ErrorType.NoSupportedApi,
78
+ content: constants_1.ConstantString.NoSupportedApi,
79
+ });
80
+ }
81
+ // OperationId missing
82
+ const apisMissingOperationId = [];
83
+ for (const key in apiMap) {
84
+ const pathObjectItem = apiMap[key];
85
+ if (!pathObjectItem.operationId) {
86
+ apisMissingOperationId.push(key);
87
+ }
88
+ }
89
+ if (apisMissingOperationId.length > 0) {
90
+ warnings.push({
91
+ type: interfaces_1.WarningType.OperationIdMissing,
92
+ content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
93
+ data: apisMissingOperationId,
94
+ });
95
+ }
96
+ let status = interfaces_1.ValidationStatus.Valid;
97
+ if (warnings.length > 0 && errors.length === 0) {
98
+ status = interfaces_1.ValidationStatus.Warning;
99
+ }
100
+ else if (errors.length > 0) {
101
+ status = interfaces_1.ValidationStatus.Error;
102
+ }
58
103
  return {
59
- status: interfaces_1.ValidationStatus.Error,
104
+ status,
60
105
  warnings,
61
106
  errors,
62
107
  };
63
108
  }
64
- // Server information invalid
65
- if (!this.spec.servers || this.spec.servers.length === 0) {
66
- errors.push({
67
- type: interfaces_1.ErrorType.NoServerInformation,
68
- content: constants_1.ConstantString.NoServerInformation,
69
- });
70
- }
71
- else if (this.spec.servers.length > 1) {
72
- errors.push({
73
- type: interfaces_1.ErrorType.MultipleServerInformation,
74
- content: constants_1.ConstantString.MultipleServerInformation,
75
- });
76
- }
77
- // Remote reference not supported
78
- const refPaths = this.parser.$refs.paths();
79
- // refPaths [0] is the current spec file path
80
- if (refPaths.length > 1) {
81
- errors.push({
82
- type: interfaces_1.ErrorType.RemoteRefNotSupported,
83
- content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
84
- });
85
- }
86
- // No supported API
87
- const apiMap = this.getAllSupportedApi(this.spec);
88
- if (Object.keys(apiMap).length === 0) {
89
- errors.push({
90
- type: interfaces_1.ErrorType.NoSupportedApi,
91
- content: constants_1.ConstantString.NoSupportedApi,
92
- });
93
- }
94
- // OperationId missing
95
- const apisMissingOperationId = [];
96
- for (const key in apiMap) {
97
- const pathObjectItem = apiMap[key];
98
- if (!pathObjectItem.operationId) {
99
- apisMissingOperationId.push(key);
100
- }
101
- }
102
- if (apisMissingOperationId.length > 0) {
103
- warnings.push({
104
- type: interfaces_1.WarningType.OperationIdMissing,
105
- content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
106
- });
107
- }
108
- let status = interfaces_1.ValidationStatus.Valid;
109
- if (warnings.length > 0 && errors.length === 0) {
110
- status = interfaces_1.ValidationStatus.Warning;
111
- }
112
- else if (errors.length > 0) {
113
- status = interfaces_1.ValidationStatus.Error;
109
+ catch (err) {
110
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ValidateFailed);
114
111
  }
115
- return {
116
- status,
117
- warnings,
118
- errors,
119
- };
120
112
  }
121
113
  /**
122
114
  * Lists all the OpenAPI operations in the specification file.
@@ -133,6 +125,31 @@ class SpecParser {
133
125
  throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListFailed);
134
126
  }
135
127
  }
128
+ /**
129
+ * List all the OpenAPI operations in the specification file and return a map of operationId and operation path.
130
+ * @returns A map of operationId and operation path, such as [{'getPetById': 'GET /pets/{petId}'}, {'getUser': 'GET /user/{userId}'}]
131
+ */
132
+ async listOperationMap() {
133
+ try {
134
+ await this.loadSpec();
135
+ const apiMap = this.getAllSupportedApi(this.spec);
136
+ const operationMap = new Map();
137
+ for (const key in apiMap) {
138
+ const pathObjectItem = apiMap[key];
139
+ let operationId = pathObjectItem.operationId;
140
+ if (!operationId) {
141
+ const [method, path] = key.split(" ");
142
+ const methodName = method.toLowerCase();
143
+ operationId = `${methodName}${utils_1.convertPathToCamelCase(path)}`;
144
+ }
145
+ operationMap.set(operationId, key);
146
+ }
147
+ return operationMap;
148
+ }
149
+ catch (err) {
150
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListOperationMapFailed);
151
+ }
152
+ }
136
153
  /**
137
154
  * Generates and update artifacts from the OpenAPI specification file. Generate Adaptive Cards, update Teams app manifest, and generate a new OpenAPI specification file.
138
155
  * @param manifestPath A file path of the Teams app manifest file to update.
@@ -141,33 +158,75 @@ class SpecParser {
141
158
  * @param adaptiveCardFolder Folder path where the Adaptive Card files will be generated. If not specified or empty, Adaptive Card files will not be generated.
142
159
  */
143
160
  async generate(manifestPath, filter, outputSpecPath, adaptiveCardFolder, signal) {
144
- var _a;
145
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
146
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
147
- }
148
- await this.loadSpec();
149
- const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec);
150
- let resultStr;
151
- if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
152
- resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
153
- }
154
- else {
155
- resultStr = JSON.stringify(newUnResolvedSpec, null, 2);
161
+ const result = {
162
+ allSuccess: true,
163
+ warnings: [],
164
+ };
165
+ try {
166
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
167
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
168
+ }
169
+ await this.loadSpec();
170
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
171
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
172
+ }
173
+ const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec);
174
+ let resultStr;
175
+ if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
176
+ resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
177
+ }
178
+ else {
179
+ resultStr = JSON.stringify(newUnResolvedSpec, null, 2);
180
+ }
181
+ await fs_extra_1.default.outputFile(outputSpecPath, resultStr);
182
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
183
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
184
+ }
185
+ const newSpec = (await this.parser.dereference(newUnResolvedSpec));
186
+ for (const url in newSpec.paths) {
187
+ for (const method in newSpec.paths[url]) {
188
+ if (method === constants_1.ConstantString.GetMethod || method === constants_1.ConstantString.PostMethod) {
189
+ const operation = newSpec.paths[url][method];
190
+ try {
191
+ const card = adaptiveCardGenerator_1.generateAdaptiveCard(operation);
192
+ const fileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.json`);
193
+ await fs_extra_1.default.outputJSON(fileName, card, { spaces: 2 });
194
+ }
195
+ catch (err) {
196
+ result.allSuccess = false;
197
+ result.warnings.push({
198
+ type: interfaces_1.WarningType.GenerateCardFailed,
199
+ content: err.toString(),
200
+ data: operation.operationId,
201
+ });
202
+ }
203
+ }
204
+ }
205
+ }
206
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
207
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
208
+ }
209
+ const [updatedManifest, warnings] = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec);
210
+ await fs_extra_1.default.outputJSON(manifestPath, updatedManifest, { spaces: 2 });
211
+ result.warnings.push(...warnings);
156
212
  }
157
- await fs_extra_1.default.writeFile(outputSpecPath, resultStr);
158
- const newSpec = (await this.parser.dereference(newUnResolvedSpec));
159
- const updatedManifest = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec);
160
- await fs_extra_1.default.writeJSON(manifestPath, updatedManifest, { spaces: 2 });
161
- for (const url in newSpec.paths) {
162
- const getOperation = (_a = newSpec.paths[url]) === null || _a === void 0 ? void 0 : _a.get;
163
- const card = adaptiveCardGenerator_1.generateAdaptiveCard(getOperation);
164
- const fileName = path_1.default.join(adaptiveCardFolder, `${getOperation.operationId}.json`);
165
- await fs_extra_1.default.outputJSON(fileName, card, { spaces: 2 });
213
+ catch (err) {
214
+ if (err instanceof specParserError_1.SpecParserError) {
215
+ throw err;
216
+ }
217
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.GenerateFailed);
166
218
  }
219
+ return result;
167
220
  }
168
221
  async loadSpec() {
169
222
  if (!this.spec) {
170
223
  this.unResolveSpec = (await this.parser.parse(this.specPath));
224
+ // Convert swagger 2.0 to openapi 3.0
225
+ if (!this.unResolveSpec.openapi && this.unResolveSpec.swagger === "2.0") {
226
+ const specObj = await swagger2openapi_1.default.convert(this.unResolveSpec, {});
227
+ this.unResolveSpec = specObj.openapi;
228
+ this.isSwaggerFile = true;
229
+ }
171
230
  const clonedUnResolveSpec = JSON.parse(JSON.stringify(this.unResolveSpec));
172
231
  this.spec = (await this.parser.dereference(clonedUnResolveSpec));
173
232
  }