@apimatic/cli 1.1.0-alpha.8 → 1.1.0-beta.1

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 (345) hide show
  1. package/README.md +436 -374
  2. package/bin/run.js +5 -0
  3. package/lib/actions/action-result.d.ts +13 -0
  4. package/lib/actions/action-result.js +44 -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 +12 -0
  10. package/lib/actions/api/validate.js +41 -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 +16 -0
  28. package/lib/actions/portal/quickstart.js +146 -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 +118 -0
  35. package/lib/actions/portal/serve.js.map +1 -0
  36. package/lib/actions/portal/toc/new-toc.d.ts +21 -0
  37. package/lib/actions/portal/toc/new-toc.js +97 -0
  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 +47 -0
  44. package/lib/actions/sdk/generate.js.map +1 -0
  45. package/lib/actions/sdk/quickstart.d.ts +14 -0
  46. package/lib/actions/sdk/quickstart.js +149 -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/{new/toc → toc}/toc-content-parser.d.ts +1 -1
  55. package/lib/application/portal/toc/toc-content-parser.js +44 -0
  56. package/lib/application/portal/toc/toc-content-parser.js.map +1 -0
  57. package/lib/application/portal/{new/toc → toc}/toc-structure-generator.d.ts +1 -1
  58. package/lib/application/portal/toc/toc-structure-generator.js +84 -0
  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 +14 -0
  91. package/lib/commands/portal/toc/new.js +60 -0
  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 +52 -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 +24 -0
  116. package/lib/infrastructure/file-service.js +120 -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 +12 -0
  131. package/lib/infrastructure/services/api-service.js +79 -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 +17 -12
  140. package/lib/infrastructure/services/portal-service.js +134 -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 +17 -0
  149. package/lib/infrastructure/services/validation-service.js +49 -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 +12 -0
  161. package/lib/prompts/api/validate.js +40 -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 +28 -29
  182. package/lib/prompts/portal/quickstart.js +102 -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 +15 -0
  191. package/lib/prompts/portal/toc/new-toc.js +38 -0
  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 +11 -0
  200. package/lib/prompts/sdk/generate.js +37 -0
  201. package/lib/prompts/sdk/generate.js.map +1 -0
  202. package/lib/prompts/sdk/quickstart.d.ts +32 -0
  203. package/lib/prompts/sdk/quickstart.js +140 -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 +10 -0
  275. package/lib/types/sdl/sdl.js +47 -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.js +2 -10
  284. package/lib/types/toc/toc.js.map +1 -0
  285. package/lib/types/toc-context.d.ts +12 -0
  286. package/lib/types/toc-context.js +26 -0
  287. package/lib/types/toc-context.js.map +1 -0
  288. package/lib/types/transform-context.d.ts +13 -0
  289. package/lib/types/transform-context.js +30 -0
  290. package/lib/types/transform-context.js.map +1 -0
  291. package/lib/types/utils.d.ts +0 -9
  292. package/lib/types/utils.js +2 -3
  293. package/lib/types/utils.js.map +1 -0
  294. package/lib/utils/string-utils.d.ts +2 -0
  295. package/lib/utils/string-utils.js +37 -0
  296. package/lib/utils/string-utils.js.map +1 -0
  297. package/lib/utils/utils.d.ts +2 -44
  298. package/lib/utils/utils.js +14 -366
  299. package/lib/utils/utils.js.map +1 -0
  300. package/package.json +50 -31
  301. package/bin/run +0 -9
  302. package/lib/actions/portal/new/toc.d.ts +0 -17
  303. package/lib/actions/portal/new/toc.js +0 -134
  304. package/lib/application/portal/new/toc/sdl-parser.d.ts +0 -13
  305. package/lib/application/portal/new/toc/sdl-parser.js +0 -53
  306. package/lib/application/portal/new/toc/toc-content-parser.js +0 -46
  307. package/lib/application/portal/new/toc/toc-structure-generator.js +0 -88
  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/new/toc.d.ts +0 -15
  311. package/lib/commands/portal/new/toc.js +0 -65
  312. package/lib/commands/portal/quickstart.d.ts +0 -10
  313. package/lib/commands/portal/quickstart.js +0 -79
  314. package/lib/config/env.d.ts +0 -27
  315. package/lib/config/env.js +0 -31
  316. package/lib/controllers/api/transform.d.ts +0 -5
  317. package/lib/controllers/api/transform.js +0 -56
  318. package/lib/controllers/api/validate.d.ts +0 -3
  319. package/lib/controllers/api/validate.js +0 -33
  320. package/lib/controllers/portal/generate.d.ts +0 -3
  321. package/lib/controllers/portal/generate.js +0 -110
  322. package/lib/controllers/portal/quickstart.d.ts +0 -14
  323. package/lib/controllers/portal/quickstart.js +0 -258
  324. package/lib/controllers/portal/serve.d.ts +0 -3
  325. package/lib/controllers/portal/serve.js +0 -138
  326. package/lib/controllers/sdk/generate.d.ts +0 -4
  327. package/lib/controllers/sdk/generate.js +0 -66
  328. package/lib/prompts/portal/new/toc.d.ts +0 -10
  329. package/lib/prompts/portal/new/toc.js +0 -46
  330. package/lib/services/portal/server.d.ts +0 -14
  331. package/lib/services/portal/server.js +0 -101
  332. package/lib/types/api/validate.d.ts +0 -12
  333. package/lib/types/api/validate.js +0 -3
  334. package/lib/types/common/result.d.ts +0 -17
  335. package/lib/types/common/result.js +0 -36
  336. package/lib/types/portal/generate.d.ts +0 -26
  337. package/lib/types/portal/generate.js +0 -4
  338. package/lib/types/portal/quickstart.d.ts +0 -17
  339. package/lib/types/portal/quickstart.js +0 -3
  340. package/lib/validators/common/directoryValidator.d.ts +0 -9
  341. package/lib/validators/common/directoryValidator.js +0 -53
  342. package/lib/validators/common/portValidator.d.ts +0 -5
  343. package/lib/validators/common/portValidator.js +0 -20
  344. package/lib/validators/portal/serveValidator.d.ts +0 -6
  345. package/lib/validators/portal/serveValidator.js +0 -21
@@ -1,134 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PortalNewTocAction = void 0;
4
- const path = require("path");
5
- const fs = require("fs-extra");
6
- const toc_1 = require("../../../prompts/portal/new/toc");
7
- const result_1 = require("../../../types/common/result");
8
- const utils_1 = require("../../../utils/utils");
9
- const sdl_parser_1 = require("../../../application/portal/new/toc/sdl-parser");
10
- const toc_structure_generator_1 = require("../../../application/portal/new/toc/toc-structure-generator");
11
- const toc_content_parser_1 = require("../../../application/portal/new/toc/toc-content-parser");
12
- const portal_service_1 = require("../../../infrastructure/services/portal-service");
13
- const DEFAULT_TOC_FILENAME = "toc.yml";
14
- const APIMATIC_BUILD_FILENAME = "APIMATIC-BUILD.json";
15
- class PortalNewTocAction {
16
- constructor() {
17
- this.prompts = new toc_1.PortalNewTocPrompts();
18
- this.sdlParser = new sdl_parser_1.SdlParser(new portal_service_1.PortalService());
19
- this.tocGenerator = new toc_structure_generator_1.TocStructureGenerator();
20
- this.contentParser = new toc_content_parser_1.TocContentParser();
21
- }
22
- async createToc(workingDirectory, configDir, destination, force = false, expandEndpoints = false, expandModels = false) {
23
- try {
24
- const tocDir = await this.getDestinationPath(workingDirectory, destination);
25
- const tocPath = path.join(tocDir, DEFAULT_TOC_FILENAME);
26
- const tocCheckResult = await this.handleExistingToc(tocPath, force);
27
- if (!tocCheckResult.isSuccess()) {
28
- return tocCheckResult;
29
- }
30
- const { endpointGroups, models } = await this.extractSdlComponents(workingDirectory, configDir, expandEndpoints, expandModels);
31
- const contentGroups = await this.extractContentGroups(workingDirectory);
32
- const toc = this.tocGenerator.createTocStructure(endpointGroups, models, expandEndpoints, expandModels, contentGroups);
33
- const yamlString = this.tocGenerator.transformToYaml(toc);
34
- await this.writeToc(tocPath, yamlString, "utf8");
35
- this.prompts.displayOutroMessage(tocPath);
36
- return result_1.Result.success(tocPath);
37
- }
38
- catch (error) {
39
- this.prompts.logError((0, utils_1.getMessageInRedColor)(`${error}`));
40
- return result_1.Result.failure(`❌ An unexpected error occurred while generating the TOC file.`);
41
- }
42
- }
43
- async writeToc(path, content, encoding) {
44
- await fs.ensureFile(path);
45
- await fs.writeFile(path, content, encoding);
46
- }
47
- async handleExistingToc(tocPath, force) {
48
- const shouldContinue = await this.checkExistingToc(tocPath, force);
49
- if (!shouldContinue) {
50
- return result_1.Result.cancelled("Operation was cancelled by the user.");
51
- }
52
- return result_1.Result.success("TOC check passed.");
53
- }
54
- async extractSdlComponents(workingDirectory, configDir, expandEndpoints, expandModels) {
55
- if (!expandEndpoints && !expandModels) {
56
- return { endpointGroups: new Map(), models: [] };
57
- }
58
- this.prompts.startProgressIndicatorWithMessage("Extracting endpoints and/or models from the API specification...");
59
- const specFolderPath = await this.getSpecFolderPath(workingDirectory);
60
- if (!(await fs.pathExists(specFolderPath))) {
61
- this.prompts.stopProgressIndicatorWithMessage(`⚠️ Could not find the specification folder at: ${specFolderPath}`);
62
- this.prompts.displayInfo("Falling back to default TOC structure without expanded endpoints or models...");
63
- return { endpointGroups: new Map(), models: [] };
64
- }
65
- const sdlResult = await this.sdlParser.getTocComponentsFromSdl(specFolderPath, workingDirectory, configDir);
66
- if (!sdlResult.isSuccess()) {
67
- this.prompts.stopProgressIndicatorWithMessage(`⚠️ ${sdlResult.error}`);
68
- this.prompts.displayInfo("Falling back to default TOC structure without expanded endpoints or models...");
69
- return { endpointGroups: new Map(), models: [] };
70
- }
71
- this.prompts.stopProgressIndicatorWithMessage("✅ Successfully extracted endpoints and/or models from the specification.");
72
- return sdlResult.value;
73
- }
74
- async extractContentGroups(workingDirectory) {
75
- const contentFolderPath = await this.getContentFolderPath(workingDirectory);
76
- if (!(await fs.pathExists(contentFolderPath))) {
77
- this.prompts.displayInfo(`⚠️ Could not locate the content folder at: ${contentFolderPath}`);
78
- this.prompts.displayInfo("Skipping custom content addition in TOC...");
79
- return [];
80
- }
81
- return await this.contentParser.parseContentFolder(contentFolderPath, contentFolderPath);
82
- }
83
- async getDestinationPath(workingDirectory, providedDestination) {
84
- if (providedDestination === undefined) {
85
- const inferredDestination = await this.getContentFolderPath(workingDirectory);
86
- return inferredDestination;
87
- }
88
- return providedDestination;
89
- }
90
- async checkExistingToc(tocPath, force) {
91
- if ((await fs.pathExists(tocPath)) && !force) {
92
- return await this.prompts.overwriteExistingTocPrompt();
93
- }
94
- return true;
95
- }
96
- async getContentFolderPath(workingDirectory) {
97
- var _a;
98
- const buildFilePath = path.join(workingDirectory, APIMATIC_BUILD_FILENAME);
99
- const defaultContentFolder = path.join(workingDirectory, "content");
100
- if (!(await fs.pathExists(buildFilePath))) {
101
- return defaultContentFolder;
102
- }
103
- try {
104
- const buildConfig = await fs.readJson(buildFilePath, "utf8");
105
- if (((_a = buildConfig.generatePortal) === null || _a === void 0 ? void 0 : _a.contentFolder) == null) {
106
- return defaultContentFolder;
107
- }
108
- return path.join(workingDirectory, buildConfig.generatePortal.contentFolder, "content");
109
- }
110
- catch (_b) {
111
- return defaultContentFolder;
112
- }
113
- }
114
- async getSpecFolderPath(workingDirectory) {
115
- var _a;
116
- const buildFilePath = path.join(workingDirectory, APIMATIC_BUILD_FILENAME);
117
- const defaultSpecFolder = path.join(workingDirectory, "spec");
118
- if (!(await fs.pathExists(buildFilePath))) {
119
- return defaultSpecFolder;
120
- }
121
- try {
122
- const buildConfig = await fs.readJson(buildFilePath, "utf8");
123
- if (((_a = buildConfig.generatePortal) === null || _a === void 0 ? void 0 : _a.apiSpecPath) == null) {
124
- return defaultSpecFolder;
125
- }
126
- return path.join(workingDirectory, buildConfig.generatePortal.apiSpecPath);
127
- }
128
- catch (_b) {
129
- return defaultSpecFolder;
130
- }
131
- }
132
- }
133
- exports.PortalNewTocAction = PortalNewTocAction;
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjdGlvbnMvcG9ydGFsL25ldy90b2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTZCO0FBQzdCLCtCQUErQjtBQUMvQix5REFBc0U7QUFDdEUseURBQXNEO0FBQ3RELGdEQUE0RDtBQUM1RCwrRUFBMkU7QUFDM0UseUdBQW9HO0FBQ3BHLCtGQUEwRjtBQUUxRixvRkFBZ0Y7QUFFaEYsTUFBTSxvQkFBb0IsR0FBRyxTQUFTLENBQUM7QUFDdkMsTUFBTSx1QkFBdUIsR0FBRyxxQkFBcUIsQ0FBQztBQUV0RCxNQUFhLGtCQUFrQjtJQU03QjtRQUNFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSx5QkFBbUIsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxzQkFBUyxDQUFDLElBQUksOEJBQWEsRUFBRSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLCtDQUFxQixFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHFDQUFnQixFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQ2IsZ0JBQXdCLEVBQ3hCLFNBQWlCLEVBQ2pCLFdBQW9CLEVBQ3BCLFFBQWlCLEtBQUssRUFDdEIsa0JBQTJCLEtBQUssRUFDaEMsZUFBd0IsS0FBSztRQUU3QixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUM1RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNw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
@@ -1,13 +0,0 @@
1
- import { PortalService } from "../../../../infrastructure/services/portal-service";
2
- import { TocEndpoint, TocModel } from "../../../../types/toc/toc";
3
- import { Result } from "../../../../types/common/result";
4
- export declare class SdlParser {
5
- private readonly portalService;
6
- constructor(portalService: PortalService);
7
- getTocComponentsFromSdl(specFolderPath: string, workingDirectory: string, configDir: string): Promise<Result<{
8
- endpointGroups: Map<string, TocEndpoint[]>;
9
- models: TocModel[];
10
- }, string>>;
11
- private extractEndpointGroups;
12
- private extractModels;
13
- }
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RsLXBhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHBsaWNhdGlvbi9wb3J0YWwvbmV3L3RvYy9zZGwtcGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE2QjtBQUU3QixtREFBaUY7QUFFakYsNERBQXlEO0FBR3pELE1BQWEsU0FBUztJQUNwQixZQUE2QixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUFHLENBQUM7SUFFN0QsS0FBSyxDQUFDLHVCQUF1QixDQUFDLGNBQXNCLEVBQUUsZ0JBQXdCLEVBQUUsU0FBaUI7UUFDL0YsTUFBTSwwQkFBMEIsR0FBRyxNQUFNLElBQUEsa0NBQTBCLEVBQ2pFLGNBQWMsRUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLENBQ2hELENBQUM7UUFFRixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLDBCQUEwQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBRTNGLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztnQkFDeEIsT0FBTyxlQUFNLENBQUMsT0FBTyxDQUFDLHFJQUFxSSxDQUFDLENBQUE7WUFDOUosQ0FBQztZQUVELE1BQU0sR0FBRyxHQUFTLE1BQU0sQ0FBQyxLQUFNLENBQUE7WUFDL0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFdkMsT0FBTyxlQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDcEQsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsTUFBTSxJQUFBLGtCQUFVLEVBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLHFCQUFxQixDQUFDLEdBQVE7UUFDcEMsTUFBTSxjQUFjLEdBQUcsSUFBSSxHQUFHLEVBQXlCLENBQUM7UUFFeEQsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFjLEVBQWUsRUFBRSxDQUFDLENBQUM7WUFDcEUsUUFBUSxFQUFFLElBQUk7WUFDZCxJQUFJLEVBQUUsVUFBVTtZQUNoQixZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUk7WUFDcEIsYUFBYSxFQUFFLENBQUMsQ0FBQyxLQUFLO1NBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBRUosU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQXFCLEVBQUUsRUFBRTtZQUMxQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2hDLENBQUM7WUFDRCxjQUFjLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7SUFFTyxhQUFhLENBQUMsR0FBUTtRQUM1QixPQUFPLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBVyxFQUFZLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELFFBQVEsRUFBRSxJQUFJO1lBQ2QsSUFBSSxFQUFFLE9BQU87WUFDYixTQUFTLEVBQUUsQ0FBQyxDQUFDLElBQUk7U0FDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0NBQ0Y7QUF0REQsOEJBc0RDIn0=
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TocContentParser = void 0;
4
- const path = require("path");
5
- const fs = require("fs-extra");
6
- class TocContentParser {
7
- async parseContentFolder(contentFolderPath, workingDirectory) {
8
- const items = await fs.readdir(contentFolderPath);
9
- const contentItems = [];
10
- for (const item of items) {
11
- const itemPath = path.join(contentFolderPath, item);
12
- const stats = await fs.stat(itemPath);
13
- if (stats.isDirectory()) {
14
- const subItems = await this.parseContentFolder(itemPath, workingDirectory);
15
- if (subItems.length > 0) {
16
- contentItems.push({
17
- group: item,
18
- items: subItems[0].items // Take items from the Custom Content group
19
- });
20
- }
21
- }
22
- else if (stats.isFile() && item.endsWith(".md")) {
23
- const relativePath = path.relative(workingDirectory, itemPath);
24
- const pageName = path.basename(item, ".md");
25
- contentItems.push({
26
- page: pageName,
27
- file: this.normalizePath(relativePath)
28
- });
29
- }
30
- }
31
- // Return empty array if no markdown files were found
32
- if (contentItems.length === 0) {
33
- return [];
34
- }
35
- // Wrap everything under a "Custom Content" group
36
- return [{
37
- group: "Custom Content",
38
- items: contentItems
39
- }];
40
- }
41
- normalizePath(path) {
42
- return path.replace(/\\/g, '/');
43
- }
44
- }
45
- exports.TocContentParser = TocContentParser;
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLWNvbnRlbnQtcGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL3BvcnRhbC9uZXcvdG9jL3RvYy1jb250ZW50LXBhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBNkI7QUFDN0IsK0JBQStCO0FBRy9CLE1BQWEsZ0JBQWdCO0lBQzNCLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBeUIsRUFBRSxnQkFBd0I7UUFDMUUsTUFBTSxLQUFLLEdBQUcsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEQsTUFBTSxZQUFZLEdBQWlDLEVBQUUsQ0FBQztRQUV0RCxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDcEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXRDLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUMzRSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3hCLFlBQVksQ0FBQyxJQUFJLENBQUM7d0JBQ2hCLEtBQUssRUFBRSxJQUFJO3dCQUNYLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLDJDQUEyQztxQkFDckUsQ0FBQyxDQUFDO2dCQUNMLENBQUM7WUFDSCxDQUFDO2lCQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDL0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBRTVDLFlBQVksQ0FBQyxJQUFJLENBQUM7b0JBQ2hCLElBQUksRUFBRSxRQUFRO29CQUNkLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztpQkFDdkMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFFRCxxREFBcUQ7UUFDckQsSUFBSSxZQUFZLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzlCLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELGlEQUFpRDtRQUNqRCxPQUFPLENBQUM7Z0JBQ04sS0FBSyxFQUFFLGdCQUFnQjtnQkFDdkIsS0FBSyxFQUFFLFlBQVk7YUFDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxJQUFZO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBM0NELDRDQTJDQyJ9
@@ -1,88 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TocStructureGenerator = void 0;
4
- const yaml_1 = require("yaml");
5
- class TocStructureGenerator {
6
- createTocStructure(endpointGroups, models, expandEndpoints = false, expandModels = false, contentGroups = []) {
7
- const tocStructure = {
8
- toc: []
9
- };
10
- // Add Getting Started section
11
- tocStructure.toc.push({
12
- group: "Getting Started",
13
- items: [
14
- {
15
- generate: "How to Get Started",
16
- from: "getting-started"
17
- }
18
- ]
19
- });
20
- // Add content groups
21
- if (contentGroups.length > 0) {
22
- tocStructure.toc.push(...contentGroups);
23
- }
24
- // Add API Endpoints section
25
- if (!expandEndpoints || endpointGroups.size === 0) {
26
- tocStructure.toc.push({
27
- generate: "API Endpoints",
28
- from: "endpoints"
29
- });
30
- }
31
- else {
32
- tocStructure.toc.push({
33
- group: "API Endpoints",
34
- items: Array.from(endpointGroups).map(([groupName, endpoints]) => ({
35
- group: groupName,
36
- items: [
37
- {
38
- generate: null,
39
- from: "endpoint-group-overview",
40
- endpointGroup: groupName
41
- },
42
- ...endpoints
43
- ]
44
- }))
45
- });
46
- }
47
- // Add Models section
48
- if (!expandModels || models.length === 0) {
49
- tocStructure.toc.push({
50
- generate: "Models",
51
- from: "models"
52
- });
53
- }
54
- else {
55
- tocStructure.toc.push({
56
- group: "Models",
57
- items: models
58
- });
59
- }
60
- //Add Sdk Infra section
61
- tocStructure.toc.push({
62
- generate: "SDK Infrastructure",
63
- from: "sdk-infra"
64
- });
65
- return tocStructure;
66
- }
67
- transformToYaml(toc) {
68
- const transformedToc = this.transformKeys(toc);
69
- return (0, yaml_1.stringify)(transformedToc, {
70
- indent: 2,
71
- nullStr: ""
72
- });
73
- }
74
- transformKeys(obj) {
75
- if (Array.isArray(obj)) {
76
- return obj.map((item) => this.transformKeys(item));
77
- }
78
- if (obj !== null && typeof obj === "object") {
79
- return Object.fromEntries(Object.entries(obj).map(([key, value]) => [
80
- key.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(),
81
- this.transformKeys(value)
82
- ]));
83
- }
84
- return obj;
85
- }
86
- }
87
- exports.TocStructureGenerator = TocStructureGenerator;
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLXN0cnVjdHVyZS1nZW5lcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwbGljYXRpb24vcG9ydGFsL25ldy90b2MvdG9jLXN0cnVjdHVyZS1nZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQWlDO0FBR2pDLE1BQWEscUJBQXFCO0lBQ2hDLGtCQUFrQixDQUNoQixjQUEwQyxFQUMxQyxNQUFrQixFQUNsQixrQkFBMkIsS0FBSyxFQUNoQyxlQUF3QixLQUFLLEVBQzdCLGdCQUE0QixFQUFFO1FBRTlCLE1BQU0sWUFBWSxHQUFRO1lBQ3hCLEdBQUcsRUFBRSxFQUFFO1NBQ1IsQ0FBQztRQUVGLDhCQUE4QjtRQUM5QixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNwQixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLEtBQUssRUFBRTtnQkFDTDtvQkFDRSxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixJQUFJLEVBQUUsaUJBQWlCO2lCQUN4QjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBRUgscUJBQXFCO1FBQ3JCLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM3QixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLGFBQWEsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCw0QkFBNEI7UUFDNUIsSUFBSSxDQUFDLGVBQWUsSUFBSSxjQUFjLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2xELFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO2dCQUNwQixRQUFRLEVBQUUsZUFBZTtnQkFDekIsSUFBSSxFQUFFLFdBQVc7YUFDbEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDcEIsS0FBSyxFQUFFLGVBQWU7Z0JBQ3RCLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUNqRSxLQUFLLEVBQUUsU0FBUztvQkFDaEIsS0FBSyxFQUFFO3dCQUNMOzRCQUNFLFFBQVEsRUFBRSxJQUFJOzRCQUNkLElBQUksRUFBRSx5QkFBeUI7NEJBQy9CLGFBQWEsRUFBRSxTQUFTO3lCQUNHO3dCQUM3QixHQUFHLFNBQVM7cUJBQ2I7aUJBQ0YsQ0FBQyxDQUFDO2FBQ0osQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELHFCQUFxQjtRQUNyQixJQUFJLENBQUMsWUFBWSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixJQUFJLEVBQUUsUUFBUTthQUNmLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLEtBQUssRUFBRSxRQUFRO2dCQUNmLEtBQUssRUFBRSxNQUFNO2FBQ2QsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELHVCQUF1QjtRQUN2QixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNwQixRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLElBQUksRUFBRSxXQUFXO1NBQ2xCLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBUTtRQUN0QixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sSUFBQSxnQkFBUyxFQUFDLGNBQWMsRUFBRTtZQUMvQixNQUFNLEVBQUUsQ0FBQztZQUNULE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxHQUFRO1FBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDNUMsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUN2QixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDeEMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO2FBQzFCLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztDQUNGO0FBL0ZELHNEQStGQyJ9
@@ -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,15 +0,0 @@
1
- import { Command } from "@oclif/core";
2
- export default class PortalNewToc extends Command {
3
- static summary: string;
4
- static description: string;
5
- static flags: {
6
- destination: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
- folder: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
8
- force: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
- "expand-endpoints": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
- "expand-models": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
- };
12
- static examples: string[];
13
- constructor(argv: string[], config: any);
14
- run(): Promise<void>;
15
- }
@@ -1,65 +0,0 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const path = require("path");
5
- const core_1 = require("@oclif/core");
6
- const toc_1 = require("../../../actions/portal/new/toc");
7
- const DEFAULT_FOLDER = process.cwd();
8
- class PortalNewToc extends core_1.Command {
9
- constructor(argv, config) {
10
- super(argv, config);
11
- }
12
- async run() {
13
- const { flags } = await this.parse(_a);
14
- const portalNewTocAction = new toc_1.PortalNewTocAction();
15
- const result = await portalNewTocAction.createToc(flags.folder, this.config.configDir, flags.destination, flags.force, flags["expand-endpoints"], flags["expand-models"]);
16
- if (result.isFailed()) {
17
- this.error(result.error);
18
- }
19
- }
20
- }
21
- _a = PortalNewToc;
22
- PortalNewToc.summary = 'Generates a TOC file based on the content directory and spec folder provided in your working directory';
23
- PortalNewToc.description = `This command generates a new Table of Contents (TOC) file used in the
24
- generation of your API documentation portal.
25
-
26
- The output is a YAML file with the .yml extension.
27
-
28
- To learn more about the TOC file and APIMatic build directory structure, visit:
29
- https://docs.apimatic.io/platform-api/#/http/guides/generating-on-prem-api-portal/overview-generating-api-portal`;
30
- PortalNewToc.flags = {
31
- destination: core_1.Flags.string({
32
- parse: async (input) => path.resolve(input),
33
- description: "optional path where the generated TOC file will be saved. Defaults to the current working directory if not provided.",
34
- }),
35
- folder: core_1.Flags.string({
36
- parse: async (input) => path.resolve(input),
37
- description: "path to the working directory containing the API project files. Defaults to the current working directory if not specified.",
38
- default: DEFAULT_FOLDER
39
- }),
40
- force: core_1.Flags.boolean({
41
- default: false,
42
- description: "overwrite the TOC file if one already exists at the destination.",
43
- }),
44
- "expand-endpoints": core_1.Flags.boolean({
45
- default: false,
46
- description: "include individual entries for each endpoint in the generated TOC. Requires a valid API specification in the working directory."
47
- }),
48
- "expand-models": core_1.Flags.boolean({
49
- default: false,
50
- description: "include individual entries for each model in the generated TOC. Requires a valid API specification in the working directory."
51
- })
52
- };
53
- PortalNewToc.examples = [
54
- `$ apimatic portal:new:toc --destination="./portal/content/"
55
- A new toc file has been created at ./portal/content/toc.yml
56
- `,
57
- `$ apimatic portal:new:toc --folder="./my-project"
58
- A new toc file has been created at ./my-project/content/toc.yml
59
- `,
60
- `$ apimatic portal:new:toc --folder="./my-project" --destination="./portal/content/"
61
- A new toc file has been created at ./portal/content/toc.yml
62
- `
63
- ];
64
- exports.default = PortalNewToc;
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3BvcnRhbC9uZXcvdG9jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE2QjtBQUM3QixzQ0FBNkM7QUFDN0MseURBQXFFO0FBRXJFLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUVyQyxNQUFxQixZQUFhLFNBQVEsY0FBTztJQStDL0MsWUFBWSxJQUFjLEVBQUUsTUFBVztRQUNyQyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBWSxDQUFDLENBQUM7UUFDakQsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLHdCQUFrQixFQUFFLENBQUM7UUFDcEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxrQkFBa0IsQ0FBQyxTQUFTLENBQy9DLEtBQUssQ0FBQyxNQUFNLEVBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQ3JCLEtBQUssQ0FBQyxXQUFXLEVBQ2pCLEtBQUssQ0FBQyxLQUFLLEVBQ1gsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQ3pCLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FDdkIsQ0FBQztRQUVGLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBTSxDQUFDLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7OztBQWpFTSxvQkFBTyxHQUFHLHdHQUF3RyxBQUEzRyxDQUE0RztBQUVuSCx3QkFBVyxHQUFHOzs7Ozs7aUhBTTBGLEFBTjdGLENBTThGO0FBRXpHLGtCQUFLLEdBQUc7SUFDYixXQUFXLEVBQUUsWUFBSyxDQUFDLE1BQU0sQ0FBQztRQUN4QixLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDbkQsV0FBVyxFQUFFLHNIQUFzSDtLQUNwSSxDQUFDO0lBQ0YsTUFBTSxFQUFFLFlBQUssQ0FBQyxNQUFNLENBQUM7UUFDbkIsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ25ELFdBQVcsRUFBRSw2SEFBNkg7UUFDMUksT0FBTyxFQUFFLGNBQWM7S0FDeEIsQ0FBQztJQUNGLEtBQUssRUFBRSxZQUFLLENBQUMsT0FBTyxDQUFDO1FBQ25CLE9BQU8sRUFBRSxLQUFLO1FBQ2QsV0FBVyxFQUFFLGtFQUFrRTtLQUNoRixDQUFDO0lBQ0Ysa0JBQWtCLEVBQUUsWUFBSyxDQUFDLE9BQU8sQ0FBQztRQUNoQyxPQUFPLEVBQUUsS0FBSztRQUNkLFdBQVcsRUFBRSxpSUFBaUk7S0FDL0ksQ0FBQztJQUNGLGVBQWUsRUFBRSxZQUFLLENBQUMsT0FBTyxDQUFDO1FBQzdCLE9BQU8sRUFBRSxLQUFLO1FBQ2QsV0FBVyxFQUFFLDhIQUE4SDtLQUM1SSxDQUFDO0NBQ0gsQUF0QlcsQ0FzQlY7QUFFSyxxQkFBUSxHQUFHO0lBQ2hCOztDQUVIO0lBQ0c7O0NBRUg7SUFDRzs7Q0FFSDtDQUNFLEFBVmMsQ0FVYjtrQkE3Q2lCLFlBQVkifQ==
@@ -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
- }