@apimatic/cli 1.1.0-beta.8 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/README.md +117 -13
  2. package/lib/actions/portal/copilot.d.ts +1 -0
  3. package/lib/actions/portal/copilot.js +12 -12
  4. package/lib/actions/portal/copilot.js.map +1 -1
  5. package/lib/actions/portal/generate.js +7 -1
  6. package/lib/actions/portal/generate.js.map +1 -1
  7. package/lib/actions/portal/quickstart.d.ts +1 -0
  8. package/lib/actions/portal/quickstart.js +40 -6
  9. package/lib/actions/portal/quickstart.js.map +1 -1
  10. package/lib/actions/portal/serve.d.ts +1 -0
  11. package/lib/actions/portal/serve.js +77 -20
  12. package/lib/actions/portal/serve.js.map +1 -1
  13. package/lib/actions/portal/toc/new-toc.js +8 -20
  14. package/lib/actions/portal/toc/new-toc.js.map +1 -1
  15. package/lib/actions/publishing/profile/list.d.ts +11 -0
  16. package/lib/actions/publishing/profile/list.js +29 -0
  17. package/lib/actions/publishing/profile/list.js.map +1 -0
  18. package/lib/actions/sdk/generate.d.ts +9 -5
  19. package/lib/actions/sdk/generate.js +76 -30
  20. package/lib/actions/sdk/generate.js.map +1 -1
  21. package/lib/actions/sdk/merge-source-tree.d.ts +12 -0
  22. package/lib/actions/sdk/merge-source-tree.js +78 -0
  23. package/lib/actions/sdk/merge-source-tree.js.map +1 -0
  24. package/lib/actions/sdk/publish/interactive.d.ts +13 -0
  25. package/lib/actions/sdk/publish/interactive.js +105 -0
  26. package/lib/actions/sdk/publish/interactive.js.map +1 -0
  27. package/lib/actions/sdk/publish/non-interactive.d.ts +14 -0
  28. package/lib/actions/sdk/publish/non-interactive.js +101 -0
  29. package/lib/actions/sdk/publish/non-interactive.js.map +1 -0
  30. package/lib/actions/sdk/publish.d.ts +18 -0
  31. package/lib/actions/sdk/publish.js +56 -0
  32. package/lib/actions/sdk/publish.js.map +1 -0
  33. package/lib/actions/sdk/quickstart.js +2 -1
  34. package/lib/actions/sdk/quickstart.js.map +1 -1
  35. package/lib/actions/sdk/save-changes.d.ts +8 -0
  36. package/lib/actions/sdk/save-changes.js +93 -0
  37. package/lib/actions/sdk/save-changes.js.map +1 -0
  38. package/lib/application/portal/recipe/recipe-generator.js +14 -29
  39. package/lib/application/portal/recipe/recipe-generator.js.map +1 -1
  40. package/lib/application/portal/toc/toc-structure-generator.d.ts +3 -19
  41. package/lib/application/portal/toc/toc-structure-generator.js +43 -33
  42. package/lib/application/portal/toc/toc-structure-generator.js.map +1 -1
  43. package/lib/commands/portal/recipe/new.js +2 -2
  44. package/lib/commands/portal/recipe/new.js.map +1 -1
  45. package/lib/commands/portal/serve.js +3 -3
  46. package/lib/commands/portal/serve.js.map +1 -1
  47. package/lib/commands/portal/toc/new.js +2 -2
  48. package/lib/commands/portal/toc/new.js.map +1 -1
  49. package/lib/commands/publishing/profile/list.d.ts +9 -0
  50. package/lib/commands/publishing/profile/list.js +28 -0
  51. package/lib/commands/publishing/profile/list.js.map +1 -0
  52. package/lib/commands/quickstart.js +1 -1
  53. package/lib/commands/quickstart.js.map +1 -1
  54. package/lib/commands/sdk/generate.d.ts +7 -2
  55. package/lib/commands/sdk/generate.js +37 -9
  56. package/lib/commands/sdk/generate.js.map +1 -1
  57. package/lib/commands/sdk/publish.d.ts +18 -0
  58. package/lib/commands/sdk/publish.js +73 -0
  59. package/lib/commands/sdk/publish.js.map +1 -0
  60. package/lib/commands/sdk/save-changes.d.ts +14 -0
  61. package/lib/commands/sdk/save-changes.js +51 -0
  62. package/lib/commands/sdk/save-changes.js.map +1 -0
  63. package/lib/hooks/not-found.js +1 -1
  64. package/lib/hooks/not-found.js.map +1 -1
  65. package/lib/infrastructure/debounce-service.js +3 -0
  66. package/lib/infrastructure/debounce-service.js.map +1 -1
  67. package/lib/infrastructure/env-info.d.ts +2 -0
  68. package/lib/infrastructure/env-info.js +23 -12
  69. package/lib/infrastructure/env-info.js.map +1 -1
  70. package/lib/infrastructure/file-service.d.ts +9 -0
  71. package/lib/infrastructure/file-service.js +94 -5
  72. package/lib/infrastructure/file-service.js.map +1 -1
  73. package/lib/infrastructure/git-service.d.ts +14 -0
  74. package/lib/infrastructure/git-service.js +90 -0
  75. package/lib/infrastructure/git-service.js.map +1 -0
  76. package/lib/infrastructure/launcher-service.d.ts +5 -0
  77. package/lib/infrastructure/launcher-service.js +35 -2
  78. package/lib/infrastructure/launcher-service.js.map +1 -1
  79. package/lib/infrastructure/os-extensions.d.ts +2 -0
  80. package/lib/infrastructure/os-extensions.js +6 -0
  81. package/lib/infrastructure/os-extensions.js.map +1 -0
  82. package/lib/infrastructure/service-error.d.ts +14 -2
  83. package/lib/infrastructure/service-error.js +26 -9
  84. package/lib/infrastructure/service-error.js.map +1 -1
  85. package/lib/infrastructure/services/api-service.d.ts +1 -0
  86. package/lib/infrastructure/services/api-service.js +26 -2
  87. package/lib/infrastructure/services/api-service.js.map +1 -1
  88. package/lib/infrastructure/services/portal-service.d.ts +11 -2
  89. package/lib/infrastructure/services/portal-service.js +123 -18
  90. package/lib/infrastructure/services/portal-service.js.map +1 -1
  91. package/lib/infrastructure/services/publishing-api-service.d.ts +19 -0
  92. package/lib/infrastructure/services/publishing-api-service.js +111 -0
  93. package/lib/infrastructure/services/publishing-api-service.js.map +1 -0
  94. package/lib/infrastructure/services/validation-service.js.map +1 -1
  95. package/lib/infrastructure/zip-service.d.ts +2 -2
  96. package/lib/infrastructure/zip-service.js +46 -25
  97. package/lib/infrastructure/zip-service.js.map +1 -1
  98. package/lib/prompts/format.d.ts +0 -2
  99. package/lib/prompts/format.js +0 -31
  100. package/lib/prompts/format.js.map +1 -1
  101. package/lib/prompts/portal/generate.d.ts +1 -1
  102. package/lib/prompts/portal/generate.js +9 -3
  103. package/lib/prompts/portal/generate.js.map +1 -1
  104. package/lib/prompts/portal/quickstart.d.ts +4 -0
  105. package/lib/prompts/portal/quickstart.js +22 -0
  106. package/lib/prompts/portal/quickstart.js.map +1 -1
  107. package/lib/prompts/portal/serve.d.ts +4 -0
  108. package/lib/prompts/portal/serve.js +20 -1
  109. package/lib/prompts/portal/serve.js.map +1 -1
  110. package/lib/prompts/portal/toc/new-toc.d.ts +2 -2
  111. package/lib/prompts/portal/toc/new-toc.js +3 -3
  112. package/lib/prompts/portal/toc/new-toc.js.map +1 -1
  113. package/lib/prompts/prompt.d.ts +6 -0
  114. package/lib/prompts/prompt.js +45 -0
  115. package/lib/prompts/prompt.js.map +1 -1
  116. package/lib/prompts/publishing/profile/list.d.ts +9 -0
  117. package/lib/prompts/publishing/profile/list.js +27 -0
  118. package/lib/prompts/publishing/profile/list.js.map +1 -0
  119. package/lib/prompts/sdk/generate.d.ts +9 -4
  120. package/lib/prompts/sdk/generate.js +37 -15
  121. package/lib/prompts/sdk/generate.js.map +1 -1
  122. package/lib/prompts/sdk/merge-source-tree.d.ts +22 -0
  123. package/lib/prompts/sdk/merge-source-tree.js +90 -0
  124. package/lib/prompts/sdk/merge-source-tree.js.map +1 -0
  125. package/lib/prompts/sdk/publish/interactive.d.ts +30 -0
  126. package/lib/prompts/sdk/publish/interactive.js +139 -0
  127. package/lib/prompts/sdk/publish/interactive.js.map +1 -0
  128. package/lib/prompts/sdk/publish/non-interactive.d.ts +27 -0
  129. package/lib/prompts/sdk/publish/non-interactive.js +97 -0
  130. package/lib/prompts/sdk/publish/non-interactive.js.map +1 -0
  131. package/lib/prompts/sdk/publish.d.ts +12 -0
  132. package/lib/prompts/sdk/publish.js +16 -0
  133. package/lib/prompts/sdk/publish.js.map +1 -0
  134. package/lib/prompts/sdk/save-changes.d.ts +21 -0
  135. package/lib/prompts/sdk/save-changes.js +84 -0
  136. package/lib/prompts/sdk/save-changes.js.map +1 -0
  137. package/lib/types/build/build.d.ts +81 -2
  138. package/lib/types/build/build.js +158 -0
  139. package/lib/types/build/build.js.map +1 -1
  140. package/lib/types/build-context.d.ts +12 -1
  141. package/lib/types/build-context.js +78 -4
  142. package/lib/types/build-context.js.map +1 -1
  143. package/lib/types/events/sdk-changes-saved.d.ts +8 -0
  144. package/lib/types/events/sdk-changes-saved.js +11 -0
  145. package/lib/types/events/sdk-changes-saved.js.map +1 -0
  146. package/lib/types/events/sdk-changes-tracked.d.ts +8 -0
  147. package/lib/types/events/sdk-changes-tracked.js +11 -0
  148. package/lib/types/events/sdk-changes-tracked.js.map +1 -0
  149. package/lib/types/events/sdk-conflicts-resolved.d.ts +8 -0
  150. package/lib/types/events/sdk-conflicts-resolved.js +11 -0
  151. package/lib/types/events/sdk-conflicts-resolved.js.map +1 -0
  152. package/lib/types/events/sdk-publish-validation-failed.d.ts +5 -0
  153. package/lib/types/events/sdk-publish-validation-failed.js +8 -0
  154. package/lib/types/events/sdk-publish-validation-failed.js.map +1 -0
  155. package/lib/types/file/directory.d.ts +10 -1
  156. package/lib/types/file/directory.js +63 -5
  157. package/lib/types/file/directory.js.map +1 -1
  158. package/lib/types/file/directoryPath.js.map +1 -1
  159. package/lib/types/file/urlPath.d.ts +4 -0
  160. package/lib/types/file/urlPath.js +9 -0
  161. package/lib/types/file/urlPath.js.map +1 -1
  162. package/lib/types/merge-source-tree-context.d.ts +28 -0
  163. package/lib/types/merge-source-tree-context.js +63 -0
  164. package/lib/types/merge-source-tree-context.js.map +1 -0
  165. package/lib/types/package-settings-context.d.ts +10 -0
  166. package/lib/types/package-settings-context.js +20 -0
  167. package/lib/types/package-settings-context.js.map +1 -0
  168. package/lib/types/publish/package-settings-configuration.d.ts +74 -0
  169. package/lib/types/publish/package-settings-configuration.js +2 -0
  170. package/lib/types/publish/package-settings-configuration.js.map +1 -0
  171. package/lib/types/publish/profile-id.d.ts +10 -0
  172. package/lib/types/publish/profile-id.js +22 -0
  173. package/lib/types/publish/profile-id.js.map +1 -0
  174. package/lib/types/publish/publishing-profile.d.ts +26 -0
  175. package/lib/types/publish/publishing-profile.js +154 -0
  176. package/lib/types/publish/publishing-profile.js.map +1 -0
  177. package/lib/types/publish/publishing-profiles.d.ts +12 -0
  178. package/lib/types/publish/publishing-profiles.js +36 -0
  179. package/lib/types/publish/publishing-profiles.js.map +1 -0
  180. package/lib/types/publish/version.d.ts +7 -0
  181. package/lib/types/publish/version.js +17 -0
  182. package/lib/types/publish/version.js.map +1 -0
  183. package/lib/types/publish-api/publish-log.d.ts +20 -0
  184. package/lib/types/publish-api/publish-log.js +2 -0
  185. package/lib/types/publish-api/publish-log.js.map +1 -0
  186. package/lib/types/publish-api/publishing-info.d.ts +4 -0
  187. package/lib/types/publish-api/publishing-info.js +2 -0
  188. package/lib/types/publish-api/publishing-info.js.map +1 -0
  189. package/lib/types/publish-api/publishing-profile-item.d.ts +190 -0
  190. package/lib/types/publish-api/publishing-profile-item.js +6 -0
  191. package/lib/types/publish-api/publishing-profile-item.js.map +1 -0
  192. package/lib/types/save-changes-context.d.ts +17 -0
  193. package/lib/types/save-changes-context.js +42 -0
  194. package/lib/types/save-changes-context.js.map +1 -0
  195. package/lib/types/sdk/generate.d.ts +8 -0
  196. package/lib/types/sdk/generate.js +10 -0
  197. package/lib/types/sdk/generate.js.map +1 -1
  198. package/lib/types/sdk-context.d.ts +5 -4
  199. package/lib/types/sdk-context.js +26 -13
  200. package/lib/types/sdk-context.js.map +1 -1
  201. package/lib/types/sdl/sdl.d.ts +0 -28
  202. package/lib/types/sdl/sdl.js +1 -128
  203. package/lib/types/sdl/sdl.js.map +1 -1
  204. package/lib/types/spec-context.js.map +1 -1
  205. package/lib/types/temp-context.js.map +1 -1
  206. package/lib/types/toc/toc-components.d.ts +37 -0
  207. package/lib/types/toc/toc-components.js +97 -0
  208. package/lib/types/toc/toc-components.js.map +1 -0
  209. package/lib/types/toc/toc.d.ts +11 -0
  210. package/lib/utils/string-utils.d.ts +0 -1
  211. package/lib/utils/string-utils.js +0 -42
  212. package/lib/utils/string-utils.js.map +1 -1
  213. package/package.json +28 -20
  214. package/lib/types/versioned-build-context.d.ts +0 -9
  215. package/lib/types/versioned-build-context.js +0 -21
  216. package/lib/types/versioned-build-context.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"validation-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/validation-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/validation-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { DirectoryPath } from "../types/file/directoryPath.js";
2
- import { FilePath } from "../types/file/filePath.js";
1
+ import { DirectoryPath } from '../types/file/directoryPath.js';
2
+ import { FilePath } from '../types/file/filePath.js';
3
3
  export declare class ZipService {
4
4
  archive(sourceDir: DirectoryPath, outputZipPath: FilePath): Promise<void>;
5
5
  unArchive(sourceFile: FilePath, destinationDirectory: DirectoryPath): Promise<void>;
@@ -1,39 +1,60 @@
1
- import fs from "fs";
2
- import archiver from "archiver";
3
- import extract from "extract-zip";
1
+ import fs from 'fs';
2
+ import yazl from 'yazl';
3
+ import AdmZip from 'adm-zip';
4
4
  export class ZipService {
5
5
  async archive(sourceDir, outputZipPath) {
6
6
  return new Promise((resolve, reject) => {
7
+ const zipfile = new yazl.ZipFile();
8
+ const addDirectory = (dir, relativePrefix) => {
9
+ for (const entry of fs.readdirSync(dir.toString(), { withFileTypes: true })) {
10
+ const fullPath = dir.join(entry.name);
11
+ // Always use forward slashes as metadataPath — zip format requires it
12
+ const metadataPath = relativePrefix ? `${relativePrefix}/${entry.name}` : entry.name;
13
+ if (entry.isDirectory()) {
14
+ addDirectory(fullPath, metadataPath);
15
+ }
16
+ else {
17
+ zipfile.addFile(fullPath.toString(), metadataPath);
18
+ }
19
+ }
20
+ };
21
+ try {
22
+ addDirectory(sourceDir, '');
23
+ }
24
+ catch (err) {
25
+ return reject(err);
26
+ }
27
+ zipfile.end();
7
28
  const output = fs.createWriteStream(outputZipPath.toString());
8
- const archive = archiver("zip");
9
- output.on("close", () => resolve());
10
- archive.on("error", (err) => reject(err));
11
- archive.pipe(output);
12
- archive.directory(sourceDir.toString(), false); // false: don't nest under folder
13
- archive.finalize();
29
+ zipfile.outputStream.pipe(output);
30
+ output.on('close', resolve);
31
+ output.on('error', reject);
14
32
  });
15
33
  }
16
34
  async unArchive(sourceFile, destinationDirectory) {
17
35
  const MAX_FILES = 100000;
18
36
  const MAX_SIZE = 1000000000; // 1 GB
19
- let fileCount = 0;
37
+ // adm-zip extracts synchronously, with no per-entry read streams. This
38
+ // avoids a hang on Node 22+ where yauzl/fd-slicer (used by extract-zip)
39
+ // builds STORED-entry read streams that deliver every byte but never emit
40
+ // `end`, leaving the extraction promise pending forever — even though all
41
+ // files have already been written to disk — which crashes the CLI with
42
+ // "unsettled top-level await" / exit code 13.
43
+ const zip = new AdmZip(sourceFile.toString());
44
+ const entries = zip.getEntries();
45
+ if (entries.length > MAX_FILES) {
46
+ throw new Error('Reached max. file count');
47
+ }
48
+ // header.size is the uncompressed size declared in the zip headers, so it
49
+ // might not be trustworthy — kept as a cheap guard against zip bombs.
20
50
  let totalSize = 0;
21
- await extract(sourceFile.toString(), {
22
- dir: destinationDirectory.toString(),
23
- onEntry: function (entry) {
24
- fileCount++;
25
- if (fileCount > MAX_FILES) {
26
- throw new Error("Reached max. file count");
27
- }
28
- // The uncompressedSize comes from the zip headers, so it might not be trustworthy.
29
- // Alternatively, calculate the size from the readStream.
30
- let entrySize = entry.uncompressedSize;
31
- totalSize += entrySize;
32
- if (totalSize > MAX_SIZE) {
33
- throw new Error("Reached max. size");
34
- }
51
+ for (const entry of entries) {
52
+ totalSize += entry.header.size;
53
+ if (totalSize > MAX_SIZE) {
54
+ throw new Error('Reached max. size');
35
55
  }
36
- });
56
+ }
57
+ zip.extractAllTo(destinationDirectory.toString(), /* overwrite */ true);
37
58
  }
38
59
  }
39
60
  //# sourceMappingURL=zip-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zip-service.js","sourceRoot":"","sources":["../../src/infrastructure/zip-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,OAAO,MAAM,aAAa,CAAC;AAIlC,MAAM,OAAO,UAAU;IACd,KAAK,CAAC,OAAO,CAAC,SAAwB,EAAE,aAAuB;QACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEhC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACpC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAE1C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,iCAAiC;YACjF,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,UAAoB,EAAE,oBAAmC;QAC9E,MAAM,SAAS,GAAG,MAAO,CAAC;QAC1B,MAAM,QAAQ,GAAG,UAAa,CAAC,CAAC,OAAO;QACvC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE;YACnC,GAAG,EAAE,oBAAoB,CAAC,QAAQ,EAAE;YACpC,OAAO,EAAE,UAAU,KAAK;gBACtB,SAAS,EAAE,CAAC;gBACZ,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;oBAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC7C,CAAC;gBACD,mFAAmF;gBACnF,yDAAyD;gBACzD,IAAI,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC;gBACvC,SAAS,IAAI,SAAS,CAAC;gBACvB,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"zip-service.js","sourceRoot":"","sources":["../../src/infrastructure/zip-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,OAAO,UAAU;IACd,KAAK,CAAC,OAAO,CAAC,SAAwB,EAAE,aAAuB;QACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAEnC,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,cAAsB,EAAE,EAAE;gBAClE,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC5E,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtC,sEAAsE;oBACtE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;oBACrF,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,UAAoB,EAAE,oBAAmC;QAC9E,MAAM,SAAS,GAAG,MAAO,CAAC;QAC1B,MAAM,QAAQ,GAAG,UAAa,CAAC,CAAC,OAAO;QAEvC,uEAAuE;QACvE,wEAAwE;QACxE,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,8CAA8C;QAC9C,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEjC,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,0EAA0E;QAC1E,sEAAsE;QACtE,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,GAAG,CAAC,YAAY,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;CACF"}
@@ -1,5 +1,4 @@
1
1
  import { ActionResult } from "../actions/action-result.js";
2
- import { Directory } from "../types/file/directory.js";
3
2
  import { DirectoryPath } from "../types/file/directoryPath.js";
4
3
  import { FilePath } from "../types/file/filePath.js";
5
4
  export declare const format: {
@@ -20,7 +19,6 @@ export declare const format: {
20
19
  };
21
20
  export declare function intro(text: string): void;
22
21
  export declare function outro<T>(result: ActionResult<T>): void;
23
- export declare function getDirectoryTree(dir: Directory, prefix?: string, isLast?: boolean): string;
24
22
  export interface LeafNode {
25
23
  name: string;
26
24
  description?: string;
@@ -1,6 +1,5 @@
1
1
  import pc from "picocolors";
2
2
  import { intro as i, outro as o } from '@clack/prompts';
3
- import { Directory } from "../types/file/directory.js";
4
3
  export const format = {
5
4
  // Core element types
6
5
  var: (text) => pc.magenta(`'${text}'`),
@@ -35,36 +34,6 @@ export function outro(result) {
35
34
  o(outroMessage);
36
35
  process.exitCode = exitCode;
37
36
  }
38
- export function getDirectoryTree(dir, prefix = "", isLast = true) {
39
- const folderDescription = {
40
- spec: "# Contains all API definition files",
41
- content: "# Includes custom documentation pages in Markdown",
42
- static: "# Includes all static files, such as images, GIFs, and PDFs"
43
- };
44
- const fileDescriptions = {
45
- "toc.yml": "# Controls the structure of the side navigation bar in the API portal",
46
- "APIMATIC-BUILD.json": "# Defines all configurations for the API portal, including programming languages and themes"
47
- };
48
- const pointer = isLast ? "└─ " : "├─ ";
49
- const folderName = dir.directoryPath.leafName();
50
- const description = folderDescription[folderName] ? format.description(folderDescription[folderName]) : "";
51
- let output = `${prefix}${pointer}${folderName}${description ? " " + description : ""}\n`;
52
- const items = dir.items;
53
- const newPrefix = prefix + (isLast ? " " : "| ");
54
- items.forEach((item, index) => {
55
- const last = index === items.length - 1;
56
- if (item instanceof Directory) {
57
- output += getDirectoryTree(item, newPrefix, last);
58
- }
59
- else {
60
- const filePointer = last ? "└─ " : "├─ ";
61
- const fileName = item.toString();
62
- const fileDescription = fileDescriptions[fileName] ? format.description(fileDescriptions[fileName]) : "";
63
- output += `${newPrefix}${filePointer}${fileName}${fileDescription ? " " + fileDescription : ""}\n`;
64
- }
65
- });
66
- return output;
67
- }
68
37
  export function getTree(dir, prefix = "", isLast = true) {
69
38
  const pointer = isLast ? "└─ " : "├─ ";
70
39
  const folderName = dir.name;
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/prompts/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/prompts/format.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ export declare class PortalGeneratePrompts {
9
9
  portalDirectoryNotEmpty(): void;
10
10
  generatePortal(fn: Promise<Result<NodeJS.ReadableStream, ServiceError | NodeJS.ReadableStream>>): Promise<Result<NodeJS.ReadableStream, NodeJS.ReadableStream | ServiceError>>;
11
11
  portalGenerationError(error: string): void;
12
- portalGenerationServiceError(serviceError: ServiceError): void;
12
+ portalGenerationSdkMergeFailed(sdkMergeFailedErrors: string[]): void;
13
13
  portalGenerationErrorWithReport(reportPath: FilePath): void;
14
14
  portalGenerated(portal: DirectoryPath): void;
15
15
  }
@@ -1,6 +1,6 @@
1
1
  import { isCancel, confirm, log } from "@clack/prompts";
2
2
  import { format as f } from "../format.js";
3
- import { withSpinner } from "../prompt.js";
3
+ import { noteWrapped, withSpinner } from "../prompt.js";
4
4
  export class PortalGeneratePrompts {
5
5
  async overwritePortal(directory) {
6
6
  const overwrite = await confirm({
@@ -30,8 +30,14 @@ export class PortalGeneratePrompts {
30
30
  portalGenerationError(error) {
31
31
  log.error(error);
32
32
  }
33
- portalGenerationServiceError(serviceError) {
34
- log.error(serviceError.errorMessage);
33
+ portalGenerationSdkMergeFailed(sdkMergeFailedErrors) {
34
+ log.error(`Saved changes couldn't be applied to one or more SDKs.`);
35
+ const language = sdkMergeFailedErrors.length === 1 ? sdkMergeFailedErrors[0] : "<language>";
36
+ log.error(`Merge conflicts found in:\n- ${sdkMergeFailedErrors.join("\n- ")}`);
37
+ const message = `Review and resolve the conflicts first by running:
38
+ '${f.cmdAlt("apimatic", "sdk", "generate")} ${f.flag("language", language)}'
39
+ After resolving merge conflicts, retry ${f.cmdAlt("apimatic", "portal", "generate")}.`;
40
+ noteWrapped(message, "Next Steps");
35
41
  }
36
42
  portalGenerationErrorWithReport(reportPath) {
37
43
  const message = `An error occurred during portal generation.
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/portal/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,OAAO,qBAAqB;IACzB,KAAK,CAAC,eAAe,CAAC,SAAwB;QACnD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,0CAA0C;YACvF,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,qBAAqB,CAAC,SAAwB;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,kDAAkD,CAAC,CAAC,IAAI,CAChH,SAAS,CACV,EAAE,CAAC;QACJ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,iBAAiB,CAAC,SAAwB;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,uBAAuB;QAC5B,MAAM,OAAO,GAAG,yFAAyF,CAAC;QAC1G,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,cAAc,CAAC,EAAgF;QACpG,OAAO,WAAW,CAAC,mBAAmB,EAAE,gCAAgC,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAC;IAC7G,CAAC;IAEM,qBAAqB,CAAC,KAAa;QACxC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEM,4BAA4B,CAAC,YAA0B;QAC5D,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAEM,+BAA+B,CAAC,UAAoB;QACzD,MAAM,OAAO,GAAG;oDACgC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,eAAe,CAAC,MAAqB;QAC1C,GAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;CACF"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/portal/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAExD,MAAM,OAAO,qBAAqB;IACzB,KAAK,CAAC,eAAe,CAAC,SAAwB;QACnD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,0CAA0C;YACvF,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,qBAAqB,CAAC,SAAwB;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,kDAAkD,CAAC,CAAC,IAAI,CAChH,SAAS,CACV,EAAE,CAAC;QACJ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,iBAAiB,CAAC,SAAwB;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,uBAAuB;QAC5B,MAAM,OAAO,GAAG,yFAAyF,CAAC;QAC1G,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,cAAc,CAAC,EAAgF;QACpG,OAAO,WAAW,CAAC,mBAAmB,EAAE,gCAAgC,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAC;IAC7G,CAAC;IAEM,qBAAqB,CAAC,KAAa;QACxC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEM,8BAA8B,CAAC,oBAA8B;QAClE,GAAG,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5F,GAAG,CAAC,KAAK,CAAC,gCAAgC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG;GACjB,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;yCACjC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC;QACnF,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACrC,CAAC;IAEM,+BAA+B,CAAC,UAAoB;QACzD,MAAM,OAAO,GAAG;oDACgC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,eAAe,CAAC,MAAqB;QAC1C,GAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;CACF"}
@@ -28,6 +28,10 @@ export declare class PortalQuickstartPrompts {
28
28
  downloadSpecFile(fn: Promise<Result<FileDownloadResponse, ServiceError>>): Promise<Result<FileDownloadResponse, ServiceError>>;
29
29
  nextSteps(): void;
30
30
  serviceError(serviceError: ServiceError): void;
31
+ selectCopilotKey(keys: string[]): Promise<string | undefined>;
32
+ noCopilotKeySelected(): void;
33
+ accountInfoFetchFailed(serviceError: ServiceError): void;
34
+ copilotEnabled(key: string): void;
31
35
  printDirectoryStructure(inputDirectory: DirectoryPath, directory: Directory): void;
32
36
  specValidationFailed(): void;
33
37
  }
@@ -157,6 +157,28 @@ ${f.link(referenceDocumentationUrl)}`;
157
157
  serviceError(serviceError) {
158
158
  log.error(serviceError.errorMessage);
159
159
  }
160
+ async selectCopilotKey(keys) {
161
+ const selectedKey = await select({
162
+ message: "Select an API Copilot key for this portal:",
163
+ maxItems: 10,
164
+ options: keys.map((key) => ({ value: key, label: key }))
165
+ });
166
+ if (isCancel(selectedKey)) {
167
+ return undefined;
168
+ }
169
+ return selectedKey;
170
+ }
171
+ noCopilotKeySelected() {
172
+ log.error("No API Copilot key was selected.");
173
+ }
174
+ accountInfoFetchFailed(serviceError) {
175
+ log.error(`Failed to fetch your account information. ${serviceError.errorMessage}`);
176
+ }
177
+ copilotEnabled(key) {
178
+ const message = `API Copilot is enabled with key ${f.var(key)}. ` +
179
+ `Any existing AI context associated with this key will be overwritten when the portal is generated.`;
180
+ log.warn(message);
181
+ }
160
182
  printDirectoryStructure(inputDirectory, directory) {
161
183
  const heading = `${f.var("src")} directory containing source files created at ${f.path(inputDirectory)}\n`;
162
184
  const message = getTree(directory.toTreeNode());
@@ -1 +1 @@
1
- {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/prompts/portal/quickstart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/prompts/portal/quickstart.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,10 @@ import { UrlPath } from "../../types/file/urlPath.js";
2
2
  import { DirectoryPath } from "../../types/file/directoryPath.js";
3
3
  export declare class PortalServePrompts {
4
4
  usingFallbackPort(currentPort: number, availablePort: number): void;
5
+ serverStartFailed(port: number): void;
6
+ noPortalSource(buildDirectory: DirectoryPath): void;
7
+ invalidBuildConfig(buildDirectory: DirectoryPath): void;
8
+ baseUrlPortUpdated(updatedUrl: UrlPath): void;
5
9
  portalServed(urlPath: UrlPath): void;
6
10
  promptForExit(): void;
7
11
  changesDetected(): void;
@@ -4,9 +4,28 @@ import { once } from "events";
4
4
  import { noteWrapped } from "../prompt.js";
5
5
  export class PortalServePrompts {
6
6
  usingFallbackPort(currentPort, availablePort) {
7
- const message = `Port ${f.var(currentPort.toString())} is already in use. Available port ${f.var(availablePort.toString())} will be used.`;
7
+ const message = `Port ${f.var(currentPort.toString())} is already in use. The portal will use port ${f.var(availablePort.toString())} instead.`;
8
8
  log.step(message);
9
9
  }
10
+ serverStartFailed(port) {
11
+ const message = `Could not start the portal server on port ${f.var(port.toString())}; ` +
12
+ `it may have just been taken by another process. Please try again.`;
13
+ log.error(message);
14
+ }
15
+ noPortalSource(buildDirectory) {
16
+ const message = `No portal source found at ${f.path(buildDirectory)}. ` +
17
+ `Run ${f.cmdAlt("apimatic", "portal", "quickstart")} to set one up.`;
18
+ log.error(message);
19
+ }
20
+ invalidBuildConfig(buildDirectory) {
21
+ const message = `Could not read the build configuration in ${f.path(buildDirectory)}. ` +
22
+ `Ensure ${f.var("APIMATIC-BUILD.json")} exists and is valid JSON.`;
23
+ log.error(message);
24
+ }
25
+ baseUrlPortUpdated(updatedUrl) {
26
+ const message = `Updated the base URL in ${f.var("APIMATIC-BUILD.json")} to ${f.var(updatedUrl.toString())} to match the serve port.`;
27
+ log.info(message);
28
+ }
10
29
  portalServed(urlPath) {
11
30
  const message = `The portal is running at ${f.link(urlPath.toString())}`;
12
31
  log.message(message);
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/prompts/portal/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,OAAO,kBAAkB;IACtB,iBAAiB,CAAC,WAAmB,EAAE,aAAqB;QACjE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,sCAAsC,CAAC,CAAC,GAAG,CAC9F,aAAa,CAAC,QAAQ,EAAE,CACzB,gBAAgB,CAAC;QAClB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAEM,YAAY,CAAC,OAAgB;QAClC,MAAM,OAAO,GAAG,4BAA4B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAEM,aAAa;QAClB,MAAM,OAAO,GAAG,kCAAkC,CAAC;QACnD,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAEM,eAAe;QACpB,MAAM,OAAO,GAAG,qBAAqB,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAEM,YAAY;QACjB,MAAM,OAAO,GAAG,iJAAiJ,CAAC,CAAC,GAAG,CACpK,qBAAqB,CACtB,EAAE,CAAC;QACJ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAEM,gBAAgB,CAAC,YAA2B;QACjD,WAAW,CACT;;yBAEmB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EACzD,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/prompts/portal/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,OAAO,kBAAkB;IACtB,iBAAiB,CAAC,WAAmB,EAAE,aAAqB;QACjE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,gDAAgD,CAAC,CAAC,GAAG,CACxG,aAAa,CAAC,QAAQ,EAAE,CACzB,WAAW,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAEM,iBAAiB,CAAC,IAAY;QACnC,MAAM,OAAO,GACX,6CAA6C,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI;YACvE,mEAAmE,CAAC;QACtE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,cAAc,CAAC,cAA6B;QACjD,MAAM,OAAO,GACX,6BAA6B,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;YACvD,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,iBAAiB,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,kBAAkB,CAAC,cAA6B;QACrD,MAAM,OAAO,GACX,6CAA6C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI;YACvE,UAAU,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,4BAA4B,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,kBAAkB,CAAC,UAAmB;QAC3C,MAAM,OAAO,GAAG,2BAA2B,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,2BAA2B,CAAC;QACtI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAEM,YAAY,CAAC,OAAgB;QAClC,MAAM,OAAO,GAAG,4BAA4B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAEM,aAAa;QAClB,MAAM,OAAO,GAAG,kCAAkC,CAAC;QACnD,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAEM,eAAe;QACpB,MAAM,OAAO,GAAG,qBAAqB,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAEM,YAAY;QACjB,MAAM,OAAO,GAAG,iJAAiJ,CAAC,CAAC,GAAG,CACpK,qBAAqB,CACtB,EAAE,CAAC;QACJ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAEM,gBAAgB,CAAC,YAA2B;QACjD,WAAW,CACT;;yBAEmB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EACzD,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}
@@ -2,7 +2,7 @@ import { FilePath } from "../../../types/file/filePath.js";
2
2
  import { Result } from "neverthrow";
3
3
  import { DirectoryPath } from "../../../types/file/directoryPath.js";
4
4
  import { ServiceError } from "../../../infrastructure/service-error.js";
5
- import { Sdl } from "../../../types/sdl/sdl.js";
5
+ import { TocData } from "../../../types/toc/toc-components.js";
6
6
  export declare class PortalNewTocPrompts {
7
7
  overwriteToc(tocPath: FilePath): Promise<boolean>;
8
8
  fallingBackToDefault(): void;
@@ -10,6 +10,6 @@ export declare class PortalNewTocPrompts {
10
10
  logError(message: string): void;
11
11
  contentDirectoryNotFound(contentFolderPath: DirectoryPath): void;
12
12
  invalidBuildDirectory(directory: DirectoryPath): void;
13
- extractComponents(fn: Promise<Result<Sdl, ServiceError>>, expandEndpoints: boolean, expandModels: boolean, expandWebhooks: boolean, expandCallbacks: boolean): Promise<Result<Sdl, ServiceError>>;
13
+ extractTocData(fn: Promise<Result<TocData, ServiceError>>, expandEndpoints: boolean, expandModels: boolean, expandWebhooks: boolean, expandCallbacks: boolean): Promise<Result<TocData, ServiceError>>;
14
14
  tocCreated(tocPath: FilePath): void;
15
15
  }
@@ -28,7 +28,7 @@ export class PortalNewTocPrompts {
28
28
  const message = `The ${f.var("src")} directory is either empty or invalid: ${f.path(directory)}`;
29
29
  log.error(message);
30
30
  }
31
- extractComponents(fn, expandEndpoints, expandModels, expandWebhooks, expandCallbacks) {
31
+ extractTocData(fn, expandEndpoints, expandModels, expandWebhooks, expandCallbacks) {
32
32
  const components = [
33
33
  expandEndpoints && "Endpoint groups",
34
34
  expandModels && "Models",
@@ -36,8 +36,8 @@ export class PortalNewTocPrompts {
36
36
  expandCallbacks && "Callbacks"
37
37
  ]
38
38
  .filter(Boolean)
39
- .join(" and ");
40
- return withSpinner(`Extracting ${components}`, `${components} extracted`, `${components} extraction failed`, fn);
39
+ .join(" and ") || "TOC data";
40
+ return withSpinner(`Extracting ${components}`, `${components} extracted`, `${components} extraction Failed`, fn);
41
41
  }
42
42
  tocCreated(tocPath) {
43
43
  log.info(`The TOC file successfully created at: ${f.path(tocPath)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"new-toc.js","sourceRoot":"","sources":["../../../../src/prompts/portal/toc/new-toc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAO,mBAAmB;IACvB,KAAK,CAAC,YAAY,CAAC,OAAiB;QACzC,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,+CAA+C;YAC/F,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,oBAAoB;QACzB,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IACzD,CAAC;IAEM,oBAAoB;QACzB,GAAG,CAAC,KAAK,CAAC,8FAA8F,CAAC,CAAC;IAC5G,CAAC;IAEM,QAAQ,CAAC,OAAe;QAC7B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,wBAAwB,CAAC,iBAAgC;QAC9D,GAAG,CAAC,KAAK,CAAC,gCAAgC,iBAAiB,EAAE,CAAC,CAAC;IACjE,CAAC;IAEM,qBAAqB,CAAC,SAAwB;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,iBAAiB,CACtB,EAAsC,EACtC,eAAwB,EACxB,YAAqB,EACrB,cAAuB,EACvB,eAAwB;QAExB,MAAM,UAAU,GAAG;YACjB,eAAe,IAAI,iBAAiB;YACpC,YAAY,IAAI,QAAQ;YACxB,cAAc,IAAI,UAAU;YAC5B,eAAe,IAAI,WAAW;SAC/B;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjB,OAAO,WAAW,CAAC,cAAc,UAAU,EAAE,EAAE,GAAG,UAAU,YAAY,EAAE,GAAG,UAAU,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACnH,CAAC;IAEM,UAAU,CAAC,OAAiB;QACjC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;CACF"}
1
+ {"version":3,"file":"new-toc.js","sourceRoot":"","sources":["../../../../src/prompts/portal/toc/new-toc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,MAAM,OAAO,mBAAmB;IACvB,KAAK,CAAC,YAAY,CAAC,OAAiB;QACzC,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,+CAA+C;YAC/F,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,oBAAoB;QACzB,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IACzD,CAAC;IAEM,oBAAoB;QACzB,GAAG,CAAC,KAAK,CAAC,8FAA8F,CAAC,CAAC;IAC5G,CAAC;IAEM,QAAQ,CAAC,OAAe;QAC7B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,wBAAwB,CAAC,iBAAgC;QAC9D,GAAG,CAAC,KAAK,CAAC,gCAAgC,iBAAiB,EAAE,CAAC,CAAC;IACjE,CAAC;IAEM,qBAAqB,CAAC,SAAwB;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEM,cAAc,CACnB,EAA0C,EAC1C,eAAwB,EACxB,YAAqB,EACrB,cAAuB,EACvB,eAAwB;QAExB,MAAM,UAAU,GAAG;YACjB,eAAe,IAAI,iBAAiB;YACpC,YAAY,IAAI,QAAQ;YACxB,cAAc,IAAI,UAAU;YAC5B,eAAe,IAAI,WAAW;SAC/B;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC;QAE/B,OAAO,WAAW,CAAC,cAAc,UAAU,EAAE,EAAE,GAAG,UAAU,YAAY,EAAE,GAAG,UAAU,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACnH,CAAC;IAEM,UAAU,CAAC,OAAiB;QACjC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;CACF"}
@@ -1,3 +1,9 @@
1
1
  import { Result } from "neverthrow";
2
2
  export declare function withSpinner<T, E>(intro: string, success: string, failure: string, fn: Promise<Result<T, E>>): Promise<Result<T, E>>;
3
3
  export declare const noteWrapped: (message: string, title: string) => void;
4
+ export declare function buildTableWithHeading(groups: {
5
+ heading: string;
6
+ rows: string[][];
7
+ }[], headers: string[], columnStyles?: ColumnStyle[]): string;
8
+ type ColumnStyle = 'primary' | 'secondary' | 'item';
9
+ export {};
@@ -34,4 +34,49 @@ export const noteWrapped = (message, title) => {
34
34
  note(message, title, opts);
35
35
  }
36
36
  };
37
+ export function buildTableWithHeading(groups, headers, columnStyles) {
38
+ return groups
39
+ .map((group) => `${pc.bold(pc.white(group.heading))}\n${buildTable(headers, group.rows, true, columnStyles)}`)
40
+ .join('\n\n');
41
+ }
42
+ function buildTable(headers, rows, rowSeparators = false, columnStyles) {
43
+ const COL_PAD = 2;
44
+ const MIN_COL_WIDTH = 4;
45
+ const coloredHeaders = headers.map((h) => pc.bold(pc.white(h)));
46
+ let widths = headers.map((h, i) => Math.max(stripAnsi(h).length, ...rows.map((r) => stripAnsi(r[i]).length)) + COL_PAD);
47
+ const terminalColumns = getColumns(process.stdout) || 80;
48
+ const totalWidth = 1 + 3 * headers.length + widths.reduce((a, b) => a + b, 0);
49
+ if (totalWidth > terminalColumns) {
50
+ const availableWidth = terminalColumns - 1 - 3 * headers.length;
51
+ const naturalTotal = widths.reduce((a, b) => a + b, 0);
52
+ widths = widths.map((w) => Math.max(MIN_COL_WIDTH, Math.floor((w / naturalTotal) * availableWidth)));
53
+ }
54
+ const columnStyleMap = {
55
+ primary: (text) => pc.magenta(text),
56
+ secondary: (text) => pc.dim(text),
57
+ item: (text) => pc.cyan(text)
58
+ };
59
+ const divider = (l, m, r) => pc.gray(l + widths.map((w) => '─'.repeat(w + 2)).join(m) + r);
60
+ const renderRow = (cells, applyStyles = false) => pc.gray('│') +
61
+ cells
62
+ .map((cell, i) => {
63
+ const styled = applyStyles && (columnStyles === null || columnStyles === void 0 ? void 0 : columnStyles[i]) ? columnStyleMap[columnStyles[i]](cell) : cell;
64
+ return ` ${pad(styled, widths[i])} ` + pc.gray('│');
65
+ })
66
+ .join('');
67
+ const lines = [divider('┌', '┬', '┐'), renderRow(coloredHeaders), divider('├', '┼', '┤')];
68
+ rows.forEach((row, i) => {
69
+ lines.push(renderRow(row, true));
70
+ if (rowSeparators) {
71
+ lines.push(i < rows.length - 1 ? divider('├', '┼', '┤') : divider('└', '┴', '┘'));
72
+ }
73
+ });
74
+ if (!rowSeparators)
75
+ lines.push(divider('└', '┴', '┘'));
76
+ return lines.join('\n');
77
+ }
78
+ /** Pad `text` to `width` visible characters (ANSI-safe). */
79
+ function pad(text, width) {
80
+ return text + ' '.repeat(Math.max(0, width - stripAnsi(text).length));
81
+ }
37
82
  //# sourceMappingURL=prompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/prompts/prompt.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAe,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAO,KAAa,EAAE,OAAe,EAAE,OAAe,EAAE,EAAyB;IAChH,MAAM,CAAC,GAAG,OAAO,CAAC;QAChB,aAAa,EAAE,WAAW;QAC1B,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;KAC3D,CAAC,CAAC;IACH,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,KAAK,CACV,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EACxB,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CACzB,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,KAAa,EAAE,EAAE;IAC5D,MAAM,MAAM,GAAa,OAAO,CAAC,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3C,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC7E,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,GAAgB;YACxB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;SACvB,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/prompts/prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Result } from 'neverthrow';
2
+ import { ServiceError } from '../../../infrastructure/service-error.js';
3
+ import { PublishingProfileSummaryGroup, PublishingProfileItem } from '../../../types/publish-api/publishing-profile-item.js';
4
+ export declare class PublishingProfileListPrompts {
5
+ fetchProfiles(fn: Promise<Result<PublishingProfileItem[], ServiceError>>): Promise<Result<PublishingProfileItem[], ServiceError>>;
6
+ fetchError(error: ServiceError): void;
7
+ noProfilesFound(): void;
8
+ displayProfiles(groups: PublishingProfileSummaryGroup[]): void;
9
+ }
@@ -0,0 +1,27 @@
1
+ import { log } from '@clack/prompts';
2
+ import { buildTableWithHeading, withSpinner } from '../../prompt.js';
3
+ export class PublishingProfileListPrompts {
4
+ fetchProfiles(fn) {
5
+ return withSpinner('Fetching publishing profiles', 'Publishing profiles fetched successfully.', 'Failed to fetch publishing profiles.', fn);
6
+ }
7
+ fetchError(error) {
8
+ log.error(error.errorMessage);
9
+ }
10
+ noProfilesFound() {
11
+ log.info('No publishing profiles found. Please create a publishing profile on the APIMatic App to view it here.');
12
+ }
13
+ displayProfiles(groups) {
14
+ const count = groups.reduce((sum, g) => sum + g.profiles.length, 0);
15
+ const label = count === 1 ? '1 profile' : `${count} profiles`;
16
+ const tableGroups = groups.map((group) => ({
17
+ heading: group.apiGroupName,
18
+ rows: group.profiles.map((profile) => [
19
+ profile.name,
20
+ profile.id,
21
+ profile.enabledLanguages.length === 0 ? '—' : profile.enabledLanguages.join(', '),
22
+ ]),
23
+ }));
24
+ log.info(`Publishing Profiles (${label})\n\n${buildTableWithHeading(tableGroups, ['Name', 'ID', 'Languages'], ['primary', 'secondary', 'item'])}`);
25
+ }
26
+ }
27
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/prompts/publishing/profile/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAIrC,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAErE,MAAM,OAAO,4BAA4B;IAChC,aAAa,CAAC,EAA0D;QAC7E,OAAO,WAAW,CAChB,8BAA8B,EAC9B,2CAA2C,EAC3C,sCAAsC,EACtC,EAAE,CACH,CAAC;IACJ,CAAC;IAEM,UAAU,CAAC,KAAmB;QACnC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAEM,eAAe;QACpB,GAAG,CAAC,IAAI,CAAC,uGAAuG,CAAC,CAAC;IACpH,CAAC;IAEM,eAAe,CAAC,MAAuC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC;QAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzC,OAAO,EAAE,KAAK,CAAC,YAAY;YAC3B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpC,OAAO,CAAC,IAAI;gBACZ,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;aAClF,CAAC;SACH,CAAC,CAAC,CAAC;QACJ,GAAG,CAAC,IAAI,CAAC,wBAAwB,KAAK,QAAQ,qBAAqB,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IACrJ,CAAC;CACF"}
@@ -1,15 +1,20 @@
1
1
  import { DirectoryPath } from "../../types/file/directoryPath.js";
2
2
  import { Result } from "neverthrow";
3
3
  import { ServiceError } from "../../infrastructure/service-error.js";
4
+ import { GeneratedSdkResult } from "../../infrastructure/services/portal-service.js";
4
5
  export declare class SdkGeneratePrompts {
5
6
  overwriteSdk(directory: DirectoryPath): Promise<boolean>;
6
7
  sameBuildAndSdkDir(directory: DirectoryPath): void;
8
+ srcDirectoryEmpty(directory: DirectoryPath): void;
7
9
  specDirectoryEmpty(directory: DirectoryPath): void;
8
10
  destinationDirNotEmpty(): void;
9
- generateSDK(fn: Promise<Result<NodeJS.ReadableStream, ServiceError>>): Promise<Result<NodeJS.ReadableStream, ServiceError>>;
10
- logGenerationError(error: string): void;
11
+ generateSDK(fn: Promise<Result<GeneratedSdkResult, ServiceError>>): Promise<Result<GeneratedSdkResult, ServiceError>>;
12
+ generateV4SDK(fn: Promise<Result<NodeJS.ReadableStream, ServiceError>>): Promise<Result<NodeJS.ReadableStream, ServiceError>>;
11
13
  sdkGenerationServiceError(serviceError: ServiceError): void;
12
- versionedBuildEmpty(): void;
13
- versionedBuild(relativePath: string): void;
14
+ invalidVersionedDocsDirectory(directory: DirectoryPath): void;
15
+ apiVersionOnlyApplicableWithVersionedBuild(): void;
16
+ versionNotFound(): void;
17
+ selectVersion(versions: string[]): Promise<string | undefined>;
14
18
  sdkGenerated(sdk: DirectoryPath): void;
19
+ sdkCustomizationsNotSupportedForV4(): void;
15
20
  }