@apimatic/cli 1.1.0-alpha.9 → 1.1.0-beta.10

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 (341) hide show
  1. package/README.md +443 -374
  2. package/bin/run.js +5 -0
  3. package/lib/actions/action-result.d.ts +19 -0
  4. package/lib/actions/action-result.js +70 -0
  5. package/lib/actions/action-result.js.map +1 -0
  6. package/lib/actions/api/transform.d.ts +15 -0
  7. package/lib/actions/api/transform.js +48 -0
  8. package/lib/actions/api/transform.js.map +1 -0
  9. package/lib/actions/api/validate.d.ts +14 -0
  10. package/lib/actions/api/validate.js +52 -0
  11. package/lib/actions/api/validate.js.map +1 -0
  12. package/lib/actions/auth/login.d.ts +13 -0
  13. package/lib/actions/auth/login.js +55 -0
  14. package/lib/actions/auth/login.js.map +1 -0
  15. package/lib/actions/auth/logout.d.ts +8 -0
  16. package/lib/actions/auth/logout.js +15 -0
  17. package/lib/actions/auth/logout.js.map +1 -0
  18. package/lib/actions/auth/status.d.ts +11 -0
  19. package/lib/actions/auth/status.js +26 -0
  20. package/lib/actions/auth/status.js.map +1 -0
  21. package/lib/actions/portal/copilot.d.ts +16 -0
  22. package/lib/actions/portal/copilot.js +89 -0
  23. package/lib/actions/portal/copilot.js.map +1 -0
  24. package/lib/actions/portal/generate.d.ts +11 -5
  25. package/lib/actions/portal/generate.js +60 -55
  26. package/lib/actions/portal/generate.js.map +1 -0
  27. package/lib/actions/portal/quickstart.d.ts +17 -0
  28. package/lib/actions/portal/quickstart.js +169 -0
  29. package/lib/actions/portal/quickstart.js.map +1 -0
  30. package/lib/actions/portal/recipe/new-recipe.d.ts +15 -0
  31. package/lib/actions/portal/recipe/new-recipe.js +177 -0
  32. package/lib/actions/portal/recipe/new-recipe.js.map +1 -0
  33. package/lib/actions/portal/serve.d.ts +15 -0
  34. package/lib/actions/portal/serve.js +104 -0
  35. package/lib/actions/portal/serve.js.map +1 -0
  36. package/lib/actions/portal/toc/new-toc.d.ts +17 -13
  37. package/lib/actions/portal/toc/new-toc.js +85 -123
  38. package/lib/actions/portal/toc/new-toc.js.map +1 -0
  39. package/lib/actions/quickstart.d.ts +10 -0
  40. package/lib/actions/quickstart.js +30 -0
  41. package/lib/actions/quickstart.js.map +1 -0
  42. package/lib/actions/sdk/generate.d.ts +13 -0
  43. package/lib/actions/sdk/generate.js +77 -0
  44. package/lib/actions/sdk/generate.js.map +1 -0
  45. package/lib/actions/sdk/quickstart.d.ts +17 -0
  46. package/lib/actions/sdk/quickstart.js +171 -0
  47. package/lib/actions/sdk/quickstart.js.map +1 -0
  48. package/lib/application/portal/recipe/portal-recipe.d.ts +8 -0
  49. package/lib/application/portal/recipe/portal-recipe.js +33 -0
  50. package/lib/application/portal/recipe/portal-recipe.js.map +1 -0
  51. package/lib/application/portal/recipe/recipe-generator.d.ts +21 -0
  52. package/lib/application/portal/recipe/recipe-generator.js +145 -0
  53. package/lib/application/portal/recipe/recipe-generator.js.map +1 -0
  54. package/lib/application/portal/toc/toc-content-parser.d.ts +1 -1
  55. package/lib/application/portal/toc/toc-content-parser.js +9 -11
  56. package/lib/application/portal/toc/toc-content-parser.js.map +1 -0
  57. package/lib/application/portal/toc/toc-structure-generator.d.ts +23 -2
  58. package/lib/application/portal/toc/toc-structure-generator.js +133 -66
  59. package/lib/application/portal/toc/toc-structure-generator.js.map +1 -0
  60. package/lib/client-utils/auth-manager.d.ts +7 -2
  61. package/lib/client-utils/auth-manager.js +26 -14
  62. package/lib/client-utils/auth-manager.js.map +1 -0
  63. package/lib/commands/api/transform.d.ts +10 -7
  64. package/lib/commands/api/transform.js +51 -111
  65. package/lib/commands/api/transform.js.map +1 -0
  66. package/lib/commands/api/validate.d.ts +7 -4
  67. package/lib/commands/api/validate.js +31 -74
  68. package/lib/commands/api/validate.js.map +1 -0
  69. package/lib/commands/auth/login.d.ts +3 -1
  70. package/lib/commands/auth/login.js +26 -68
  71. package/lib/commands/auth/login.js.map +1 -0
  72. package/lib/commands/auth/logout.d.ts +3 -1
  73. package/lib/commands/auth/logout.js +14 -21
  74. package/lib/commands/auth/logout.js.map +1 -0
  75. package/lib/commands/auth/status.d.ts +1 -0
  76. package/lib/commands/auth/status.js +18 -21
  77. package/lib/commands/auth/status.js.map +1 -0
  78. package/lib/commands/portal/copilot.d.ts +13 -0
  79. package/lib/commands/portal/copilot.js +34 -0
  80. package/lib/commands/portal/copilot.js.map +1 -0
  81. package/lib/commands/portal/generate.d.ts +7 -11
  82. package/lib/commands/portal/generate.js +26 -89
  83. package/lib/commands/portal/generate.js.map +1 -0
  84. package/lib/commands/portal/recipe/new.d.ts +12 -0
  85. package/lib/commands/portal/recipe/new.js +45 -0
  86. package/lib/commands/portal/recipe/new.js.map +1 -0
  87. package/lib/commands/portal/serve.d.ts +8 -8
  88. package/lib/commands/portal/serve.js +41 -125
  89. package/lib/commands/portal/serve.js.map +1 -0
  90. package/lib/commands/portal/toc/new.d.ts +8 -7
  91. package/lib/commands/portal/toc/new.js +52 -49
  92. package/lib/commands/portal/toc/new.js.map +1 -0
  93. package/lib/commands/quickstart.d.ts +9 -0
  94. package/lib/commands/quickstart.js +37 -0
  95. package/lib/commands/quickstart.js.map +1 -0
  96. package/lib/commands/sdk/generate.d.ts +10 -8
  97. package/lib/commands/sdk/generate.js +46 -131
  98. package/lib/commands/sdk/generate.js.map +1 -0
  99. package/lib/config/axios-config.js +4 -6
  100. package/lib/config/axios-config.js.map +1 -0
  101. package/lib/hooks/not-found.d.ts +3 -0
  102. package/lib/hooks/not-found.js +52 -0
  103. package/lib/hooks/not-found.js.map +1 -0
  104. package/lib/hooks/utils.d.ts +5 -0
  105. package/lib/hooks/utils.js +51 -0
  106. package/lib/hooks/utils.js.map +1 -0
  107. package/lib/index.js +2 -5
  108. package/lib/index.js.map +1 -0
  109. package/lib/infrastructure/debounce-service.d.ts +10 -0
  110. package/lib/infrastructure/debounce-service.js +55 -0
  111. package/lib/infrastructure/debounce-service.js.map +1 -0
  112. package/lib/infrastructure/env-info.d.ts +12 -0
  113. package/lib/infrastructure/env-info.js +58 -0
  114. package/lib/infrastructure/env-info.js.map +1 -0
  115. package/lib/infrastructure/file-service.d.ts +25 -0
  116. package/lib/infrastructure/file-service.js +131 -0
  117. package/lib/infrastructure/file-service.js.map +1 -0
  118. package/lib/infrastructure/launcher-service.d.ts +9 -0
  119. package/lib/infrastructure/launcher-service.js +72 -0
  120. package/lib/infrastructure/launcher-service.js.map +1 -0
  121. package/lib/infrastructure/network-service.d.ts +3 -0
  122. package/lib/infrastructure/network-service.js +7 -0
  123. package/lib/infrastructure/network-service.js.map +1 -0
  124. package/lib/infrastructure/service-error.d.ts +16 -0
  125. package/lib/infrastructure/service-error.js +49 -0
  126. package/lib/infrastructure/service-error.js.map +1 -0
  127. package/lib/infrastructure/services/api-client-factory.d.ts +6 -0
  128. package/lib/infrastructure/services/api-client-factory.js +20 -0
  129. package/lib/infrastructure/services/api-client-factory.js.map +1 -0
  130. package/lib/infrastructure/services/api-service.d.ts +13 -0
  131. package/lib/infrastructure/services/api-service.js +103 -0
  132. package/lib/infrastructure/services/api-service.js.map +1 -0
  133. package/lib/infrastructure/services/auth-service.d.ts +11 -0
  134. package/lib/infrastructure/services/auth-service.js +37 -0
  135. package/lib/infrastructure/services/auth-service.js.map +1 -0
  136. package/lib/infrastructure/services/file-download-service.d.ts +15 -0
  137. package/lib/infrastructure/services/file-download-service.js +104 -0
  138. package/lib/infrastructure/services/file-download-service.js.map +1 -0
  139. package/lib/infrastructure/services/portal-service.d.ts +15 -12
  140. package/lib/infrastructure/services/portal-service.js +152 -99
  141. package/lib/infrastructure/services/portal-service.js.map +1 -0
  142. package/lib/infrastructure/services/telemetry-service.d.ts +9 -0
  143. package/lib/infrastructure/services/telemetry-service.js +38 -0
  144. package/lib/infrastructure/services/telemetry-service.js.map +1 -0
  145. package/lib/infrastructure/services/transformation-service.d.ts +23 -0
  146. package/lib/infrastructure/services/transformation-service.js +56 -0
  147. package/lib/infrastructure/services/transformation-service.js.map +1 -0
  148. package/lib/infrastructure/services/validation-service.d.ts +43 -0
  149. package/lib/infrastructure/services/validation-service.js +142 -0
  150. package/lib/infrastructure/services/validation-service.js.map +1 -0
  151. package/lib/infrastructure/tmp-extensions.d.ts +2 -0
  152. package/lib/infrastructure/tmp-extensions.js +6 -0
  153. package/lib/infrastructure/tmp-extensions.js.map +1 -0
  154. package/lib/infrastructure/zip-service.d.ts +6 -0
  155. package/lib/infrastructure/zip-service.js +39 -0
  156. package/lib/infrastructure/zip-service.js.map +1 -0
  157. package/lib/prompts/api/transform.d.ts +11 -0
  158. package/lib/prompts/api/transform.js +29 -0
  159. package/lib/prompts/api/transform.js.map +1 -0
  160. package/lib/prompts/api/validate.d.ts +15 -0
  161. package/lib/prompts/api/validate.js +76 -0
  162. package/lib/prompts/api/validate.js.map +1 -0
  163. package/lib/prompts/auth/login.d.ts +10 -0
  164. package/lib/prompts/auth/login.js +22 -0
  165. package/lib/prompts/auth/login.js.map +1 -0
  166. package/lib/prompts/auth/logout.d.ts +3 -0
  167. package/lib/prompts/auth/logout.js +7 -0
  168. package/lib/prompts/auth/logout.js.map +1 -0
  169. package/lib/prompts/auth/status.d.ts +8 -0
  170. package/lib/prompts/auth/status.js +22 -0
  171. package/lib/prompts/auth/status.js.map +1 -0
  172. package/lib/prompts/format.d.ts +31 -0
  173. package/lib/prompts/format.js +89 -0
  174. package/lib/prompts/format.js.map +1 -0
  175. package/lib/prompts/portal/copilot.d.ts +18 -0
  176. package/lib/prompts/portal/copilot.js +82 -0
  177. package/lib/prompts/portal/copilot.js.map +1 -0
  178. package/lib/prompts/portal/generate.d.ts +13 -8
  179. package/lib/prompts/portal/generate.js +36 -53
  180. package/lib/prompts/portal/generate.js.map +1 -0
  181. package/lib/prompts/portal/quickstart.d.ts +31 -29
  182. package/lib/prompts/portal/quickstart.js +139 -185
  183. package/lib/prompts/portal/quickstart.js.map +1 -0
  184. package/lib/prompts/portal/recipe/new-recipe.d.ts +29 -0
  185. package/lib/prompts/portal/recipe/new-recipe.js +165 -0
  186. package/lib/prompts/portal/recipe/new-recipe.js.map +1 -0
  187. package/lib/prompts/portal/serve.d.ts +9 -5
  188. package/lib/prompts/portal/serve.js +29 -19
  189. package/lib/prompts/portal/serve.js.map +1 -0
  190. package/lib/prompts/portal/toc/new-toc.d.ts +13 -8
  191. package/lib/prompts/portal/toc/new-toc.js +36 -36
  192. package/lib/prompts/portal/toc/new-toc.js.map +1 -0
  193. package/lib/prompts/prompt.d.ts +3 -0
  194. package/lib/prompts/prompt.js +37 -0
  195. package/lib/prompts/prompt.js.map +1 -0
  196. package/lib/prompts/quickstart.d.ts +6 -0
  197. package/lib/prompts/quickstart.js +25 -0
  198. package/lib/prompts/quickstart.js.map +1 -0
  199. package/lib/prompts/sdk/generate.d.ts +16 -0
  200. package/lib/prompts/sdk/generate.js +57 -0
  201. package/lib/prompts/sdk/generate.js.map +1 -0
  202. package/lib/prompts/sdk/quickstart.d.ts +35 -0
  203. package/lib/prompts/sdk/quickstart.js +177 -0
  204. package/lib/prompts/sdk/quickstart.js.map +1 -0
  205. package/lib/types/api/account.d.ts +10 -0
  206. package/lib/types/api/account.js +2 -0
  207. package/lib/types/api/account.js.map +1 -0
  208. package/lib/types/api/transform.d.ts +14 -25
  209. package/lib/types/api/transform.js +20 -23
  210. package/lib/types/api/transform.js.map +1 -0
  211. package/lib/types/build/build.d.ts +22 -0
  212. package/lib/types/build/build.js +7 -0
  213. package/lib/types/build/build.js.map +1 -0
  214. package/lib/types/build-context.d.ts +13 -0
  215. package/lib/types/build-context.js +33 -0
  216. package/lib/types/build-context.js.map +1 -0
  217. package/lib/types/common/command-metadata.d.ts +4 -0
  218. package/lib/types/common/command-metadata.js +2 -0
  219. package/lib/types/common/command-metadata.js.map +1 -0
  220. package/lib/types/events/domain-event.d.ts +8 -0
  221. package/lib/types/events/domain-event.js +11 -0
  222. package/lib/types/events/domain-event.js.map +1 -0
  223. package/lib/types/events/quickstart-completed.d.ts +7 -0
  224. package/lib/types/events/quickstart-completed.js +10 -0
  225. package/lib/types/events/quickstart-completed.js.map +1 -0
  226. package/lib/types/events/quickstart-initiated.d.ts +7 -0
  227. package/lib/types/events/quickstart-initiated.js +10 -0
  228. package/lib/types/events/quickstart-initiated.js.map +1 -0
  229. package/lib/types/events/recipe-creation-failed.d.ts +5 -0
  230. package/lib/types/events/recipe-creation-failed.js +8 -0
  231. package/lib/types/events/recipe-creation-failed.js.map +1 -0
  232. package/lib/types/events/toc-creation-failed.d.ts +5 -0
  233. package/lib/types/events/toc-creation-failed.js +8 -0
  234. package/lib/types/events/toc-creation-failed.js.map +1 -0
  235. package/lib/types/file/directory.d.ts +17 -0
  236. package/lib/types/file/directory.js +87 -0
  237. package/lib/types/file/directory.js.map +1 -0
  238. package/lib/types/file/directoryPath.d.ts +10 -0
  239. package/lib/types/file/directoryPath.js +26 -0
  240. package/lib/types/file/directoryPath.js.map +1 -0
  241. package/lib/types/file/fileName.d.ts +7 -0
  242. package/lib/types/file/fileName.js +21 -0
  243. package/lib/types/file/fileName.js.map +1 -0
  244. package/lib/types/file/filePath.d.ts +10 -0
  245. package/lib/types/file/filePath.js +32 -0
  246. package/lib/types/file/filePath.js.map +1 -0
  247. package/lib/types/file/resource-input.d.ts +5 -0
  248. package/lib/types/file/resource-input.js +42 -0
  249. package/lib/types/file/resource-input.js.map +1 -0
  250. package/lib/types/file/urlPath.d.ts +6 -0
  251. package/lib/types/file/urlPath.js +22 -0
  252. package/lib/types/file/urlPath.js.map +1 -0
  253. package/lib/types/flags-provider.d.ts +15 -0
  254. package/lib/types/flags-provider.js +34 -0
  255. package/lib/types/flags-provider.js.map +1 -0
  256. package/lib/types/portal-context.d.ts +13 -0
  257. package/lib/types/portal-context.js +38 -0
  258. package/lib/types/portal-context.js.map +1 -0
  259. package/lib/types/recipe/recipe.d.ts +22 -0
  260. package/lib/types/recipe/recipe.js +6 -0
  261. package/lib/types/recipe/recipe.js.map +1 -0
  262. package/lib/types/recipe-context.d.ts +9 -0
  263. package/lib/types/recipe-context.js +26 -0
  264. package/lib/types/recipe-context.js.map +1 -0
  265. package/lib/types/resource-context.d.ts +12 -0
  266. package/lib/types/resource-context.js +30 -0
  267. package/lib/types/resource-context.js.map +1 -0
  268. package/lib/types/sdk/generate.d.ts +9 -22
  269. package/lib/types/sdk/generate.js +25 -14
  270. package/lib/types/sdk/generate.js.map +1 -0
  271. package/lib/types/sdk-context.d.ts +14 -0
  272. package/lib/types/sdk-context.js +32 -0
  273. package/lib/types/sdk-context.js.map +1 -0
  274. package/lib/types/sdl/sdl.d.ts +27 -0
  275. package/lib/types/sdl/sdl.js +145 -3
  276. package/lib/types/sdl/sdl.js.map +1 -0
  277. package/lib/types/spec-context.d.ts +12 -0
  278. package/lib/types/spec-context.js +29 -0
  279. package/lib/types/spec-context.js.map +1 -0
  280. package/lib/types/temp-context.d.ts +11 -0
  281. package/lib/types/temp-context.js +27 -0
  282. package/lib/types/temp-context.js.map +1 -0
  283. package/lib/types/toc/toc.d.ts +31 -6
  284. package/lib/types/toc/toc.js +2 -10
  285. package/lib/types/toc/toc.js.map +1 -0
  286. package/lib/types/toc-context.d.ts +12 -0
  287. package/lib/types/toc-context.js +26 -0
  288. package/lib/types/toc-context.js.map +1 -0
  289. package/lib/types/transform-context.d.ts +13 -0
  290. package/lib/types/transform-context.js +30 -0
  291. package/lib/types/transform-context.js.map +1 -0
  292. package/lib/types/utils.d.ts +0 -9
  293. package/lib/types/utils.js +2 -3
  294. package/lib/types/utils.js.map +1 -0
  295. package/lib/types/versioned-build-context.d.ts +15 -0
  296. package/lib/types/versioned-build-context.js +28 -0
  297. package/lib/types/versioned-build-context.js.map +1 -0
  298. package/lib/utils/string-utils.d.ts +3 -0
  299. package/lib/utils/string-utils.js +79 -0
  300. package/lib/utils/string-utils.js.map +1 -0
  301. package/lib/utils/utils.d.ts +2 -44
  302. package/lib/utils/utils.js +14 -366
  303. package/lib/utils/utils.js.map +1 -0
  304. package/package.json +50 -31
  305. package/bin/run +0 -9
  306. package/lib/application/portal/toc/sdl-parser.d.ts +0 -13
  307. package/lib/application/portal/toc/sdl-parser.js +0 -53
  308. package/lib/client-utils/sdk-client.d.ts +0 -23
  309. package/lib/client-utils/sdk-client.js +0 -124
  310. package/lib/commands/portal/quickstart.d.ts +0 -10
  311. package/lib/commands/portal/quickstart.js +0 -79
  312. package/lib/config/env.d.ts +0 -27
  313. package/lib/config/env.js +0 -31
  314. package/lib/controllers/api/transform.d.ts +0 -5
  315. package/lib/controllers/api/transform.js +0 -56
  316. package/lib/controllers/api/validate.d.ts +0 -3
  317. package/lib/controllers/api/validate.js +0 -33
  318. package/lib/controllers/portal/generate.d.ts +0 -3
  319. package/lib/controllers/portal/generate.js +0 -110
  320. package/lib/controllers/portal/quickstart.d.ts +0 -14
  321. package/lib/controllers/portal/quickstart.js +0 -258
  322. package/lib/controllers/portal/serve.d.ts +0 -3
  323. package/lib/controllers/portal/serve.js +0 -138
  324. package/lib/controllers/sdk/generate.d.ts +0 -4
  325. package/lib/controllers/sdk/generate.js +0 -66
  326. package/lib/services/portal/server.d.ts +0 -14
  327. package/lib/services/portal/server.js +0 -101
  328. package/lib/types/api/validate.d.ts +0 -12
  329. package/lib/types/api/validate.js +0 -3
  330. package/lib/types/common/result.d.ts +0 -17
  331. package/lib/types/common/result.js +0 -36
  332. package/lib/types/portal/generate.d.ts +0 -26
  333. package/lib/types/portal/generate.js +0 -4
  334. package/lib/types/portal/quickstart.d.ts +0 -17
  335. package/lib/types/portal/quickstart.js +0 -3
  336. package/lib/validators/common/directoryValidator.d.ts +0 -9
  337. package/lib/validators/common/directoryValidator.js +0 -53
  338. package/lib/validators/common/portValidator.d.ts +0 -5
  339. package/lib/validators/common/portValidator.js +0 -20
  340. package/lib/validators/portal/serveValidator.d.ts +0 -6
  341. package/lib/validators/portal/serveValidator.js +0 -21
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SdlParser = void 0;
4
- const path = require("path");
5
- const utils_1 = require("../../../utils/utils");
6
- const result_1 = require("../../../types/common/result");
7
- class SdlParser {
8
- constructor(portalService) {
9
- this.portalService = portalService;
10
- }
11
- async getTocComponentsFromSdl(specFolderPath, workingDirectory, configDir) {
12
- const sourceSpecInputZipFilePath = await (0, utils_1.validateAndZipPortalSource)(specFolderPath, path.join(workingDirectory, ".spec_source.zip"));
13
- try {
14
- const result = await this.portalService.generateSdl(sourceSpecInputZipFilePath, configDir);
15
- if (!result.isSuccess()) {
16
- return result_1.Result.failure("Failed to extract endpoints/models from the specification. Please validate your spec using APIMatic's interactive VS Code extension");
17
- }
18
- const sdl = result.value;
19
- const endpointGroups = this.extractEndpointGroups(sdl);
20
- const models = this.extractModels(sdl);
21
- return result_1.Result.success({ endpointGroups, models });
22
- }
23
- finally {
24
- await (0, utils_1.deleteFile)(sourceSpecInputZipFilePath);
25
- }
26
- }
27
- extractEndpointGroups(sdl) {
28
- const endpointGroups = new Map();
29
- const endpoints = sdl.Endpoints.map((e) => ({
30
- generate: null,
31
- from: "endpoint",
32
- endpointName: e.Name,
33
- endpointGroup: e.Group
34
- }));
35
- endpoints.forEach((endpoint) => {
36
- const group = endpoint.endpointGroup;
37
- if (!endpointGroups.has(group)) {
38
- endpointGroups.set(group, []);
39
- }
40
- endpointGroups.get(group).push(endpoint);
41
- });
42
- return endpointGroups;
43
- }
44
- extractModels(sdl) {
45
- return sdl.CustomTypes.map((e) => ({
46
- generate: null,
47
- from: "model",
48
- modelName: e.Name
49
- }));
50
- }
51
- }
52
- exports.SdlParser = SdlParser;
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RsLXBhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHBsaWNhdGlvbi9wb3J0YWwvdG9jL3NkbC1wYXJzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTZCO0FBRTdCLGdEQUE4RTtBQUU5RSx5REFBc0Q7QUFHdEQsTUFBYSxTQUFTO0lBQ3BCLFlBQTZCLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUU3RCxLQUFLLENBQUMsdUJBQXVCLENBQUMsY0FBc0IsRUFBRSxnQkFBd0IsRUFBRSxTQUFpQjtRQUMvRixNQUFNLDBCQUEwQixHQUFHLE1BQU0sSUFBQSxrQ0FBMEIsRUFDakUsY0FBYyxFQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsQ0FDaEQsQ0FBQztRQUVGLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsMEJBQTBCLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFFM0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUN4QixPQUFPLGVBQU0sQ0FBQyxPQUFPLENBQUMscUlBQXFJLENBQUMsQ0FBQTtZQUM5SixDQUFDO1lBRUQsTUFBTSxHQUFHLEdBQVMsTUFBTSxDQUFDLEtBQU0sQ0FBQTtZQUMvQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUV2QyxPQUFPLGVBQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNwRCxDQUFDO2dCQUFTLENBQUM7WUFDVCxNQUFNLElBQUEsa0JBQVUsRUFBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCLENBQUMsR0FBUTtRQUNwQyxNQUFNLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBeUIsQ0FBQztRQUV4RCxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQWMsRUFBZSxFQUFFLENBQUMsQ0FBQztZQUNwRSxRQUFRLEVBQUUsSUFBSTtZQUNkLElBQUksRUFBRSxVQUFVO1lBQ2hCLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSTtZQUNwQixhQUFhLEVBQUUsQ0FBQyxDQUFDLEtBQUs7U0FDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBcUIsRUFBRSxFQUFFO1lBQzFDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDckMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDaEMsQ0FBQztZQUNELGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUVPLGFBQWEsQ0FBQyxHQUFRO1FBQzVCLE9BQU8sR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFXLEVBQVksRUFBRSxDQUFDLENBQUM7WUFDckQsUUFBUSxFQUFFLElBQUk7WUFDZCxJQUFJLEVBQUUsT0FBTztZQUNiLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7Q0FDRjtBQXRERCw4QkFzREMifQ==
@@ -1,23 +0,0 @@
1
- import { Client } from "@apimatic/sdk";
2
- export declare class SDKClient {
3
- static client: Client;
4
- private static instance;
5
- private static authAPI;
6
- /**
7
- * The static method that controls the access to the SDKClient instance.
8
- *
9
- * This implementation let you subclass the SDKClient class while keeping
10
- * just one instance of each subclass around.
11
- */
12
- static getInstance(): SDKClient;
13
- /**
14
- * Finally, any SDKClient should define some business logic, which can be
15
- * executed on its instance.
16
- */
17
- login(email: string, password: string, configDir: string): Promise<string>;
18
- logout(configDir: string): Promise<string>;
19
- status(configDir: string): Promise<string>;
20
- getClient(overrideAuthKey: string | null, configDir: string): Promise<Client>;
21
- private getAuthKey;
22
- setAuthKey: (authKey: string, configDir: string) => string;
23
- }
@@ -1,124 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SDKClient = void 0;
4
- const base64 = require("base-64");
5
- const axios_1 = require("axios");
6
- const sdk_1 = require("@apimatic/sdk");
7
- const env_1 = require("../config/env");
8
- const auth_manager_1 = require("./auth-manager");
9
- class SDKClient {
10
- constructor() {
11
- this.setAuthKey = (authKey, configDir) => {
12
- (0, auth_manager_1.setAuthInfo)({
13
- email: "",
14
- authKey
15
- }, configDir);
16
- return "Authentication key successfully set";
17
- };
18
- }
19
- /**
20
- * The static method that controls the access to the SDKClient instance.
21
- *
22
- * This implementation let you subclass the SDKClient class while keeping
23
- * just one instance of each subclass around.
24
- */
25
- static getInstance() {
26
- if (!SDKClient.instance) {
27
- SDKClient.instance = new SDKClient();
28
- }
29
- return SDKClient.instance;
30
- }
31
- /**
32
- * Finally, any SDKClient should define some business logic, which can be
33
- * executed on its instance.
34
- */
35
- async login(email, password, configDir) {
36
- let storedAuthInfo = await (0, auth_manager_1.getAuthInfo)(configDir);
37
- // If no config file or no credentials exist in the config file
38
- if (!storedAuthInfo) {
39
- storedAuthInfo = { email: "", authKey: "" };
40
- }
41
- const credentials = { email, password };
42
- const authKey = await this.getAuthKey(credentials);
43
- if (storedAuthInfo.email !== email) {
44
- (0, auth_manager_1.setAuthInfo)({
45
- email,
46
- authKey
47
- }, configDir);
48
- return "Logged in";
49
- }
50
- else if (authKey === storedAuthInfo.authKey) {
51
- return "Already logged in";
52
- }
53
- else {
54
- (0, auth_manager_1.setAuthInfo)({
55
- email,
56
- authKey
57
- }, configDir);
58
- return "Logged in";
59
- }
60
- }
61
- async logout(configDir) {
62
- (0, auth_manager_1.setAuthInfo)({
63
- email: "",
64
- authKey: ""
65
- }, configDir);
66
- return "Logged out";
67
- }
68
- async status(configDir) {
69
- try {
70
- let storedAuthInfo = await (0, auth_manager_1.getAuthInfo)(configDir);
71
- if (!storedAuthInfo) {
72
- // If no config file or no credentials exist in the config file
73
- storedAuthInfo = { email: "", authKey: "" };
74
- }
75
- return storedAuthInfo.email === "" && storedAuthInfo.authKey === ""
76
- ? "Not logged in"
77
- : storedAuthInfo.email === "" && storedAuthInfo.authKey !== ""
78
- ? "Logged in with authentication key"
79
- : `Currently logged in as ${storedAuthInfo.email}`;
80
- }
81
- catch (error) {
82
- throw error;
83
- }
84
- }
85
- async getClient(overrideAuthKey, configDir) {
86
- if (overrideAuthKey) {
87
- return new sdk_1.Client({
88
- timeout: 0,
89
- customHeaderAuthenticationCredentials: {
90
- 'Authorization': `X-Auth-Key ${overrideAuthKey}`
91
- }
92
- });
93
- }
94
- let storedAuthInfo = await (0, auth_manager_1.getAuthInfo)(configDir);
95
- if (!storedAuthInfo) {
96
- // If no config file or no credentials exist in the config file
97
- storedAuthInfo = { email: "", authKey: "" };
98
- }
99
- if (storedAuthInfo.authKey !== "") {
100
- return new sdk_1.Client({
101
- timeout: 0,
102
- customHeaderAuthenticationCredentials: {
103
- 'Authorization': `X-Auth-Key ${storedAuthInfo.authKey}`
104
- }
105
- });
106
- }
107
- else {
108
- throw new Error("Please login first or provide an authKey");
109
- }
110
- }
111
- async getAuthKey(credentials) {
112
- const config = {
113
- headers: {
114
- Authorization: `Basic ${base64.encode(`${credentials.email}:${credentials.password}`)}`
115
- }
116
- };
117
- const response = await axios_1.default.get(SDKClient.authAPI, config);
118
- const authKey = response.data.EncryptedValue;
119
- return authKey;
120
- }
121
- }
122
- exports.SDKClient = SDKClient;
123
- SDKClient.authAPI = `${env_1.baseURL}/account/authkey`;
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQtdXRpbHMvc2RrLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrQ0FBa0M7QUFDbEMsaUNBQTZDO0FBRTdDLHVDQUF1QztBQUN2Qyx1Q0FBd0M7QUFDeEMsaURBQW9FO0FBU3BFLE1BQWEsU0FBUztJQUF0QjtRQThIUyxlQUFVLEdBQUcsQ0FBQyxPQUFlLEVBQUUsU0FBaUIsRUFBRSxFQUFFO1lBQ3pELElBQUEsMEJBQVcsRUFDVDtnQkFDRSxLQUFLLEVBQUUsRUFBRTtnQkFDVCxPQUFPO2FBQ1IsRUFDRCxTQUFTLENBQ1YsQ0FBQztZQUNGLE9BQU8scUNBQXFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQW5JQzs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxXQUFXO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEIsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7T0FHRztJQUVJLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBYSxFQUFFLFFBQWdCLEVBQUUsU0FBaUI7UUFDbkUsSUFBSSxjQUFjLEdBQW9CLE1BQU0sSUFBQSwwQkFBVyxFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRW5FLCtEQUErRDtRQUMvRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEIsY0FBYyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDOUMsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFnQixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBVyxNQUFNLElBQUksQ0FBQyxVQUFVLENB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
@@ -1,10 +0,0 @@
1
- import { Command } from "@oclif/core";
2
- export default class PortalQuickstart extends Command {
3
- static description: string;
4
- static examples: string[];
5
- private getSpecFile;
6
- private getSpecValidationSummary;
7
- private getBuildDirectory;
8
- private getGeneratedPortalPath;
9
- run(): Promise<void>;
10
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const core_1 = require("@oclif/core");
4
- const sdk_1 = require("@apimatic/sdk");
5
- const sdk_client_1 = require("../../client-utils/sdk-client");
6
- const quickstart_1 = require("../../prompts/portal/quickstart");
7
- const quickstart_2 = require("../../controllers/portal/quickstart");
8
- const utils_1 = require("../../utils/utils");
9
- class PortalQuickstart extends core_1.Command {
10
- async getSpecFile(prompts, controller) {
11
- const specPath = await prompts.specPrompt();
12
- const specFile = await controller.getSpecFile(specPath);
13
- prompts.displaySpecValidationMessage();
14
- return specFile;
15
- }
16
- async getSpecValidationSummary(prompts, controller, specFile, apiValidationController) {
17
- const apiValidationSummary = await controller.getSpecValidationSummary(prompts, specFile, apiValidationController);
18
- if (!apiValidationSummary.success) {
19
- prompts.displaySpecValidationFailureMessage();
20
- await prompts.specValidationFailurePrompt();
21
- }
22
- else {
23
- prompts.displaySpecValidationSuccessMessage();
24
- }
25
- return apiValidationSummary;
26
- }
27
- async getBuildDirectory(prompts, controller, specFile, apiValidationSummary, languages) {
28
- const buildDirectoryPath = await prompts.buildDirectoryPrompt();
29
- prompts.displayBuildDirectoryGenerationMessage();
30
- await controller.setupBuildDirectory(prompts, buildDirectoryPath, specFile, apiValidationSummary, languages);
31
- prompts.displayBuildDirectoryGenerationSuccessMessage(buildDirectoryPath);
32
- prompts.displayBuildDirectoryAsTree(buildDirectoryPath);
33
- return buildDirectoryPath;
34
- }
35
- async getGeneratedPortalPath(prompts, controller, directory) {
36
- prompts.displayPortalGenerationMessage();
37
- const generatedPortalPath = await controller.generatePortalArtifacts(directory, this.config.configDir);
38
- prompts.displayPortalGenerationSuccessMessage();
39
- return generatedPortalPath;
40
- }
41
- async run() {
42
- const prompts = new quickstart_1.PortalQuickstartPrompts();
43
- const controller = new quickstart_2.PortalQuickstartController();
44
- prompts.displayWelcomeMessage();
45
- let loggedIn = await controller.isUserAuthenticated(this.config.configDir);
46
- while (!loggedIn) {
47
- const credentials = await prompts.loginPrompt();
48
- prompts.displayLoggingInMessage();
49
- try {
50
- await controller.userLogin(credentials, sdk_client_1.SDKClient.getInstance(), this.config.configDir);
51
- loggedIn = true;
52
- prompts.displayLoggedInMessage();
53
- }
54
- catch (error) {
55
- prompts.displayLoggingInErrorMessage();
56
- }
57
- }
58
- const client = await sdk_client_1.SDKClient.getInstance().getClient(null, this.config.configDir);
59
- const apiValidationController = new sdk_1.ApiValidationExternalApIsController(client);
60
- try {
61
- const specFile = await this.getSpecFile(prompts, controller);
62
- const apiValidationSummary = await this.getSpecValidationSummary(prompts, controller, specFile, apiValidationController);
63
- const languages = await prompts.sdkLanguagesPrompt();
64
- const directory = await this.getBuildDirectory(prompts, controller, specFile, apiValidationSummary, languages);
65
- const generatedPortalPath = await this.getGeneratedPortalPath(prompts, controller, directory);
66
- const serverStarted = await controller.servePortal(generatedPortalPath, directory, this.config.configDir);
67
- if (serverStarted) {
68
- prompts.displayOutroMessage(directory);
69
- }
70
- }
71
- catch (error) {
72
- this.error((0, utils_1.getMessageInRedColor)(error instanceof Error ? error.message : String(error)));
73
- }
74
- }
75
- }
76
- PortalQuickstart.description = "Create your first API Portal using APIMatic's Docs as Code offering.";
77
- PortalQuickstart.examples = ["$ apimatic portal:quickstart"];
78
- exports.default = PortalQuickstart;
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2tzdGFydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9wb3J0YWwvcXVpY2tzdGFydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNDQUFzQztBQUN0Qyx1Q0FBa0c7QUFDbEcsOERBQTBEO0FBQzFELGdFQUEwRTtBQUMxRSxvRUFBaUY7QUFFakYsNkNBQXlEO0FBRXpELE1BQXFCLGdCQUFpQixTQUFRLGNBQU87SUFLM0MsS0FBSyxDQUFDLFdBQVcsQ0FDdkIsT0FBZ0MsRUFDaEMsVUFBc0M7UUFFdEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFNUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxVQUFVLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXhELE9BQU8sQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBRXZDLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxLQUFLLENBQUMsd0JBQXdCLENBQ3BDLE9BQWdDLEVBQ2hDLFVBQXNDLEVBQ3RDLFFBQWtCLEVBQ2xCLHVCQUE0RDtRQUU1RCxNQUFNLG9CQUFvQixHQUFHLE1BQU0sVUFBVSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztRQUVuSCxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEMsT0FBTyxDQUFDLG1DQUFtQyxFQUFFLENBQUM7WUFDOUMsTUFBTSxPQUFPLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUM5QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sQ0FBQyxtQ0FBbUMsRUFBRSxDQUFDO1FBQ2hELENBQUM7UUFFRCxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFTyxLQUFLLENBQUMsaUJBQWlCLENBQzdCLE9BQWdDLEVBQ2hDLFVBQXNDLEVBQ3RDLFFBQWtCLEVBQ2xCLG9CQUEw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
@@ -1,27 +0,0 @@
1
- export declare const baseURL = "https://api.apimatic.io";
2
- export declare const staticPortalRepoUrl = "https://github.com/apimatic/static-portal-workflow.git";
3
- export declare const metadataFileContent: {
4
- ImportSettings: {
5
- AutoGenerateTestCases: boolean;
6
- ImportAdditionalHeader: boolean;
7
- ImportAdditionalTypeCombinatorModels: boolean;
8
- ImportTypeCombinatorsWithOnlyOneType: boolean;
9
- };
10
- CodeGenSettings: {
11
- Timeout: number;
12
- ValidateRequiredParameters: boolean;
13
- AddSingleAuthDeprecatedCode: boolean;
14
- EnableGlobalUserAgent: boolean;
15
- UserAgent: string;
16
- EnableLogging: boolean;
17
- EnableModelKeywordArgsInRuby: boolean;
18
- SymbolizeHashKeysInRuby: boolean;
19
- ReturnCompleteHttpResponse: boolean;
20
- UserConfigurableRetries: boolean;
21
- UseEnumPrefix: boolean;
22
- ExtendedAdditionalPropertiesSupport: boolean;
23
- EnforceStandardizedCasing: boolean;
24
- ControllerPostfix: string;
25
- DoNotSplitWords: string[];
26
- };
27
- };
package/lib/config/env.js DELETED
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.metadataFileContent = exports.staticPortalRepoUrl = exports.baseURL = void 0;
4
- exports.baseURL = "https://api.apimatic.io";
5
- exports.staticPortalRepoUrl = "https://github.com/apimatic/static-portal-workflow.git";
6
- exports.metadataFileContent = {
7
- ImportSettings: {
8
- AutoGenerateTestCases: false,
9
- ImportAdditionalHeader: false,
10
- ImportAdditionalTypeCombinatorModels: false,
11
- ImportTypeCombinatorsWithOnlyOneType: false
12
- },
13
- CodeGenSettings: {
14
- Timeout: 30,
15
- ValidateRequiredParameters: true,
16
- AddSingleAuthDeprecatedCode: false,
17
- EnableGlobalUserAgent: true,
18
- UserAgent: "{language}-SDK/{version} [OS: {os-info}, Engine: {engine}/{engine-version}]",
19
- EnableLogging: true,
20
- EnableModelKeywordArgsInRuby: true,
21
- SymbolizeHashKeysInRuby: true,
22
- ReturnCompleteHttpResponse: true,
23
- UserConfigurableRetries: true,
24
- UseEnumPrefix: false,
25
- ExtendedAdditionalPropertiesSupport: true,
26
- EnforceStandardizedCasing: true,
27
- ControllerPostfix: "Api",
28
- DoNotSplitWords: ["oauth"]
29
- }
30
- };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9lbnYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxPQUFPLEdBQUcseUJBQXlCLENBQUM7QUFDcEMsUUFBQSxtQkFBbUIsR0FBRyx3REFBd0QsQ0FBQztBQUMvRSxRQUFBLG1CQUFtQixHQUFHO0lBQ2pDLGNBQWMsRUFBRTtRQUNkLHFCQUFxQixFQUFFLEtBQUs7UUFDNUIsc0JBQXNCLEVBQUUsS0FBSztRQUM3QixvQ0FBb0MsRUFBRSxLQUFLO1FBQzNDLG9DQUFvQyxFQUFFLEtBQUs7S0FDNUM7SUFDRCxlQUFlLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLDBCQUEwQixFQUFFLElBQUk7UUFDaEMsMkJBQTJCLEVBQUUsS0FBSztRQUNsQyxxQkFBcUIsRUFBRSxJQUFJO1FBQzNCLFNBQVMsRUFBRSw2RUFBNkU7UUFDeEYsYUFBYSxFQUFFLElBQUk7UUFDbkIsNEJBQTRCLEVBQUUsSUFBSTtRQUNsQyx1QkFBdUIsRUFBRSxJQUFJO1FBQzdCLDBCQUEwQixFQUFFLElBQUk7UUFDaEMsdUJBQXVCLEVBQUUsSUFBSTtRQUM3QixhQUFhLEVBQUUsS0FBSztRQUNwQixtQ0FBbUMsRUFBRSxJQUFJO1FBQ3pDLHlCQUF5QixFQUFFLElBQUk7UUFDL0IsaUJBQWlCLEVBQUUsS0FBSztRQUN4QixlQUFlLEVBQUUsQ0FBQyxPQUFPLENBQUM7S0FDM0I7Q0FDRixDQUFDIn0=
@@ -1,5 +0,0 @@
1
- import { DownloadTransformationParams, TransformationIdParams } from "../../types/api/transform";
2
- import { ExportFormats, Transformation, TransformationController } from "@apimatic/sdk";
3
- export declare const getTransformationId: ({ file, url, format }: TransformationIdParams, transformationController: TransformationController) => Promise<Transformation>;
4
- export declare const downloadTransformationFile: ({ id, destinationFilePath, transformationController }: DownloadTransformationParams) => Promise<string>;
5
- export declare const getValidFormat: (format: string) => ExportFormats;
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getValidFormat = exports.downloadTransformationFile = exports.getTransformationId = void 0;
4
- const core_1 = require("@oclif/core");
5
- const fs = require("fs-extra");
6
- const utils_1 = require("../../utils/utils");
7
- const transform_1 = require("../../types/api/transform");
8
- const sdk_1 = require("@apimatic/sdk");
9
- const getTransformationId = async ({ file, url, format }, transformationController) => {
10
- core_1.ux.action.start("Transforming API specification");
11
- let generation;
12
- if (file) {
13
- const fileDescriptor = new sdk_1.FileWrapper(fs.createReadStream(file));
14
- generation = await transformationController.transformViaFile(sdk_1.ContentType.EnumMultipartformdata, fileDescriptor, format);
15
- }
16
- else if (url) {
17
- const body = {
18
- url: url,
19
- exportFormat: format
20
- };
21
- generation = await transformationController.transformViaUrl(body);
22
- }
23
- else {
24
- throw new Error("Please provide a specification file");
25
- }
26
- core_1.ux.action.stop();
27
- return generation.result;
28
- };
29
- exports.getTransformationId = getTransformationId;
30
- const downloadTransformationFile = async ({ id, destinationFilePath, transformationController }) => {
31
- core_1.ux.action.start("Downloading Transformed file");
32
- const { result } = await transformationController.downloadTransformedFile(id);
33
- if (result.readable) {
34
- await (0, utils_1.writeFileUsingReadableStream)(result, destinationFilePath);
35
- }
36
- else {
37
- throw new Error("Couldn't save transformation file");
38
- }
39
- core_1.ux.action.stop();
40
- return destinationFilePath;
41
- };
42
- exports.downloadTransformationFile = downloadTransformationFile;
43
- // Get valid platform from user's input, convert simple platform to valid Platforms enum value
44
- const getValidFormat = (format) => {
45
- const key = Object.keys(transform_1.TransformationFormats).find((value) => value === format);
46
- if (key) {
47
- const transformationFormat = transform_1.TransformationFormats[key];
48
- return sdk_1.ExportFormats[transformationFormat];
49
- }
50
- else {
51
- const formats = Object.keys(transform_1.TransformationFormats).join("|");
52
- throw new Error(`Please provide a valid platform, e.g. ${formats}`);
53
- }
54
- };
55
- exports.getValidFormat = getValidFormat;
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyb2xsZXJzL2FwaS90cmFuc2Zvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0NBQWlDO0FBQ2pDLCtCQUErQjtBQUUvQiw2Q0FBaUU7QUFDakUseURBQTRJO0FBQzVJLHVDQVF1QjtBQUVoQixNQUFNLG1CQUFtQixHQUFHLEtBQUssRUFDdEMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBMEIsRUFDN0Msd0JBQWtELEVBQ3pCLEVBQUU7SUFDM0IsU0FBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztJQUVsRCxJQUFJLFVBQXVDLENBQUM7SUFDNUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNULE1BQU0sY0FBYyxHQUFHLElBQUksaUJBQVcsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxVQUFVLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FDMUQsaUJBQVcsQ0FBQyxxQkFBcUIsRUFDakMsY0FBYyxFQUNkLE1BQXVCLENBQ3hCLENBQUM7SUFDSixDQUFDO1NBQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxHQUEyQjtZQUNuQyxHQUFHLEVBQUUsR0FBRztZQUNSLFlBQVksRUFBRSxNQUF1QjtTQUN0QyxDQUFDO1FBQ0YsVUFBVSxHQUFHLE1BQU0sd0JBQXdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxTQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pCLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQztBQUMzQixDQUFDLENBQUM7QUF6QlcsUUFBQSxtQkFBbUIsdUJBeUI5QjtBQUVLLE1BQU0sMEJBQTBCLEdBQUcsS0FBSyxFQUFFLEVBQy9DLEVBQUUsRUFDRixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ0ssRUFBbUIsRUFBRTtJQUNsRCxTQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBRWhELE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBdUIsTUFBTSx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVsRyxJQUFLLE1BQWdDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0MsTUFBTSxJQUFBLG9DQUE0QixFQUFDLE1BQStCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUMzRixDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsU0FBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQixPQUFPLG1CQUFtQixDQUFDO0FBQzdCLENBQUMsQ0FBQztBQWhCVyxRQUFBLDBCQUEwQiw4QkFnQnJDO0FBQ0YsOEZBQThGO0FBQ3ZGLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBYyxFQUFFLEVBQUU7SUFDL0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxpQ0FBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLE1BQU0sQ0FBbUQsQ0FBQztJQUNuSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1IsTUFBTSxvQkFBb0IsR0FBRyxpQ0FBcUIsQ0FBQyxHQUFHLENBQStCLENBQUM7UUFDdEYsT0FBTyxtQkFBYSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDN0MsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGlDQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdELE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztBQUNILENBQUMsQ0FBQztBQVRXLFFBQUEsY0FBYyxrQkFTekIifQ==
@@ -1,3 +0,0 @@
1
- import { ApiValidationExternalApIsController, ApiValidationSummary } from "@apimatic/sdk";
2
- import { GetValidationParams } from "../../types/api/validate";
3
- export declare const getValidationSummary: ({ file, url }: GetValidationParams, apiValidationController: ApiValidationExternalApIsController) => Promise<ApiValidationSummary>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getValidationSummary = void 0;
4
- const fs = require("fs-extra");
5
- const sdk_1 = require("@apimatic/sdk");
6
- const utils_1 = require("../../utils/utils");
7
- const getValidationSummary = async ({ file, url }, apiValidationController) => {
8
- let validation;
9
- if (file) {
10
- const fileStatus = fs.statSync(file);
11
- if (fileStatus.isDirectory()) {
12
- const tempDir = await (0, utils_1.createTempDirectory)();
13
- const zipPath = await (0, utils_1.zipDirectory)(file, tempDir);
14
- const zipFile = new sdk_1.FileWrapper(fs.createReadStream(zipPath));
15
- validation = await apiValidationController.validateApiViaFile(sdk_1.ContentType.EnumMultipartformdata, zipFile);
16
- await (0, utils_1.deleteFile)(zipPath);
17
- await fs.remove(tempDir);
18
- }
19
- else {
20
- const fileDescriptor = new sdk_1.FileWrapper(fs.createReadStream(file));
21
- validation = await apiValidationController.validateApiViaFile(sdk_1.ContentType.EnumMultipartformdata, fileDescriptor);
22
- }
23
- }
24
- else if (url) {
25
- validation = await apiValidationController.validateApiViaUrl(url);
26
- }
27
- else {
28
- throw new Error("Please provide a specification file");
29
- }
30
- return validation.result;
31
- };
32
- exports.getValidationSummary = getValidationSummary;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlcnMvYXBpL3ZhbGlkYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUErQjtBQUMvQix1Q0FBaUk7QUFFakksNkNBQWtGO0FBRTNFLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxFQUN2QyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQXVCLEVBQ2xDLHVCQUE0RCxFQUM3QixFQUFFO0lBQ2pDLElBQUksVUFBNkMsQ0FBQztJQUVsRCxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ1QsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLFVBQVUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSwyQkFBbUIsR0FBRSxDQUFDO1lBQzVDLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBQSxvQkFBWSxFQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNsRCxNQUFNLE9BQU8sR0FBRyxJQUFJLGlCQUFXLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDOUQsVUFBVSxHQUFHLE1BQU0sdUJBQXVCLENBQUMsa0JBQWtCLENBQUMsaUJBQVcsQ0FBQyxxQkFBcUIsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUUxRyxNQUFNLElBQUEsa0JBQVUsRUFBQyxPQUFPLENBQUMsQ0FBQztZQUUxQixNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLGNBQWMsR0FBRyxJQUFJLGlCQUFXLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDbEUsVUFBVSxHQUFHLE1BQU0sdUJBQXVCLENBQUMsa0JBQWtCLENBQUMsaUJBQVcsQ0FBQyxxQkFBcUIsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNuSCxDQUFDO0lBQ0gsQ0FBQztTQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDZixVQUFVLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwRSxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsT0FBTyxVQUFVLENBQUMsTUFBTSxDQUFDO0FBQzNCLENBQUMsQ0FBQztBQTVCVyxRQUFBLG9CQUFvQix3QkE0Qi9CIn0=
@@ -1,3 +0,0 @@
1
- import { GeneratePortalParams } from "../../types/portal/generate";
2
- import { Result } from "../../types/common/result";
3
- export declare const downloadDocsPortal: (params: GeneratePortalParams, configDir: string) => Promise<Result<string, string>>;
@@ -1,110 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.downloadDocsPortal = void 0;
4
- const fs = require("fs-extra");
5
- const utils_1 = require("../../utils/utils");
6
- const auth_manager_1 = require("../../client-utils/auth-manager");
7
- const sdk_1 = require("@apimatic/sdk");
8
- const result_1 = require("../../types/common/result");
9
- const CONTENT_TYPE = sdk_1.ContentType.EnumMultipartformdata;
10
- const TIMEOUT = 0;
11
- const downloadDocsPortal = async (params, configDir) => {
12
- if (!(await fs.pathExists(params.sourceBuildInputZipFilePath))) {
13
- return result_1.Result.failure("Build file doesn't exist");
14
- }
15
- const authInfo = await (0, auth_manager_1.getAuthInfo)(configDir);
16
- const authorizationHeader = createAuthorizationHeader(authInfo, params.overrideAuthKey);
17
- const client = createApiClient(authorizationHeader);
18
- const docsPortalManagementController = new sdk_1.DocsPortalManagementController(client);
19
- try {
20
- const stream = await generatePortalFromSyncEndpoint(docsPortalManagementController, params.sourceBuildInputZipFilePath);
21
- await saveGeneratedPortalStreamToZipFile(stream, params.generatedPortalArtifactsZipFilePath);
22
- await (0, utils_1.deleteFile)(params.sourceBuildInputZipFilePath);
23
- if (params.generateZipFile) {
24
- return result_1.Result.success(params.generatedPortalArtifactsZipFilePath);
25
- }
26
- await (0, utils_1.extractZipFile)(params.generatedPortalArtifactsZipFilePath, params.generatedPortalArtifactsFolderPath);
27
- await (0, utils_1.deleteFile)(params.generatedPortalArtifactsZipFilePath);
28
- return result_1.Result.success(params.generatedPortalArtifactsFolderPath);
29
- }
30
- catch (error) {
31
- return handlePortalGenerationErrors(error, params);
32
- }
33
- };
34
- exports.downloadDocsPortal = downloadDocsPortal;
35
- const createAuthorizationHeader = (authInfo, overrideAuthKey) => {
36
- if (overrideAuthKey) {
37
- return `X-Auth-Key ${overrideAuthKey}`;
38
- }
39
- if (!authInfo) {
40
- return "";
41
- }
42
- return `X-Auth-Key ${authInfo.authKey}`;
43
- };
44
- const createApiClient = (authorizationHeader) => {
45
- return new sdk_1.Client({
46
- customHeaderAuthenticationCredentials: {
47
- Authorization: authorizationHeader
48
- },
49
- timeout: TIMEOUT
50
- });
51
- };
52
- const generatePortalFromSyncEndpoint = async (docsPortalManagementController, zippedBuildFilePath) => {
53
- const file = new sdk_1.FileWrapper(fs.createReadStream(zippedBuildFilePath));
54
- const response = await docsPortalManagementController.generateOnPremPortalViaBuildInput(CONTENT_TYPE, file);
55
- return response.result;
56
- };
57
- const saveGeneratedPortalStreamToZipFile = async (data, generatedPortalArtifactsZipFilePath) => {
58
- const writeStream = fs.createWriteStream(generatedPortalArtifactsZipFilePath);
59
- await new Promise((resolve, reject) => {
60
- data
61
- .pipe(writeStream)
62
- .on("finish", () => resolve())
63
- .on("error", (error) => reject(result_1.Result.failure(`Failed to save downloaded portal to file: ${error.message}`)));
64
- });
65
- };
66
- const handlePortalGenerationErrors = async (error, params) => {
67
- var _a, _b;
68
- if (error instanceof sdk_1.UnauthorizedResponseError) {
69
- //401
70
- const body = await parseErrorResponse(error);
71
- return result_1.Result.failure((0, utils_1.getMessageInRedColor)((_a = body.message) !== null && _a !== void 0 ? _a : "Unauthorized access"));
72
- }
73
- else if (error instanceof sdk_1.ProblemDetailsError) {
74
- //400 & 403
75
- const body = await parseErrorResponse(error);
76
- const message = body.errors[Object.keys(body.errors)[0]][0];
77
- return result_1.Result.failure((0, utils_1.getMessageInRedColor)(body.title + " " + ((_b = body.detail) !== null && _b !== void 0 ? _b : "") + ":\n" + message));
78
- }
79
- else if (error instanceof sdk_1.ApiError && error.statusCode === 422) {
80
- //422
81
- await extractErrorZipFile(error, params);
82
- return result_1.Result.failure((0, utils_1.getMessageInRedColor)("An error occurred during portal generation due to an issue with the input. An error report has been written at the destination path: " +
83
- params.generatedPortalArtifactsFolderPath));
84
- }
85
- else {
86
- return result_1.Result.failure((0, utils_1.getMessageInRedColor)(error instanceof Error ? error.message : String(error)));
87
- }
88
- };
89
- const parseErrorResponse = async (error) => {
90
- if (error instanceof Error && "body" in error) {
91
- const stream = error.body;
92
- return await (0, utils_1.parseStreamBodyToJson)(stream);
93
- }
94
- throw error;
95
- };
96
- const extractErrorZipFile = async (error, params) => {
97
- const data = error.body;
98
- const writeStream = fs.createWriteStream(params.generatedPortalArtifactsZipFilePath);
99
- await new Promise((resolve, reject) => {
100
- data
101
- .pipe(writeStream)
102
- .on("finish", () => resolve())
103
- .on("error", reject);
104
- });
105
- if (!params.generateZipFile) {
106
- await (0, utils_1.extractZipFile)(params.generatedPortalArtifactsZipFilePath, params.generatedPortalArtifactsFolderPath);
107
- await (0, utils_1.deleteFile)(params.generatedPortalArtifactsZipFilePath);
108
- }
109
- };
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlcnMvcG9ydGFsL2dlbmVyYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUErQjtBQUMvQiw2Q0FBNEc7QUFFNUcsa0VBQXdFO0FBQ3hFLHVDQVN1QjtBQUN2QixzREFBbUQ7QUFDbkQsTUFBTSxZQUFZLEdBQUcsaUJBQVcsQ0FBQyxxQkFBcUIsQ0FBQztBQUN2RCxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUM7QUFFWCxNQUFNLGtCQUFrQixHQUFHLEtBQUssRUFDckMsTUFBNEIsRUFDNUIsU0FBaUIsRUFDZ0IsRUFBRTtJQUNuQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUMsRUFBRSxDQUFDO1FBQy9ELE9BQU8sZUFBTSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxNQUFNLFFBQVEsR0FBb0IsTUFBTSxJQUFBLDBCQUFXLEVBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0QsTUFBTSxtQkFBbUIsR0FBRyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3hGLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sOEJBQThCLEdBQUcsSUFBSSxvQ0FBOEIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUVsRixJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLDhCQUE4QixDQUFDLDhCQUE4QixFQUFFLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3hILE1BQU0sa0NBQWtDLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQzdGLE1BQU0sSUFBQSxrQkFBVSxFQUFDLE1BQU0sQ0FBQywyQkFB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
@@ -1,14 +0,0 @@
1
- import { ApiValidationExternalApIsController, ApiValidationSummary } from "@apimatic/sdk";
2
- import { LoginCredentials, SpecFile } from "../../types/portal/quickstart";
3
- import { SDKClient } from "../../client-utils/sdk-client";
4
- import { PortalQuickstartPrompts } from "../../prompts/portal/quickstart";
5
- export declare class PortalQuickstartController {
6
- private readonly specUrl;
7
- isUserAuthenticated(configDir: string): Promise<boolean>;
8
- userLogin(credentials: LoginCredentials, client: SDKClient, configDir: string): Promise<void>;
9
- getSpecFile(spec: string): Promise<SpecFile>;
10
- getSpecValidationSummary(prompts: PortalQuickstartPrompts, specFile: SpecFile, apiValidationController: ApiValidationExternalApIsController): Promise<ApiValidationSummary>;
11
- setupBuildDirectory(prompts: PortalQuickstartPrompts, targetFolder: string, specFile: SpecFile, validationSummary: ApiValidationSummary, languages: string[]): Promise<void>;
12
- generatePortalArtifacts(targetFolder: string, configDir: string): Promise<string>;
13
- servePortal(generatedPortalPath: string, targetFolder: string, configDir: string): Promise<boolean>;
14
- }