@microsoft/teamsfx-core 2.0.6-alpha.da822cd72.0 → 2.0.6-alpha.dc4264a43.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 (350) hide show
  1. package/build/common/constants.d.ts +3 -2
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +3 -2
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/deps-checker/internal/funcToolChecker.d.ts +1 -1
  6. package/build/common/deps-checker/internal/funcToolChecker.d.ts.map +1 -1
  7. package/build/common/deps-checker/internal/funcToolChecker.js.map +1 -1
  8. package/build/common/deps-checker/internal/testToolChecker.d.ts.map +1 -1
  9. package/build/common/deps-checker/internal/testToolChecker.js +9 -3
  10. package/build/common/deps-checker/internal/testToolChecker.js.map +1 -1
  11. package/build/common/featureFlags.d.ts +3 -3
  12. package/build/common/featureFlags.d.ts.map +1 -1
  13. package/build/common/featureFlags.js +11 -12
  14. package/build/common/featureFlags.js.map +1 -1
  15. package/build/common/local/constants.d.ts +1 -0
  16. package/build/common/local/constants.d.ts.map +1 -1
  17. package/build/common/local/constants.js +1 -0
  18. package/build/common/local/constants.js.map +1 -1
  19. package/build/common/local/localCertificateManager.d.ts +5 -4
  20. package/build/common/local/localCertificateManager.d.ts.map +1 -1
  21. package/build/common/local/localCertificateManager.js +9 -2
  22. package/build/common/local/localCertificateManager.js.map +1 -1
  23. package/build/common/m365/launchHelper.d.ts +1 -1
  24. package/build/common/m365/launchHelper.d.ts.map +1 -1
  25. package/build/common/m365/launchHelper.js +2 -2
  26. package/build/common/m365/launchHelper.js.map +1 -1
  27. package/build/common/m365/packageService.d.ts +1 -0
  28. package/build/common/m365/packageService.d.ts.map +1 -1
  29. package/build/common/m365/packageService.js +85 -7
  30. package/build/common/m365/packageService.js.map +1 -1
  31. package/build/common/projectTypeChecker.d.ts +38 -0
  32. package/build/common/projectTypeChecker.d.ts.map +1 -0
  33. package/build/common/projectTypeChecker.js +217 -0
  34. package/build/common/projectTypeChecker.js.map +1 -0
  35. package/build/common/samples.d.ts +13 -7
  36. package/build/common/samples.d.ts.map +1 -1
  37. package/build/common/samples.js +83 -49
  38. package/build/common/samples.js.map +1 -1
  39. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +3 -2
  40. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +1 -1
  41. package/build/common/spec-parser/adaptiveCardGenerator.js +51 -23
  42. package/build/common/spec-parser/adaptiveCardGenerator.js.map +1 -1
  43. package/build/common/spec-parser/adaptiveCardWrapper.d.ts.map +1 -1
  44. package/build/common/spec-parser/adaptiveCardWrapper.js.map +1 -1
  45. package/build/common/spec-parser/constants.d.ts +23 -14
  46. package/build/common/spec-parser/constants.d.ts.map +1 -1
  47. package/build/common/spec-parser/constants.js +23 -15
  48. package/build/common/spec-parser/constants.js.map +1 -1
  49. package/build/common/spec-parser/index.browser.d.ts +6 -0
  50. package/build/common/spec-parser/index.browser.d.ts.map +1 -0
  51. package/build/common/spec-parser/index.browser.js +16 -0
  52. package/build/common/spec-parser/index.browser.js.map +1 -0
  53. package/build/common/spec-parser/index.d.ts +5 -0
  54. package/build/common/spec-parser/index.d.ts.map +1 -0
  55. package/build/common/spec-parser/index.js +16 -0
  56. package/build/common/spec-parser/index.js.map +1 -0
  57. package/build/common/spec-parser/interfaces.d.ts +39 -5
  58. package/build/common/spec-parser/interfaces.d.ts.map +1 -1
  59. package/build/common/spec-parser/interfaces.js +3 -3
  60. package/build/common/spec-parser/interfaces.js.map +1 -1
  61. package/build/common/spec-parser/manifestUpdater.d.ts +4 -4
  62. package/build/common/spec-parser/manifestUpdater.d.ts.map +1 -1
  63. package/build/common/spec-parser/manifestUpdater.js +30 -105
  64. package/build/common/spec-parser/manifestUpdater.js.map +1 -1
  65. package/build/common/spec-parser/specFilter.d.ts +1 -1
  66. package/build/common/spec-parser/specFilter.d.ts.map +1 -1
  67. package/build/common/spec-parser/specFilter.js +2 -2
  68. package/build/common/spec-parser/specFilter.js.map +1 -1
  69. package/build/common/spec-parser/specParser.browser.d.ts +46 -0
  70. package/build/common/spec-parser/specParser.browser.d.ts.map +1 -0
  71. package/build/common/spec-parser/specParser.browser.js +138 -0
  72. package/build/common/spec-parser/specParser.browser.js.map +1 -0
  73. package/build/common/spec-parser/specParser.d.ts +11 -11
  74. package/build/common/spec-parser/specParser.d.ts.map +1 -1
  75. package/build/common/spec-parser/specParser.js +117 -128
  76. package/build/common/spec-parser/specParser.js.map +1 -1
  77. package/build/common/spec-parser/utils.d.ts +15 -5
  78. package/build/common/spec-parser/utils.d.ts.map +1 -1
  79. package/build/common/spec-parser/utils.js +277 -41
  80. package/build/common/spec-parser/utils.js.map +1 -1
  81. package/build/common/telemetry.d.ts +23 -2
  82. package/build/common/telemetry.d.ts.map +1 -1
  83. package/build/common/telemetry.js +40 -1
  84. package/build/common/telemetry.js.map +1 -1
  85. package/build/common/templates-config.json +2 -2
  86. package/build/common/tools.d.ts.map +1 -1
  87. package/build/common/tools.js +1 -1
  88. package/build/common/tools.js.map +1 -1
  89. package/build/component/configManager/lifecycle.d.ts +1 -0
  90. package/build/component/configManager/lifecycle.d.ts.map +1 -1
  91. package/build/component/configManager/lifecycle.js +17 -5
  92. package/build/component/configManager/lifecycle.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/coordinator/index.d.ts +2 -1
  97. package/build/component/coordinator/index.d.ts.map +1 -1
  98. package/build/component/coordinator/index.js +15 -10
  99. package/build/component/coordinator/index.js.map +1 -1
  100. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  101. package/build/component/developerPortalScaffoldUtils.js +32 -0
  102. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  103. package/build/component/driver/aad/create.js +1 -1
  104. package/build/component/driver/aad/create.js.map +1 -1
  105. package/build/component/driver/aad/error/invalidFieldInManifestError.js +1 -1
  106. package/build/component/driver/aad/error/invalidFieldInManifestError.js.map +1 -1
  107. package/build/component/driver/aad/permissions/index.d.ts +3 -0
  108. package/build/component/driver/aad/permissions/index.d.ts.map +1 -1
  109. package/build/component/driver/aad/permissions/index.js +34 -1
  110. package/build/component/driver/aad/permissions/index.js.map +1 -1
  111. package/build/component/driver/aad/permissions/permissions.json +42 -42
  112. package/build/component/driver/aad/update.d.ts +1 -0
  113. package/build/component/driver/aad/update.d.ts.map +1 -1
  114. package/build/component/driver/aad/update.js +19 -17
  115. package/build/component/driver/aad/update.js.map +1 -1
  116. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  117. package/build/component/driver/aad/utility/aadAppClient.js +9 -9
  118. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  119. package/build/component/driver/aad/utility/constants.js +1 -1
  120. package/build/component/driver/aad/utility/constants.js.map +1 -1
  121. package/build/component/driver/add/addWebPart.d.ts.map +1 -1
  122. package/build/component/driver/add/addWebPart.js +2 -0
  123. package/build/component/driver/add/addWebPart.js.map +1 -1
  124. package/build/component/driver/add/interface/AddWebPartArgs.d.ts +4 -0
  125. package/build/component/driver/add/interface/AddWebPartArgs.d.ts.map +1 -1
  126. package/build/component/driver/apiKey/create.d.ts +17 -0
  127. package/build/component/driver/apiKey/create.d.ts.map +1 -0
  128. package/build/component/driver/apiKey/create.js +226 -0
  129. package/build/component/driver/apiKey/create.js.map +1 -0
  130. package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.d.ts +5 -0
  131. package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.d.ts.map +1 -0
  132. package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.js +22 -0
  133. package/build/component/driver/apiKey/error/apiKeyClientSecretInvalid.js.map +1 -0
  134. package/build/component/driver/apiKey/error/apiKeyDomainInvalid.d.ts +5 -0
  135. package/build/component/driver/apiKey/error/apiKeyDomainInvalid.d.ts.map +1 -0
  136. package/build/component/driver/apiKey/error/apiKeyDomainInvalid.js +22 -0
  137. package/build/component/driver/apiKey/error/apiKeyDomainInvalid.js.map +1 -0
  138. package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.d.ts +5 -0
  139. package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.d.ts.map +1 -0
  140. package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.js +21 -0
  141. package/build/component/driver/apiKey/error/apiKeyFailedToGetDomain.js.map +1 -0
  142. package/build/component/driver/apiKey/error/apiKeyNameTooLong.d.ts +5 -0
  143. package/build/component/driver/apiKey/error/apiKeyNameTooLong.d.ts.map +1 -0
  144. package/build/component/driver/apiKey/error/apiKeyNameTooLong.js +21 -0
  145. package/build/component/driver/apiKey/error/apiKeyNameTooLong.js.map +1 -0
  146. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts +7 -0
  147. package/build/component/driver/apiKey/interface/createApiKeyArgs.d.ts.map +1 -0
  148. package/build/component/driver/apiKey/interface/createApiKeyArgs.js +5 -0
  149. package/build/component/driver/apiKey/interface/createApiKeyArgs.js.map +1 -0
  150. package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts +7 -0
  151. package/build/component/driver/apiKey/interface/createApiKeyOutputs.d.ts.map +1 -0
  152. package/build/component/driver/apiKey/interface/createApiKeyOutputs.js +10 -0
  153. package/build/component/driver/apiKey/interface/createApiKeyOutputs.js.map +1 -0
  154. package/build/component/driver/apiKey/utility/constants.d.ts +10 -0
  155. package/build/component/driver/apiKey/utility/constants.d.ts.map +1 -0
  156. package/build/component/driver/apiKey/utility/constants.js +15 -0
  157. package/build/component/driver/apiKey/utility/constants.js.map +1 -0
  158. package/build/component/driver/deploy/azure/impl/azureDeployImpl.d.ts.map +1 -1
  159. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js +6 -6
  160. package/build/component/driver/deploy/azure/impl/azureDeployImpl.js.map +1 -1
  161. package/build/component/driver/index.d.ts +1 -0
  162. package/build/component/driver/index.d.ts.map +1 -1
  163. package/build/component/driver/index.js +1 -0
  164. package/build/component/driver/index.js.map +1 -1
  165. package/build/component/driver/script/scriptDriver.d.ts.map +1 -1
  166. package/build/component/driver/script/scriptDriver.js +2 -2
  167. package/build/component/driver/script/scriptDriver.js.map +1 -1
  168. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +13 -0
  169. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  170. package/build/component/driver/teamsApp/clients/appStudioClient.js +38 -0
  171. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  172. package/build/component/driver/teamsApp/constants.d.ts +2 -0
  173. package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
  174. package/build/component/driver/teamsApp/constants.js +2 -0
  175. package/build/component/driver/teamsApp/constants.js.map +1 -1
  176. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  177. package/build/component/driver/teamsApp/createAppPackage.js +26 -6
  178. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  179. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts +44 -0
  180. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.d.ts.map +1 -0
  181. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js +21 -0
  182. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistration.js.map +1 -0
  183. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.d.ts +15 -0
  184. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.d.ts.map +1 -0
  185. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.js +5 -0
  186. package/build/component/driver/teamsApp/interfaces/ApiSecretRegistrationClientSecret.js.map +1 -0
  187. package/build/component/driver/teamsApp/interfaces/appdefinitions/IValidationResult.d.ts +1 -1
  188. package/build/component/driver/teamsApp/interfaces/appdefinitions/IValidationResult.d.ts.map +1 -1
  189. package/build/component/driver/teamsApp/publishAppPackage.d.ts +1 -0
  190. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  191. package/build/component/driver/teamsApp/publishAppPackage.js +9 -9
  192. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  193. package/build/component/driver/teamsApp/teamsappMgr.d.ts +20 -0
  194. package/build/component/driver/teamsApp/teamsappMgr.d.ts.map +1 -0
  195. package/build/component/driver/teamsApp/teamsappMgr.js +278 -0
  196. package/build/component/driver/teamsApp/teamsappMgr.js.map +1 -0
  197. package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
  198. package/build/component/driver/teamsApp/validate.js +7 -2
  199. package/build/component/driver/teamsApp/validate.js.map +1 -1
  200. package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
  201. package/build/component/driver/teamsApp/validateAppPackage.js +35 -7
  202. package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
  203. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  204. package/build/component/generator/copilotPlugin/generator.js +47 -30
  205. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  206. package/build/component/generator/copilotPlugin/helper.d.ts +4 -2
  207. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  208. package/build/component/generator/copilotPlugin/helper.js +106 -21
  209. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  210. package/build/component/generator/error.d.ts +0 -6
  211. package/build/component/generator/error.d.ts.map +1 -1
  212. package/build/component/generator/error.js +1 -13
  213. package/build/component/generator/error.js.map +1 -1
  214. package/build/component/generator/generator.d.ts +5 -1
  215. package/build/component/generator/generator.d.ts.map +1 -1
  216. package/build/component/generator/generator.js +18 -13
  217. package/build/component/generator/generator.js.map +1 -1
  218. package/build/component/generator/generatorAction.d.ts +3 -1
  219. package/build/component/generator/generatorAction.d.ts.map +1 -1
  220. package/build/component/generator/generatorAction.js +14 -12
  221. package/build/component/generator/generatorAction.js.map +1 -1
  222. package/build/component/generator/officeAddin/generator.js +1 -1
  223. package/build/component/generator/officeAddin/generator.js.map +1 -1
  224. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  225. package/build/component/generator/officeAddin/helperMethods.js +42 -38
  226. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  227. package/build/component/generator/spfx/spfxGenerator.d.ts.map +1 -1
  228. package/build/component/generator/spfx/spfxGenerator.js +7 -0
  229. package/build/component/generator/spfx/spfxGenerator.js.map +1 -1
  230. package/build/component/generator/spfx/utils/constants.d.ts +1 -14
  231. package/build/component/generator/spfx/utils/constants.d.ts.map +1 -1
  232. package/build/component/generator/spfx/utils/constants.js +1 -14
  233. package/build/component/generator/spfx/utils/constants.js.map +1 -1
  234. package/build/component/generator/utils.d.ts +3 -5
  235. package/build/component/generator/utils.d.ts.map +1 -1
  236. package/build/component/generator/utils.js +6 -16
  237. package/build/component/generator/utils.js.map +1 -1
  238. package/build/component/middleware/questionMW.d.ts +1 -1
  239. package/build/component/middleware/questionMW.d.ts.map +1 -1
  240. package/build/component/middleware/questionMW.js +4 -1
  241. package/build/component/middleware/questionMW.js.map +1 -1
  242. package/build/component/utils/ResourceGroupHelper.d.ts +1 -0
  243. package/build/component/utils/ResourceGroupHelper.d.ts.map +1 -1
  244. package/build/component/utils/ResourceGroupHelper.js +31 -1
  245. package/build/component/utils/ResourceGroupHelper.js.map +1 -1
  246. package/build/component/utils/common.d.ts +3 -1
  247. package/build/component/utils/common.d.ts.map +1 -1
  248. package/build/component/utils/common.js +11 -4
  249. package/build/component/utils/common.js.map +1 -1
  250. package/build/component/utils/envUtil.d.ts +1 -0
  251. package/build/component/utils/envUtil.d.ts.map +1 -1
  252. package/build/component/utils/envUtil.js +6 -1
  253. package/build/component/utils/envUtil.js.map +1 -1
  254. package/build/component/utils/metadataGraphPermssion.d.ts +16 -0
  255. package/build/component/utils/metadataGraphPermssion.d.ts.map +1 -0
  256. package/build/component/utils/metadataGraphPermssion.js +96 -0
  257. package/build/component/utils/metadataGraphPermssion.js.map +1 -0
  258. package/build/component/utils/metadataUtil.d.ts.map +1 -1
  259. package/build/component/utils/metadataUtil.js +2 -0
  260. package/build/component/utils/metadataUtil.js.map +1 -1
  261. package/build/core/FxCore.d.ts +23 -2
  262. package/build/core/FxCore.d.ts.map +1 -1
  263. package/build/core/FxCore.js +191 -27
  264. package/build/core/FxCore.js.map +1 -1
  265. package/build/core/middleware/projectMigratorV3.js +2 -2
  266. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  267. package/build/core/middleware/utils/debug/taskMigrator.js +1 -1
  268. package/build/error/common.d.ts +9 -0
  269. package/build/error/common.d.ts.map +1 -1
  270. package/build/error/common.js +34 -1
  271. package/build/error/common.js.map +1 -1
  272. package/build/error/teamsApp.d.ts +4 -1
  273. package/build/error/teamsApp.d.ts.map +1 -1
  274. package/build/error/teamsApp.js +13 -1
  275. package/build/error/teamsApp.js.map +1 -1
  276. package/build/index.d.ts +3 -0
  277. package/build/index.d.ts.map +1 -1
  278. package/build/index.js +7 -1
  279. package/build/index.js.map +1 -1
  280. package/build/question/create.d.ts +9 -7
  281. package/build/question/create.d.ts.map +1 -1
  282. package/build/question/create.js +144 -91
  283. package/build/question/create.js.map +1 -1
  284. package/build/question/generator.js +1 -3
  285. package/build/question/generator.js.map +1 -1
  286. package/build/question/index.d.ts +1 -0
  287. package/build/question/index.d.ts.map +1 -1
  288. package/build/question/index.js +3 -0
  289. package/build/question/index.js.map +1 -1
  290. package/build/question/inputs/CreateProjectInputs.d.ts +4 -4
  291. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  292. package/build/question/inputs/DeployAadManifestInputs.d.ts +1 -1
  293. package/build/question/inputs/DeployAadManifestInputs.d.ts.map +1 -1
  294. package/build/question/inputs/PermissionGrantInputs.d.ts +2 -2
  295. package/build/question/inputs/PermissionGrantInputs.d.ts.map +1 -1
  296. package/build/question/inputs/PermissionListInputs.d.ts +1 -1
  297. package/build/question/inputs/PermissionListInputs.d.ts.map +1 -1
  298. package/build/question/inputs/SPFxAddWebpartInputs.d.ts +2 -0
  299. package/build/question/inputs/SPFxAddWebpartInputs.d.ts.map +1 -1
  300. package/build/question/options/CreateProjectOptions.js +9 -9
  301. package/build/question/options/CreateProjectOptions.js.map +1 -1
  302. package/build/question/options/CreateSampleProjectOptions.d.ts.map +1 -1
  303. package/build/question/options/CreateSampleProjectOptions.js +5 -1
  304. package/build/question/options/CreateSampleProjectOptions.js.map +1 -1
  305. package/build/question/options/DeployAadManifestOptions.js +2 -2
  306. package/build/question/options/DeployAadManifestOptions.js.map +1 -1
  307. package/build/question/options/PermissionGrantOptions.js +2 -2
  308. package/build/question/options/PermissionGrantOptions.js.map +1 -1
  309. package/build/question/options/PermissionListOptions.js +2 -2
  310. package/build/question/options/PermissionListOptions.js.map +1 -1
  311. package/build/question/options/SPFxAddWebpartOptions.d.ts.map +1 -1
  312. package/build/question/options/SPFxAddWebpartOptions.js +9 -0
  313. package/build/question/options/SPFxAddWebpartOptions.js.map +1 -1
  314. package/build/question/other.d.ts +1 -0
  315. package/build/question/other.d.ts.map +1 -1
  316. package/build/question/other.js +86 -6
  317. package/build/question/other.js.map +1 -1
  318. package/build/question/questionNames.d.ts +2 -2
  319. package/build/question/questionNames.d.ts.map +1 -1
  320. package/build/question/questionNames.js +2 -2
  321. package/build/question/questionNames.js.map +1 -1
  322. package/build/ui/visitor.d.ts.map +1 -1
  323. package/build/ui/visitor.js +11 -2
  324. package/build/ui/visitor.js.map +1 -1
  325. package/package.json +15 -20
  326. package/resource/package.nls.json +78 -59
  327. package/resource/yaml-schema/v1.3/yaml.schema.json +79 -32
  328. package/templates/core/v3Migration/csharp.app.local.yml +6 -6
  329. package/templates/core/v3Migration/csharp.app.yml +6 -6
  330. package/templates/core/v3Migration/js.ts.app.local.yml +11 -11
  331. package/templates/core/v3Migration/js.ts.app.yml +12 -12
  332. package/templates/fallback/common.zip +0 -0
  333. package/templates/fallback/csharp.zip +0 -0
  334. package/templates/fallback/js.zip +0 -0
  335. package/templates/fallback/ts.zip +0 -0
  336. package/templates/plugins/resource/aad/auth/V3/Bot/Pages/BotAuthorizeEndPage.cshtml +55 -51
  337. package/templates/plugins/resource/aad/auth/V3/Enable SSO.txt +2 -2
  338. package/templates/plugins/resource/aad/auth/bot/README.md +13 -13
  339. package/templates/plugins/resource/aad/auth/bot/README.txt +7 -7
  340. package/templates/plugins/resource/aad/auth/bot/csharp/Pages/BotAuthorizeEndPage.cshtml +55 -51
  341. package/templates/plugins/resource/aad/auth/bot/js/public/auth-end.html +6 -2
  342. package/templates/plugins/resource/aad/auth/bot/ts/public/auth-end.html +5 -1
  343. package/templates/plugins/resource/aad/auth/tab/README.md +6 -6
  344. package/templates/plugins/resource/aad/auth/tab/README.txt +5 -5
  345. package/templates/plugins/resource/aad/auth/tab/js/public/auth-end.html +16 -9
  346. package/templates/plugins/resource/aad/auth/tab/js/public/auth-start.html +11 -7
  347. package/templates/plugins/resource/aad/auth/tab/js/sso/GetUserProfile.jsx +1 -1
  348. package/templates/plugins/resource/aad/auth/tab/ts/public/auth-end.html +16 -9
  349. package/templates/plugins/resource/aad/auth/tab/ts/public/auth-start.html +11 -7
  350. package/templates/plugins/resource/aad/auth/tab/ts/sso/GetUserProfile.tsx +1 -1
@@ -1,37 +1,37 @@
1
1
  import SwaggerParser from "@apidevtools/swagger-parser";
2
- import { GenerateResult, ValidateResult } from "./interfaces";
2
+ import { OpenAPIV3 } from "openapi-types";
3
+ import { APIInfo, GenerateResult, ListAPIResult, ParseOptions, ValidateResult } from "./interfaces";
3
4
  /**
4
5
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
5
6
  */
6
7
  export declare class SpecParser {
7
- readonly specPath: string;
8
+ readonly pathOrSpec: string | OpenAPIV3.Document;
8
9
  readonly parser: SwaggerParser;
10
+ readonly options: Required<ParseOptions>;
9
11
  private apiMap;
10
12
  private spec;
11
13
  private unResolveSpec;
12
14
  private isSwaggerFile;
15
+ private defaultOptions;
13
16
  /**
14
17
  * Creates a new instance of the SpecParser class.
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.
18
+ * @param pathOrDoc The path to the OpenAPI specification file or the OpenAPI specification object.
19
+ * @param options The options for parsing the OpenAPI specification file.
16
20
  */
17
- constructor(path: string);
21
+ constructor(pathOrDoc: string | OpenAPIV3.Document, options?: ParseOptions);
18
22
  /**
19
23
  * Validates the OpenAPI specification file and returns a validation result.
20
24
  *
21
25
  * @returns A validation result object that contains information about any errors or warnings in the specification file.
22
26
  */
23
27
  validate(): Promise<ValidateResult>;
28
+ listSupportedAPIInfo(): Promise<APIInfo[]>;
24
29
  /**
25
30
  * Lists all the OpenAPI operations in the specification file.
26
31
  * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
27
32
  * according to copilot plugin spec, only list get and post method without auth
28
33
  */
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>>;
34
+ list(): Promise<ListAPIResult[]>;
35
35
  /**
36
36
  * Generates and update artifacts from the OpenAPI specification file. Generate Adaptive Cards, update Teams app manifest, and generate a new OpenAPI specification file.
37
37
  * @param manifestPath A file path of the Teams app manifest file to update.
@@ -41,6 +41,6 @@ export declare class SpecParser {
41
41
  */
42
42
  generate(manifestPath: string, filter: string[], outputSpecPath: string, adaptiveCardFolder: string, signal?: AbortSignal): Promise<GenerateResult>;
43
43
  private loadSpec;
44
- private getAllSupportedApi;
44
+ private getAllSupportedAPIs;
45
45
  }
46
46
  //# sourceMappingURL=specParser.d.ts.map
@@ -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;AAIxD,OAAO,EAIL,cAAc,EACd,cAAc,EAIf,MAAM,cAAc,CAAC;AAWtB;;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;YA2EZ,QAAQ;IAetB,OAAO,CAAC,kBAAkB;CAqB3B"}
1
+ {"version":3,"file":"specParser.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"AAIA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAK1C,OAAO,EACL,OAAO,EAEP,cAAc,EACd,aAAa,EACb,YAAY,EACZ,cAAc,EAGf,MAAM,cAAc,CAAC;AActB;;GAEG;AACH,qBAAa,UAAU;IACrB,SAAgB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC;IACxD,SAAgB,MAAM,EAAE,aAAa,CAAC;IACtC,SAAgB,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEhD,OAAO,CAAC,MAAM,CAA0D;IACxE,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,aAAa,CAAsB;IAE3C,OAAO,CAAC,cAAc,CAKpB;IAEF;;;;OAIG;gBACS,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY;IAS1E;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAqCnC,oBAAoB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIhD;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAwDtC;;;;;;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;YAuHZ,QAAQ;IAetB,OAAO,CAAC,mBAAmB;CAe5B"}
@@ -4,19 +4,18 @@
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.SpecParser = void 0;
6
6
  const tslib_1 = require("tslib");
7
- const util = tslib_1.__importStar(require("util"));
8
7
  const swagger_parser_1 = tslib_1.__importDefault(require("@apidevtools/swagger-parser"));
9
- const specParserError_1 = require("./specParserError");
10
8
  const swagger2openapi_1 = tslib_1.__importDefault(require("swagger2openapi"));
11
- const interfaces_1 = require("./interfaces");
12
- const constants_1 = require("./constants");
13
9
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
14
10
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
11
+ const path_1 = tslib_1.__importDefault(require("path"));
12
+ const interfaces_1 = require("./interfaces");
13
+ const constants_1 = require("./constants");
14
+ const specParserError_1 = require("./specParserError");
15
15
  const specFilter_1 = require("./specFilter");
16
16
  const utils_1 = require("./utils");
17
17
  const manifestUpdater_1 = require("./manifestUpdater");
18
18
  const adaptiveCardGenerator_1 = require("./adaptiveCardGenerator");
19
- const path_1 = tslib_1.__importDefault(require("path"));
20
19
  const adaptiveCardWrapper_1 = require("./adaptiveCardWrapper");
21
20
  /**
22
21
  * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
@@ -24,11 +23,19 @@ const adaptiveCardWrapper_1 = require("./adaptiveCardWrapper");
24
23
  class SpecParser {
25
24
  /**
26
25
  * Creates a new instance of the SpecParser class.
27
- * @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
+ * @param pathOrDoc The path to the OpenAPI specification file or the OpenAPI specification object.
27
+ * @param options The options for parsing the OpenAPI specification file.
28
28
  */
29
- constructor(path) {
30
- this.specPath = path;
29
+ constructor(pathOrDoc, options) {
30
+ this.defaultOptions = {
31
+ allowMissingId: true,
32
+ allowSwagger: true,
33
+ allowAPIKeyAuth: false,
34
+ allowMultipleParameters: false,
35
+ };
36
+ this.pathOrSpec = pathOrDoc;
31
37
  this.parser = new swagger_parser_1.default();
38
+ this.options = Object.assign(Object.assign({}, this.defaultOptions), (options !== null && options !== void 0 ? options : {}));
32
39
  }
33
40
  /**
34
41
  * Validates the OpenAPI specification file and returns a validation result.
@@ -37,118 +44,86 @@ class SpecParser {
37
44
  */
38
45
  async validate() {
39
46
  try {
40
- const errors = [];
41
- const warnings = [];
42
47
  try {
43
48
  await this.loadSpec();
44
49
  await this.parser.validate(this.spec);
45
50
  }
46
51
  catch (e) {
47
- // Spec not valid
48
- errors.push({ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() });
49
52
  return {
50
53
  status: interfaces_1.ValidationStatus.Error,
51
- warnings,
52
- errors,
54
+ warnings: [],
55
+ errors: [{ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() }],
53
56
  };
54
57
  }
55
- if (this.isSwaggerFile) {
56
- warnings.push({
57
- type: interfaces_1.WarningType.ConvertSwaggerToOpenAPI,
58
- content: constants_1.ConstantString.ConvertSwaggerToOpenAPI,
59
- });
60
- }
61
- // Server validation
62
- const serverErrors = utils_1.validateServer(this.spec);
63
- errors.push(...serverErrors);
64
- // Remote reference not supported
65
- const refPaths = this.parser.$refs.paths();
66
- // refPaths [0] is the current spec file path
67
- if (refPaths.length > 1) {
68
- errors.push({
69
- type: interfaces_1.ErrorType.RemoteRefNotSupported,
70
- content: util.format(constants_1.ConstantString.RemoteRefNotSupported, refPaths.join(", ")),
71
- data: refPaths,
72
- });
73
- }
74
- // No supported API
75
- const apiMap = this.getAllSupportedApi(this.spec);
76
- if (Object.keys(apiMap).length === 0) {
77
- errors.push({
78
- type: interfaces_1.ErrorType.NoSupportedApi,
79
- content: constants_1.ConstantString.NoSupportedApi,
80
- });
81
- }
82
- // OperationId missing
83
- const apisMissingOperationId = [];
84
- for (const key in apiMap) {
85
- const pathObjectItem = apiMap[key];
86
- if (!pathObjectItem.operationId) {
87
- apisMissingOperationId.push(key);
88
- }
89
- }
90
- if (apisMissingOperationId.length > 0) {
91
- warnings.push({
92
- type: interfaces_1.WarningType.OperationIdMissing,
93
- content: util.format(constants_1.ConstantString.MissingOperationId, apisMissingOperationId.join(", ")),
94
- data: apisMissingOperationId,
95
- });
96
- }
97
- let status = interfaces_1.ValidationStatus.Valid;
98
- if (warnings.length > 0 && errors.length === 0) {
99
- status = interfaces_1.ValidationStatus.Warning;
100
- }
101
- else if (errors.length > 0) {
102
- status = interfaces_1.ValidationStatus.Error;
58
+ if (!this.options.allowSwagger && this.isSwaggerFile) {
59
+ return {
60
+ status: interfaces_1.ValidationStatus.Error,
61
+ warnings: [],
62
+ errors: [
63
+ { type: interfaces_1.ErrorType.SwaggerNotSupported, content: constants_1.ConstantString.SwaggerNotSupported },
64
+ ],
65
+ };
103
66
  }
104
- return {
105
- status,
106
- warnings,
107
- errors,
108
- };
67
+ return utils_1.validateSpec(this.spec, this.parser, !!this.isSwaggerFile, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters);
109
68
  }
110
69
  catch (err) {
111
70
  throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ValidateFailed);
112
71
  }
113
72
  }
73
+ // eslint-disable-next-line @typescript-eslint/require-await
74
+ async listSupportedAPIInfo() {
75
+ throw new Error("Method not implemented.");
76
+ }
114
77
  /**
115
78
  * Lists all the OpenAPI operations in the specification file.
116
79
  * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
117
80
  * according to copilot plugin spec, only list get and post method without auth
118
81
  */
119
82
  async list() {
83
+ var _a;
120
84
  try {
121
85
  await this.loadSpec();
122
- const apiMap = this.getAllSupportedApi(this.spec);
123
- return Array.from(Object.keys(apiMap));
124
- }
125
- catch (err) {
126
- throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListFailed);
127
- }
128
- }
129
- /**
130
- * List all the OpenAPI operations in the specification file and return a map of operationId and operation path.
131
- * @returns A map of operationId and operation path, such as [{'getPetById': 'GET /pets/{petId}'}, {'getUser': 'GET /user/{userId}'}]
132
- */
133
- async listOperationMap() {
134
- try {
135
- await this.loadSpec();
136
- const apiMap = this.getAllSupportedApi(this.spec);
137
- const operationMap = new Map();
138
- for (const key in apiMap) {
139
- const pathObjectItem = apiMap[key];
140
- let operationId = pathObjectItem.operationId;
86
+ const spec = this.spec;
87
+ const apiMap = this.getAllSupportedAPIs(spec);
88
+ const result = [];
89
+ for (const apiKey in apiMap) {
90
+ const apiResult = {
91
+ api: "",
92
+ server: "",
93
+ operationId: "",
94
+ };
95
+ const [method, path] = apiKey.split(" ");
96
+ const operation = apiMap[apiKey];
97
+ const rootServer = spec.servers && spec.servers[0];
98
+ const methodServer = spec.paths[path].servers && ((_a = spec.paths[path]) === null || _a === void 0 ? void 0 : _a.servers[0]);
99
+ const operationServer = operation.servers && operation.servers[0];
100
+ const serverUrl = operationServer || methodServer || rootServer;
101
+ if (!serverUrl) {
102
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.NoServerInformation, interfaces_1.ErrorType.NoServerInformation);
103
+ }
104
+ apiResult.server = serverUrl.url;
105
+ let operationId = operation.operationId;
141
106
  if (!operationId) {
142
- const [method, path] = key.split(" ");
143
- const methodName = method.toLowerCase();
144
- operationId = `${methodName}${utils_1.convertPathToCamelCase(path)}`;
107
+ operationId = `${method.toLowerCase()}${utils_1.convertPathToCamelCase(path)}`;
108
+ }
109
+ apiResult.operationId = operationId;
110
+ const apiKeyAuthArray = utils_1.getAPIKeyAuthArray(operation.security, spec);
111
+ for (const apiKeyAuth of apiKeyAuthArray) {
112
+ if (apiKeyAuth.length === 1) {
113
+ apiResult.auth = apiKeyAuth[0];
114
+ break;
115
+ }
145
116
  }
146
- operationMap.set(operationId, key);
117
+ apiResult.api = apiKey;
118
+ result.push(apiResult);
147
119
  }
148
- return operationMap;
120
+ return result;
149
121
  }
150
122
  catch (err) {
151
- throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListOperationMapFailed);
123
+ if (err instanceof specParserError_1.SpecParserError) {
124
+ throw err;
125
+ }
126
+ throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListFailed);
152
127
  }
153
128
  }
154
129
  /**
@@ -171,7 +146,38 @@ class SpecParser {
171
146
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
172
147
  throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
173
148
  }
174
- const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec);
149
+ const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters);
150
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
151
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
152
+ }
153
+ const newSpec = (await this.parser.dereference(newUnResolvedSpec));
154
+ const operationIdToAPIAuthKey = new Map();
155
+ let hasMultipleAPIKeyAuth = false;
156
+ let firstAuthKey;
157
+ for (const url in newSpec.paths) {
158
+ for (const method in newSpec.paths[url]) {
159
+ const operation = newSpec.paths[url][method];
160
+ const apiKeyAuthArr = utils_1.getAPIKeyAuthArray(operation.security, newSpec);
161
+ // Currently we don't support multiple apiKey auth
162
+ if (apiKeyAuthArr.length > 0 && apiKeyAuthArr.every((auths) => auths.length > 1)) {
163
+ hasMultipleAPIKeyAuth = true;
164
+ break;
165
+ }
166
+ if (apiKeyAuthArr && apiKeyAuthArr.length > 0) {
167
+ if (!firstAuthKey) {
168
+ firstAuthKey = apiKeyAuthArr[0][0];
169
+ }
170
+ else if (firstAuthKey.name !== apiKeyAuthArr[0][0].name) {
171
+ hasMultipleAPIKeyAuth = true;
172
+ break;
173
+ }
174
+ operationIdToAPIAuthKey.set(operation.operationId, apiKeyAuthArr[0][0]);
175
+ }
176
+ }
177
+ }
178
+ if (hasMultipleAPIKeyAuth) {
179
+ throw new specParserError_1.SpecParserError(constants_1.ConstantString.MultipleAPIKeyNotSupported, interfaces_1.ErrorType.MultipleAPIKeyNotSupported);
180
+ }
175
181
  let resultStr;
176
182
  if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
177
183
  resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
@@ -180,35 +186,29 @@ class SpecParser {
180
186
  resultStr = JSON.stringify(newUnResolvedSpec, null, 2);
181
187
  }
182
188
  await fs_extra_1.default.outputFile(outputSpecPath, resultStr);
183
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
184
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
185
- }
186
- const newSpec = (await this.parser.dereference(newUnResolvedSpec));
187
189
  for (const url in newSpec.paths) {
188
190
  for (const method in newSpec.paths[url]) {
189
- if (method === constants_1.ConstantString.GetMethod || method === constants_1.ConstantString.PostMethod) {
190
- const operation = newSpec.paths[url][method];
191
- try {
192
- const [card, jsonPath] = adaptiveCardGenerator_1.generateAdaptiveCard(operation);
193
- const fileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.json`);
194
- const wrappedCard = adaptiveCardWrapper_1.wrapAdaptiveCard(card, jsonPath);
195
- await fs_extra_1.default.outputJSON(fileName, wrappedCard, { spaces: 2 });
196
- }
197
- catch (err) {
198
- result.allSuccess = false;
199
- result.warnings.push({
200
- type: interfaces_1.WarningType.GenerateCardFailed,
201
- content: err.toString(),
202
- data: operation.operationId,
203
- });
204
- }
191
+ const operation = newSpec.paths[url][method];
192
+ try {
193
+ const [card, jsonPath] = adaptiveCardGenerator_1.generateAdaptiveCard(operation);
194
+ const fileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.json`);
195
+ const wrappedCard = adaptiveCardWrapper_1.wrapAdaptiveCard(card, jsonPath);
196
+ await fs_extra_1.default.outputJSON(fileName, wrappedCard, { spaces: 2 });
197
+ }
198
+ catch (err) {
199
+ result.allSuccess = false;
200
+ result.warnings.push({
201
+ type: interfaces_1.WarningType.GenerateCardFailed,
202
+ content: err.toString(),
203
+ data: operation.operationId,
204
+ });
205
205
  }
206
206
  }
207
207
  }
208
208
  if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
209
209
  throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
210
210
  }
211
- const [updatedManifest, warnings] = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec);
211
+ const [updatedManifest, warnings] = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec, this.options.allowMultipleParameters, firstAuthKey === null || firstAuthKey === void 0 ? void 0 : firstAuthKey.name);
212
212
  await fs_extra_1.default.outputJSON(manifestPath, updatedManifest, { spaces: 2 });
213
213
  result.warnings.push(...warnings);
214
214
  }
@@ -222,7 +222,7 @@ class SpecParser {
222
222
  }
223
223
  async loadSpec() {
224
224
  if (!this.spec) {
225
- this.unResolveSpec = (await this.parser.parse(this.specPath));
225
+ this.unResolveSpec = (await this.parser.parse(this.pathOrSpec));
226
226
  // Convert swagger 2.0 to openapi 3.0
227
227
  if (!this.unResolveSpec.openapi && this.unResolveSpec.swagger === "2.0") {
228
228
  const specObj = await swagger2openapi_1.default.convert(this.unResolveSpec, {});
@@ -233,22 +233,11 @@ class SpecParser {
233
233
  this.spec = (await this.parser.dereference(clonedUnResolveSpec));
234
234
  }
235
235
  }
236
- getAllSupportedApi(spec) {
236
+ getAllSupportedAPIs(spec) {
237
237
  if (this.apiMap !== undefined) {
238
238
  return this.apiMap;
239
239
  }
240
- const paths = spec.paths;
241
- const result = {};
242
- for (const path in paths) {
243
- const methods = paths[path];
244
- for (const method in methods) {
245
- // For developer preview, only support GET operation with only 1 parameter without auth
246
- if (utils_1.isSupportedApi(method, path, spec)) {
247
- const operationObject = methods[method];
248
- result[`${method.toUpperCase()} ${path}`] = operationObject;
249
- }
250
- }
251
- }
240
+ const result = utils_1.listSupportedAPIs(spec, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters);
252
241
  this.apiMap = result;
253
242
  return result;
254
243
  }
@@ -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":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;;AAEb,yFAAwD;AAExD,8EAAwC;AACxC,8DAA6B;AAC7B,gEAA0B;AAC1B,wDAAwB;AACxB,6CASsB;AACtB,2CAA6C;AAC7C,uDAAoD;AACpD,6CAA0C;AAC1C,mCAKiB;AACjB,uDAAmD;AACnD,mEAA+D;AAC/D,+DAAyD;AAEzD;;GAEG;AACH,MAAa,UAAU;IAiBrB;;;;OAIG;IACH,YAAY,SAAsC,EAAE,OAAsB;QAZlE,mBAAc,GAAiB;YACrC,cAAc,EAAE,IAAI;YACpB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,uBAAuB,EAAE,KAAK;SAC/B,CAAC;QAQA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,wBAAa,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,gCACV,IAAI,CAAC,cAAc,GACnB,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC,CACO,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ;QACZ,IAAI;YACF,IAAI;gBACF,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;aACxC;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO;oBACL,MAAM,EAAE,6BAAgB,CAAC,KAAK;oBAC9B,QAAQ,EAAE,EAAE;oBACZ,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAS,CAAC,YAAY,EAAE,OAAO,EAAG,CAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;iBAC7E,CAAC;aACH;YAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,EAAE;gBACpD,OAAO;oBACL,MAAM,EAAE,6BAAgB,CAAC,KAAK;oBAC9B,QAAQ,EAAE,EAAE;oBACZ,MAAM,EAAE;wBACN,EAAE,IAAI,EAAE,sBAAS,CAAC,mBAAmB,EAAE,OAAO,EAAE,0BAAc,CAAC,mBAAmB,EAAE;qBACrF;iBACF,CAAC;aACH;YAED,OAAO,oBAAY,CACjB,IAAI,CAAC,IAAK,EACV,IAAI,CAAC,MAAM,EACX,CAAC,CAAC,IAAI,CAAC,aAAa,EACpB,IAAI,CAAC,OAAO,CAAC,cAAc,EAC3B,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CACrC,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,cAAc,CAAC,CAAC;SAChF;IACH,CAAC;IAED,4DAA4D;IAC5D,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;;QACR,IAAI;YACF,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAK,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAoB,EAAE,CAAC;YACnC,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE;gBAC3B,MAAM,SAAS,GAAkB;oBAC/B,GAAG,EAAE,EAAE;oBACP,MAAM,EAAE,EAAE;oBACV,WAAW,EAAE,EAAE;iBAChB,CAAC;gBACF,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,OAAO,KAAI,MAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,0CAAE,OAAO,CAAE,CAAC,CAAC,CAAA,CAAC;gBAChF,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAElE,MAAM,SAAS,GAAG,eAAe,IAAI,YAAY,IAAI,UAAU,CAAC;gBAChE,IAAI,CAAC,SAAS,EAAE;oBACd,MAAM,IAAI,iCAAe,CACvB,0BAAc,CAAC,mBAAmB,EAClC,sBAAS,CAAC,mBAAmB,CAC9B,CAAC;iBACH;gBAED,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC;gBAEjC,IAAI,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;gBACxC,IAAI,CAAC,WAAW,EAAE;oBAChB,WAAW,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,8BAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;iBACxE;gBACD,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;gBAEpC,MAAM,eAAe,GAAG,0BAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAErE,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE;oBACxC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC3B,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wBAC/B,MAAM;qBACP;iBACF;gBAED,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACxB;YAED,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,iCAAe,EAAE;gBAClC,MAAM,GAAG,CAAC;aACX;YACD,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,UAAU,CAAC,CAAC;SAC5E;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,CACZ,YAAoB,EACpB,MAAgB,EAChB,cAAsB,EACtB,kBAA0B,EAC1B,MAAoB;QAEpB,MAAM,MAAM,GAAmB;YAC7B,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,IAAI;YACF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;gBACnB,MAAM,IAAI,iCAAe,CAAC,0BAAc,CAAC,gBAAgB,EAAE,sBAAS,CAAC,SAAS,CAAC,CAAC;aACjF;YAED,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;gBACnB,MAAM,IAAI,iCAAe,CAAC,0BAAc,CAAC,gBAAgB,EAAE,sBAAS,CAAC,SAAS,CAAC,CAAC;aACjF;YAED,MAAM,iBAAiB,GAAG,uBAAU,CAClC,MAAM,EACN,IAAI,CAAC,aAAc,EACnB,IAAI,CAAC,IAAK,EACV,IAAI,CAAC,OAAO,CAAC,cAAc,EAC3B,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CACrC,CAAC;YAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;gBACnB,MAAM,IAAI,iCAAe,CAAC,0BAAc,CAAC,gBAAgB,EAAE,sBAAS,CAAC,SAAS,CAAC,CAAC;aACjF;YAED,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAuB,CAAC;YAEzF,MAAM,uBAAuB,GAAgD,IAAI,GAAG,EAAE,CAAC;YACvF,IAAI,qBAAqB,GAAG,KAAK,CAAC;YAClC,IAAI,YAAwD,CAAC;YAE7D,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE;gBAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,SAAS,GAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAS,CAAC,MAAM,CAA8B,CAAC;oBAEnF,MAAM,aAAa,GAAG,0BAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAEtE,kDAAkD;oBAClD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;wBAChF,qBAAqB,GAAG,IAAI,CAAC;wBAC7B,MAAM;qBACP;oBAED,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC7C,IAAI,CAAC,YAAY,EAAE;4BACjB,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBACpC;6BAAM,IAAI,YAAY,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;4BACzD,qBAAqB,GAAG,IAAI,CAAC;4BAC7B,MAAM;yBACP;wBACD,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,WAAY,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC1E;iBACF;aACF;YAED,IAAI,qBAAqB,EAAE;gBACzB,MAAM,IAAI,iCAAe,CACvB,0BAAc,CAAC,0BAA0B,EACzC,sBAAS,CAAC,0BAA0B,CACrC,CAAC;aACH;YAED,IAAI,SAAS,CAAC;YACd,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACvE,SAAS,GAAG,iBAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;aAC5C;iBAAM;gBACL,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aACxD;YACD,MAAM,kBAAE,CAAC,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;YAE/C,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE;gBAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,SAAS,GAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAS,CAAC,MAAM,CAA8B,CAAC;oBAEnF,IAAI;wBACF,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,4CAAoB,CAAC,SAAS,CAAC,CAAC;wBACzD,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,SAAS,CAAC,WAAY,OAAO,CAAC,CAAC;wBACjF,MAAM,WAAW,GAAG,sCAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;wBACrD,MAAM,kBAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;qBAC3D;oBAAC,OAAO,GAAG,EAAE;wBACZ,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;wBAC1B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACnB,IAAI,EAAE,wBAAW,CAAC,kBAAkB;4BACpC,OAAO,EAAG,GAAa,CAAC,QAAQ,EAAE;4BAClC,IAAI,EAAE,SAAS,CAAC,WAAY;yBAC7B,CAAC,CAAC;qBACJ;iBACF;aACF;YAED,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;gBACnB,MAAM,IAAI,iCAAe,CAAC,0BAAc,CAAC,gBAAgB,EAAE,sBAAS,CAAC,SAAS,CAAC,CAAC;aACjF;YAED,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,MAAM,gCAAc,CACtD,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,uBAAuB,EACpC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CACnB,CAAC;YAEF,MAAM,kBAAE,CAAC,UAAU,CAAC,YAAY,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YAElE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;SACnC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,iCAAe,EAAE;gBAClC,MAAM,GAAG,CAAC;aACX;YACD,MAAM,IAAI,iCAAe,CAAE,GAAa,CAAC,QAAQ,EAAE,EAAE,sBAAS,CAAC,cAAc,CAAC,CAAC;SAChF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAuB,CAAC;YACtF,qCAAqC;YACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,IAAK,IAAI,CAAC,aAAqB,CAAC,OAAO,KAAK,KAAK,EAAE;gBAChF,MAAM,OAAO,GAAG,MAAM,yBAAS,CAAC,OAAO,CAAC,IAAI,CAAC,aAAoB,EAAE,EAAE,CAAC,CAAC;gBACvE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAA6B,CAAC;gBAC3D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;aAC3B;YAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAC3E,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAuB,CAAC;SACxF;IACH,CAAC;IAEO,mBAAmB,CAAC,IAAwB;QAGlD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7B,OAAO,IAAI,CAAC,MAAM,CAAC;SACpB;QACD,MAAM,MAAM,GAAG,yBAAiB,CAC9B,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,cAAc,EAC3B,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CACrC,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA5SD,gCA4SC"}
@@ -1,6 +1,7 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
- import { CheckParamResult, ErrorResult } from "./interfaces";
3
- export declare function isYamlSpecFile(specPath: string): Promise<boolean>;
2
+ import SwaggerParser from "@apidevtools/swagger-parser";
3
+ import { CheckParamResult, ErrorResult, Parameter, ValidateResult, WarningResult } from "./interfaces";
4
+ import { IMessagingExtensionCommand } from "@microsoft/teamsfx-api";
4
5
  export declare function checkParameters(paramObject: OpenAPIV3.ParameterObject[]): CheckParamResult;
5
6
  export declare function checkPostBody(schema: OpenAPIV3.SchemaObject, isRequired?: boolean): CheckParamResult;
6
7
  /**
@@ -17,14 +18,23 @@ export declare function checkPostBody(schema: OpenAPIV3.SchemaObject, isRequired
17
18
  * 5. response body should be “application/json” and not empty, and response code should be 20X
18
19
  * 6. only support request body with “application/json” content type
19
20
  */
20
- export declare function isSupportedApi(method: string, path: string, spec: OpenAPIV3.Document): boolean;
21
+ export declare function isSupportedApi(method: string, path: string, spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean): boolean;
22
+ export declare function getAPIKeyAuthArray(securities: OpenAPIV3.SecurityRequirementObject[] | undefined, spec: OpenAPIV3.Document): OpenAPIV3.ApiKeySecurityScheme[][];
21
23
  export declare function updateFirstLetter(str: string): string;
22
- export declare function getRelativePath(from: string, to: string): string;
23
24
  export declare function getResponseJson(operationObject: OpenAPIV3.OperationObject | undefined): OpenAPIV3.MediaTypeObject;
24
25
  export declare function convertPathToCamelCase(path: string): string;
25
26
  export declare function getUrlProtocol(urlString: string): string | undefined;
26
27
  export declare function resolveServerUrl(url: string): string;
27
28
  export declare function checkServerUrl(servers: OpenAPIV3.ServerObject[]): ErrorResult[];
28
- export declare function validateServer(spec: OpenAPIV3.Document): ErrorResult[];
29
+ export declare function validateServer(spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean): ErrorResult[];
29
30
  export declare function isWellKnownName(name: string, wellknownNameList: string[]): boolean;
31
+ export declare function generateParametersFromSchema(schema: OpenAPIV3.SchemaObject, name: string, allowMultipleParameters: boolean, isRequired?: boolean): [Parameter[], Parameter[]];
32
+ export declare function updateParameterWithInputType(schema: OpenAPIV3.SchemaObject, param: Parameter): void;
33
+ export declare function parseApiInfo(operationItem: OpenAPIV3.OperationObject, allowMultipleParameters: boolean): [IMessagingExtensionCommand, WarningResult | undefined];
34
+ export declare function listSupportedAPIs(spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean): {
35
+ [key: string]: OpenAPIV3.OperationObject;
36
+ };
37
+ export declare function validateSpec(spec: OpenAPIV3.Document, parser: SwaggerParser, isSwaggerFile: boolean, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean): ValidateResult;
38
+ export declare function format(str: string, ...args: string[]): string;
39
+ export declare function getSafeRegistrationIdEnvName(authName: string): string;
30
40
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +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,CA6C1F;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,CAAC,YAAY,EAC9B,UAAU,UAAQ,GACjB,gBAAgB,CA0ClB;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,CAQ3D;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;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAOlF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/utils.ts"],"names":[],"mappings":"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"}