@apimatic/cli 1.1.0-beta.8 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/README.md +117 -13
  2. package/lib/actions/portal/copilot.d.ts +1 -0
  3. package/lib/actions/portal/copilot.js +12 -12
  4. package/lib/actions/portal/copilot.js.map +1 -1
  5. package/lib/actions/portal/generate.js +7 -1
  6. package/lib/actions/portal/generate.js.map +1 -1
  7. package/lib/actions/portal/quickstart.d.ts +1 -0
  8. package/lib/actions/portal/quickstart.js +40 -6
  9. package/lib/actions/portal/quickstart.js.map +1 -1
  10. package/lib/actions/portal/serve.d.ts +1 -0
  11. package/lib/actions/portal/serve.js +77 -20
  12. package/lib/actions/portal/serve.js.map +1 -1
  13. package/lib/actions/portal/toc/new-toc.js +8 -20
  14. package/lib/actions/portal/toc/new-toc.js.map +1 -1
  15. package/lib/actions/publishing/profile/list.d.ts +11 -0
  16. package/lib/actions/publishing/profile/list.js +29 -0
  17. package/lib/actions/publishing/profile/list.js.map +1 -0
  18. package/lib/actions/sdk/generate.d.ts +9 -5
  19. package/lib/actions/sdk/generate.js +76 -30
  20. package/lib/actions/sdk/generate.js.map +1 -1
  21. package/lib/actions/sdk/merge-source-tree.d.ts +12 -0
  22. package/lib/actions/sdk/merge-source-tree.js +78 -0
  23. package/lib/actions/sdk/merge-source-tree.js.map +1 -0
  24. package/lib/actions/sdk/publish/interactive.d.ts +13 -0
  25. package/lib/actions/sdk/publish/interactive.js +105 -0
  26. package/lib/actions/sdk/publish/interactive.js.map +1 -0
  27. package/lib/actions/sdk/publish/non-interactive.d.ts +14 -0
  28. package/lib/actions/sdk/publish/non-interactive.js +101 -0
  29. package/lib/actions/sdk/publish/non-interactive.js.map +1 -0
  30. package/lib/actions/sdk/publish.d.ts +18 -0
  31. package/lib/actions/sdk/publish.js +56 -0
  32. package/lib/actions/sdk/publish.js.map +1 -0
  33. package/lib/actions/sdk/quickstart.js +2 -1
  34. package/lib/actions/sdk/quickstart.js.map +1 -1
  35. package/lib/actions/sdk/save-changes.d.ts +8 -0
  36. package/lib/actions/sdk/save-changes.js +93 -0
  37. package/lib/actions/sdk/save-changes.js.map +1 -0
  38. package/lib/application/portal/recipe/recipe-generator.js +14 -29
  39. package/lib/application/portal/recipe/recipe-generator.js.map +1 -1
  40. package/lib/application/portal/toc/toc-structure-generator.d.ts +3 -19
  41. package/lib/application/portal/toc/toc-structure-generator.js +43 -33
  42. package/lib/application/portal/toc/toc-structure-generator.js.map +1 -1
  43. package/lib/commands/portal/recipe/new.js +2 -2
  44. package/lib/commands/portal/recipe/new.js.map +1 -1
  45. package/lib/commands/portal/serve.js +3 -3
  46. package/lib/commands/portal/serve.js.map +1 -1
  47. package/lib/commands/portal/toc/new.js +2 -2
  48. package/lib/commands/portal/toc/new.js.map +1 -1
  49. package/lib/commands/publishing/profile/list.d.ts +9 -0
  50. package/lib/commands/publishing/profile/list.js +28 -0
  51. package/lib/commands/publishing/profile/list.js.map +1 -0
  52. package/lib/commands/quickstart.js +1 -1
  53. package/lib/commands/quickstart.js.map +1 -1
  54. package/lib/commands/sdk/generate.d.ts +7 -2
  55. package/lib/commands/sdk/generate.js +37 -9
  56. package/lib/commands/sdk/generate.js.map +1 -1
  57. package/lib/commands/sdk/publish.d.ts +18 -0
  58. package/lib/commands/sdk/publish.js +73 -0
  59. package/lib/commands/sdk/publish.js.map +1 -0
  60. package/lib/commands/sdk/save-changes.d.ts +14 -0
  61. package/lib/commands/sdk/save-changes.js +51 -0
  62. package/lib/commands/sdk/save-changes.js.map +1 -0
  63. package/lib/hooks/not-found.js +1 -1
  64. package/lib/hooks/not-found.js.map +1 -1
  65. package/lib/infrastructure/debounce-service.js +3 -0
  66. package/lib/infrastructure/debounce-service.js.map +1 -1
  67. package/lib/infrastructure/env-info.d.ts +2 -0
  68. package/lib/infrastructure/env-info.js +23 -12
  69. package/lib/infrastructure/env-info.js.map +1 -1
  70. package/lib/infrastructure/file-service.d.ts +9 -0
  71. package/lib/infrastructure/file-service.js +94 -5
  72. package/lib/infrastructure/file-service.js.map +1 -1
  73. package/lib/infrastructure/git-service.d.ts +14 -0
  74. package/lib/infrastructure/git-service.js +90 -0
  75. package/lib/infrastructure/git-service.js.map +1 -0
  76. package/lib/infrastructure/launcher-service.d.ts +5 -0
  77. package/lib/infrastructure/launcher-service.js +35 -2
  78. package/lib/infrastructure/launcher-service.js.map +1 -1
  79. package/lib/infrastructure/os-extensions.d.ts +2 -0
  80. package/lib/infrastructure/os-extensions.js +6 -0
  81. package/lib/infrastructure/os-extensions.js.map +1 -0
  82. package/lib/infrastructure/service-error.d.ts +14 -2
  83. package/lib/infrastructure/service-error.js +26 -9
  84. package/lib/infrastructure/service-error.js.map +1 -1
  85. package/lib/infrastructure/services/api-service.d.ts +1 -0
  86. package/lib/infrastructure/services/api-service.js +26 -2
  87. package/lib/infrastructure/services/api-service.js.map +1 -1
  88. package/lib/infrastructure/services/portal-service.d.ts +11 -2
  89. package/lib/infrastructure/services/portal-service.js +123 -18
  90. package/lib/infrastructure/services/portal-service.js.map +1 -1
  91. package/lib/infrastructure/services/publishing-api-service.d.ts +19 -0
  92. package/lib/infrastructure/services/publishing-api-service.js +111 -0
  93. package/lib/infrastructure/services/publishing-api-service.js.map +1 -0
  94. package/lib/infrastructure/services/validation-service.js.map +1 -1
  95. package/lib/infrastructure/zip-service.d.ts +2 -2
  96. package/lib/infrastructure/zip-service.js +46 -25
  97. package/lib/infrastructure/zip-service.js.map +1 -1
  98. package/lib/prompts/format.d.ts +0 -2
  99. package/lib/prompts/format.js +0 -31
  100. package/lib/prompts/format.js.map +1 -1
  101. package/lib/prompts/portal/generate.d.ts +1 -1
  102. package/lib/prompts/portal/generate.js +9 -3
  103. package/lib/prompts/portal/generate.js.map +1 -1
  104. package/lib/prompts/portal/quickstart.d.ts +4 -0
  105. package/lib/prompts/portal/quickstart.js +22 -0
  106. package/lib/prompts/portal/quickstart.js.map +1 -1
  107. package/lib/prompts/portal/serve.d.ts +4 -0
  108. package/lib/prompts/portal/serve.js +20 -1
  109. package/lib/prompts/portal/serve.js.map +1 -1
  110. package/lib/prompts/portal/toc/new-toc.d.ts +2 -2
  111. package/lib/prompts/portal/toc/new-toc.js +3 -3
  112. package/lib/prompts/portal/toc/new-toc.js.map +1 -1
  113. package/lib/prompts/prompt.d.ts +6 -0
  114. package/lib/prompts/prompt.js +45 -0
  115. package/lib/prompts/prompt.js.map +1 -1
  116. package/lib/prompts/publishing/profile/list.d.ts +9 -0
  117. package/lib/prompts/publishing/profile/list.js +27 -0
  118. package/lib/prompts/publishing/profile/list.js.map +1 -0
  119. package/lib/prompts/sdk/generate.d.ts +9 -4
  120. package/lib/prompts/sdk/generate.js +37 -15
  121. package/lib/prompts/sdk/generate.js.map +1 -1
  122. package/lib/prompts/sdk/merge-source-tree.d.ts +22 -0
  123. package/lib/prompts/sdk/merge-source-tree.js +90 -0
  124. package/lib/prompts/sdk/merge-source-tree.js.map +1 -0
  125. package/lib/prompts/sdk/publish/interactive.d.ts +30 -0
  126. package/lib/prompts/sdk/publish/interactive.js +139 -0
  127. package/lib/prompts/sdk/publish/interactive.js.map +1 -0
  128. package/lib/prompts/sdk/publish/non-interactive.d.ts +27 -0
  129. package/lib/prompts/sdk/publish/non-interactive.js +97 -0
  130. package/lib/prompts/sdk/publish/non-interactive.js.map +1 -0
  131. package/lib/prompts/sdk/publish.d.ts +12 -0
  132. package/lib/prompts/sdk/publish.js +16 -0
  133. package/lib/prompts/sdk/publish.js.map +1 -0
  134. package/lib/prompts/sdk/save-changes.d.ts +21 -0
  135. package/lib/prompts/sdk/save-changes.js +84 -0
  136. package/lib/prompts/sdk/save-changes.js.map +1 -0
  137. package/lib/types/build/build.d.ts +81 -2
  138. package/lib/types/build/build.js +158 -0
  139. package/lib/types/build/build.js.map +1 -1
  140. package/lib/types/build-context.d.ts +12 -1
  141. package/lib/types/build-context.js +78 -4
  142. package/lib/types/build-context.js.map +1 -1
  143. package/lib/types/events/sdk-changes-saved.d.ts +8 -0
  144. package/lib/types/events/sdk-changes-saved.js +11 -0
  145. package/lib/types/events/sdk-changes-saved.js.map +1 -0
  146. package/lib/types/events/sdk-changes-tracked.d.ts +8 -0
  147. package/lib/types/events/sdk-changes-tracked.js +11 -0
  148. package/lib/types/events/sdk-changes-tracked.js.map +1 -0
  149. package/lib/types/events/sdk-conflicts-resolved.d.ts +8 -0
  150. package/lib/types/events/sdk-conflicts-resolved.js +11 -0
  151. package/lib/types/events/sdk-conflicts-resolved.js.map +1 -0
  152. package/lib/types/events/sdk-publish-validation-failed.d.ts +5 -0
  153. package/lib/types/events/sdk-publish-validation-failed.js +8 -0
  154. package/lib/types/events/sdk-publish-validation-failed.js.map +1 -0
  155. package/lib/types/file/directory.d.ts +10 -1
  156. package/lib/types/file/directory.js +63 -5
  157. package/lib/types/file/directory.js.map +1 -1
  158. package/lib/types/file/directoryPath.js.map +1 -1
  159. package/lib/types/file/urlPath.d.ts +4 -0
  160. package/lib/types/file/urlPath.js +9 -0
  161. package/lib/types/file/urlPath.js.map +1 -1
  162. package/lib/types/merge-source-tree-context.d.ts +28 -0
  163. package/lib/types/merge-source-tree-context.js +63 -0
  164. package/lib/types/merge-source-tree-context.js.map +1 -0
  165. package/lib/types/package-settings-context.d.ts +10 -0
  166. package/lib/types/package-settings-context.js +20 -0
  167. package/lib/types/package-settings-context.js.map +1 -0
  168. package/lib/types/publish/package-settings-configuration.d.ts +74 -0
  169. package/lib/types/publish/package-settings-configuration.js +2 -0
  170. package/lib/types/publish/package-settings-configuration.js.map +1 -0
  171. package/lib/types/publish/profile-id.d.ts +10 -0
  172. package/lib/types/publish/profile-id.js +22 -0
  173. package/lib/types/publish/profile-id.js.map +1 -0
  174. package/lib/types/publish/publishing-profile.d.ts +26 -0
  175. package/lib/types/publish/publishing-profile.js +154 -0
  176. package/lib/types/publish/publishing-profile.js.map +1 -0
  177. package/lib/types/publish/publishing-profiles.d.ts +12 -0
  178. package/lib/types/publish/publishing-profiles.js +36 -0
  179. package/lib/types/publish/publishing-profiles.js.map +1 -0
  180. package/lib/types/publish/version.d.ts +7 -0
  181. package/lib/types/publish/version.js +17 -0
  182. package/lib/types/publish/version.js.map +1 -0
  183. package/lib/types/publish-api/publish-log.d.ts +20 -0
  184. package/lib/types/publish-api/publish-log.js +2 -0
  185. package/lib/types/publish-api/publish-log.js.map +1 -0
  186. package/lib/types/publish-api/publishing-info.d.ts +4 -0
  187. package/lib/types/publish-api/publishing-info.js +2 -0
  188. package/lib/types/publish-api/publishing-info.js.map +1 -0
  189. package/lib/types/publish-api/publishing-profile-item.d.ts +190 -0
  190. package/lib/types/publish-api/publishing-profile-item.js +6 -0
  191. package/lib/types/publish-api/publishing-profile-item.js.map +1 -0
  192. package/lib/types/save-changes-context.d.ts +17 -0
  193. package/lib/types/save-changes-context.js +42 -0
  194. package/lib/types/save-changes-context.js.map +1 -0
  195. package/lib/types/sdk/generate.d.ts +8 -0
  196. package/lib/types/sdk/generate.js +10 -0
  197. package/lib/types/sdk/generate.js.map +1 -1
  198. package/lib/types/sdk-context.d.ts +5 -4
  199. package/lib/types/sdk-context.js +26 -13
  200. package/lib/types/sdk-context.js.map +1 -1
  201. package/lib/types/sdl/sdl.d.ts +0 -28
  202. package/lib/types/sdl/sdl.js +1 -128
  203. package/lib/types/sdl/sdl.js.map +1 -1
  204. package/lib/types/spec-context.js.map +1 -1
  205. package/lib/types/temp-context.js.map +1 -1
  206. package/lib/types/toc/toc-components.d.ts +37 -0
  207. package/lib/types/toc/toc-components.js +97 -0
  208. package/lib/types/toc/toc-components.js.map +1 -0
  209. package/lib/types/toc/toc.d.ts +11 -0
  210. package/lib/utils/string-utils.d.ts +0 -1
  211. package/lib/utils/string-utils.js +0 -42
  212. package/lib/utils/string-utils.js.map +1 -1
  213. package/package.json +28 -20
  214. package/lib/types/versioned-build-context.d.ts +0 -9
  215. package/lib/types/versioned-build-context.js +0 -21
  216. package/lib/types/versioned-build-context.js.map +0 -1
@@ -0,0 +1,51 @@
1
+ import { Command, Flags } from "@oclif/core";
2
+ import { format, intro, outro } from "../../prompts/format.js";
3
+ import { DirectoryPath } from "../../types/file/directoryPath.js";
4
+ import { SaveChangesAction } from "../../actions/sdk/save-changes.js";
5
+ import { Language } from "../../types/sdk/generate.js";
6
+ import { FlagsProvider } from "../../types/flags-provider.js";
7
+ import { TelemetryService } from "../../infrastructure/services/telemetry-service.js";
8
+ import { SdkChangesSavedEvent } from "../../types/events/sdk-changes-saved.js";
9
+ class SaveChanges extends Command {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.getConfigDir = () => {
13
+ return new DirectoryPath(this.config.configDir);
14
+ };
15
+ }
16
+ async run() {
17
+ const { flags: { sdk, language, input, "api-version": apiVersion } } = await this.parse(SaveChanges);
18
+ const workingDirectory = DirectoryPath.createInput(input);
19
+ const buildDirectory = workingDirectory.join("src");
20
+ const sdkDirectoryInput = sdk ? new DirectoryPath(sdk) : undefined;
21
+ const commandMetadata = {
22
+ commandName: SaveChanges.id,
23
+ shell: this.config.shell
24
+ };
25
+ const telemetryService = new TelemetryService(this.getConfigDir());
26
+ intro("Save Changes");
27
+ const action = new SaveChangesAction();
28
+ const result = await action.execute(workingDirectory, buildDirectory, sdkDirectoryInput, language, apiVersion);
29
+ outro(result);
30
+ await result.mapAll(async () => await telemetryService.trackEvent(new SdkChangesSavedEvent(language), commandMetadata.shell), async () => { }, async () => { });
31
+ }
32
+ }
33
+ SaveChanges.summary = "Save customizations made to an auto-generated SDK";
34
+ SaveChanges.description = "Requires an input directory with API specifications, a path to the updated SDK directory, and the programming language.";
35
+ SaveChanges.cmdTxt = format.cmd("apimatic", "sdk", "save-changes");
36
+ SaveChanges.flags = Object.assign({ language: Flags.string({
37
+ char: "l",
38
+ required: true,
39
+ description: "Programming language of the SDK",
40
+ options: Object.values(Language).map((p) => p.valueOf())
41
+ }), "sdk": Flags.string({
42
+ description: "[default: ./sdk/<language> | ./sdk/<api-version>/<language>] path to the folder containing the updated SDK."
43
+ }), "api-version": Flags.string({
44
+ description: "Version of the API where changes should be saved (if multiple versions exist)."
45
+ }) }, FlagsProvider.input);
46
+ SaveChanges.examples = [
47
+ `${SaveChanges.cmdTxt} ${format.flag("language", "csharp")}`,
48
+ `${SaveChanges.cmdTxt} ${format.flag("language", "java")} ${format.flag("sdk", "./sdk")}`
49
+ ];
50
+ export default SaveChanges;
51
+ //# sourceMappingURL=save-changes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"save-changes.js","sourceRoot":"","sources":["../../../src/commands/sdk/save-changes.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ const hook = async function (opts) {
37
37
  }
38
38
  if (response) {
39
39
  const confirmedSuggestion = suggestion;
40
- let argv = ((_a = opts.argv) === null || _a === void 0 ? void 0 : _a.length) ? opts.argv : opts.id.split(":").slice(confirmedSuggestion.split(":").length);
40
+ let argv = (_a = opts.argv) !== null && _a !== void 0 ? _a : [];
41
41
  if (confirmedSuggestion.startsWith("help:")) {
42
42
  argv = confirmedSuggestion.split(":").slice(1);
43
43
  suggestion = "help";
@@ -1 +1 @@
1
- {"version":3,"file":"not-found.js","sourceRoot":"","sources":["../../src/hooks/not-found.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"not-found.js","sourceRoot":"","sources":["../../src/hooks/not-found.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,9 @@ export class DebounceService {
37
37
  }
38
38
  finally {
39
39
  this.isProcessing = false;
40
+ if (this.latestHandler) {
41
+ this.scheduleExecution();
42
+ }
40
43
  }
41
44
  }, this.debounceMs);
42
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debounce-service.js","sourceRoot":"","sources":["../../src/infrastructure/debounce-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAElD,MAAM,OAAO,eAAe;IAM1B,YAAY,aAAqB,GAAG;QAL5B,iBAAY,GAAG,KAAK,CAAC;QACrB,kBAAa,GAAiC,IAAI,CAAC;QACnD,kBAAa,GAA0B,IAAI,CAAC;QAIlD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAA4B;QACnD,kCAAkC;QAClC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAE7B,iFAAiF;QACjF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,2BAA2B;QAC3B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnC,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;YACzC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAE1B,IAAI,CAAC;gBACH,0CAA0C;gBAC1C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;oBACvB,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;oBAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;oBAC1B,MAAM,cAAc,EAAE,CAAC;gBACzB,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC5B,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,yCAAyC;IAClC,KAAK;QACV,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"debounce-service.js","sourceRoot":"","sources":["../../src/infrastructure/debounce-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAElD,MAAM,OAAO,eAAe;IAM1B,YAAY,aAAqB,GAAG;QAL5B,iBAAY,GAAG,KAAK,CAAC;QACrB,kBAAa,GAAiC,IAAI,CAAC;QACnD,kBAAa,GAA0B,IAAI,CAAC;QAIlD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAA4B;QACnD,kCAAkC;QAClC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAE7B,iFAAiF;QACjF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,2BAA2B;QAC3B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnC,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;YACzC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAE1B,IAAI,CAAC;gBACH,0CAA0C;gBAC1C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;oBACvB,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;oBAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;oBAC1B,MAAM,cAAc,EAAE,CAAC;gBACzB,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;oBACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,yCAAyC;IAClC,KAAK;QACV,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;CACF"}
@@ -3,10 +3,12 @@ declare class EnvInfo {
3
3
  private static cachedUserAgent;
4
4
  private static cachedBaseUrl;
5
5
  private static cachedAuthBaseUrl;
6
+ private static cachedPublishingBaseUrl;
6
7
  getUserAgent(shell: string): string;
7
8
  getCLIVersion(): string;
8
9
  getBaseUrl(): string | undefined;
9
10
  getAuthBaseUrl(): string | undefined;
11
+ getPublishingBaseUrl(): string | undefined;
10
12
  }
11
13
  export declare const envInfo: EnvInfo;
12
14
  export {};
@@ -1,12 +1,12 @@
1
- import os from "os";
2
- import { fileURLToPath } from "url";
3
- import { dirname, join } from "path";
4
- import fs from "fs-extra";
1
+ import os from 'os';
2
+ import { fileURLToPath } from 'url';
3
+ import { dirname, join } from 'path';
4
+ import fs from 'fs-extra';
5
5
  class EnvInfo {
6
6
  getUserAgent(shell) {
7
7
  if (!EnvInfo.cachedUserAgent) {
8
8
  const osInfo = `${os.platform()} ${os.release()}`;
9
- const engine = "Node.js";
9
+ const engine = 'Node.js';
10
10
  const engineVersion = process.version;
11
11
  EnvInfo.cachedUserAgent = `APIMATIC CLI/${this.getCLIVersion()} - (OS: ${osInfo}, Engine: ${engine}/${engineVersion}, Shell: ${shell})`;
12
12
  }
@@ -19,15 +19,15 @@ class EnvInfo {
19
19
  try {
20
20
  const __filename = fileURLToPath(import.meta.url);
21
21
  const __dirname = dirname(__filename);
22
- const pkgPath = join(__dirname, "../../package.json");
23
- const pkgJson = fs.readFileSync(pkgPath, "utf-8");
22
+ const pkgPath = join(__dirname, '../../package.json');
23
+ const pkgJson = fs.readFileSync(pkgPath, 'utf-8');
24
24
  const pkg = JSON.parse(pkgJson);
25
- const version = pkg.version || "unknown";
25
+ const version = pkg.version || 'unknown';
26
26
  EnvInfo.cachedCliVersion = version;
27
27
  return version;
28
28
  }
29
29
  catch (_a) {
30
- return "unknown";
30
+ return 'unknown';
31
31
  }
32
32
  }
33
33
  getBaseUrl() {
@@ -36,7 +36,7 @@ class EnvInfo {
36
36
  }
37
37
  const envBaseUrls = process.env.APIMATIC_BASE_URL;
38
38
  if (envBaseUrls) {
39
- EnvInfo.cachedBaseUrl = envBaseUrls.split(";")[0];
39
+ EnvInfo.cachedBaseUrl = envBaseUrls.split(';')[0];
40
40
  }
41
41
  return EnvInfo.cachedBaseUrl;
42
42
  }
@@ -46,11 +46,22 @@ class EnvInfo {
46
46
  }
47
47
  const envBaseUrls = process.env.APIMATIC_BASE_URL;
48
48
  if (envBaseUrls) {
49
- const baseUrls = envBaseUrls.split(";");
50
- EnvInfo.cachedAuthBaseUrl = baseUrls.length === 2 ? baseUrls[1] : undefined;
49
+ const baseUrls = envBaseUrls.split(';');
50
+ EnvInfo.cachedAuthBaseUrl = baseUrls.length === 3 ? baseUrls[1] : undefined;
51
51
  }
52
52
  return EnvInfo.cachedAuthBaseUrl;
53
53
  }
54
+ getPublishingBaseUrl() {
55
+ if (EnvInfo.cachedPublishingBaseUrl) {
56
+ return EnvInfo.cachedPublishingBaseUrl;
57
+ }
58
+ const envBaseUrls = process.env.APIMATIC_BASE_URL;
59
+ if (envBaseUrls) {
60
+ const baseUrls = envBaseUrls.split(';');
61
+ EnvInfo.cachedPublishingBaseUrl = baseUrls.length === 3 ? baseUrls[2] : undefined;
62
+ }
63
+ return EnvInfo.cachedPublishingBaseUrl;
64
+ }
54
65
  }
55
66
  EnvInfo.cachedCliVersion = null;
56
67
  EnvInfo.cachedUserAgent = null;
@@ -1 +1 @@
1
- {"version":3,"file":"env-info.js","sourceRoot":"","sources":["../../src/infrastructure/env-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,MAAM,OAAO;IAMJ,YAAY,CAAC,KAAa;QAC/B,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,SAAS,CAAC;YACzB,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;YACtC,OAAO,CAAC,eAAe,GAAG,gBAAgB,IAAI,CAAC,aAAa,EAAE,WAAW,MAAM,aAAa,MAAM,IAAI,aAAa,YAAY,KAAK,GAAG,CAAC;QAC1I,CAAC;QACD,OAAO,OAAO,CAAC,eAAe,CAAC;IACjC,CAAC;IAEM,aAAa;QAClB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,OAAO,OAAO,CAAC,gBAAgB,CAAC;QAClC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;YACtD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;YACzC,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC;YACnC,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEM,UAAU;QACf,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC,aAAa,CAAC;QAC/B,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAClD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,OAAO,CAAC,aAAa,CAAC;IAC/B,CAAC;IAEM,cAAc;QACnB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,iBAAiB,CAAC;QACnC,CAAC;QACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAClD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,OAAO,CAAC,iBAAiB,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,CAAC;QACD,OAAO,OAAO,CAAC,iBAAiB,CAAC;IACnC,CAAC;;AAvDc,wBAAgB,GAAkB,IAAI,CAAC;AACvC,uBAAe,GAAkB,IAAI,CAAC;AAwDvD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"env-info.js","sourceRoot":"","sources":["../../src/infrastructure/env-info.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,23 @@ import fs from "fs";
2
2
  import { FilePath } from "../types/file/filePath.js";
3
3
  import { DirectoryPath } from "../types/file/directoryPath.js";
4
4
  import { Directory } from "../types/file/directory.js";
5
+ import { FileName } from "../types/file/fileName.js";
5
6
  export declare class FileService {
6
7
  fileExists(file: FilePath): Promise<boolean>;
8
+ fileExistsSync(file: FilePath): boolean;
7
9
  directoryExists(dir: DirectoryPath): Promise<boolean>;
10
+ directoryExistsSync(dir: DirectoryPath): boolean;
8
11
  directoryEmpty(dir: DirectoryPath): Promise<boolean>;
9
12
  cleanDirectory(dir: DirectoryPath): Promise<void>;
13
+ cleanDirectoryExcluding(dir: DirectoryPath, excludeNames: FileName[]): Promise<void>;
10
14
  createDirectoryIfNotExists(dir: DirectoryPath): Promise<void>;
11
15
  getDirectory(directoryPath: DirectoryPath): Promise<Directory>;
12
16
  getSubDirectoriesPaths(dir: DirectoryPath): Promise<DirectoryPath[]>;
13
17
  copyDirectoryContents(source: DirectoryPath, destination: DirectoryPath): Promise<void>;
18
+ copyDirectoryExcluding(source: DirectoryPath, destination: DirectoryPath, excludeNames: FileName[]): Promise<void>;
14
19
  deleteFile(filePath: FilePath): Promise<void>;
15
20
  deleteDirectory(dirPath: DirectoryPath): Promise<void>;
21
+ pollDeleteDirectory(dirPath: DirectoryPath, onDeleteFailurePersists: () => void): Promise<void>;
16
22
  getRelativePath(filePath: FilePath, basePath: DirectoryPath): string;
17
23
  getStream(filePath: FilePath): Promise<fs.ReadStream>;
18
24
  getContents(filePath: FilePath): Promise<string>;
@@ -21,5 +27,8 @@ export declare class FileService {
21
27
  writeContents(filePath: FilePath, contents: string): Promise<void>;
22
28
  copy(source: FilePath, destination: FilePath): Promise<void>;
23
29
  copyToDir(source: FilePath, destination: DirectoryPath): Promise<void>;
30
+ readFile(filePath: FilePath): Promise<string>;
24
31
  isZipFile(filePath: FilePath): Promise<boolean>;
32
+ hasContent(file: FilePath, content: string): Promise<boolean>;
33
+ getAvailableDirectoryPath(currentPath: DirectoryPath): Promise<DirectoryPath>;
25
34
  }
@@ -16,6 +16,15 @@ export class FileService {
16
16
  return false;
17
17
  }
18
18
  }
19
+ fileExistsSync(file) {
20
+ try {
21
+ const stat = fsExtra.statSync(file.toString());
22
+ return stat.isFile();
23
+ }
24
+ catch (_a) {
25
+ return false;
26
+ }
27
+ }
19
28
  async directoryExists(dir) {
20
29
  try {
21
30
  const stat = await fsExtra.stat(dir.toString());
@@ -25,6 +34,15 @@ export class FileService {
25
34
  return false;
26
35
  }
27
36
  }
37
+ directoryExistsSync(dir) {
38
+ try {
39
+ const stat = fsExtra.statSync(dir.toString());
40
+ return stat.isDirectory();
41
+ }
42
+ catch (_a) {
43
+ return false;
44
+ }
45
+ }
28
46
  async directoryEmpty(dir) {
29
47
  try {
30
48
  const files = await fsExtra.readdir(dir.toString());
@@ -38,6 +56,15 @@ export class FileService {
38
56
  await fsExtra.ensureDir(dir.toString());
39
57
  await fsExtra.emptyDir(dir.toString()); // removes everything inside, keeps the dir
40
58
  }
59
+ async cleanDirectoryExcluding(dir, excludeNames) {
60
+ await fsExtra.ensureDir(dir.toString());
61
+ const entries = await fsExtra.readdir(dir.toString());
62
+ await Promise.all(entries
63
+ .filter((entry) => !excludeNames.find((exclude) => exclude.toString() === entry))
64
+ .map(async (entry) => {
65
+ return fsExtra.remove(dir.join(entry).toString());
66
+ }));
67
+ }
41
68
  async createDirectoryIfNotExists(dir) {
42
69
  await fsExtra.ensureDir(dir.toString());
43
70
  }
@@ -46,16 +73,22 @@ export class FileService {
46
73
  const results = await Promise.all(entries.map(async (entry) => {
47
74
  const fullPath = path.join(directoryPath.toString(), entry);
48
75
  const stat = await fsExtra.stat(fullPath);
49
- return stat.isDirectory() ? await this.getDirectory(new DirectoryPath(fullPath)) : new FileName(entry);
76
+ return stat.isDirectory() ? await this.getDirectory(new DirectoryPath(fullPath)) : { fileName: new FileName(entry) };
50
77
  }));
51
78
  return new Directory(directoryPath, results);
52
79
  }
53
80
  async getSubDirectoriesPaths(dir) {
54
81
  try {
55
- const entries = await fsExtra.readdir(dir.toString(), { withFileTypes: true });
56
- return entries
57
- .filter((entry) => entry.isDirectory())
58
- .map((entry) => dir.join(entry.name));
82
+ const entries = await fsExtra.readdir(dir.toString());
83
+ const directories = [];
84
+ for (const entry of entries) {
85
+ const fullPath = dir.join(entry).toString();
86
+ const stat = await fsExtra.stat(fullPath);
87
+ if (stat.isDirectory()) {
88
+ directories.push(new DirectoryPath(fullPath));
89
+ }
90
+ }
91
+ return directories;
59
92
  }
60
93
  catch (_a) {
61
94
  return [];
@@ -69,6 +102,21 @@ export class FileService {
69
102
  await fsExtra.copy(srcEntry, destEntry);
70
103
  }));
71
104
  }
105
+ async copyDirectoryExcluding(source, destination, excludeNames) {
106
+ await this.createDirectoryIfNotExists(destination);
107
+ const entries = await fsExtra.readdir(source.toString());
108
+ await Promise.all(entries
109
+ .filter((entry) => !excludeNames.find((exclude) => exclude.toString() === entry))
110
+ .map(async (entry) => {
111
+ const sourcePath = path.join(source.toString(), entry);
112
+ const destPath = path.join(destination.toString(), entry);
113
+ const stat = await fsExtra.stat(sourcePath);
114
+ if (stat.isDirectory()) {
115
+ return this.copyDirectoryExcluding(new DirectoryPath(sourcePath), new DirectoryPath(destPath), excludeNames);
116
+ }
117
+ return fsExtra.copyFile(sourcePath, destPath);
118
+ }));
119
+ }
72
120
  async deleteFile(filePath) {
73
121
  const exists = await this.fileExists(filePath);
74
122
  if (exists) {
@@ -81,6 +129,19 @@ export class FileService {
81
129
  await fsExtra.remove(dirPath.toString());
82
130
  }
83
131
  }
132
+ async pollDeleteDirectory(dirPath, onDeleteFailurePersists) {
133
+ const timeoutMs = 5 * 60 * 1000;
134
+ const deadline = Date.now() + timeoutMs;
135
+ const deleteFailurePersistsMaxDelay = Date.now() + 5 * 1000;
136
+ let actionPerformed = false;
137
+ while (Date.now() < deadline && await this.deleteDirectory(dirPath).then(() => false).catch(() => true)) {
138
+ if (!actionPerformed && Date.now() > deleteFailurePersistsMaxDelay) {
139
+ onDeleteFailurePersists();
140
+ actionPerformed = true;
141
+ }
142
+ await new Promise((resolve) => setTimeout(resolve, 500));
143
+ }
144
+ }
84
145
  getRelativePath(filePath, basePath) {
85
146
  const filePathStr = filePath.toString();
86
147
  const basePathStr = basePath.toString();
@@ -113,6 +174,9 @@ export class FileService {
113
174
  async copyToDir(source, destination) {
114
175
  await fsExtra.copyFile(source.toString(), source.replaceDirectory(destination).toString());
115
176
  }
177
+ async readFile(filePath) {
178
+ return await fsExtra.readFile(filePath.toString(), "utf-8");
179
+ }
116
180
  async isZipFile(filePath) {
117
181
  try {
118
182
  const buffer = await fsExtra.readFile(filePath.toString());
@@ -126,6 +190,31 @@ export class FileService {
126
190
  return false;
127
191
  }
128
192
  }
193
+ async hasContent(file, content) {
194
+ return (await this.fileExists(file)) && (await this.readFile(file)).includes(content);
195
+ }
196
+ async getAvailableDirectoryPath(currentPath) {
197
+ if (!(await this.directoryExists(currentPath)))
198
+ return currentPath;
199
+ const dir = path.dirname(currentPath.toString());
200
+ let baseName = path.basename(currentPath.toString());
201
+ // Strip existing " (n)" suffix using string methods
202
+ if (baseName.endsWith(')')) {
203
+ const open = baseName.lastIndexOf('(');
204
+ if (open !== -1 && baseName[open - 1] === ' ') {
205
+ const inner = baseName.slice(open + 1, -1);
206
+ if (inner.length > 0 && !isNaN(Number(inner))) {
207
+ baseName = baseName.slice(0, open - 1);
208
+ }
209
+ }
210
+ }
211
+ let counter = 1;
212
+ let newPath;
213
+ do {
214
+ newPath = path.join(dir, `${baseName} (${counter++})`);
215
+ } while (await this.directoryExists(new DirectoryPath(newPath)));
216
+ return new DirectoryPath(newPath);
217
+ }
129
218
  }
130
219
  const streamPipeline = promisify(pipeline);
131
220
  //# sourceMappingURL=file-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-service.js","sourceRoot":"","sources":["../../src/infrastructure/file-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-service.js","sourceRoot":"","sources":["../../src/infrastructure/file-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { DirectoryPath } from "../types/file/directoryPath.js";
2
+ import { FilePath } from "../types/file/filePath.js";
3
+ import { Directory } from "../types/file/directory.js";
4
+ export declare class GitService {
5
+ checkoutCustomBranch(dirPath: DirectoryPath): Promise<void>;
6
+ hasCustomBranch(dirPath: DirectoryPath): Promise<boolean>;
7
+ getMergeFiles(dirPath: DirectoryPath): FilePath[];
8
+ forceCheckoutMainBranch(dirPath: DirectoryPath): Promise<void>;
9
+ getDirectoryWithUpdatedFiles(dirPath: DirectoryPath): Promise<Directory>;
10
+ private stageAll;
11
+ getDirectoryWithUnmergedFiles(dir: DirectoryPath): Promise<Directory>;
12
+ commitResolvedConflicts(dir: DirectoryPath): Promise<void>;
13
+ commitReviewedChanges(dir: DirectoryPath): Promise<void>;
14
+ }
@@ -0,0 +1,90 @@
1
+ import git from "isomorphic-git";
2
+ import fs from "fs";
3
+ import { FileName } from "../types/file/fileName.js";
4
+ import { FilePath } from "../types/file/filePath.js";
5
+ import { Directory } from "../types/file/directory.js";
6
+ const GIT_AUTHOR = { name: "APIMatic-bot", email: "developer@apimatic.io" };
7
+ const CUSTOM_BRANCH = "custom-code";
8
+ const MAIN_BRANCH = "main";
9
+ export class GitService {
10
+ async checkoutCustomBranch(dirPath) {
11
+ const dir = dirPath.toString();
12
+ if (!await this.hasCustomBranch(dirPath)) {
13
+ await git.branch({ fs, dir, ref: CUSTOM_BRANCH });
14
+ }
15
+ await git.checkout({ fs, dir, ref: CUSTOM_BRANCH });
16
+ }
17
+ async hasCustomBranch(dirPath) {
18
+ const dir = dirPath.toString();
19
+ const branches = await git.listBranches({ fs, dir });
20
+ return branches.includes(CUSTOM_BRANCH);
21
+ }
22
+ getMergeFiles(dirPath) {
23
+ const gitDir = dirPath.join(".git");
24
+ const mergeFiles = ["MERGE_HEAD", "MERGE_MODE", "MERGE_MSG"];
25
+ return mergeFiles.map((filename) => new FilePath(gitDir, new FileName(filename)));
26
+ }
27
+ async forceCheckoutMainBranch(dirPath) {
28
+ await git.checkout({ fs, dir: dirPath.toString(), ref: MAIN_BRANCH, force: true });
29
+ }
30
+ async getDirectoryWithUpdatedFiles(dirPath) {
31
+ const statusMatrix = await git.statusMatrix({ fs, dir: dirPath.toString() });
32
+ const relativeUncommitedFiles = statusMatrix
33
+ // include updated and resolved conflict files
34
+ .filter(([, headStatus, workdirStatus, stageStatus]) => headStatus !== workdirStatus || stageStatus === 3)
35
+ .map(([relativePath, workdirStatus, headStatus]) => {
36
+ if (headStatus === 0) {
37
+ return { fileName: new FileName(relativePath), description: "# Deleted" };
38
+ }
39
+ if (workdirStatus === 0) {
40
+ return { fileName: new FileName(relativePath), description: "# Added" };
41
+ }
42
+ return { fileName: new FileName(relativePath), description: "# Modified" };
43
+ });
44
+ return Directory.createFromRelativePaths(dirPath, relativeUncommitedFiles);
45
+ }
46
+ async stageAll(dir) {
47
+ const statusMatrix = await git.statusMatrix({ fs, dir: dir.toString() });
48
+ await Promise.all(statusMatrix
49
+ // include updated and resolved conflict files
50
+ .filter(([, headStatus, workdirStatus, stageStatus]) => headStatus !== workdirStatus || stageStatus === 3)
51
+ .map(([relativePath, , workdirStatus]) => {
52
+ if (workdirStatus === 0) {
53
+ return git.remove({ fs, dir: dir.toString(), filepath: relativePath });
54
+ }
55
+ return git.add({ fs, dir: dir.toString(), filepath: relativePath });
56
+ }));
57
+ }
58
+ async getDirectoryWithUnmergedFiles(dir) {
59
+ try {
60
+ await git.merge({ fs, dir: dir.toString(), ours: CUSTOM_BRANCH, theirs: MAIN_BRANCH, author: GIT_AUTHOR });
61
+ return new Directory(dir, []);
62
+ }
63
+ catch (error) {
64
+ if (error instanceof git.Errors.UnmergedPathsError) {
65
+ return Directory.createFromRelativePaths(dir, error.data.filepaths.map((filePath) => ({ fileName: new FileName(filePath), description: "# Conflicted file" })));
66
+ }
67
+ if (error instanceof git.Errors.MergeConflictError) {
68
+ return new Directory(dir, []);
69
+ }
70
+ throw error;
71
+ }
72
+ }
73
+ async commitResolvedConflicts(dir) {
74
+ await this.stageAll(dir);
75
+ const headOid = await git.resolveRef({ fs, dir: dir.toString(), ref: "HEAD" });
76
+ const mainOid = await git.resolveRef({ fs, dir: dir.toString(), ref: MAIN_BRANCH });
77
+ await git.commit({
78
+ fs,
79
+ dir: dir.toString(),
80
+ message: `Merge branch '${MAIN_BRANCH}' into ${CUSTOM_BRANCH}`,
81
+ author: GIT_AUTHOR,
82
+ parent: [headOid, mainOid],
83
+ });
84
+ }
85
+ async commitReviewedChanges(dir) {
86
+ await this.stageAll(dir);
87
+ await git.commit({ fs, dir: dir.toString(), message: "feat: add customizations to generated SDK", author: GIT_AUTHOR });
88
+ }
89
+ }
90
+ //# sourceMappingURL=git-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-service.js","sourceRoot":"","sources":["../../src/infrastructure/git-service.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,12 @@ import { UrlPath } from "../types/file/urlPath.js";
3
3
  import { DirectoryPath } from "../types/file/directoryPath.js";
4
4
  export declare class LauncherService {
5
5
  openFolderInIde(directoryPath: DirectoryPath, fileToOpen: FilePath): Promise<boolean>;
6
+ isIdeAvailable(): Promise<boolean>;
7
+ openFolderInIdeWithWait(directoryPath: DirectoryPath, filesToOpen: FilePath[]): Promise<boolean>;
6
8
  openInEditor(filePath: FilePath): Promise<void>;
7
9
  openFile(filePath: FilePath): Promise<void>;
10
+ openDirectory(directoryPath: DirectoryPath): Promise<void>;
11
+ openDirectoryInEditorOrFileExplorer(directoryPath: DirectoryPath, fileToOpen: FilePath): Promise<void>;
12
+ private openPath;
8
13
  openUrlInBrowser(url: UrlPath): Promise<import("child_process").ChildProcess> | undefined;
9
14
  }
@@ -8,7 +8,28 @@ export class LauncherService {
8
8
  if (isInCi)
9
9
  return false;
10
10
  try {
11
- await execa("code", [directoryPath.toString(), fileToOpen.toString()]);
11
+ const args = [directoryPath.toString(), fileToOpen.toString()];
12
+ await execa("code", args);
13
+ return true;
14
+ }
15
+ catch (_a) {
16
+ return false;
17
+ }
18
+ }
19
+ async isIdeAvailable() {
20
+ try {
21
+ const command = process.platform === "win32" ? "where" : "which";
22
+ await execa(command, ["code"]);
23
+ return true;
24
+ }
25
+ catch (_a) {
26
+ return false;
27
+ }
28
+ }
29
+ async openFolderInIdeWithWait(directoryPath, filesToOpen) {
30
+ try {
31
+ const args = [directoryPath.toString(), ...filesToOpen.map(f => f.toString())];
32
+ await execa("code", ["--new-window", "--wait", ...args]);
12
33
  return true;
13
34
  }
14
35
  catch (_a) {
@@ -32,7 +53,19 @@ export class LauncherService {
32
53
  }
33
54
  }
34
55
  async openFile(filePath) {
35
- const targetPath = filePath.toString();
56
+ await this.openPath(filePath.toString());
57
+ }
58
+ async openDirectory(directoryPath) {
59
+ await this.openPath(directoryPath.toString());
60
+ }
61
+ async openDirectoryInEditorOrFileExplorer(directoryPath, fileToOpen) {
62
+ if (isInCi)
63
+ return;
64
+ if (!(await this.openFolderInIde(directoryPath, fileToOpen))) {
65
+ await this.openDirectory(directoryPath);
66
+ }
67
+ }
68
+ async openPath(targetPath) {
36
69
  // Determine the command and args without using the shell
37
70
  let command;
38
71
  let args;
@@ -1 +1 @@
1
- {"version":3,"file":"launcher-service.js","sourceRoot":"","sources":["../../src/infrastructure/launcher-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B,MAAM,OAAO,eAAe;IACnB,KAAK,CAAC,eAAe,CAAC,aAA4B,EAAE,UAAoB;QAC7E,IAAI,MAAM;YAAE,OAAO,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,QAAkB;QAC1C,IAAI,MAAM;YAAE,OAAO;QACnB,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;QAAC,WAAM,CAAC;YACP,mCAAmC;YACnC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACjC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACpG,CAAC;iBAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACzC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,QAAkB;QACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAEvC,yDAAyD;QACzD,IAAI,OAAe,CAAC;QACpB,IAAI,IAAc,CAAC;QAEnB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;YACtB,KAAK,OAAO;gBACV,OAAO,GAAG,KAAK,CAAC;gBAChB,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,GAAG,MAAM,CAAC;gBACjB,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;gBACpB,MAAM;YACR;gBACE,OAAO,GAAG,UAAU,CAAC;gBACrB,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;gBACpB,MAAM;QACV,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACxE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,8BAA8B;QAC/C,CAAC;QAAC,WAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IAEM,gBAAgB,CAAC,GAAY;QAClC,IAAI,MAAM;YAAE,OAAO;QACnB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,WAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"launcher-service.js","sourceRoot":"","sources":["../../src/infrastructure/launcher-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { DirectoryPath } from '../types/file/directoryPath.js';
2
+ export declare function getDownloadsDirectory(prefix?: string): DirectoryPath;