@apimatic/cli 1.1.0-alpha.13 → 1.1.0-alpha.15

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 (209) hide show
  1. package/README.md +96 -95
  2. package/lib/actions/action-result.d.ts +8 -0
  3. package/lib/actions/action-result.js +25 -0
  4. package/lib/actions/action-result.js.map +1 -0
  5. package/lib/actions/auth/login.d.ts +12 -0
  6. package/lib/actions/auth/login.js +63 -0
  7. package/lib/actions/auth/login.js.map +1 -0
  8. package/lib/actions/portal/copilot.d.ts +11 -0
  9. package/lib/actions/portal/copilot.js +46 -0
  10. package/lib/actions/portal/copilot.js.map +1 -0
  11. package/lib/actions/portal/generate.d.ts +11 -5
  12. package/lib/actions/portal/generate.js +54 -47
  13. package/lib/actions/portal/generate.js.map +1 -1
  14. package/lib/actions/portal/recipe/new-recipe.d.ts +3 -3
  15. package/lib/actions/portal/recipe/new-recipe.js +18 -31
  16. package/lib/actions/portal/recipe/new-recipe.js.map +1 -1
  17. package/lib/actions/portal/serve.d.ts +17 -0
  18. package/lib/actions/portal/serve.js +36 -0
  19. package/lib/actions/portal/serve.js.map +1 -0
  20. package/lib/actions/portal/toc/new-toc.d.ts +4 -1
  21. package/lib/actions/portal/toc/new-toc.js +37 -34
  22. package/lib/actions/portal/toc/new-toc.js.map +1 -1
  23. package/lib/actions/sdk/generate.d.ts +13 -0
  24. package/lib/actions/sdk/generate.js +49 -0
  25. package/lib/actions/sdk/generate.js.map +1 -0
  26. package/lib/application/portal/serve/portal-watcher.d.ts +11 -0
  27. package/lib/application/portal/serve/portal-watcher.js +67 -0
  28. package/lib/application/portal/serve/portal-watcher.js.map +1 -0
  29. package/lib/application/portal/serve/serve-handler.d.ts +16 -0
  30. package/lib/application/portal/serve/serve-handler.js +91 -0
  31. package/lib/application/portal/serve/serve-handler.js.map +1 -0
  32. package/lib/application/portal/serve/watcher-handler.d.ts +10 -0
  33. package/lib/application/portal/serve/watcher-handler.js +51 -0
  34. package/lib/application/portal/serve/watcher-handler.js.map +1 -0
  35. package/lib/application/portal/toc/sdl-parser.d.ts +2 -1
  36. package/lib/application/portal/toc/sdl-parser.js +4 -4
  37. package/lib/application/portal/toc/sdl-parser.js.map +1 -1
  38. package/lib/client-utils/auth-manager.d.ts +7 -2
  39. package/lib/client-utils/auth-manager.js +24 -7
  40. package/lib/client-utils/auth-manager.js.map +1 -1
  41. package/lib/client-utils/sdk-client.d.ts +0 -1
  42. package/lib/client-utils/sdk-client.js +7 -38
  43. package/lib/client-utils/sdk-client.js.map +1 -1
  44. package/lib/commands/api/transform.d.ts +2 -2
  45. package/lib/commands/api/transform.js +10 -19
  46. package/lib/commands/api/transform.js.map +1 -1
  47. package/lib/commands/api/validate.d.ts +1 -1
  48. package/lib/commands/api/validate.js +5 -13
  49. package/lib/commands/api/validate.js.map +1 -1
  50. package/lib/commands/auth/login.d.ts +2 -1
  51. package/lib/commands/auth/login.js +19 -65
  52. package/lib/commands/auth/login.js.map +1 -1
  53. package/lib/commands/auth/logout.js +2 -6
  54. package/lib/commands/auth/logout.js.map +1 -1
  55. package/lib/commands/auth/status.js +3 -6
  56. package/lib/commands/auth/status.js.map +1 -1
  57. package/lib/commands/portal/copilot.d.ts +12 -0
  58. package/lib/commands/portal/copilot.js +35 -0
  59. package/lib/commands/portal/copilot.js.map +1 -0
  60. package/lib/commands/portal/generate.d.ts +7 -10
  61. package/lib/commands/portal/generate.js +18 -83
  62. package/lib/commands/portal/generate.js.map +1 -1
  63. package/lib/commands/portal/quickstart.d.ts +2 -2
  64. package/lib/commands/portal/quickstart.js +58 -29
  65. package/lib/commands/portal/quickstart.js.map +1 -1
  66. package/lib/commands/portal/recipe/new.d.ts +1 -3
  67. package/lib/commands/portal/recipe/new.js +21 -27
  68. package/lib/commands/portal/recipe/new.js.map +1 -1
  69. package/lib/commands/portal/serve.d.ts +7 -6
  70. package/lib/commands/portal/serve.js +62 -112
  71. package/lib/commands/portal/serve.js.map +1 -1
  72. package/lib/commands/portal/toc/new.d.ts +4 -5
  73. package/lib/commands/portal/toc/new.js +26 -37
  74. package/lib/commands/portal/toc/new.js.map +1 -1
  75. package/lib/commands/sdk/generate.d.ts +8 -6
  76. package/lib/commands/sdk/generate.js +53 -124
  77. package/lib/commands/sdk/generate.js.map +1 -1
  78. package/lib/controllers/portal/quickstart.d.ts +0 -2
  79. package/lib/controllers/portal/quickstart.js +2 -60
  80. package/lib/controllers/portal/quickstart.js.map +1 -1
  81. package/lib/infrastructure/api-utils.d.ts +9 -0
  82. package/lib/infrastructure/api-utils.js +33 -0
  83. package/lib/infrastructure/api-utils.js.map +1 -0
  84. package/lib/infrastructure/env-info.d.ts +8 -0
  85. package/lib/infrastructure/env-info.js +37 -0
  86. package/lib/infrastructure/env-info.js.map +1 -0
  87. package/lib/infrastructure/file-service.d.ts +15 -0
  88. package/lib/infrastructure/file-service.js +61 -0
  89. package/lib/infrastructure/file-service.js.map +1 -0
  90. package/lib/infrastructure/services/api-service.d.ts +10 -0
  91. package/lib/infrastructure/services/api-service.js +52 -0
  92. package/lib/infrastructure/services/api-service.js.map +1 -0
  93. package/lib/infrastructure/services/auth-service.d.ts +11 -0
  94. package/lib/infrastructure/services/auth-service.js +33 -0
  95. package/lib/infrastructure/services/auth-service.js.map +1 -0
  96. package/lib/infrastructure/services/portal-service.d.ts +7 -4
  97. package/lib/infrastructure/services/portal-service.js +70 -49
  98. package/lib/infrastructure/services/portal-service.js.map +1 -1
  99. package/lib/infrastructure/services/telemetry-service.d.ts +8 -0
  100. package/lib/infrastructure/services/telemetry-service.js +40 -0
  101. package/lib/infrastructure/services/telemetry-service.js.map +1 -0
  102. package/lib/infrastructure/tmp-extensions.d.ts +2 -0
  103. package/lib/infrastructure/tmp-extensions.js +6 -0
  104. package/lib/infrastructure/tmp-extensions.js.map +1 -0
  105. package/lib/infrastructure/zip-service.d.ts +6 -0
  106. package/lib/infrastructure/zip-service.js +25 -0
  107. package/lib/infrastructure/zip-service.js.map +1 -0
  108. package/lib/prompts/auth/login.d.ts +5 -0
  109. package/lib/prompts/auth/login.js +13 -0
  110. package/lib/prompts/auth/login.js.map +1 -0
  111. package/lib/prompts/portal/common/base-prompts.d.ts +7 -0
  112. package/lib/prompts/portal/common/base-prompts.js +19 -0
  113. package/lib/prompts/portal/common/base-prompts.js.map +1 -0
  114. package/lib/prompts/portal/copilot.d.ts +6 -0
  115. package/lib/prompts/portal/copilot.js +35 -0
  116. package/lib/prompts/portal/copilot.js.map +1 -0
  117. package/lib/prompts/portal/generate.d.ts +3 -2
  118. package/lib/prompts/portal/generate.js +21 -36
  119. package/lib/prompts/portal/generate.js.map +1 -1
  120. package/lib/prompts/portal/quickstart.d.ts +8 -9
  121. package/lib/prompts/portal/quickstart.js +44 -32
  122. package/lib/prompts/portal/quickstart.js.map +1 -1
  123. package/lib/prompts/portal/recipe/new-recipe.d.ts +1 -0
  124. package/lib/prompts/portal/recipe/new-recipe.js +18 -8
  125. package/lib/prompts/portal/recipe/new-recipe.js.map +1 -1
  126. package/lib/prompts/portal/serve.d.ts +4 -6
  127. package/lib/prompts/portal/serve.js +24 -15
  128. package/lib/prompts/portal/serve.js.map +1 -1
  129. package/lib/prompts/portal/toc/new-toc.d.ts +3 -2
  130. package/lib/prompts/portal/toc/new-toc.js +11 -14
  131. package/lib/prompts/portal/toc/new-toc.js.map +1 -1
  132. package/lib/prompts/sdk/generate.d.ts +11 -0
  133. package/lib/prompts/sdk/generate.js +42 -0
  134. package/lib/prompts/sdk/generate.js.map +1 -0
  135. package/lib/types/api/account.d.ts +10 -0
  136. package/lib/types/api/account.js +2 -0
  137. package/lib/types/api/account.js.map +1 -0
  138. package/lib/types/build/build.d.ts +14 -0
  139. package/lib/types/build/build.js +4 -0
  140. package/lib/types/build/build.js.map +1 -0
  141. package/lib/types/build-context.d.ts +13 -0
  142. package/lib/types/build-context.js +30 -0
  143. package/lib/types/build-context.js.map +1 -0
  144. package/lib/types/events/domain-event.d.ts +8 -0
  145. package/lib/types/events/domain-event.js +11 -0
  146. package/lib/types/events/domain-event.js.map +1 -0
  147. package/lib/types/events/recipe-creation-failed.d.ts +5 -0
  148. package/lib/types/events/recipe-creation-failed.js +8 -0
  149. package/lib/types/events/recipe-creation-failed.js.map +1 -0
  150. package/lib/types/events/toc-creation-failed.d.ts +5 -0
  151. package/lib/types/events/toc-creation-failed.js +8 -0
  152. package/lib/types/events/toc-creation-failed.js.map +1 -0
  153. package/lib/types/file/directoryPath.d.ts +7 -0
  154. package/lib/types/file/directoryPath.js +16 -0
  155. package/lib/types/file/directoryPath.js.map +1 -0
  156. package/lib/types/file/fileName.d.ts +5 -0
  157. package/lib/types/file/fileName.js +9 -0
  158. package/lib/types/file/fileName.js.map +1 -0
  159. package/lib/types/file/filePath.d.ts +8 -0
  160. package/lib/types/file/filePath.js +11 -0
  161. package/lib/types/file/filePath.js.map +1 -0
  162. package/lib/types/flags-provider.d.ts +15 -0
  163. package/lib/types/flags-provider.js +34 -0
  164. package/lib/types/flags-provider.js.map +1 -0
  165. package/lib/types/portal/generate.d.ts +0 -13
  166. package/lib/types/portal/quickstart.d.ts +1 -1
  167. package/lib/types/portal/serve.d.ts +13 -0
  168. package/lib/types/portal/serve.js +2 -0
  169. package/lib/types/portal/serve.js.map +1 -0
  170. package/lib/types/portal-context.d.ts +11 -0
  171. package/lib/types/portal-context.js +28 -0
  172. package/lib/types/portal-context.js.map +1 -0
  173. package/lib/types/sdk/generate.d.ts +8 -8
  174. package/lib/types/sdk/generate.js +10 -10
  175. package/lib/types/sdk/generate.js.map +1 -1
  176. package/lib/types/sdk-context.d.ts +13 -0
  177. package/lib/types/sdk-context.js +28 -0
  178. package/lib/types/sdk-context.js.map +1 -0
  179. package/lib/types/spec-context.d.ts +7 -0
  180. package/lib/types/spec-context.js +12 -0
  181. package/lib/types/spec-context.js.map +1 -0
  182. package/lib/utils/utils.d.ts +1 -4
  183. package/lib/utils/utils.js +18 -32
  184. package/lib/utils/utils.js.map +1 -1
  185. package/lib/validators/common/directoryValidator.d.ts +3 -7
  186. package/lib/validators/common/directoryValidator.js +10 -37
  187. package/lib/validators/common/directoryValidator.js.map +1 -1
  188. package/lib/validators/portal/serve-validator.d.ts +6 -0
  189. package/lib/validators/portal/serve-validator.js +15 -0
  190. package/lib/validators/portal/serve-validator.js.map +1 -0
  191. package/package.json +6 -3
  192. package/lib/controllers/portal/generate.d.ts +0 -3
  193. package/lib/controllers/portal/generate.js +0 -106
  194. package/lib/controllers/portal/generate.js.map +0 -1
  195. package/lib/controllers/portal/serve.d.ts +0 -3
  196. package/lib/controllers/portal/serve.js +0 -136
  197. package/lib/controllers/portal/serve.js.map +0 -1
  198. package/lib/controllers/sdk/generate.d.ts +0 -4
  199. package/lib/controllers/sdk/generate.js +0 -61
  200. package/lib/controllers/sdk/generate.js.map +0 -1
  201. package/lib/services/portal/server.d.ts +0 -14
  202. package/lib/services/portal/server.js +0 -97
  203. package/lib/services/portal/server.js.map +0 -1
  204. package/lib/validators/common/portValidator.d.ts +0 -5
  205. package/lib/validators/common/portValidator.js +0 -16
  206. package/lib/validators/common/portValidator.js.map +0 -1
  207. package/lib/validators/portal/serveValidator.d.ts +0 -6
  208. package/lib/validators/portal/serveValidator.js +0 -17
  209. package/lib/validators/portal/serveValidator.js.map +0 -1
@@ -1,57 +1,42 @@
1
- import { cancel, outro, select, spinner, isCancel } from "@clack/prompts";
2
- import { getMessageInRedColor } from "../../utils/utils.js";
1
+ import { outro, spinner, isCancel, confirm, log } from "@clack/prompts";
2
+ import { getMessageInRedColor, getMessageInMagentaColor, getMessageInCyanColor } from "../../utils/utils.js";
3
3
  export class PortalGeneratePrompts {
4
4
  constructor() {
5
5
  this.spin = spinner();
6
6
  }
7
- async overwriteExistingPortalArtifactsPrompt() {
8
- const useExistingFolder = await select({
9
- message: `The destination folder is not empty, do you want to overwrite the existing files?`,
10
- options: [
11
- { value: "yes", label: "Yes" },
12
- { value: "no", label: "No" }
13
- ]
7
+ async overwritePortal(directory) {
8
+ const overwrite = await confirm({
9
+ message: `The destination '${directory}' is not empty, do you want to overwrite?`,
10
+ initialValue: false
14
11
  });
15
- if (isCancel(useExistingFolder)) {
16
- cancel("Operation cancelled.");
17
- return process.exit(1);
12
+ if (isCancel(overwrite)) {
13
+ return false;
18
14
  }
19
- if (useExistingFolder === "no") {
20
- outro("Please enter a different destination folder or remove the existing files and try again.");
21
- }
22
- return useExistingFolder === "yes";
23
- }
24
- async existingDestinationPortalZipPrompt() {
25
- const useExistingZip = await select({
26
- message: `A zip file already exists at the specified destination path, do you want to overwrite it?`,
27
- options: [
28
- { value: "yes", label: "Yes" },
29
- { value: "no", label: "No" }
30
- ]
31
- });
32
- if (isCancel(useExistingZip)) {
33
- cancel("Operation cancelled.");
34
- return process.exit(1);
35
- }
36
- if (useExistingZip === "no") {
37
- outro("Please enter a different destination path or delete the existing zip file and try again.");
38
- }
39
- return useExistingZip === "yes";
15
+ return overwrite;
40
16
  }
41
17
  displayPortalGenerationMessage() {
42
- this.spin.start("Generating portal...");
18
+ this.spin.start(getMessageInMagentaColor("Generating portal"));
43
19
  }
44
20
  displayPortalGenerationSuccessMessage() {
45
- this.spin.stop("✅ Portal generated successfully.");
21
+ this.spin.stop(getMessageInCyanColor("✅ Portal generated successfully."));
22
+ this.cleanUpStandardInput();
46
23
  }
47
24
  displayPortalGenerationErrorMessage() {
48
25
  this.spin.stop(getMessageInRedColor(`Portal Generation failed.`));
26
+ this.cleanUpStandardInput();
49
27
  }
50
28
  displayOutroMessage(generatedPortalPath) {
51
29
  outro(`The generated portal can be found at ${generatedPortalPath}`);
52
30
  }
53
31
  logError(error) {
54
- outro(error);
32
+ log.error(error);
33
+ }
34
+ //This clears the standard input to allow interrupts like CTRL+C to work properly.
35
+ cleanUpStandardInput() {
36
+ if (process.stdin.isTTY) {
37
+ process.stdin.setRawMode(false);
38
+ process.stdin.pause();
39
+ }
55
40
  }
56
41
  }
57
42
  //# sourceMappingURL=generate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/portal/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,OAAO,qBAAqB;IAAlC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IA+DpC,CAAC;IA7DC,KAAK,CAAC,sCAAsC;QAC1C,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC;YACrC,OAAO,EAAE,mFAAmF;YAC5F,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAC/B,KAAK,CAAC,yFAAyF,CAAC,CAAC;QACnG,CAAC;QAED,OAAO,iBAAiB,KAAK,KAAK,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,kCAAkC;QACtC,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC;YAClC,OAAO,EAAE,2FAA2F;YACpG,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,KAAK,CAAC,0FAA0F,CAAC,CAAC;QACpG,CAAC;QAED,OAAO,cAAc,KAAK,KAAK,CAAC;IAClC,CAAC;IAED,8BAA8B;QAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,qCAAqC;QACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACrD,CAAC;IAED,mCAAmC;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,mBAAmB,CAAC,mBAA2B;QAC7C,KAAK,CAAC,wCAAwC,mBAAmB,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/portal/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAG7G,MAAM,OAAO,qBAAqB;IAAlC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IA4CpC,CAAC;IA1CQ,KAAK,CAAC,eAAe,CAAC,SAAwB;QACnD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,oBAAoB,SAAS,2CAA2C;YACjF,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;IAED,8BAA8B;QAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,qCAAqC;QACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,mCAAmC;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,mBAAmB,CAAC,mBAA2B;QAC7C,KAAK,CAAC,wCAAwC,mBAAmB,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAED,kFAAkF;IAC1E,oBAAoB;QAC1B,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
- export declare class PortalQuickstartPrompts {
2
- private readonly spin;
1
+ import { BasePrompts } from "./common/base-prompts.js";
2
+ export declare class PortalQuickstartPrompts extends BasePrompts {
3
3
  private readonly vscodeExtensionUrl;
4
4
  private readonly serverUrl;
5
5
  private readonly referenceDocumentationUrl;
@@ -10,9 +10,7 @@ export declare class PortalQuickstartPrompts {
10
10
  email: string;
11
11
  password: string;
12
12
  }>;
13
- displayLoggingInMessage(): void;
14
- displayLoggingInErrorMessage(): void;
15
- displayLoggedInMessage(): void;
13
+ removeQuotes(str: string): string;
16
14
  specPrompt(): Promise<string>;
17
15
  displaySpecValidationMessage(): void;
18
16
  displaySpecValidationSuccessMessage(): void;
@@ -20,12 +18,13 @@ export declare class PortalQuickstartPrompts {
20
18
  displaySpecValidationFailureMessage(): void;
21
19
  specValidationFailurePrompt(): Promise<void>;
22
20
  sdkLanguagesPrompt(): Promise<string[]>;
23
- buildDirectoryPrompt(): Promise<string>;
21
+ workingDirectoryPrompt(): Promise<string>;
24
22
  displayBuildDirectoryGenerationMessage(): void;
25
23
  displayBuildDirectoryGenerationErrorMessage(): void;
26
24
  displayBuildDirectoryGenerationSuccessMessage(targetFolder: string): void;
27
25
  displayBuildDirectoryAsTree(targetFolder: string): void;
28
- displayPortalGenerationMessage(): void;
29
- displayPortalGenerationSuccessMessage(): void;
30
- displayOutroMessage(directory: string): void;
26
+ displayOutroMessage(buildDirectory: string): void;
27
+ getLoggedInFirst(): void;
28
+ displayLoggedInMessage(email: string): void;
29
+ logError(error: string): void;
31
30
  }
@@ -1,11 +1,12 @@
1
1
  import fs from "fs";
2
2
  import * as path from "path";
3
3
  import treeify from "treeify";
4
- import { intro, outro, text, spinner, select, multiselect, log, isCancel, cancel, password } from "@clack/prompts";
4
+ import { intro, outro, text, select, multiselect, log, isCancel, cancel, password } from "@clack/prompts";
5
5
  import { getMessageInCyanColor, getMessageInGreenColor, getMessageInOrangeColor, getMessageInMagentaColor, getMessageInRedColor, isValidUrl, directoryToJson } from "../../utils/utils.js";
6
- export class PortalQuickstartPrompts {
6
+ import { BasePrompts } from "./common/base-prompts.js";
7
+ export class PortalQuickstartPrompts extends BasePrompts {
7
8
  constructor() {
8
- this.spin = spinner();
9
+ super(...arguments);
9
10
  this.vscodeExtensionUrl = "\u001b[4mhttps://marketplace.visualstudio.com/items?itemName=apimatic-developers.apimatic-for-vscode\u001b[0m";
10
11
  this.serverUrl = "\u001b[4mhttp://localhost:3000\u001b[0m";
11
12
  this.referenceDocumentationUrl = "\u001b[4mhttps://docs.apimatic.io/platform-api/#/http/guides/generating-on-prem-api-portal/overview-generating-api-portal\u001b[0m";
@@ -49,27 +50,29 @@ export class PortalQuickstartPrompts {
49
50
  }
50
51
  return { email: String(email).trim(), password: String(pass).trim() };
51
52
  }
52
- displayLoggingInMessage() {
53
- this.spin.start(getMessageInMagentaColor("Logging in"));
54
- }
55
- displayLoggingInErrorMessage() {
56
- this.spin.stop(getMessageInRedColor(`There was a problem logging in. Please verify your credentials and try again.`));
57
- }
58
- displayLoggedInMessage() {
59
- this.spin.stop(getMessageInCyanColor("✅ Login successful!"));
53
+ removeQuotes(str) {
54
+ const quotes = ['"', "'"];
55
+ for (const quote of quotes) {
56
+ if (str.startsWith(quote) && str.endsWith(quote) && str.length > 1) {
57
+ return this.removeQuotes(str.slice(1, -1)); // Recursive call
58
+ }
59
+ }
60
+ return str;
60
61
  }
61
62
  async specPrompt() {
62
63
  log.step(getMessageInOrangeColor(`Step 1 of 4: Import your OpenAPI Definition`));
63
64
  const spec = await text({
64
- message: `Provide a local path or a public URL for your OpenAPI Definition file:`,
65
- placeholder: "Press Enter to use a sample OpenAPI file for APIMatic",
65
+ message: `Provide a local path or a public URL for your OpenAPI definition file:`,
66
+ placeholder: "Provide absolute URL/local path or press Enter to use sample OpenAPI file from APIMatic.",
66
67
  defaultValue: "https://raw.githubusercontent.com/apimatic/static-portal-workflow/refs/heads/master/spec/Apimatic-Calculator.json",
67
68
  validate: (input) => {
69
+ var _a;
68
70
  if (!input)
69
71
  return;
70
72
  if (isValidUrl(input))
71
73
  return;
72
- const dirPath = path.resolve((input !== null && input !== void 0 ? input : "").trim());
74
+ const cleanedPath = this.removeQuotes((_a = input.trim()) !== null && _a !== void 0 ? _a : "");
75
+ const dirPath = path.resolve(cleanedPath);
73
76
  if (fs.existsSync(dirPath)) {
74
77
  if (fs.statSync(dirPath).isFile()) {
75
78
  return;
@@ -83,7 +86,7 @@ export class PortalQuickstartPrompts {
83
86
  cancel("Operation cancelled.");
84
87
  return process.exit(0);
85
88
  }
86
- return String(spec).trim();
89
+ return this.removeQuotes(String(spec).trim());
87
90
  }
88
91
  displaySpecValidationMessage() {
89
92
  log.step(getMessageInOrangeColor(`Step 2 of 4: Validate and Lint your OpenAPI file`));
@@ -140,14 +143,16 @@ export class PortalQuickstartPrompts {
140
143
  }
141
144
  return languages;
142
145
  }
143
- async buildDirectoryPrompt() {
146
+ async workingDirectoryPrompt() {
144
147
  log.step(getMessageInOrangeColor(`Step 4 of 4: Generate source files for Docs as Code`));
145
148
  const directory = await text({
146
- message: "Enter the directory path where you would like to setup the API Portal :",
147
- placeholder: "Enter absolute path to the directory or leave it empty to use the current directory.",
149
+ message: "Enter the directory path where you would like to setup the API Portal (Requires an empty directory):",
150
+ placeholder: "Provide absolute path to the directory or press Enter to use the current directory.",
148
151
  defaultValue: "./",
149
152
  validate: (input) => {
150
- const dirPath = path.resolve((input !== null && input !== void 0 ? input : "").trim());
153
+ var _a;
154
+ const cleanedPath = this.removeQuotes((_a = input === null || input === void 0 ? void 0 : input.trim()) !== null && _a !== void 0 ? _a : "");
155
+ const dirPath = path.resolve(cleanedPath);
151
156
  if (!fs.existsSync(dirPath) && dirPath != this.defaultPortalDirectoryPath) {
152
157
  return getMessageInRedColor("Error: The specified directory path does not exist. Please try again.");
153
158
  }
@@ -157,8 +162,12 @@ export class PortalQuickstartPrompts {
157
162
  return getMessageInRedColor("Error: The target directory is not empty. Please provide a path to an empty directory or clear its contents.");
158
163
  }
159
164
  }
160
- else if (fs.existsSync(dirPath) && fs.readdirSync(dirPath).length > 0) {
161
- return getMessageInRedColor("Error: The target directory is not empty. Please provide a path to an empty directory or clear its contents.");
165
+ else if (fs.existsSync(dirPath)) {
166
+ // For ignoring hidden files and folders in the current directory in MacOS.
167
+ const files = fs.readdirSync(dirPath).filter((item) => !item.startsWith("."));
168
+ if (files.length > 0) {
169
+ return getMessageInRedColor("Error: The target directory is not empty. Please provide a path to an empty directory or clear its contents.");
170
+ }
162
171
  }
163
172
  }
164
173
  });
@@ -170,11 +179,11 @@ export class PortalQuickstartPrompts {
170
179
  return this.defaultPortalDirectoryPath;
171
180
  }
172
181
  else {
173
- return String(directory).trim();
182
+ return this.removeQuotes(String(directory).trim());
174
183
  }
175
184
  }
176
185
  displayBuildDirectoryGenerationMessage() {
177
- this.spin.start(getMessageInMagentaColor("Generating build directory... ⚙️"));
186
+ this.spin.start(getMessageInMagentaColor("Generating build directory ⚙️"));
178
187
  }
179
188
  displayBuildDirectoryGenerationErrorMessage() {
180
189
  this.spin.stop(getMessageInRedColor(`Something went wrong while setting up your build directory.`));
@@ -189,17 +198,11 @@ export class PortalQuickstartPrompts {
189
198
  .split("\n")
190
199
  .map((line) => line.replace(/#.*/, (match) => getMessageInGreenColor(match)))
191
200
  .join("\n");
192
- log.info(coloredLogString);
193
- }
194
- displayPortalGenerationMessage() {
195
- this.spin.start(getMessageInMagentaColor("Setting up portal"));
196
- }
197
- displayPortalGenerationSuccessMessage() {
198
- this.spin.stop(getMessageInCyanColor("✅ Portal setup complete!"));
201
+ log.step(coloredLogString);
199
202
  }
200
- displayOutroMessage(directory) {
203
+ displayOutroMessage(buildDirectory) {
201
204
  log.step(getMessageInCyanColor(`📢 Your API Portal is live at: ${this.serverUrl}\n`) +
202
- getMessageInCyanColor(`Hot reload enabled! Edit files in ${directory} to see changes instantly reflected in your API Portal.\n`) +
205
+ getMessageInCyanColor(`Hot reload enabled! Edit files in ${buildDirectory} to see changes instantly reflected in your API Portal.\n`) +
203
206
  getMessageInCyanColor(`Press CTRL+C to stop the server.`));
204
207
  outro(getMessageInCyanColor(`What's next?\n`) +
205
208
  getMessageInCyanColor(`- Check out the Interactive Playground in your API Portal.\n`) +
@@ -208,5 +211,14 @@ export class PortalQuickstartPrompts {
208
211
  getMessageInCyanColor(`- Review the SDK Documentation for your favourite programming language and download an SDK from the API Portal.\n`) +
209
212
  getMessageInCyanColor(`- Check out how you can customize the SDKs using Code Generation settings: ${this.customizeTheSdksUrl}`));
210
213
  }
214
+ getLoggedInFirst() {
215
+ log.step("You need to be logged in to continue.");
216
+ }
217
+ displayLoggedInMessage(email) {
218
+ log.success(`Successfully logged in as ${email}`);
219
+ }
220
+ logError(error) {
221
+ log.error(error);
222
+ }
211
223
  }
212
224
  //# sourceMappingURL=quickstart.js.map
@@ -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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"}
@@ -4,6 +4,7 @@ export declare class PortalRecipePrompts {
4
4
  private readonly spin;
5
5
  displayWelcomeMessage(): void;
6
6
  recipeNamePrompt(): Promise<string>;
7
+ removeQuotes(str: string): string;
7
8
  buildConfigFilePathPrompt(buildDirectoryPath: string): Promise<string>;
8
9
  stepNamePrompt(defaultStepName: string): Promise<string>;
9
10
  displayStepsInformation(): void;
@@ -30,17 +30,28 @@ export class PortalRecipePrompts {
30
30
  }
31
31
  return recipeName.trim();
32
32
  }
33
+ //Todo: Find a better place for this function
34
+ removeQuotes(str) {
35
+ const quotes = ['"', "'"];
36
+ for (const quote of quotes) {
37
+ if (str.startsWith(quote) && str.endsWith(quote) && str.length > 1) {
38
+ return this.removeQuotes(str.slice(1, -1)); // Recursive call
39
+ }
40
+ }
41
+ return str;
42
+ }
33
43
  async buildConfigFilePathPrompt(buildDirectoryPath) {
34
44
  const buildConfigFilePath = await text({
35
- message: `⚠️ APIMATIC-BUILD.json is required and was not found in "${buildDirectoryPath}".\nPlease enter the path to your build config file (relative to this directory):`,
45
+ message: `⚠️ APIMATIC-BUILD.json is required and was not found in "${buildDirectoryPath}".\nPlease enter the path to your build config file (relative to this directory):`,
36
46
  validate: (filePath) => {
37
47
  if (!filePath) {
38
48
  return "Build config file path cannot be empty. Please provide a valid file path.";
39
49
  }
40
- if (!filePath.endsWith(".json")) {
50
+ const cleanedPath = this.removeQuotes(filePath.trim());
51
+ const resolvedPath = path.resolve(buildDirectoryPath, cleanedPath);
52
+ if (!resolvedPath.endsWith(".json")) {
41
53
  return "The content file must be a JSON (.json) file. Please provide a valid file path.";
42
54
  }
43
- const resolvedPath = path.resolve(buildDirectoryPath, filePath);
44
55
  if (fs.existsSync(resolvedPath) && fs.statSync(resolvedPath).isFile()) {
45
56
  return;
46
57
  }
@@ -51,7 +62,7 @@ export class PortalRecipePrompts {
51
62
  cancel("Operation cancelled.");
52
63
  return process.exit(0);
53
64
  }
54
- return path.resolve(buildDirectoryPath, buildConfigFilePath.trim());
65
+ return path.resolve(buildDirectoryPath, this.removeQuotes(buildConfigFilePath.trim()));
55
66
  }
56
67
  async stepNamePrompt(defaultStepName) {
57
68
  const stepName = await text({
@@ -141,7 +152,8 @@ export class PortalRecipePrompts {
141
152
  options: [
142
153
  { value: "yes", label: "Yes" },
143
154
  { value: "no", label: "No" }
144
- ]
155
+ ],
156
+ initialValue: "yes"
145
157
  });
146
158
  if (isCancel(addAnotherStep)) {
147
159
  cancel("Operation cancelled.");
@@ -167,8 +179,7 @@ export class PortalRecipePrompts {
167
179
  log.step(`✅ Step has been added successfully.`);
168
180
  }
169
181
  displayRecipeGenerationSuccessMessage(buildDirectoryPath) {
170
- log.step(`🎉 Recipe has been added successfully!`);
171
- log.message(`📦 Generated recipe has been added to build directory at: ${buildDirectoryPath}`);
182
+ log.message(`🎉 Generated recipe has been added to build directory at: ${buildDirectoryPath}`);
172
183
  outro(`▶ Run the command 'apimatic portal:serve' to preview your documentation portal.`);
173
184
  }
174
185
  startProgressIndicatorWithMessage(message) {
@@ -184,7 +195,6 @@ export class PortalRecipePrompts {
184
195
  .map((line) => line.replace(/#.*/, (match) => getMessageInGreenColor(match)))
185
196
  .join("\n");
186
197
  log.step(`🛠️ You can edit the following files to customize your API Recipe :\n\n` + coloredLogString);
187
- log.message(`💡 Modify the TOC file to change the position of the API Recipes section in the navbar.`);
188
198
  }
189
199
  logError(error) {
190
200
  outro(error);
@@ -1 +1 @@
1
- {"version":3,"file":"new-recipe.js","sourceRoot":"","sources":["../../../../src/prompts/portal/recipe/new-recipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,MAAM,OAAO,mBAAmB;IAAhC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IAwOpC,CAAC;IAtOQ,qBAAqB;QAC1B,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QACtF,GAAG,CAAC,OAAO,CACT,uHAAuH,CACxH,CAAC;QACF,GAAG,CAAC,OAAO,CACT,+GAA+G,CAChH,CAAC;QACF,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,gBAAgB;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC;YAC5B,OAAO,EAAE,sCAAsC;YAC/C,WAAW,EAAE,kFAAkF;YAC/F,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,yEAAyE,CAAC;gBACnF,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAQ,UAAqB,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,yBAAyB,CAAC,kBAA0B;QAC/D,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;YACrC,OAAO,EAAE,4DAA4D,kBAAkB,mFAAmF;YAC1K,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,2EAA2E,CAAC;gBACrF,CAAC;gBAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAChC,OAAO,iFAAiF,CAAC;gBAC3F,CAAC;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;gBAChE,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;oBACtE,OAAO;gBACT,CAAC;gBAED,OAAO,6HAA6H,CAAC;YACvI,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAClC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAG,mBAA8B,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,eAAuB;QACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;YAC1B,OAAO,EAAE,4BAA4B;YACrC,YAAY,EAAE,eAAe;YAC7B,WAAW,EAAE,wCAAwC,eAAe,EAAE;SACvE,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAQ,QAAmB,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IAEM,uBAAuB;QAC5B,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACzC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAC3B,GAAG,CAAC,OAAO,CACT,sGAAsG,CACvG,CAAC;QACF,GAAG,CAAC,OAAO,CAAC,0FAA0F,CAAC,CAAC;QACxG,GAAG,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1D,GAAG,CAAC,OAAO,CAAC,uDAAuD,CAAC,CAAC;IACvE,CAAC;IAEM,KAAK,CAAC,uBAAuB;QAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC;YAC5B,OAAO,EAAE,4CAA4C;YACrD,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,+BAA+B,EAAE;gBAClF,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,iDAAiD,EAAE;aACvG;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,QAAkB,CAAC;IAC5B,CAAC;IAEM,sBAAsB;QAC3B,GAAG,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;IACtE,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,cAA0C;QAC7E,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClE,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC,CAAC;QACJ,MAAM,iBAAiB,GAAG,MAAM,YAAY,CAAC;YAC3C,OAAO,EAAE,iCAAiC;YAC1C,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,UAAU;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAQ,iBAA4B,CAAC,IAAI,EAAE,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,cAA0C,EAAE,iBAAyB;QACnG,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC;YACtC,OAAO,EAAE,kCAAkC;YAC3C,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,SAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACrC,KAAK,EAAE,QAAQ,CAAC,IAAI;gBACpB,KAAK,EAAE,QAAQ,CAAC,IAAI;aACrB,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAQ,YAAuB,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,yBAAyB,CAAC,cAA0C,EAAE,iBAAyB,EAAE,YAAoB;QAChI,MAAM,kBAAkB,GAAG,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAE,CAAC,WAAW,CAAC;QACpH,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;YACrC,OAAO,EAAE,uCAAuC;YAChD,WAAW,EAAE,6FAA6F;YAC1G,YAAY,EAAE,kBAAkB;SACjC,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAClC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAQ,mBAA8B,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;IAEM,KAAK,CAAC,6BAA6B;QACxC,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC;YAClC,OAAO,EAAE,kCAAkC;YAC3C,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,cAAc,KAAK,KAAK,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,6BAA6B;QACxC,MAAM,uBAAuB,GAAG,MAAM,MAAM,CAAC;YAC3C,OAAO,EAAE,0EAA0E;YACnF,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,uBAAuB,KAAK,KAAK,CAAC;IAC3C,CAAC;IAEM,mCAAmC;QACxC,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACnD,CAAC;IAEM,qCAAqC,CAAC,kBAA0B;QACrE,GAAG,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACnD,GAAG,CAAC,OAAO,CAAC,6DAA6D,kBAAkB,EAAE,CAAC,CAAC;QAC/F,KAAK,CACH,iFAAiF,CAClF,CAAC;IACJ,CAAC;IAEM,iCAAiC,CAAC,OAAe;QACtD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAEM,gCAAgC,CAAC,OAAe;QACrD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAEM,oCAAoC,CAAC,wBAA4C;QACtF,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAElE,MAAM,gBAAgB,GAAG,IAAI;aAC1B,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC;aAC5F,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,GAAG,CAAC,IAAI,CAAC,0EAA0E,GAAG,gBAAgB,CAAC,CAAC;QACxG,GAAG,CAAC,OAAO,CAAC,yFAAyF,CAAC,CAAC;IACzG,CAAC;IAEM,QAAQ,CAAC,KAAa;QAC3B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"new-recipe.js","sourceRoot":"","sources":["../../../../src/prompts/portal/recipe/new-recipe.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
- export declare class PortalServePrompts {
2
- private readonly spin;
3
- displayGeneratingPortalMessage(): void;
4
- displayGeneratingPortalErrorMessage(): void;
5
- displayGeneratedPortalMessage(portalDir: string): void;
6
- displayOutroMessage(port: number): void;
1
+ import { BasePrompts } from "./common/base-prompts.js";
2
+ export declare class PortalServePrompts extends BasePrompts {
3
+ overwriteExistingPortalArtifactsPrompt(): Promise<boolean>;
4
+ displayOutroMessage(buildDirectory: string, portalDirectory: string, port: number, hotReloadDisabled: boolean): void;
7
5
  }
@@ -1,20 +1,29 @@
1
- import { log, outro, spinner } from "@clack/prompts";
2
- import { getMessageInRedColor } from "../../utils/utils.js";
3
- export class PortalServePrompts {
4
- constructor() {
5
- this.spin = spinner();
1
+ import process from "process";
2
+ import { cancel, isCancel, log, outro, select } from "@clack/prompts";
3
+ import { BasePrompts } from "./common/base-prompts.js";
4
+ export class PortalServePrompts extends BasePrompts {
5
+ async overwriteExistingPortalArtifactsPrompt() {
6
+ const useExistingFolder = await select({
7
+ message: `⚠️ The destination folder is not empty, do you want to overwrite the existing files?`,
8
+ options: [
9
+ { value: "yes", label: "Yes" },
10
+ { value: "no", label: "No" }
11
+ ],
12
+ initialValue: "no"
13
+ });
14
+ if (isCancel(useExistingFolder)) {
15
+ cancel("Operation cancelled.");
16
+ return process.exit(1);
17
+ }
18
+ return useExistingFolder === "yes";
6
19
  }
7
- displayGeneratingPortalMessage() {
8
- this.spin.start(`Generating portal`);
9
- }
10
- displayGeneratingPortalErrorMessage() {
11
- this.spin.stop(getMessageInRedColor(`There was an error while generating the portal.`));
12
- }
13
- displayGeneratedPortalMessage(portalDir) {
14
- this.spin.stop(`Portal generated successfully at ${portalDir}`);
15
- }
16
- displayOutroMessage(port) {
20
+ displayOutroMessage(buildDirectory, portalDirectory, port, hotReloadDisabled) {
21
+ log.message(`The generated portal can be found at ${portalDirectory}`);
17
22
  log.message(`Server started at http://localhost:${port}`);
23
+ if (!hotReloadDisabled) {
24
+ log.message(`🔍 Hot reload enabled. Watching the following build folder for any changes:`);
25
+ log.message(`${buildDirectory}`);
26
+ }
18
27
  outro(`Press CTRL+C to stop the server.`);
19
28
  }
20
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/prompts/portal/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,OAAO,kBAAkB;IAA/B;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IAkBpC,CAAC;IAhBC,8BAA8B;QAC5B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,mCAAmC;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,iDAAiD,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,6BAA6B,CAAC,SAAiB;QAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,mBAAmB,CAAC,IAAY;QAC9B,GAAG,CAAC,OAAO,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;QAC1D,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC5C,CAAC;CACF"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/prompts/portal/serve.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IAC1C,KAAK,CAAC,sCAAsC;QACjD,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC;YACrC,OAAO,EAAE,uFAAuF;YAChG,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;YACD,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,iBAAiB,KAAK,KAAK,CAAC;IACrC,CAAC;IAEM,mBAAmB,CACxB,cAAsB,EACtB,eAAuB,EACvB,IAAY,EACZ,iBAA0B;QAE1B,GAAG,CAAC,OAAO,CAAC,wCAAwC,eAAe,EAAE,CAAC,CAAC;QACvE,GAAG,CAAC,OAAO,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,GAAG,CAAC,OAAO,CAAC,6EAA6E,CAAC,CAAC;YAC3F,GAAG,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC5C,CAAC;CACF"}
@@ -1,9 +1,10 @@
1
+ import { FilePath } from "../../../types/file/filePath.js";
1
2
  export declare class PortalNewTocPrompts {
2
3
  private readonly spin;
3
- overwriteExistingTocPrompt(): Promise<boolean>;
4
+ overwriteExistingTocPrompt(tocPath: FilePath): Promise<boolean>;
4
5
  startProgressIndicatorWithMessage(message: string): void;
5
6
  stopProgressIndicatorWithMessage(message: string): void;
6
- displayOutroMessage(tocPath: string): void;
7
+ displayOutroMessage(tocPath: FilePath): void;
7
8
  logError(error: string): void;
8
9
  displayWarning(message: string): void;
9
10
  displayInfo(message: string): void;
@@ -1,24 +1,21 @@
1
- import { cancel, outro, select, spinner, isCancel, log } from "@clack/prompts";
1
+ import { cancel, outro, confirm, spinner, isCancel, log } from "@clack/prompts";
2
2
  export class PortalNewTocPrompts {
3
3
  constructor() {
4
4
  this.spin = spinner();
5
5
  }
6
- async overwriteExistingTocPrompt() {
7
- const useExistingFile = await select({
8
- message: `A toc file already exists at the specified destination path, do you want to overwrite it?`,
9
- options: [
10
- { value: "yes", label: "Yes" },
11
- { value: "no", label: "No" }
12
- ]
6
+ async overwriteExistingTocPrompt(tocPath) {
7
+ const overwrite = await confirm({
8
+ message: `⚠️ The destination file '${tocPath}' already exists, do you want to overwrite it?`,
9
+ initialValue: false
13
10
  });
14
- if (isCancel(useExistingFile)) {
11
+ if (isCancel(overwrite)) {
15
12
  cancel("Operation cancelled.");
16
- return process.exit(1);
13
+ return false;
17
14
  }
18
- if (useExistingFile === "no") {
19
- outro("Please enter a different destination path or delete the existing toc file and try again.");
15
+ if (!overwrite) {
16
+ outro("Please enter a different destination path or delete the existing toc.yml file and try again.");
20
17
  }
21
- return useExistingFile === "yes";
18
+ return overwrite;
22
19
  }
23
20
  startProgressIndicatorWithMessage(message) {
24
21
  this.spin.start(message);
@@ -27,7 +24,7 @@ export class PortalNewTocPrompts {
27
24
  this.spin.stop(message);
28
25
  }
29
26
  displayOutroMessage(tocPath) {
30
- outro(`✅ TOC file successfully created at: ${tocPath}`);
27
+ outro(`✅ toc.yml file successfully created at: ${tocPath}`);
31
28
  }
32
29
  logError(error) {
33
30
  outro(error);
@@ -1 +1 @@
1
- {"version":3,"file":"new-toc.js","sourceRoot":"","sources":["../../../../src/prompts/portal/toc/new-toc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE/E,MAAM,OAAO,mBAAmB;IAAhC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IA8CpC,CAAC;IA5CC,KAAK,CAAC,0BAA0B;QAC9B,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC;YACnC,OAAO,EAAE,2FAA2F;YACpG,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,KAAK,CAAC,0FAA0F,CAAC,CAAC;QACpG,CAAC;QAED,OAAO,eAAe,KAAK,KAAK,CAAC;IACnC,CAAC;IAED,iCAAiC,CAAC,OAAe;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,gCAAgC,CAAC,OAAe;QAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED,mBAAmB,CAAC,OAAe;QACjC,KAAK,CAAC,uCAAuC,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,OAAe;QACzB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;CACF"}
1
+ {"version":3,"file":"new-toc.js","sourceRoot":"","sources":["../../../../src/prompts/portal/toc/new-toc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGhF,MAAM,OAAO,mBAAmB;IAAhC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IA2CpC,CAAC;IAzCC,KAAK,CAAC,0BAA0B,CAAC,OAAiB;QAChD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,4BAA4B,OAAO,gDAAgD;YAC5F,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,KAAK,CAAC,8FAA8F,CAAC,CAAC;QACxG,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iCAAiC,CAAC,OAAe;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,gCAAgC,CAAC,OAAe;QAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED,mBAAmB,CAAC,OAAiB;QACnC,KAAK,CAAC,2CAA2C,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,cAAc,CAAC,OAAe;QAC5B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,OAAe;QACzB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { DirectoryPath } from "../../types/file/directoryPath.js";
2
+ export declare class SdkGeneratePrompts {
3
+ private readonly spin;
4
+ overwriteSdk(directory: DirectoryPath): Promise<boolean>;
5
+ displaySdkGenerationMessage(): void;
6
+ displaySdkGenerationSuccessMessage(): void;
7
+ displaySdkGenerationErrorMessage(): void;
8
+ displayOutroMessage(generatedSdkPath: DirectoryPath): void;
9
+ logError(error: string): void;
10
+ private cleanUpStandardInput;
11
+ }
@@ -0,0 +1,42 @@
1
+ import { outro, spinner, isCancel, confirm, log } from "@clack/prompts";
2
+ import { getMessageInRedColor, getMessageInMagentaColor, getMessageInCyanColor } from "../../utils/utils.js";
3
+ export class SdkGeneratePrompts {
4
+ constructor() {
5
+ this.spin = spinner();
6
+ }
7
+ async overwriteSdk(directory) {
8
+ const overwrite = await confirm({
9
+ message: `The destination '${directory}' is not empty, do you want to overwrite?`,
10
+ initialValue: false
11
+ });
12
+ if (isCancel(overwrite)) {
13
+ return false;
14
+ }
15
+ return overwrite;
16
+ }
17
+ displaySdkGenerationMessage() {
18
+ this.spin.start(getMessageInMagentaColor("Generating SDK"));
19
+ }
20
+ displaySdkGenerationSuccessMessage() {
21
+ this.spin.stop(getMessageInCyanColor("✅ SDK generated successfully."));
22
+ this.cleanUpStandardInput();
23
+ }
24
+ displaySdkGenerationErrorMessage() {
25
+ this.spin.stop(getMessageInRedColor(`Sdk Generation failed.`));
26
+ this.cleanUpStandardInput();
27
+ }
28
+ displayOutroMessage(generatedSdkPath) {
29
+ outro(`The generated SDK can be found at ${generatedSdkPath}`);
30
+ }
31
+ logError(error) {
32
+ log.error(error);
33
+ }
34
+ //This clears the standard input to allow interrupts like CTRL+C to work properly.
35
+ cleanUpStandardInput() {
36
+ if (process.stdin.isTTY) {
37
+ process.stdin.setRawMode(false);
38
+ process.stdin.pause();
39
+ }
40
+ }
41
+ }
42
+ //# sourceMappingURL=generate.js.map