@microsoft/teamsfx-core 2.0.7 → 2.0.8-alpha.2a327dc81.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 (294) hide show
  1. package/build/common/constants.d.ts +7 -1
  2. package/build/common/constants.d.ts.map +1 -1
  3. package/build/common/constants.js +7 -1
  4. package/build/common/constants.js.map +1 -1
  5. package/build/common/featureFlags.d.ts +6 -0
  6. package/build/common/featureFlags.d.ts.map +1 -1
  7. package/build/common/featureFlags.js +28 -2
  8. package/build/common/featureFlags.js.map +1 -1
  9. package/build/common/m365/packageService.d.ts +1 -0
  10. package/build/common/m365/packageService.d.ts.map +1 -1
  11. package/build/common/m365/packageService.js +15 -2
  12. package/build/common/m365/packageService.js.map +1 -1
  13. package/build/common/projectSettingsHelper.d.ts +3 -0
  14. package/build/common/projectSettingsHelper.d.ts.map +1 -1
  15. package/build/common/projectSettingsHelper.js +29 -1
  16. package/build/common/projectSettingsHelper.js.map +1 -1
  17. package/build/common/projectTypeChecker.d.ts.map +1 -1
  18. package/build/common/projectTypeChecker.js +1 -2
  19. package/build/common/projectTypeChecker.js.map +1 -1
  20. package/build/common/samples.d.ts +3 -2
  21. package/build/common/samples.d.ts.map +1 -1
  22. package/build/common/samples.js +84 -40
  23. package/build/common/samples.js.map +1 -1
  24. package/build/common/telemetry.d.ts +3 -1
  25. package/build/common/telemetry.d.ts.map +1 -1
  26. package/build/common/telemetry.js +2 -0
  27. package/build/common/telemetry.js.map +1 -1
  28. package/build/common/templates-config.json +3 -2
  29. package/build/common/wrappedAxiosClient.d.ts +59 -0
  30. package/build/common/wrappedAxiosClient.d.ts.map +1 -0
  31. package/build/common/wrappedAxiosClient.js +247 -0
  32. package/build/common/wrappedAxiosClient.js.map +1 -0
  33. package/build/component/constant/commonConstant.d.ts +5 -0
  34. package/build/component/constant/commonConstant.d.ts.map +1 -1
  35. package/build/component/constant/commonConstant.js +7 -1
  36. package/build/component/constant/commonConstant.js.map +1 -1
  37. package/build/component/coordinator/index.d.ts +10 -1
  38. package/build/component/coordinator/index.d.ts.map +1 -1
  39. package/build/component/coordinator/index.js +77 -10
  40. package/build/component/coordinator/index.js.map +1 -1
  41. package/build/component/developerPortalScaffoldUtils.d.ts.map +1 -1
  42. package/build/component/developerPortalScaffoldUtils.js +0 -2
  43. package/build/component/developerPortalScaffoldUtils.js.map +1 -1
  44. package/build/component/driver/aad/utility/aadAppClient.d.ts +1 -0
  45. package/build/component/driver/aad/utility/aadAppClient.d.ts.map +1 -1
  46. package/build/component/driver/aad/utility/aadAppClient.js +9 -0
  47. package/build/component/driver/aad/utility/aadAppClient.js.map +1 -1
  48. package/build/component/driver/aad/utility/aadManifestHelper.js +2 -1
  49. package/build/component/driver/aad/utility/aadManifestHelper.js.map +1 -1
  50. package/build/component/driver/apiKey/create.d.ts.map +1 -1
  51. package/build/component/driver/apiKey/create.js +5 -7
  52. package/build/component/driver/apiKey/create.js.map +1 -1
  53. package/build/component/driver/botFramework/createOrUpdateBot.d.ts.map +1 -1
  54. package/build/component/driver/botFramework/createOrUpdateBot.js +0 -2
  55. package/build/component/driver/botFramework/createOrUpdateBot.js.map +1 -1
  56. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.d.ts.map +1 -1
  57. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js +5 -5
  58. package/build/component/driver/deploy/azure/impl/AzureZipDeployImpl.js.map +1 -1
  59. package/build/component/driver/deploy/spfx/utility/spoClient.d.ts.map +1 -1
  60. package/build/component/driver/deploy/spfx/utility/spoClient.js +3 -1
  61. package/build/component/driver/deploy/spfx/utility/spoClient.js.map +1 -1
  62. package/build/component/driver/index.d.ts +1 -0
  63. package/build/component/driver/index.d.ts.map +1 -1
  64. package/build/component/driver/index.js +1 -0
  65. package/build/component/driver/index.js.map +1 -1
  66. package/build/component/driver/teamsApp/appStudio.d.ts.map +1 -1
  67. package/build/component/driver/teamsApp/appStudio.js +0 -2
  68. package/build/component/driver/teamsApp/appStudio.js.map +1 -1
  69. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts +31 -9
  70. package/build/component/driver/teamsApp/clients/appStudioClient.d.ts.map +1 -1
  71. package/build/component/driver/teamsApp/clients/appStudioClient.js +86 -111
  72. package/build/component/driver/teamsApp/clients/appStudioClient.js.map +1 -1
  73. package/build/component/driver/teamsApp/clients/authSvcClient.d.ts.map +1 -1
  74. package/build/component/driver/teamsApp/clients/authSvcClient.js +3 -24
  75. package/build/component/driver/teamsApp/clients/authSvcClient.js.map +1 -1
  76. package/build/component/driver/teamsApp/configure.d.ts.map +1 -1
  77. package/build/component/driver/teamsApp/configure.js +0 -2
  78. package/build/component/driver/teamsApp/configure.js.map +1 -1
  79. package/build/component/driver/teamsApp/constants.d.ts +4 -0
  80. package/build/component/driver/teamsApp/constants.d.ts.map +1 -1
  81. package/build/component/driver/teamsApp/constants.js +6 -1
  82. package/build/component/driver/teamsApp/constants.js.map +1 -1
  83. package/build/component/driver/teamsApp/create.d.ts.map +1 -1
  84. package/build/component/driver/teamsApp/create.js +0 -2
  85. package/build/component/driver/teamsApp/create.js.map +1 -1
  86. package/build/component/driver/teamsApp/createAppPackage.d.ts +3 -0
  87. package/build/component/driver/teamsApp/createAppPackage.d.ts.map +1 -1
  88. package/build/component/driver/teamsApp/createAppPackage.js +61 -14
  89. package/build/component/driver/teamsApp/createAppPackage.js.map +1 -1
  90. package/build/component/driver/teamsApp/errors.d.ts +4 -0
  91. package/build/component/driver/teamsApp/errors.d.ts.map +1 -1
  92. package/build/component/driver/teamsApp/errors.js +7 -0
  93. package/build/component/driver/teamsApp/errors.js.map +1 -1
  94. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationDetailsResponse.d.ts +21 -0
  95. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationDetailsResponse.d.ts.map +1 -0
  96. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationDetailsResponse.js +5 -0
  97. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationDetailsResponse.js.map +1 -0
  98. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.d.ts +17 -0
  99. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.d.ts.map +1 -0
  100. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.js +16 -0
  101. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResponse.js.map +1 -0
  102. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResultsResponse.d.ts +41 -0
  103. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResultsResponse.d.ts.map +1 -0
  104. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResultsResponse.js +5 -0
  105. package/build/component/driver/teamsApp/interfaces/AsyncAppValidationResultsResponse.js.map +1 -0
  106. package/build/component/driver/teamsApp/interfaces/ValidateWithTestCasesArgs.d.ts +17 -0
  107. package/build/component/driver/teamsApp/interfaces/ValidateWithTestCasesArgs.d.ts.map +1 -0
  108. package/build/component/driver/teamsApp/interfaces/ValidateWithTestCasesArgs.js +5 -0
  109. package/build/component/driver/teamsApp/interfaces/ValidateWithTestCasesArgs.js.map +1 -0
  110. package/build/component/driver/teamsApp/publishAppPackage.d.ts.map +1 -1
  111. package/build/component/driver/teamsApp/publishAppPackage.js +3 -5
  112. package/build/component/driver/teamsApp/publishAppPackage.js.map +1 -1
  113. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts +1 -0
  114. package/build/component/driver/teamsApp/utils/ManifestUtils.d.ts.map +1 -1
  115. package/build/component/driver/teamsApp/utils/ManifestUtils.js +17 -0
  116. package/build/component/driver/teamsApp/utils/ManifestUtils.js.map +1 -1
  117. package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts +8 -0
  118. package/build/component/driver/teamsApp/utils/PluginManifestUtils.d.ts.map +1 -0
  119. package/build/component/driver/teamsApp/utils/PluginManifestUtils.js +63 -0
  120. package/build/component/driver/teamsApp/utils/PluginManifestUtils.js.map +1 -0
  121. package/build/component/driver/teamsApp/utils/telemetry.d.ts +0 -31
  122. package/build/component/driver/teamsApp/utils/telemetry.d.ts.map +1 -1
  123. package/build/component/driver/teamsApp/utils/telemetry.js +1 -53
  124. package/build/component/driver/teamsApp/utils/telemetry.js.map +1 -1
  125. package/build/component/driver/teamsApp/validate.d.ts.map +1 -1
  126. package/build/component/driver/teamsApp/validate.js +0 -1
  127. package/build/component/driver/teamsApp/validate.js.map +1 -1
  128. package/build/component/driver/teamsApp/validateAppPackage.d.ts.map +1 -1
  129. package/build/component/driver/teamsApp/validateAppPackage.js +0 -1
  130. package/build/component/driver/teamsApp/validateAppPackage.js.map +1 -1
  131. package/build/component/driver/teamsApp/validateTestCases.d.ts +22 -0
  132. package/build/component/driver/teamsApp/validateTestCases.d.ts.map +1 -0
  133. package/build/component/driver/teamsApp/validateTestCases.js +156 -0
  134. package/build/component/driver/teamsApp/validateTestCases.js.map +1 -0
  135. package/build/component/feature/collaboration.d.ts +1 -1
  136. package/build/component/feature/collaboration.d.ts.map +1 -1
  137. package/build/component/feature/collaboration.js +2 -4
  138. package/build/component/feature/collaboration.js.map +1 -1
  139. package/build/component/generator/copilotPlugin/generator.d.ts +5 -2
  140. package/build/component/generator/copilotPlugin/generator.d.ts.map +1 -1
  141. package/build/component/generator/copilotPlugin/generator.js +101 -26
  142. package/build/component/generator/copilotPlugin/generator.js.map +1 -1
  143. package/build/component/generator/copilotPlugin/helper.d.ts +8 -3
  144. package/build/component/generator/copilotPlugin/helper.d.ts.map +1 -1
  145. package/build/component/generator/copilotPlugin/helper.js +274 -29
  146. package/build/component/generator/copilotPlugin/helper.js.map +1 -1
  147. package/build/component/generator/error.d.ts +1 -1
  148. package/build/component/generator/error.d.ts.map +1 -1
  149. package/build/component/generator/error.js +4 -4
  150. package/build/component/generator/error.js.map +1 -1
  151. package/build/component/generator/generator.d.ts +6 -1
  152. package/build/component/generator/generator.d.ts.map +1 -1
  153. package/build/component/generator/generator.js +32 -26
  154. package/build/component/generator/generator.js.map +1 -1
  155. package/build/component/generator/generatorAction.d.ts +5 -16
  156. package/build/component/generator/generatorAction.d.ts.map +1 -1
  157. package/build/component/generator/generatorAction.js +46 -87
  158. package/build/component/generator/generatorAction.js.map +1 -1
  159. package/build/component/generator/officeAddin/config/projectProperties.d.ts +32 -1
  160. package/build/component/generator/officeAddin/config/projectProperties.d.ts.map +1 -1
  161. package/build/component/generator/officeAddin/config/projectProperties.js +33 -2
  162. package/build/component/generator/officeAddin/config/projectProperties.js.map +1 -1
  163. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts +7 -1
  164. package/build/component/generator/officeAddin/config/projectsJsonData.d.ts.map +1 -1
  165. package/build/component/generator/officeAddin/config/projectsJsonData.js +54 -4
  166. package/build/component/generator/officeAddin/config/projectsJsonData.js.map +1 -1
  167. package/build/component/generator/officeAddin/generator.d.ts.map +1 -1
  168. package/build/component/generator/officeAddin/generator.js +31 -10
  169. package/build/component/generator/officeAddin/generator.js.map +1 -1
  170. package/build/component/generator/officeAddin/helperMethods.d.ts +2 -1
  171. package/build/component/generator/officeAddin/helperMethods.d.ts.map +1 -1
  172. package/build/component/generator/officeAddin/helperMethods.js +21 -10
  173. package/build/component/generator/officeAddin/helperMethods.js.map +1 -1
  174. package/build/component/generator/officeXMLAddin/generator.d.ts +9 -0
  175. package/build/component/generator/officeXMLAddin/generator.d.ts.map +1 -0
  176. package/build/component/generator/officeXMLAddin/generator.js +90 -0
  177. package/build/component/generator/officeXMLAddin/generator.js.map +1 -0
  178. package/build/component/generator/officeXMLAddin/projectConfig.d.ts +36 -0
  179. package/build/component/generator/officeXMLAddin/projectConfig.d.ts.map +1 -0
  180. package/build/component/generator/officeXMLAddin/projectConfig.js +127 -0
  181. package/build/component/generator/officeXMLAddin/projectConfig.js.map +1 -0
  182. package/build/component/generator/utils.d.ts +2 -1
  183. package/build/component/generator/utils.d.ts.map +1 -1
  184. package/build/component/generator/utils.js +35 -16
  185. package/build/component/generator/utils.js.map +1 -1
  186. package/build/component/middleware/envMW.d.ts.map +1 -1
  187. package/build/component/middleware/envMW.js +1 -0
  188. package/build/component/middleware/envMW.js.map +1 -1
  189. package/build/component/resource/botService/appStudio/appStudioClient.d.ts.map +1 -1
  190. package/build/component/resource/botService/appStudio/appStudioClient.js +11 -39
  191. package/build/component/resource/botService/appStudio/appStudioClient.js.map +1 -1
  192. package/build/component/utils/envUtil.d.ts +2 -0
  193. package/build/component/utils/envUtil.d.ts.map +1 -1
  194. package/build/component/utils/envUtil.js +23 -0
  195. package/build/component/utils/envUtil.js.map +1 -1
  196. package/build/component/utils/pathUtils.d.ts.map +1 -1
  197. package/build/component/utils/pathUtils.js +2 -0
  198. package/build/component/utils/pathUtils.js.map +1 -1
  199. package/build/core/FxCore.d.ts +2 -0
  200. package/build/core/FxCore.d.ts.map +1 -1
  201. package/build/core/FxCore.js +91 -17
  202. package/build/core/FxCore.js.map +1 -1
  203. package/build/core/collaborator.js +3 -3
  204. package/build/core/collaborator.js.map +1 -1
  205. package/build/core/middleware/projectMigratorV3.d.ts.map +1 -1
  206. package/build/core/middleware/projectMigratorV3.js +6 -1
  207. package/build/core/middleware/projectMigratorV3.js.map +1 -1
  208. package/build/error/common.d.ts.map +1 -1
  209. package/build/error/common.js +1 -1
  210. package/build/error/common.js.map +1 -1
  211. package/build/error/deploy.d.ts.map +1 -1
  212. package/build/error/deploy.js +17 -6
  213. package/build/error/deploy.js.map +1 -1
  214. package/build/index.d.ts +0 -1
  215. package/build/index.d.ts.map +1 -1
  216. package/build/index.js +1 -3
  217. package/build/index.js.map +1 -1
  218. package/build/question/constants.d.ts +1 -0
  219. package/build/question/constants.d.ts.map +1 -1
  220. package/build/question/constants.js +2 -1
  221. package/build/question/constants.js.map +1 -1
  222. package/build/question/create.d.ts +35 -2
  223. package/build/question/create.d.ts.map +1 -1
  224. package/build/question/create.js +578 -79
  225. package/build/question/create.js.map +1 -1
  226. package/build/question/inputs/CreateProjectInputs.d.ts +22 -8
  227. package/build/question/inputs/CreateProjectInputs.d.ts.map +1 -1
  228. package/build/question/options/CreateProjectOptions.d.ts.map +1 -1
  229. package/build/question/options/CreateProjectOptions.js +58 -12
  230. package/build/question/options/CreateProjectOptions.js.map +1 -1
  231. package/build/question/other.d.ts +1 -0
  232. package/build/question/other.d.ts.map +1 -1
  233. package/build/question/other.js +17 -1
  234. package/build/question/other.js.map +1 -1
  235. package/build/question/questionNames.d.ts +10 -1
  236. package/build/question/questionNames.d.ts.map +1 -1
  237. package/build/question/questionNames.js +9 -0
  238. package/build/question/questionNames.js.map +1 -1
  239. package/package.json +4 -4
  240. package/resource/package.nls.json +208 -116
  241. package/templates/fallback/common.zip +0 -0
  242. package/templates/fallback/csharp.zip +0 -0
  243. package/templates/fallback/js.zip +0 -0
  244. package/templates/fallback/python.zip +0 -0
  245. package/templates/fallback/ts.zip +0 -0
  246. package/templates/plugins/resource/aad/auth/V3/Enable SSO.txt +1 -1
  247. package/build/common/spec-parser/adaptiveCardGenerator.d.ts +0 -7
  248. package/build/common/spec-parser/adaptiveCardGenerator.d.ts.map +0 -1
  249. package/build/common/spec-parser/adaptiveCardGenerator.js +0 -168
  250. package/build/common/spec-parser/adaptiveCardGenerator.js.map +0 -1
  251. package/build/common/spec-parser/adaptiveCardWrapper.d.ts +0 -15
  252. package/build/common/spec-parser/adaptiveCardWrapper.d.ts.map +0 -1
  253. package/build/common/spec-parser/adaptiveCardWrapper.js +0 -98
  254. package/build/common/spec-parser/adaptiveCardWrapper.js.map +0 -1
  255. package/build/common/spec-parser/constants.d.ts +0 -41
  256. package/build/common/spec-parser/constants.d.ts.map +0 -1
  257. package/build/common/spec-parser/constants.js +0 -95
  258. package/build/common/spec-parser/constants.js.map +0 -1
  259. package/build/common/spec-parser/index.browser.d.ts +0 -6
  260. package/build/common/spec-parser/index.browser.d.ts.map +0 -1
  261. package/build/common/spec-parser/index.browser.js +0 -16
  262. package/build/common/spec-parser/index.browser.js.map +0 -1
  263. package/build/common/spec-parser/index.d.ts +0 -5
  264. package/build/common/spec-parser/index.d.ts.map +0 -1
  265. package/build/common/spec-parser/index.js +0 -16
  266. package/build/common/spec-parser/index.js.map +0 -1
  267. package/build/common/spec-parser/interfaces.d.ts +0 -180
  268. package/build/common/spec-parser/interfaces.d.ts.map +0 -1
  269. package/build/common/spec-parser/interfaces.js +0 -51
  270. package/build/common/spec-parser/interfaces.js.map +0 -1
  271. package/build/common/spec-parser/manifestUpdater.d.ts +0 -7
  272. package/build/common/spec-parser/manifestUpdater.d.ts.map +0 -1
  273. package/build/common/spec-parser/manifestUpdater.js +0 -98
  274. package/build/common/spec-parser/manifestUpdater.js.map +0 -1
  275. package/build/common/spec-parser/specFilter.d.ts +0 -3
  276. package/build/common/spec-parser/specFilter.d.ts.map +0 -1
  277. package/build/common/spec-parser/specFilter.js +0 -40
  278. package/build/common/spec-parser/specFilter.js.map +0 -1
  279. package/build/common/spec-parser/specParser.browser.d.ts +0 -46
  280. package/build/common/spec-parser/specParser.browser.d.ts.map +0 -1
  281. package/build/common/spec-parser/specParser.browser.js +0 -139
  282. package/build/common/spec-parser/specParser.browser.js.map +0 -1
  283. package/build/common/spec-parser/specParser.d.ts +0 -46
  284. package/build/common/spec-parser/specParser.d.ts.map +0 -1
  285. package/build/common/spec-parser/specParser.js +0 -244
  286. package/build/common/spec-parser/specParser.js.map +0 -1
  287. package/build/common/spec-parser/specParserError.d.ts +0 -6
  288. package/build/common/spec-parser/specParserError.d.ts.map +0 -1
  289. package/build/common/spec-parser/specParserError.js +0 -13
  290. package/build/common/spec-parser/specParserError.js.map +0 -1
  291. package/build/common/spec-parser/utils.d.ts +0 -43
  292. package/build/common/spec-parser/utils.d.ts.map +0 -1
  293. package/build/common/spec-parser/utils.js +0 -595
  294. package/build/common/spec-parser/utils.js.map +0 -1
@@ -1,46 +0,0 @@
1
- import SwaggerParser from "@apidevtools/swagger-parser";
2
- import { OpenAPIV3 } from "openapi-types";
3
- import { APIInfo, GenerateResult, ListAPIResult, ParseOptions, ValidateResult } from "./interfaces";
4
- /**
5
- * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
6
- */
7
- export declare class SpecParser {
8
- readonly pathOrSpec: string | OpenAPIV3.Document;
9
- readonly parser: SwaggerParser;
10
- readonly options: Required<ParseOptions>;
11
- private apiMap;
12
- private spec;
13
- private unResolveSpec;
14
- private isSwaggerFile;
15
- private defaultOptions;
16
- /**
17
- * Creates a new instance of the SpecParser class.
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.
20
- */
21
- constructor(pathOrDoc: string | OpenAPIV3.Document, options?: ParseOptions);
22
- /**
23
- * Validates the OpenAPI specification file and returns a validation result.
24
- *
25
- * @returns A validation result object that contains information about any errors or warnings in the specification file.
26
- */
27
- validate(): Promise<ValidateResult>;
28
- listSupportedAPIInfo(): Promise<APIInfo[]>;
29
- /**
30
- * Lists all the OpenAPI operations in the specification file.
31
- * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
32
- * according to copilot plugin spec, only list get and post method without auth
33
- */
34
- list(): Promise<ListAPIResult[]>;
35
- /**
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
- * @param manifestPath A file path of the Teams app manifest file to update.
38
- * @param filter An array of strings that represent the filters to apply when generating the artifacts. If filter is empty, it would process nothing.
39
- * @param outputSpecPath File path of the new OpenAPI specification file to generate. If not specified or empty, no spec file will be generated.
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.
41
- */
42
- generate(manifestPath: string, filter: string[], outputSpecPath: string, adaptiveCardFolder: string, signal?: AbortSignal): Promise<GenerateResult>;
43
- private loadSpec;
44
- private getAllSupportedAPIs;
45
- }
46
- //# sourceMappingURL=specParser.d.ts.map
@@ -1 +0,0 @@
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;AAetB;;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,CAMpB;IAEF;;;;OAIG;gBACS,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY;IAS1E;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAsCnC,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;CAgB5B"}
@@ -1,244 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
3
- "use strict";
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.SpecParser = void 0;
6
- const tslib_1 = require("tslib");
7
- const swagger_parser_1 = tslib_1.__importDefault(require("@apidevtools/swagger-parser"));
8
- const swagger2openapi_1 = tslib_1.__importDefault(require("swagger2openapi"));
9
- const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
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
- const specFilter_1 = require("./specFilter");
16
- const utils_1 = require("./utils");
17
- const manifestUpdater_1 = require("./manifestUpdater");
18
- const adaptiveCardGenerator_1 = require("./adaptiveCardGenerator");
19
- const adaptiveCardWrapper_1 = require("./adaptiveCardWrapper");
20
- /**
21
- * A class that parses an OpenAPI specification file and provides methods to validate, list, and generate artifacts.
22
- */
23
- class SpecParser {
24
- /**
25
- * Creates a new instance of the SpecParser class.
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
- */
29
- constructor(pathOrDoc, options) {
30
- this.defaultOptions = {
31
- allowMissingId: true,
32
- allowSwagger: true,
33
- allowAPIKeyAuth: false,
34
- allowMultipleParameters: false,
35
- allowOauth2: false,
36
- };
37
- this.pathOrSpec = pathOrDoc;
38
- this.parser = new swagger_parser_1.default();
39
- this.options = Object.assign(Object.assign({}, this.defaultOptions), (options !== null && options !== void 0 ? options : {}));
40
- }
41
- /**
42
- * Validates the OpenAPI specification file and returns a validation result.
43
- *
44
- * @returns A validation result object that contains information about any errors or warnings in the specification file.
45
- */
46
- async validate() {
47
- try {
48
- try {
49
- await this.loadSpec();
50
- await this.parser.validate(this.spec);
51
- }
52
- catch (e) {
53
- return {
54
- status: interfaces_1.ValidationStatus.Error,
55
- warnings: [],
56
- errors: [{ type: interfaces_1.ErrorType.SpecNotValid, content: e.toString() }],
57
- };
58
- }
59
- if (!this.options.allowSwagger && this.isSwaggerFile) {
60
- return {
61
- status: interfaces_1.ValidationStatus.Error,
62
- warnings: [],
63
- errors: [
64
- { type: interfaces_1.ErrorType.SwaggerNotSupported, content: constants_1.ConstantString.SwaggerNotSupported },
65
- ],
66
- };
67
- }
68
- return utils_1.validateSpec(this.spec, this.parser, !!this.isSwaggerFile, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters, this.options.allowOauth2);
69
- }
70
- catch (err) {
71
- throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ValidateFailed);
72
- }
73
- }
74
- // eslint-disable-next-line @typescript-eslint/require-await
75
- async listSupportedAPIInfo() {
76
- throw new Error("Method not implemented.");
77
- }
78
- /**
79
- * Lists all the OpenAPI operations in the specification file.
80
- * @returns A string array that represents the HTTP method and path of each operation, such as ['GET /pets/{petId}', 'GET /user/{userId}']
81
- * according to copilot plugin spec, only list get and post method without auth
82
- */
83
- async list() {
84
- var _a;
85
- try {
86
- await this.loadSpec();
87
- const spec = this.spec;
88
- const apiMap = this.getAllSupportedAPIs(spec);
89
- const result = [];
90
- for (const apiKey in apiMap) {
91
- const apiResult = {
92
- api: "",
93
- server: "",
94
- operationId: "",
95
- };
96
- const [method, path] = apiKey.split(" ");
97
- const operation = apiMap[apiKey];
98
- const rootServer = spec.servers && spec.servers[0];
99
- const methodServer = spec.paths[path].servers && ((_a = spec.paths[path]) === null || _a === void 0 ? void 0 : _a.servers[0]);
100
- const operationServer = operation.servers && operation.servers[0];
101
- const serverUrl = operationServer || methodServer || rootServer;
102
- if (!serverUrl) {
103
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.NoServerInformation, interfaces_1.ErrorType.NoServerInformation);
104
- }
105
- apiResult.server = utils_1.resolveServerUrl(serverUrl.url);
106
- let operationId = operation.operationId;
107
- if (!operationId) {
108
- operationId = `${method.toLowerCase()}${utils_1.convertPathToCamelCase(path)}`;
109
- }
110
- apiResult.operationId = operationId;
111
- const authArray = utils_1.getAuthArray(operation.security, spec);
112
- for (const auths of authArray) {
113
- if (auths.length === 1) {
114
- apiResult.auth = auths[0].authSchema;
115
- break;
116
- }
117
- }
118
- apiResult.api = apiKey;
119
- result.push(apiResult);
120
- }
121
- return result;
122
- }
123
- catch (err) {
124
- if (err instanceof specParserError_1.SpecParserError) {
125
- throw err;
126
- }
127
- throw new specParserError_1.SpecParserError(err.toString(), interfaces_1.ErrorType.ListFailed);
128
- }
129
- }
130
- /**
131
- * Generates and update artifacts from the OpenAPI specification file. Generate Adaptive Cards, update Teams app manifest, and generate a new OpenAPI specification file.
132
- * @param manifestPath A file path of the Teams app manifest file to update.
133
- * @param filter An array of strings that represent the filters to apply when generating the artifacts. If filter is empty, it would process nothing.
134
- * @param outputSpecPath File path of the new OpenAPI specification file to generate. If not specified or empty, no spec file will be generated.
135
- * @param adaptiveCardFolder Folder path where the Adaptive Card files will be generated. If not specified or empty, Adaptive Card files will not be generated.
136
- */
137
- async generate(manifestPath, filter, outputSpecPath, adaptiveCardFolder, signal) {
138
- const result = {
139
- allSuccess: true,
140
- warnings: [],
141
- };
142
- try {
143
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
144
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
145
- }
146
- await this.loadSpec();
147
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
148
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
149
- }
150
- const newUnResolvedSpec = specFilter_1.specFilter(filter, this.unResolveSpec, this.spec, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters, this.options.allowOauth2);
151
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
152
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
153
- }
154
- const newSpec = (await this.parser.dereference(newUnResolvedSpec));
155
- const AuthSet = new Set();
156
- let hasMultipleAPIKeyAuth = false;
157
- for (const url in newSpec.paths) {
158
- for (const method in newSpec.paths[url]) {
159
- const operation = newSpec.paths[url][method];
160
- const authArray = utils_1.getAuthArray(operation.security, newSpec);
161
- if (authArray && authArray.length > 0) {
162
- AuthSet.add(authArray[0][0].authSchema);
163
- if (AuthSet.size > 1) {
164
- hasMultipleAPIKeyAuth = true;
165
- break;
166
- }
167
- }
168
- }
169
- }
170
- if (hasMultipleAPIKeyAuth) {
171
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.MultipleAPIKeyNotSupported, interfaces_1.ErrorType.MultipleAPIKeyNotSupported);
172
- }
173
- let resultStr;
174
- if (outputSpecPath.endsWith(".yaml") || outputSpecPath.endsWith(".yml")) {
175
- resultStr = js_yaml_1.default.dump(newUnResolvedSpec);
176
- }
177
- else {
178
- resultStr = JSON.stringify(newUnResolvedSpec, null, 2);
179
- }
180
- await fs_extra_1.default.outputFile(outputSpecPath, resultStr);
181
- for (const url in newSpec.paths) {
182
- for (const method in newSpec.paths[url]) {
183
- // paths object may contain description/summary, so we need to check if it is a operation object
184
- if (method === constants_1.ConstantString.PostMethod || method === constants_1.ConstantString.GetMethod) {
185
- const operation = newSpec.paths[url][method];
186
- try {
187
- const [card, jsonPath] = adaptiveCardGenerator_1.generateAdaptiveCard(operation);
188
- const fileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.json`);
189
- const wrappedCard = adaptiveCardWrapper_1.wrapAdaptiveCard(card, jsonPath);
190
- await fs_extra_1.default.outputJSON(fileName, wrappedCard, { spaces: 2 });
191
- const dataFileName = path_1.default.join(adaptiveCardFolder, `${operation.operationId}.data.json`);
192
- await fs_extra_1.default.outputJSON(dataFileName, {}, { spaces: 2 });
193
- }
194
- catch (err) {
195
- result.allSuccess = false;
196
- result.warnings.push({
197
- type: interfaces_1.WarningType.GenerateCardFailed,
198
- content: err.toString(),
199
- data: operation.operationId,
200
- });
201
- }
202
- }
203
- }
204
- }
205
- if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
206
- throw new specParserError_1.SpecParserError(constants_1.ConstantString.CancelledMessage, interfaces_1.ErrorType.Cancelled);
207
- }
208
- const auth = Array.from(AuthSet)[0];
209
- const [updatedManifest, warnings] = await manifestUpdater_1.updateManifest(manifestPath, outputSpecPath, adaptiveCardFolder, newSpec, this.options.allowMultipleParameters, auth);
210
- await fs_extra_1.default.outputJSON(manifestPath, updatedManifest, { spaces: 2 });
211
- result.warnings.push(...warnings);
212
- }
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);
218
- }
219
- return result;
220
- }
221
- async loadSpec() {
222
- if (!this.spec) {
223
- this.unResolveSpec = (await this.parser.parse(this.pathOrSpec));
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
- }
230
- const clonedUnResolveSpec = JSON.parse(JSON.stringify(this.unResolveSpec));
231
- this.spec = (await this.parser.dereference(clonedUnResolveSpec));
232
- }
233
- }
234
- getAllSupportedAPIs(spec) {
235
- if (this.apiMap !== undefined) {
236
- return this.apiMap;
237
- }
238
- const result = utils_1.listSupportedAPIs(spec, this.options.allowMissingId, this.options.allowAPIKeyAuth, this.options.allowMultipleParameters, this.options.allowOauth2);
239
- this.apiMap = result;
240
- return result;
241
- }
242
- }
243
- exports.SpecParser = SpecParser;
244
- //# sourceMappingURL=specParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specParser.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { ErrorType } from "./interfaces";
2
- export declare class SpecParserError extends Error {
3
- readonly errorType: ErrorType;
4
- constructor(message: string, errorType: ErrorType);
5
- }
6
- //# sourceMappingURL=specParserError.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specParserError.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/specParserError.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,qBAAa,eAAgB,SAAQ,KAAK;IACxC,SAAgB,SAAS,EAAE,SAAS,CAAC;gBAEzB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;CAIlD"}
@@ -1,13 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
3
- "use strict";
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.SpecParserError = void 0;
6
- class SpecParserError extends Error {
7
- constructor(message, errorType) {
8
- super(message);
9
- this.errorType = errorType;
10
- }
11
- }
12
- exports.SpecParserError = SpecParserError;
13
- //# sourceMappingURL=specParserError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specParserError.js","sourceRoot":"","sources":["../../../src/common/spec-parser/specParserError.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,YAAY,CAAC;;;AAIb,MAAa,eAAgB,SAAQ,KAAK;IAGxC,YAAY,OAAe,EAAE,SAAoB;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAPD,0CAOC"}
@@ -1,43 +0,0 @@
1
- import { OpenAPIV3 } from "openapi-types";
2
- import SwaggerParser from "@apidevtools/swagger-parser";
3
- import { AuthSchema, CheckParamResult, ErrorResult, Parameter, ValidateResult, WarningResult } from "./interfaces";
4
- import { IMessagingExtensionCommand } from "@microsoft/teamsfx-api";
5
- export declare function checkParameters(paramObject: OpenAPIV3.ParameterObject[]): CheckParamResult;
6
- export declare function checkPostBody(schema: OpenAPIV3.SchemaObject, isRequired?: boolean): CheckParamResult;
7
- /**
8
- * Checks if the given API is supported.
9
- * @param {string} method - The HTTP method of the API.
10
- * @param {string} path - The path of the API.
11
- * @param {OpenAPIV3.Document} spec - The OpenAPI specification document.
12
- * @returns {boolean} - Returns true if the API is supported, false otherwise.
13
- * @description The following APIs are supported:
14
- * 1. only support Get/Post operation without auth property
15
- * 2. parameter inside query or path only support string, number, boolean and integer
16
- * 3. parameter inside post body only support string, number, boolean, integer and object
17
- * 4. request body + required parameters <= 1
18
- * 5. response body should be “application/json” and not empty, and response code should be 20X
19
- * 6. only support request body with “application/json” content type
20
- */
21
- export declare function isSupportedApi(method: string, path: string, spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean, allowOauth2: boolean): boolean;
22
- export declare function isSupportedAuth(authSchemaArray: AuthSchema[][], allowAPIKeyAuth: boolean, allowOauth2: boolean): boolean;
23
- export declare function isAPIKeyAuth(authSchema: OpenAPIV3.SecuritySchemeObject): boolean;
24
- export declare function isBearerTokenAuth(authSchema: OpenAPIV3.SecuritySchemeObject): boolean;
25
- export declare function getAuthArray(securities: OpenAPIV3.SecurityRequirementObject[] | undefined, spec: OpenAPIV3.Document): AuthSchema[][];
26
- export declare function updateFirstLetter(str: string): string;
27
- export declare function getResponseJson(operationObject: OpenAPIV3.OperationObject | undefined): OpenAPIV3.MediaTypeObject;
28
- export declare function convertPathToCamelCase(path: string): string;
29
- export declare function getUrlProtocol(urlString: string): string | undefined;
30
- export declare function resolveServerUrl(url: string): string;
31
- export declare function checkServerUrl(servers: OpenAPIV3.ServerObject[]): ErrorResult[];
32
- export declare function validateServer(spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean, allowOauth2: boolean): ErrorResult[];
33
- export declare function isWellKnownName(name: string, wellknownNameList: string[]): boolean;
34
- export declare function generateParametersFromSchema(schema: OpenAPIV3.SchemaObject, name: string, allowMultipleParameters: boolean, isRequired?: boolean): [Parameter[], Parameter[]];
35
- export declare function updateParameterWithInputType(schema: OpenAPIV3.SchemaObject, param: Parameter): void;
36
- export declare function parseApiInfo(operationItem: OpenAPIV3.OperationObject, allowMultipleParameters: boolean): [IMessagingExtensionCommand, WarningResult | undefined];
37
- export declare function listSupportedAPIs(spec: OpenAPIV3.Document, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean, allowOauth2: boolean): {
38
- [key: string]: OpenAPIV3.OperationObject;
39
- };
40
- export declare function validateSpec(spec: OpenAPIV3.Document, parser: SwaggerParser, isSwaggerFile: boolean, allowMissingId: boolean, allowAPIKeyAuth: boolean, allowMultipleParameters: boolean, allowOauth2: boolean): ValidateResult;
41
- export declare function format(str: string, ...args: string[]): string;
42
- export declare function getSafeRegistrationIdEnvName(authName: string): string;
43
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/common/spec-parser/utils.ts"],"names":[],"mappings":"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"}