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

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 (126) hide show
  1. package/README.md +22 -45
  2. package/lib/actions/actionResult.d.ts +8 -0
  3. package/lib/actions/actionResult.js +25 -0
  4. package/lib/actions/actionResult.js.map +1 -0
  5. package/lib/actions/portal/generatePortalAction.d.ts +15 -0
  6. package/lib/actions/portal/generatePortalAction.js +76 -0
  7. package/lib/actions/portal/generatePortalAction.js.map +1 -0
  8. package/lib/actions/portal/recipe/new-recipe.d.ts +3 -2
  9. package/lib/actions/portal/recipe/new-recipe.js +18 -25
  10. package/lib/actions/portal/recipe/new-recipe.js.map +1 -1
  11. package/lib/actions/portal/serve.d.ts +17 -0
  12. package/lib/actions/portal/serve.js +36 -0
  13. package/lib/actions/portal/serve.js.map +1 -0
  14. package/lib/actions/portal/toc/new-toc.d.ts +2 -1
  15. package/lib/actions/portal/toc/new-toc.js +21 -21
  16. package/lib/actions/portal/toc/new-toc.js.map +1 -1
  17. package/lib/application/portal/serve/portal-watcher.d.ts +8 -0
  18. package/lib/application/portal/serve/portal-watcher.js +60 -0
  19. package/lib/application/portal/serve/portal-watcher.js.map +1 -0
  20. package/lib/application/portal/serve/serve-handler.d.ts +16 -0
  21. package/lib/application/portal/serve/serve-handler.js +90 -0
  22. package/lib/application/portal/serve/serve-handler.js.map +1 -0
  23. package/lib/application/portal/serve/watcher-handler.d.ts +5 -0
  24. package/lib/application/portal/serve/watcher-handler.js +27 -0
  25. package/lib/application/portal/serve/watcher-handler.js.map +1 -0
  26. package/lib/application/portal/toc/sdl-parser.d.ts +2 -1
  27. package/lib/application/portal/toc/sdl-parser.js +4 -4
  28. package/lib/application/portal/toc/sdl-parser.js.map +1 -1
  29. package/lib/client-utils/sdk-client.js +5 -22
  30. package/lib/client-utils/sdk-client.js.map +1 -1
  31. package/lib/commands/api/transform.js +2 -6
  32. package/lib/commands/api/transform.js.map +1 -1
  33. package/lib/commands/api/validate.js +2 -6
  34. package/lib/commands/api/validate.js.map +1 -1
  35. package/lib/commands/auth/login.js +31 -33
  36. package/lib/commands/auth/login.js.map +1 -1
  37. package/lib/commands/auth/logout.js +1 -5
  38. package/lib/commands/auth/logout.js.map +1 -1
  39. package/lib/commands/auth/status.js +1 -5
  40. package/lib/commands/auth/status.js.map +1 -1
  41. package/lib/commands/portal/generate.d.ts +7 -9
  42. package/lib/commands/portal/generate.js +17 -67
  43. package/lib/commands/portal/generate.js.map +1 -1
  44. package/lib/commands/portal/quickstart.d.ts +2 -2
  45. package/lib/commands/portal/quickstart.js +50 -18
  46. package/lib/commands/portal/quickstart.js.map +1 -1
  47. package/lib/commands/portal/recipe/new.d.ts +2 -3
  48. package/lib/commands/portal/recipe/new.js +16 -23
  49. package/lib/commands/portal/recipe/new.js.map +1 -1
  50. package/lib/commands/portal/serve.d.ts +7 -5
  51. package/lib/commands/portal/serve.js +60 -97
  52. package/lib/commands/portal/serve.js.map +1 -1
  53. package/lib/commands/portal/toc/new.d.ts +1 -1
  54. package/lib/commands/portal/toc/new.js +20 -24
  55. package/lib/commands/portal/toc/new.js.map +1 -1
  56. package/lib/commands/sdk/generate.js +2 -10
  57. package/lib/commands/sdk/generate.js.map +1 -1
  58. package/lib/controllers/portal/quickstart.d.ts +0 -2
  59. package/lib/controllers/portal/quickstart.js +2 -60
  60. package/lib/controllers/portal/quickstart.js.map +1 -1
  61. package/lib/infrastructure/file-service.d.ts +13 -0
  62. package/lib/infrastructure/file-service.js +54 -0
  63. package/lib/infrastructure/file-service.js.map +1 -0
  64. package/lib/infrastructure/services/portal-service.d.ts +4 -4
  65. package/lib/infrastructure/services/portal-service.js +21 -43
  66. package/lib/infrastructure/services/portal-service.js.map +1 -1
  67. package/lib/infrastructure/zip-service.d.ts +6 -0
  68. package/lib/infrastructure/zip-service.js +25 -0
  69. package/lib/infrastructure/zip-service.js.map +1 -0
  70. package/lib/prompts/portal/common/base-prompts.d.ts +7 -0
  71. package/lib/prompts/portal/common/base-prompts.js +19 -0
  72. package/lib/prompts/portal/common/base-prompts.js.map +1 -0
  73. package/lib/prompts/portal/generate.d.ts +3 -1
  74. package/lib/prompts/portal/generate.js +29 -16
  75. package/lib/prompts/portal/generate.js.map +1 -1
  76. package/lib/prompts/portal/quickstart.d.ts +5 -6
  77. package/lib/prompts/portal/quickstart.js +28 -20
  78. package/lib/prompts/portal/quickstart.js.map +1 -1
  79. package/lib/prompts/portal/recipe/new-recipe.js +4 -5
  80. package/lib/prompts/portal/recipe/new-recipe.js.map +1 -1
  81. package/lib/prompts/portal/serve.d.ts +4 -6
  82. package/lib/prompts/portal/serve.js +24 -15
  83. package/lib/prompts/portal/serve.js.map +1 -1
  84. package/lib/prompts/portal/toc/new-toc.js +5 -4
  85. package/lib/prompts/portal/toc/new-toc.js.map +1 -1
  86. package/lib/types/file/directoryPath.d.ts +7 -0
  87. package/lib/types/file/directoryPath.js +16 -0
  88. package/lib/types/file/directoryPath.js.map +1 -0
  89. package/lib/types/file/fileName.d.ts +5 -0
  90. package/lib/types/file/fileName.js +9 -0
  91. package/lib/types/file/fileName.js.map +1 -0
  92. package/lib/types/file/filePath.d.ts +8 -0
  93. package/lib/types/file/filePath.js +11 -0
  94. package/lib/types/file/filePath.js.map +1 -0
  95. package/lib/types/portal/quickstart.d.ts +1 -1
  96. package/lib/types/portal/serve.d.ts +13 -0
  97. package/lib/types/portal/serve.js +2 -0
  98. package/lib/types/portal/serve.js.map +1 -0
  99. package/lib/utils/utils.d.ts +1 -4
  100. package/lib/utils/utils.js +10 -25
  101. package/lib/utils/utils.js.map +1 -1
  102. package/lib/validators/common/directoryValidator.d.ts +3 -7
  103. package/lib/validators/common/directoryValidator.js +10 -37
  104. package/lib/validators/common/directoryValidator.js.map +1 -1
  105. package/lib/validators/portal/serve-validator.d.ts +6 -0
  106. package/lib/validators/portal/serve-validator.js +15 -0
  107. package/lib/validators/portal/serve-validator.js.map +1 -0
  108. package/package.json +4 -3
  109. package/lib/actions/portal/generate.d.ts +0 -7
  110. package/lib/actions/portal/generate.js +0 -54
  111. package/lib/actions/portal/generate.js.map +0 -1
  112. package/lib/controllers/portal/generate.d.ts +0 -3
  113. package/lib/controllers/portal/generate.js +0 -106
  114. package/lib/controllers/portal/generate.js.map +0 -1
  115. package/lib/controllers/portal/serve.d.ts +0 -3
  116. package/lib/controllers/portal/serve.js +0 -136
  117. package/lib/controllers/portal/serve.js.map +0 -1
  118. package/lib/services/portal/server.d.ts +0 -14
  119. package/lib/services/portal/server.js +0 -97
  120. package/lib/services/portal/server.js.map +0 -1
  121. package/lib/validators/common/portValidator.d.ts +0 -5
  122. package/lib/validators/common/portValidator.js +0 -16
  123. package/lib/validators/common/portValidator.js.map +0 -1
  124. package/lib/validators/portal/serveValidator.d.ts +0 -6
  125. package/lib/validators/portal/serveValidator.js +0 -17
  126. package/lib/validators/portal/serveValidator.js.map +0 -1
@@ -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"}
@@ -5,18 +5,19 @@ export class PortalNewTocPrompts {
5
5
  }
6
6
  async overwriteExistingTocPrompt() {
7
7
  const useExistingFile = await select({
8
- message: `A toc file already exists at the specified destination path, do you want to overwrite it?`,
8
+ message: `⚠️ A toc.yml file already exists at the specified destination path, do you want to overwrite it?`,
9
9
  options: [
10
10
  { value: "yes", label: "Yes" },
11
11
  { value: "no", label: "No" }
12
- ]
12
+ ],
13
+ initialValue: "no"
13
14
  });
14
15
  if (isCancel(useExistingFile)) {
15
16
  cancel("Operation cancelled.");
16
17
  return process.exit(1);
17
18
  }
18
19
  if (useExistingFile === "no") {
19
- outro("Please enter a different destination path or delete the existing toc file and try again.");
20
+ outro("Please enter a different destination path or delete the existing toc.yml file and try again.");
20
21
  }
21
22
  return useExistingFile === "yes";
22
23
  }
@@ -27,7 +28,7 @@ export class PortalNewTocPrompts {
27
28
  this.spin.stop(message);
28
29
  }
29
30
  displayOutroMessage(tocPath) {
30
- outro(`✅ TOC file successfully created at: ${tocPath}`);
31
+ outro(`✅ toc.yml file successfully created at: ${tocPath}`);
31
32
  }
32
33
  logError(error) {
33
34
  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,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE/E,MAAM,OAAO,mBAAmB;IAAhC;QACmB,SAAI,GAAG,OAAO,EAAE,CAAC;IA+CpC,CAAC;IA7CC,KAAK,CAAC,0BAA0B;QAC9B,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC;YACnC,OAAO,EAAE,mGAAmG;YAC5G,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,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,8FAA8F,CAAC,CAAC;QACxG,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,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,7 @@
1
+ export declare class DirectoryPath {
2
+ private readonly directoryPath;
3
+ constructor(directoryPath: string, ...subPaths: string[]);
4
+ toString(): string;
5
+ join(subPath: string): DirectoryPath;
6
+ isEqual(other: DirectoryPath): boolean;
7
+ }
@@ -0,0 +1,16 @@
1
+ import * as path from "path";
2
+ export class DirectoryPath {
3
+ constructor(directoryPath, ...subPaths) {
4
+ this.directoryPath = path.resolve(directoryPath, ...subPaths);
5
+ }
6
+ toString() {
7
+ return this.directoryPath;
8
+ }
9
+ join(subPath) {
10
+ return new DirectoryPath(path.join(this.directoryPath, subPath));
11
+ }
12
+ isEqual(other) {
13
+ return this.directoryPath === other.directoryPath;
14
+ }
15
+ }
16
+ //# sourceMappingURL=directoryPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directoryPath.js","sourceRoot":"","sources":["../../../src/types/file/directoryPath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,MAAM,OAAO,aAAa;IAGxB,YAAY,aAAqB,EAAE,GAAG,QAAkB;QACtD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChE,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,IAAI,CAAC,OAAe;QACzB,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAEM,OAAO,CAAC,KAAoB;QACjC,OAAO,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa,CAAC;IACpD,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export declare class FileName {
2
+ private readonly name;
3
+ constructor(path: string);
4
+ toString(): string;
5
+ }
@@ -0,0 +1,9 @@
1
+ export class FileName {
2
+ constructor(path) {
3
+ this.name = path;
4
+ }
5
+ toString() {
6
+ return this.name;
7
+ }
8
+ }
9
+ //# sourceMappingURL=fileName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileName.js","sourceRoot":"","sources":["../../../src/types/file/fileName.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,QAAQ;IAGnB,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { FileName } from "./fileName.js";
2
+ import { DirectoryPath } from "./directoryPath.js";
3
+ export declare class FilePath {
4
+ private readonly fileName;
5
+ private readonly directoryPath;
6
+ constructor(path: DirectoryPath, name: FileName);
7
+ toString(): string;
8
+ }
@@ -0,0 +1,11 @@
1
+ import path from "path";
2
+ export class FilePath {
3
+ constructor(path, name) {
4
+ this.fileName = name;
5
+ this.directoryPath = path;
6
+ }
7
+ toString() {
8
+ return path.join(this.directoryPath.toString(), this.fileName.toString());
9
+ }
10
+ }
11
+ //# sourceMappingURL=filePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filePath.js","sourceRoot":"","sources":["../../../src/types/file/filePath.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,OAAO,QAAQ;IAInB,YAAY,IAAmB,EAAE,IAAc;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7E,CAAC;CACF"}
@@ -8,7 +8,7 @@ export type SpecFile = {
8
8
  };
9
9
  export type PortalServerConfig = {
10
10
  generatedPortalPath: string;
11
- targetFolder: string;
11
+ sourceDirectoryPath: string;
12
12
  configDir: string;
13
13
  authKey: string | null;
14
14
  ignoredPaths?: string[];
@@ -0,0 +1,13 @@
1
+ export interface ServeFlags {
2
+ readonly port: number;
3
+ readonly folder: string;
4
+ readonly destination: string;
5
+ readonly ignore: string;
6
+ readonly open: boolean;
7
+ readonly "auth-key": string | undefined;
8
+ readonly "no-reload": boolean;
9
+ }
10
+ export interface ServePaths {
11
+ readonly sourceDirectoryPath: string;
12
+ readonly destinationDirectoryPath: string;
13
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=serve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/types/portal/serve.ts"],"names":[],"mappings":""}
@@ -22,7 +22,6 @@ export declare const zipDirectoryToStream: (sourcePath: string) => Promise<NodeJ
22
22
  export declare const zipDirectory: (sourcePath: string, destinationPath: string) => Promise<string>;
23
23
  export declare const replaceHTML: (string: string) => string;
24
24
  export declare const isJSONParsable: (json: string) => boolean;
25
- export declare const getGeneratedFilesPaths: (sourceDirectoryPath: string, generatedPortalArtifactsDirectoryPath: string) => string[];
26
25
  export declare const getFileNameFromPath: (filePath: string) => string;
27
26
  export declare const printValidationMessages: ({ warnings, errors, messages }: ValidationMessages, { log, warn, error }: loggers) => void;
28
27
  /**
@@ -32,11 +31,9 @@ export declare const printValidationMessages: ({ warnings, errors, messages }: V
32
31
  * @param destinationDir Path to the destination directory where files will be extracted.
33
32
  */
34
33
  export declare function extractZipFile(zipFilePath: string, destinationDir: string): Promise<void>;
35
- export declare function validateAndZipPortalSource(sourceDir: string, outputPath: string, ignoredPaths?: string[]): Promise<string>;
36
- export declare function cleanUpGeneratedPortalFiles(sourceDir: string): Promise<void>;
34
+ export declare function zipPortalSource(sourceDirectoryPath: string, generatedZipFilePath: string, ignoredPaths?: string[]): Promise<string>;
37
35
  export declare function isPortInUse(port: number): Promise<boolean>;
38
36
  export declare function parseStreamBodyToJson(body: NodeJS.ReadableStream): Promise<any>;
39
- export declare const getNonHiddenItemsFromDirectory: (directoryPath: string) => string[];
40
37
  export declare const getMessageInOrangeColor: (message: string) => string;
41
38
  export declare const getMessageInBlueColor: (message: string) => string;
42
39
  export declare const getMessageInCyanColor: (message: string) => string;
@@ -180,12 +180,6 @@ export const isJSONParsable = (json) => {
180
180
  return false;
181
181
  }
182
182
  };
183
- export const getGeneratedFilesPaths = (sourceDirectoryPath, generatedPortalArtifactsDirectoryPath) => {
184
- const generatedBuildInputZipPath = path.join(sourceDirectoryPath, ".portal_source.zip");
185
- const generatedPortalArtifactsZipFilePath = path.join(sourceDirectoryPath, ".generated_portal.zip");
186
- const generatedPortalArtifactsFolderPath = path.join(path.dirname(generatedPortalArtifactsDirectoryPath), "generated_portal");
187
- return [generatedBuildInputZipPath, generatedPortalArtifactsFolderPath, generatedPortalArtifactsZipFilePath];
188
- };
189
183
  export const getFileNameFromPath = (filePath) => {
190
184
  return path.basename(filePath).split(".")[0];
191
185
  };
@@ -243,13 +237,17 @@ export async function extractZipFile(zipFilePath, destinationDir) {
243
237
  }
244
238
  });
245
239
  }
246
- export async function validateAndZipPortalSource(sourceDir, outputPath, ignoredPaths = []) {
247
- const output = fs.createWriteStream(outputPath);
240
+ //TODO: Refactor this method, carries dual responsibility.
241
+ export async function zipPortalSource(sourceDirectoryPath, generatedZipFilePath, ignoredPaths = []) {
242
+ if (await fs.pathExists(generatedZipFilePath)) {
243
+ await deleteFile(generatedZipFilePath);
244
+ }
245
+ const output = fs.createWriteStream(generatedZipFilePath);
248
246
  const archive = archiver("zip", {
249
247
  zlib: { level: 9 }
250
248
  });
251
249
  return new Promise((resolve, reject) => {
252
- output.on("close", () => resolve(outputPath));
250
+ output.on("close", () => resolve(generatedZipFilePath));
253
251
  output.on("error", (err) => {
254
252
  return reject(new Error(`Failed to zip the source directory: ${err.message}`));
255
253
  });
@@ -262,7 +260,7 @@ export async function validateAndZipPortalSource(sourceDir, outputPath, ignoredP
262
260
  const items = await fs.readdir(currentPath);
263
261
  for (const item of items) {
264
262
  const fullPath = path.join(currentPath, item);
265
- const relativePath = path.relative(sourceDir, fullPath);
263
+ const relativePath = path.relative(sourceDirectoryPath, fullPath);
266
264
  // Check if the path is ignored.
267
265
  const isIgnored = ignoredPaths.some((ignoredPath) => fullPath === ignoredPath ||
268
266
  relativePath === ignoredPath ||
@@ -281,7 +279,7 @@ export async function validateAndZipPortalSource(sourceDir, outputPath, ignoredP
281
279
  }
282
280
  };
283
281
  // Start adding items from the source directory
284
- addItemsToArchive(sourceDir, false)
282
+ addItemsToArchive(sourceDirectoryPath, false)
285
283
  .then(() => {
286
284
  archive.finalize();
287
285
  })
@@ -290,17 +288,7 @@ export async function validateAndZipPortalSource(sourceDir, outputPath, ignoredP
290
288
  });
291
289
  });
292
290
  }
293
- export async function cleanUpGeneratedPortalFiles(sourceDir) {
294
- const generatedPortalZipFilePath = path.join(sourceDir, ".generated_portal.zip");
295
- const generatedPortalSourceZipFilePath = path.join(sourceDir, ".portal_source.zip");
296
- if (fs.existsSync(generatedPortalZipFilePath)) {
297
- await deleteFile(generatedPortalZipFilePath);
298
- }
299
- if (fs.existsSync(generatedPortalSourceZipFilePath)) {
300
- await deleteFile(generatedPortalSourceZipFilePath);
301
- }
302
- }
303
- export function isPortInUse(port) {
291
+ export async function isPortInUse(port) {
304
292
  return new Promise((resolve) => {
305
293
  const server = net.createServer();
306
294
  server.once("error", (err) => {
@@ -339,9 +327,6 @@ export async function parseStreamBodyToJson(body) {
339
327
  const text = Buffer.concat(chunks).toString("utf-8");
340
328
  return JSON.parse(text);
341
329
  }
342
- export const getNonHiddenItemsFromDirectory = (directoryPath) => {
343
- return fs.readdirSync(directoryPath).filter((item) => !item.startsWith("."));
344
- };
345
330
  export const getMessageInOrangeColor = (message) => {
346
331
  return colors.yellow(message);
347
332
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAKrC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAA6B,EAAE,WAAmB,EAAE,EAAE;IAC9E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,MAAM;aACH,IAAI,CAAC,aAAa,CAAC;aACnB,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEjG,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9G,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;IAC5C,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,UAAkB,EAAE,EAAE;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE3C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,kBAAwC,EAAU,EAAE;IAC3F,MAAM,4BAA4B,GAAmD;QACnF,qBAAqB,EAAE;YACrB,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,EAAE;SACb;KACF,CAAC;IAEF,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;QAC9B,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1C,4BAA4B,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QACzF,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAChC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9C,4BAA4B,CAAC,qBAAqB,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAChC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9C,4BAA4B,CAAC,qBAAqB,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,4BAA4B,CAAC;AACtC,CAAC,CAAC;AAOF,2CAA2C;AAC3C,MAAM,YAAY,GAA8B,MAAM,CAAC,OAAO,CAAC;IAC7D,qBAAqB,EAAE,6FAA6F;IACpH,IAAI,EAAE,qCAAqC;IAC3C,OAAO,EAAE,mDAAmD;IAC5D,iBAAiB,EAAE,uEAAuE;IAC1F,MAAM,EAAE,6DAA6D;CACtE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IAC9B,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IACjC,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAA+B,CAAC,CAAC;AAEpC,2CAA2C;AAC3C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAe,EAAE,UAAU,GAAG,EAAE,EAAiB,EAAE;IACjF,MAAM,kBAAkB,GAAkB,EAAE,CAAC;IAE7C,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,CAAC,sBAAsB;QAEnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,qBAAqB,GAAG,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEtE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC3D,CAAC,CAAC,GAAG,IAAI,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE;gBAC3D,CAAC,CAAC,IAAI,CAAC;YAET,kBAAkB,CAAC,UAAU,CAAC,GAAG,qBAAqB,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,kBAAkB,CAChB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC9G,GAAG,IAAI,CAAC;QACX,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAa,EAAW,EAAE;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAE3B,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;IACnD,OAAO,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,MAA6B,EAAE,eAAuB,EAAE,EAAE;IACrG,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC3B,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,UAAkB,EAAkC,EAAE;IAC/F,oDAAoD;IACpD,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE/B,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,IAAI,WAAW,EAAE,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEhC,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAErC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,UAAkB,EAAE,eAAuB,EAAmB,EAAE;IACjG,oDAAoD;IACpD,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAErC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;IAC5C,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE;IAC7C,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAE,EAAE;IACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAsB,EAClD,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAW,EAC7B,EAAE;IACF,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC1B,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAW,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAEpD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,SAAS,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB,EAAE,cAAsB;IAC9E,MAAM,YAAY,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IAEvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,SAAS,GAAG,CAAC,CAAC;YAElB,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC3B,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;gBAEpC,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBACvE,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,oCAAoC,cAAc,EAAE,CAAC,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;gBAC7B,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,gDAAgD,CAAC,CAAC,CAAC,CAAC;YACnG,CAAC;YAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBACnC,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,CAAC;YAED,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;gBAEnE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;oBAC3D,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;gBAC3E,CAAC;gBAED,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,mBAA2B,EAC3B,oBAA4B,EAC5B,eAAyB,EAAE;IAE3B,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC9C,MAAM,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE;QAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;KACnB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,4FAA4F;QAC5F,MAAM,iBAAiB,GAAG,KAAK,EAAE,WAAmB,EAAE,WAA2B,EAAE,EAAE;YACnF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAE5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;gBAElE,gCAAgC;gBAChC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CACjC,CAAC,WAAW,EAAE,EAAE,CACd,QAAQ,KAAK,WAAW;oBACxB,YAAY,KAAK,WAAW;oBAC5B,QAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;oBACtC,YAAY,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,CAAC;oBAC1C,YAAY,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAC9C,CAAC;gBAEF,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACtC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,MAAM,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACvF,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtF,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,+CAA+C;QAC/C,iBAAiB,CAAC,mBAAmB,EAAE,KAAK,CAAC;aAC1C,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,gEAAgE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1G,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;QAElC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAA2B;;IACrE,MAAM,MAAM,GAAa,EAAE,CAAC;;QAC5B,KAA0B,eAAA,SAAA,cAAA,IAAI,CAAA,UAAA,sEAAE,CAAC;YAAP,oBAAI;YAAJ,WAAI;YAAnB,MAAM,KAAK,KAAA,CAAA;YACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,CAAC;;;;;;;;;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAe,EAAE,EAAE;IACzD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAe,EAAE,EAAE;IACvD,OAAO,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAe,EAAE,EAAE;IACvD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE;IACxD,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAAe,EAAE,EAAE;IAC1D,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE;IACtD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC"}
@@ -1,9 +1,5 @@
1
+ import { Result } from "../../types/common/result.js";
1
2
  export declare class DirectoryValidator {
2
- private readonly error;
3
- constructor(error: (message: string) => void);
4
- validateSourceDirectory(sourceDir: string): void;
5
- validateGeneratedPortalDestinationDirectory(destinationDir: string, portalDir: string): Promise<void>;
6
- validatePortalSourceDirectory(sourceDir: string): void;
7
- validatePortalSourceSpecDirectory(sourceDir: string): void;
8
- validateGeneratedPortalDestinationDirectoryIsEmpty(destinationDir: string): void;
3
+ validateSourceDirectory(sourceDir: string): Result<string, string>;
4
+ private getDirectoryItems;
9
5
  }
@@ -1,49 +1,22 @@
1
1
  import fsExtra from "fs-extra";
2
- import * as path from "path";
3
- import { getMessageInRedColor, getNonHiddenItemsFromDirectory } from "../../utils/utils.js";
2
+ import { readdirSync } from "fs";
3
+ import { Result } from "../../types/common/result.js";
4
4
  export class DirectoryValidator {
5
- constructor(error) {
6
- this.error = error;
7
- }
8
5
  validateSourceDirectory(sourceDir) {
9
6
  if (!fsExtra.pathExistsSync(sourceDir)) {
10
- this.error(getMessageInRedColor(`The specified source directory does not exist: ${sourceDir}. Please provide a valid source directory to continue.`));
11
- }
12
- }
13
- async validateGeneratedPortalDestinationDirectory(destinationDir, portalDir) {
14
- if (!fsExtra.pathExistsSync(destinationDir) && destinationDir != "./generated_portal") {
15
- this.error(getMessageInRedColor(`The specified destination directory does not exist: ${destinationDir}. Please provide a valid destination directory to continue.`));
7
+ return Result.failure(`The specified source directory does not exist: ${sourceDir}. Please provide a valid source directory to continue.`);
16
8
  }
17
- if (destinationDir == "./generated_portal") {
18
- await fsExtra.ensureDir(portalDir);
19
- }
20
- }
21
- validatePortalSourceDirectory(sourceDir) {
22
- const sourceDirItems = getNonHiddenItemsFromDirectory(sourceDir);
9
+ const sourceDirItems = this.getDirectoryItems(sourceDir);
23
10
  if (sourceDirItems.length == 0) {
24
- this.error(getMessageInRedColor("The source directory is empty. Please ensure that the provided path points to a directory containing a valid build input."));
11
+ return Result.failure("The source directory is empty. Please ensure that the directory contains a valid build input.");
25
12
  }
26
- if (!sourceDirItems.includes("spec")) {
27
- this.error(getMessageInRedColor("The provided build directory is missing a 'spec' directory. Please create a 'spec' directory containing a valid API Definition file to continue."));
28
- }
29
- if (!sourceDirItems.some((item) => item.startsWith("APIMATIC-BUILD"))) {
30
- this.error(getMessageInRedColor("The provided directory is missing an APIMATIC-BUILD.json file. Please add a valid build file to continue."));
13
+ if (!sourceDirItems.some((item) => item.endsWith("APIMATIC-BUILD.json"))) {
14
+ return Result.failure("The source directory is missing the 'APIMATIC-BUILD.json' file. Please add a valid build config file to continue.");
31
15
  }
16
+ return Result.success(`Source directory ${sourceDir} is valid.`);
32
17
  }
33
- validatePortalSourceSpecDirectory(sourceDir) {
34
- const specFolderItems = getNonHiddenItemsFromDirectory(path.join(sourceDir, "spec"));
35
- if (specFolderItems.length == 0) {
36
- this.error(getMessageInRedColor("The provided build directory is missing an API Definition file. Please add a valid API Definition file to the 'spec' directory to continue."));
37
- }
38
- if (specFolderItems.length == 1 && specFolderItems.some((item) => item.toLowerCase().startsWith("apimatic-meta"))) {
39
- this.error(getMessageInRedColor("The provided build directory is missing an API Definition file. Please add a valid API Definition file to the 'spec' directory to continue."));
40
- }
41
- }
42
- validateGeneratedPortalDestinationDirectoryIsEmpty(destinationDir) {
43
- const portalDirItems = getNonHiddenItemsFromDirectory(destinationDir);
44
- if (portalDirItems.length > 0 && destinationDir != "./generated_portal") {
45
- this.error(getMessageInRedColor("The destination directory is not empty. Please specify an empty destination directory or empty the provided directory."));
46
- }
18
+ getDirectoryItems(directoryPath) {
19
+ return readdirSync(directoryPath).filter((item) => !item.startsWith("."));
47
20
  }
48
21
  }
49
22
  //# sourceMappingURL=directoryValidator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"directoryValidator.js","sourceRoot":"","sources":["../../../src/validators/common/directoryValidator.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,UAAU,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAE5F,MAAM,OAAO,kBAAkB;IAC7B,YAA6B,KAAgC;QAAhC,UAAK,GAAL,KAAK,CAA2B;IAAG,CAAC;IAEjE,uBAAuB,CAAC,SAAiB;QACvC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,kDAAkD,SAAS,wDAAwD,CACpH,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,2CAA2C,CAAC,cAAsB,EAAE,SAAiB;QACzF,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,cAAc,IAAI,oBAAoB,EAAE,CAAC;YACtF,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,uDAAuD,cAAc,6DAA6D,CACnI,CACF,CAAC;QACJ,CAAC;QAED,IAAI,cAAc,IAAI,oBAAoB,EAAE,CAAC;YAC3C,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,6BAA6B,CAAC,SAAiB;QAC7C,MAAM,cAAc,GAAG,8BAA8B,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,2HAA2H,CAC5H,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,kJAAkJ,CACnJ,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,2GAA2G,CAC5G,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iCAAiC,CAAC,SAAiB;QACjD,MAAM,eAAe,GAAG,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACrF,IAAI,eAAe,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,6IAA6I,CAC9I,CACF,CAAC;QACJ,CAAC;QACD,IAAI,eAAe,CAAC,MAAM,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;YAClH,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,6IAA6I,CAC9I,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,kDAAkD,CAAC,cAAsB;QACvE,MAAM,cAAc,GAAG,8BAA8B,CAAC,cAAc,CAAC,CAAC;QACtE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,IAAI,oBAAoB,EAAE,CAAC;YACxE,IAAI,CAAC,KAAK,CACR,oBAAoB,CAClB,wHAAwH,CACzH,CACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"directoryValidator.js","sourceRoot":"","sources":["../../../src/validators/common/directoryValidator.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAEtD,MAAM,OAAO,kBAAkB;IACtB,uBAAuB,CAAC,SAAiB;QAC9C,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,CAAC,OAAO,CACnB,kDAAkD,SAAS,wDAAwD,CACpH,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,OAAO,CACnB,+FAA+F,CAChG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC;YACzE,OAAO,MAAM,CAAC,OAAO,CACnB,mHAAmH,CACpH,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,oBAAoB,SAAS,YAAY,CAAC,CAAC;IACnE,CAAC;IAEO,iBAAiB,CAAC,aAAqB;QAC7C,OAAO,WAAW,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { Result } from "../../types/common/result.js";
2
+ export declare class PortalServeValidator {
3
+ private readonly directoryValidator;
4
+ constructor();
5
+ validateSourceDirectory(sourceDirectoryPath: string): Promise<Result<string, string>>;
6
+ }
@@ -0,0 +1,15 @@
1
+ import { Result } from "../../types/common/result.js";
2
+ import { DirectoryValidator } from "../common/directoryValidator.js";
3
+ export class PortalServeValidator {
4
+ constructor() {
5
+ this.directoryValidator = new DirectoryValidator();
6
+ }
7
+ async validateSourceDirectory(sourceDirectoryPath) {
8
+ const sourceDirectoryValidationResult = this.directoryValidator.validateSourceDirectory(sourceDirectoryPath);
9
+ if (sourceDirectoryValidationResult.isFailed()) {
10
+ return Result.failure(sourceDirectoryValidationResult.error);
11
+ }
12
+ return Result.success("Serve flags validated successfully.");
13
+ }
14
+ }
15
+ //# sourceMappingURL=serve-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve-validator.js","sourceRoot":"","sources":["../../../src/validators/portal/serve-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,OAAO,oBAAoB;IAG/B;QACE,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACrD,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,mBAA2B;QAC9D,MAAM,+BAA+B,GAAG,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;QAC7G,IAAI,+BAA+B,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC/C,OAAO,MAAM,CAAC,OAAO,CAAC,+BAA+B,CAAC,KAAM,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;IAC/D,CAAC;CACF"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@apimatic/cli",
3
3
  "description": "The official CLI for APIMatic.",
4
- "version": "1.1.0-alpha.13",
4
+ "version": "1.1.0-alpha.14",
5
5
  "author": "APIMatic",
6
6
  "bin": {
7
7
  "apimatic": "./bin/run.js"
@@ -52,6 +52,7 @@
52
52
  "@oclif/plugin-not-found": "^3.2.44",
53
53
  "adm-zip": "^0.5.14",
54
54
  "archiver": "^7.0.1",
55
+ "async-mutex": "^0.5.0",
55
56
  "axios": "^1.8.1",
56
57
  "base-64": "^1.0.0",
57
58
  "chokidar": "^3.6.0",
@@ -61,15 +62,16 @@
61
62
  "file-type": "^15.0.0",
62
63
  "form-data": "^4.0.2",
63
64
  "fs-extra": "^11.3.0",
65
+ "get-port": "^7.1.0",
64
66
  "livereload": "^0.9.3",
65
67
  "open": "^8.4.0",
66
68
  "prettier": "^2.8.8",
67
69
  "simple-git": "^3.27.0",
68
70
  "striptags": "^3.2.0",
71
+ "tmp-promise": "^3.0.3",
69
72
  "treeify": "^1.1.0",
70
73
  "tslib": "^2.8.1",
71
74
  "unzipper": "^0.12.3",
72
- "which": "^5.0.0",
73
75
  "yaml": "^2.8.0"
74
76
  },
75
77
  "devDependencies": {
@@ -93,7 +95,6 @@
93
95
  "@types/sinon": "^17.0.4",
94
96
  "@types/treeify": "^1.0.3",
95
97
  "@types/unzipper": "^0.10.4",
96
- "@types/which": "^3.0.4",
97
98
  "@typescript-eslint/eslint-plugin": "^8.0.0",
98
99
  "@typescript-eslint/parser": "^8.0.0",
99
100
  "chai": "^4.5.0",
@@ -1,7 +0,0 @@
1
- import { PortalPaths, GenerateFlags } from "../../types/portal/generate.js";
2
- export declare class PortalGenerateAction {
3
- private readonly prompts;
4
- constructor();
5
- generatePortal(paths: PortalPaths, flags: GenerateFlags, configDir: string): Promise<void>;
6
- private saveGeneratedPortalStreamToZipFile;
7
- }
@@ -1,54 +0,0 @@
1
- import * as path from "path";
2
- import fsExtra from "fs-extra";
3
- import { PortalService } from "../../infrastructure/services/portal-service.js";
4
- import { Result } from "../../types/common/result.js";
5
- import { getGeneratedFilesPaths, validateAndZipPortalSource, deleteFile, extractZipFile, getMessageInRedColor } from "../../utils/utils.js";
6
- import { PortalGeneratePrompts } from "../../prompts/portal/generate.js";
7
- export class PortalGenerateAction {
8
- constructor() {
9
- this.prompts = new PortalGeneratePrompts();
10
- }
11
- async generatePortal(paths, flags, configDir) {
12
- var _a;
13
- this.prompts.displayPortalGenerationMessage();
14
- const pathsToIgnore = getGeneratedFilesPaths(paths.sourceFolderPath, paths.generatedPortalArtifactsFolderPath);
15
- //TODO: Refactor this method, carries dual responsibility.
16
- const sourceBuildInputZipFilePath = await validateAndZipPortalSource(paths.sourceFolderPath, path.join(paths.sourceFolderPath, ".portal_source.zip"), pathsToIgnore);
17
- const generatePortalParams = {
18
- sourceBuildInputZipFilePath: sourceBuildInputZipFilePath,
19
- generatedPortalArtifactsFolderPath: paths.generatedPortalArtifactsFolderPath,
20
- generatedPortalArtifactsZipFilePath: paths.generatedPortalArtifactsZipFilePath,
21
- overrideAuthKey: (_a = flags["auth-key"]) !== null && _a !== void 0 ? _a : null,
22
- generateZipFile: flags.zip
23
- };
24
- const docsPortalService = new PortalService();
25
- const portalGenerationResult = await docsPortalService.generateOnPremPortal(generatePortalParams, configDir);
26
- await deleteFile(sourceBuildInputZipFilePath);
27
- if (portalGenerationResult.isSuccess()) {
28
- await this.saveGeneratedPortalStreamToZipFile(portalGenerationResult.value, paths.generatedPortalArtifactsZipFilePath);
29
- if (flags.zip) {
30
- this.prompts.displayPortalGenerationSuccessMessage();
31
- this.prompts.displayOutroMessage(paths.generatedPortalArtifactsZipFilePath);
32
- return;
33
- }
34
- await extractZipFile(paths.generatedPortalArtifactsZipFilePath, paths.generatedPortalArtifactsFolderPath);
35
- await deleteFile(paths.generatedPortalArtifactsZipFilePath);
36
- this.prompts.displayPortalGenerationSuccessMessage();
37
- this.prompts.displayOutroMessage(paths.generatedPortalArtifactsFolderPath);
38
- }
39
- else {
40
- this.prompts.displayPortalGenerationErrorMessage();
41
- this.prompts.logError(getMessageInRedColor(`${portalGenerationResult.error}`));
42
- }
43
- }
44
- async saveGeneratedPortalStreamToZipFile(data, generatedPortalArtifactsZipFilePath) {
45
- const writeStream = fsExtra.createWriteStream(generatedPortalArtifactsZipFilePath);
46
- await new Promise((resolve, reject) => {
47
- data
48
- .pipe(writeStream)
49
- .on("finish", () => resolve())
50
- .on("error", (error) => reject(Result.failure(`Failed to save downloaded portal to file: ${error.message}`)));
51
- });
52
- }
53
- }
54
- //# sourceMappingURL=generate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/actions/portal/generate.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { GeneratePortalParams } from "../../types/portal/generate.js";
2
- import { Result } from "../../types/common/result.js";
3
- export declare const downloadDocsPortal: (params: GeneratePortalParams, configDir: string) => Promise<Result<string, string>>;