@webiny/cli-core 6.3.0-beta.4 → 6.4.0-beta.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 (255) hide show
  1. package/Cli.js +12 -11
  2. package/Cli.js.map +1 -1
  3. package/abstractions/createAbstraction.js +3 -2
  4. package/abstractions/createAbstraction.js.map +1 -1
  5. package/abstractions/features/CliCommand.js +2 -4
  6. package/abstractions/features/CliCommand.js.map +1 -1
  7. package/abstractions/features/ErrorHandler.js +2 -1
  8. package/abstractions/features/ErrorHandler.js.map +1 -1
  9. package/abstractions/features/GlobalCliOption.js +2 -1
  10. package/abstractions/features/GlobalCliOption.js.map +1 -1
  11. package/abstractions/features/IsCi.js +2 -1
  12. package/abstractions/features/IsCi.js.map +1 -1
  13. package/abstractions/features/index.js +0 -2
  14. package/abstractions/features/types.js +0 -3
  15. package/abstractions/index.js +0 -2
  16. package/abstractions/services/ArgvParserService.js +2 -1
  17. package/abstractions/services/ArgvParserService.js.map +1 -1
  18. package/abstractions/services/CliParamsService.js +2 -1
  19. package/abstractions/services/CliParamsService.js.map +1 -1
  20. package/abstractions/services/CommandsRegistryService.js +2 -1
  21. package/abstractions/services/CommandsRegistryService.js.map +1 -1
  22. package/abstractions/services/GetArgvService.js +2 -1
  23. package/abstractions/services/GetArgvService.js.map +1 -1
  24. package/abstractions/services/GetCliRunnerService.js +2 -1
  25. package/abstractions/services/GetCliRunnerService.js.map +1 -1
  26. package/abstractions/services/GetIsCiService.js +2 -1
  27. package/abstractions/services/GetIsCiService.js.map +1 -1
  28. package/abstractions/services/GetProjectSdkService.js +2 -1
  29. package/abstractions/services/GetProjectSdkService.js.map +1 -1
  30. package/abstractions/services/GlobalOptionsRegistryService.js +2 -1
  31. package/abstractions/services/GlobalOptionsRegistryService.js.map +1 -1
  32. package/abstractions/services/LoggerService.js +2 -1
  33. package/abstractions/services/LoggerService.js.map +1 -1
  34. package/abstractions/services/RunCliRunnerService.js +2 -1
  35. package/abstractions/services/RunCliRunnerService.js.map +1 -1
  36. package/abstractions/services/StdioService.js +2 -1
  37. package/abstractions/services/StdioService.js.map +1 -1
  38. package/abstractions/services/UiService.js +2 -1
  39. package/abstractions/services/UiService.js.map +1 -1
  40. package/abstractions/services/index.js +0 -2
  41. package/createCliContainer.js +87 -113
  42. package/createCliContainer.js.map +1 -1
  43. package/decorators/CommandsWithGracefulErrorHandling.js +34 -32
  44. package/decorators/CommandsWithGracefulErrorHandling.js.map +1 -1
  45. package/decorators/DeployCommandWithTelemetry.js +72 -82
  46. package/decorators/DeployCommandWithTelemetry.js.map +1 -1
  47. package/decorators/index.js +0 -2
  48. package/exports/cli/command.js +0 -2
  49. package/exports/cli.js +0 -2
  50. package/extensions/CliCommand.js +15 -18
  51. package/extensions/CliCommand.js.map +1 -1
  52. package/extensions/CliCommandDecorator.js +15 -18
  53. package/extensions/CliCommandDecorator.js.map +1 -1
  54. package/extensions/index.js +5 -2
  55. package/extensions/index.js.map +1 -1
  56. package/features/AboutCommand.js +80 -86
  57. package/features/AboutCommand.js.map +1 -1
  58. package/features/BuildCommand/BuildCommand.js +46 -36
  59. package/features/BuildCommand/BuildCommand.js.map +1 -1
  60. package/features/BuildCommand/buildRunners/BaseBuildRunner.js +10 -13
  61. package/features/BuildCommand/buildRunners/BaseBuildRunner.js.map +1 -1
  62. package/features/BuildCommand/buildRunners/BuildRunner.js +18 -21
  63. package/features/BuildCommand/buildRunners/BuildRunner.js.map +1 -1
  64. package/features/BuildCommand/buildRunners/MultipleBuildsRunner.js +20 -19
  65. package/features/BuildCommand/buildRunners/MultipleBuildsRunner.js.map +1 -1
  66. package/features/BuildCommand/buildRunners/SingleBuildRunner.js +15 -14
  67. package/features/BuildCommand/buildRunners/SingleBuildRunner.js.map +1 -1
  68. package/features/BuildCommand/buildRunners/ZeroBuildsRunner.js +3 -4
  69. package/features/BuildCommand/buildRunners/ZeroBuildsRunner.js.map +1 -1
  70. package/features/BuildCommand/index.js +0 -2
  71. package/features/ConfigCommand.js +55 -56
  72. package/features/ConfigCommand.js.map +1 -1
  73. package/features/DeployCommand/DeployCommand.js +162 -156
  74. package/features/DeployCommand/DeployCommand.js.map +1 -1
  75. package/features/DeployCommand/deployOutputs/BaseDeployOutput.js +12 -17
  76. package/features/DeployCommand/deployOutputs/BaseDeployOutput.js.map +1 -1
  77. package/features/DeployCommand/deployOutputs/DeployOutput.js +16 -17
  78. package/features/DeployCommand/deployOutputs/DeployOutput.js.map +1 -1
  79. package/features/DeployCommand/deployOutputs/NoDeploymentLogsDeployOutput.js +89 -54
  80. package/features/DeployCommand/deployOutputs/NoDeploymentLogsDeployOutput.js.map +1 -1
  81. package/features/DeployCommand/deployOutputs/WithDeploymentLogsDeployOutput.js +24 -37
  82. package/features/DeployCommand/deployOutputs/WithDeploymentLogsDeployOutput.js.map +1 -1
  83. package/features/DeployCommand/index.js +0 -2
  84. package/features/DepsSync/BuildDependencyTree.js +16 -21
  85. package/features/DepsSync/BuildDependencyTree.js.map +1 -1
  86. package/features/DepsSync/DependencyTree.js +108 -126
  87. package/features/DepsSync/DependencyTree.js.map +1 -1
  88. package/features/DepsSync/ListAllPackageJsonFiles.js +19 -14
  89. package/features/DepsSync/ListAllPackageJsonFiles.js.map +1 -1
  90. package/features/DepsSync/ListAllPackages.js +7 -9
  91. package/features/DepsSync/ListAllPackages.js.map +1 -1
  92. package/features/DepsSync/commands/SyncDepsCommand.js +30 -24
  93. package/features/DepsSync/commands/SyncDepsCommand.js.map +1 -1
  94. package/features/DepsSync/commands/VerifyDepsCommand.js +69 -70
  95. package/features/DepsSync/commands/VerifyDepsCommand.js.map +1 -1
  96. package/features/DepsSync/createDependencyTree.js +25 -18
  97. package/features/DepsSync/createDependencyTree.js.map +1 -1
  98. package/features/DepsSync/createReferenceFile.js +21 -25
  99. package/features/DepsSync/createReferenceFile.js.map +1 -1
  100. package/features/DepsSync/index.js +0 -2
  101. package/features/DepsSync/paths.js +3 -6
  102. package/features/DepsSync/paths.js.map +1 -1
  103. package/features/DepsSync/types.js +7 -6
  104. package/features/DepsSync/types.js.map +1 -1
  105. package/features/DestroyCommand/DestroyCommand.js +71 -67
  106. package/features/DestroyCommand/DestroyCommand.js.map +1 -1
  107. package/features/DestroyCommand/index.js +0 -2
  108. package/features/DisableTelemetryCommand.js +28 -25
  109. package/features/DisableTelemetryCommand.js.map +1 -1
  110. package/features/EnableTelemetryCommand.js +28 -25
  111. package/features/EnableTelemetryCommand.js.map +1 -1
  112. package/features/ExtensionCommand/ExtensionCommand.js +60 -63
  113. package/features/ExtensionCommand/ExtensionCommand.js.map +1 -1
  114. package/features/ExtensionCommand/index.js +0 -2
  115. package/features/InfoCommand/InfoCommand.js +54 -56
  116. package/features/InfoCommand/InfoCommand.js.map +1 -1
  117. package/features/InfoCommand/PrintInfoForEnv.js +31 -47
  118. package/features/InfoCommand/PrintInfoForEnv.js.map +1 -1
  119. package/features/InfoCommand/index.js +0 -2
  120. package/features/IsCi/IsCi.js +14 -11
  121. package/features/IsCi/IsCi.js.map +1 -1
  122. package/features/IsCi/index.js +1 -3
  123. package/features/OpenCommand.js +48 -47
  124. package/features/OpenCommand.js.map +1 -1
  125. package/features/OutputCommand.js +56 -69
  126. package/features/OutputCommand.js.map +1 -1
  127. package/features/PulumiCommand/PulumiCommand.js +48 -41
  128. package/features/PulumiCommand/PulumiCommand.js.map +1 -1
  129. package/features/PulumiCommand/index.js +0 -2
  130. package/features/RefreshCommand/RefreshCommand.js +42 -36
  131. package/features/RefreshCommand/RefreshCommand.js.map +1 -1
  132. package/features/RefreshCommand/index.js +0 -2
  133. package/features/UpgradeCommand/UpgradeCommand.js +112 -101
  134. package/features/UpgradeCommand/UpgradeCommand.js.map +1 -1
  135. package/features/UpgradeCommand/UpgradeCommandHandler.js +90 -101
  136. package/features/UpgradeCommand/UpgradeCommandHandler.js.map +1 -1
  137. package/features/UpgradeCommand/abstraction.js +2 -1
  138. package/features/UpgradeCommand/abstraction.js.map +1 -1
  139. package/features/UpgradeCommand/feature.js +7 -6
  140. package/features/UpgradeCommand/feature.js.map +1 -1
  141. package/features/UpgradeCommand/index.js +0 -2
  142. package/features/WatchCommand/WatchCommand.js +131 -131
  143. package/features/WatchCommand/WatchCommand.js.map +1 -1
  144. package/features/WatchCommand/createPrefixer.js +11 -15
  145. package/features/WatchCommand/createPrefixer.js.map +1 -1
  146. package/features/WatchCommand/getRandomColorForString.js +86 -8
  147. package/features/WatchCommand/getRandomColorForString.js.map +1 -1
  148. package/features/WatchCommand/index.js +0 -2
  149. package/features/Wcp/LinkProjectCommand.js +119 -138
  150. package/features/Wcp/LinkProjectCommand.js.map +1 -1
  151. package/features/Wcp/LoginCommand.js +104 -118
  152. package/features/Wcp/LoginCommand.js.map +1 -1
  153. package/features/Wcp/LogoutCommand.js +29 -23
  154. package/features/Wcp/LogoutCommand.js.map +1 -1
  155. package/features/Wcp/WhoAmICommand.js +33 -29
  156. package/features/Wcp/WhoAmICommand.js.map +1 -1
  157. package/features/common/index.js +0 -2
  158. package/features/common/options.js +41 -50
  159. package/features/common/options.js.map +1 -1
  160. package/features/globalOptions/LogLevelGlobalOption.js +25 -16
  161. package/features/globalOptions/LogLevelGlobalOption.js.map +1 -1
  162. package/features/globalOptions/ShowLogsGlobalOption.js +16 -15
  163. package/features/globalOptions/ShowLogsGlobalOption.js.map +1 -1
  164. package/features/globalOptions/StackTraceGlobalOption.js +16 -15
  165. package/features/globalOptions/StackTraceGlobalOption.js.map +1 -1
  166. package/features/globalOptions/index.js +0 -2
  167. package/features/gracefulErrorHandlers/DdbPutItemConditionalCheckFailedGracefulErrorHandler.js +17 -16
  168. package/features/gracefulErrorHandlers/DdbPutItemConditionalCheckFailedGracefulErrorHandler.js.map +1 -1
  169. package/features/gracefulErrorHandlers/MissingFilesInBuildGracefulErrorHandler.js +12 -18
  170. package/features/gracefulErrorHandlers/MissingFilesInBuildGracefulErrorHandler.js.map +1 -1
  171. package/features/gracefulErrorHandlers/PendingOperationsGracefulErrorHandler.js +19 -19
  172. package/features/gracefulErrorHandlers/PendingOperationsGracefulErrorHandler.js.map +1 -1
  173. package/features/gracefulErrorHandlers/index.js +0 -2
  174. package/features/index.js +0 -2
  175. package/features/utils/index.js +0 -2
  176. package/features/utils/measureDuration.js +7 -8
  177. package/features/utils/measureDuration.js.map +1 -1
  178. package/index.js +0 -2
  179. package/package.json +10 -10
  180. package/services/ArgvParserService/ArgvParserService.js +27 -33
  181. package/services/ArgvParserService/ArgvParserService.js.map +1 -1
  182. package/services/ArgvParserService/index.js +0 -2
  183. package/services/CliParamsService/CliParamsService.js +18 -15
  184. package/services/CliParamsService/CliParamsService.js.map +1 -1
  185. package/services/CliParamsService/index.js +0 -2
  186. package/services/CommandsRegistryService/CommandsRegistryService.js +19 -13
  187. package/services/CommandsRegistryService/CommandsRegistryService.js.map +1 -1
  188. package/services/CommandsRegistryService/index.js +0 -2
  189. package/services/GetArgvService/GetArgvService.js +14 -11
  190. package/services/GetArgvService/GetArgvService.js.map +1 -1
  191. package/services/GetArgvService/index.js +0 -2
  192. package/services/GetCliRunnerService/GetCliRunnerService.js +119 -155
  193. package/services/GetCliRunnerService/GetCliRunnerService.js.map +1 -1
  194. package/services/GetCliRunnerService/index.js +0 -2
  195. package/services/GetIsCiService/GetIsCiService.js +9 -8
  196. package/services/GetIsCiService/GetIsCiService.js.map +1 -1
  197. package/services/GetIsCiService/index.js +1 -3
  198. package/services/GetProjectSdkService/GetProjectSdkService.js +25 -24
  199. package/services/GetProjectSdkService/GetProjectSdkService.js.map +1 -1
  200. package/services/GetProjectSdkService/index.js +0 -2
  201. package/services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.js +19 -13
  202. package/services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.js.map +1 -1
  203. package/services/GlobalOptionsRegistryService/index.js +0 -2
  204. package/services/LoggerService/LoggerService.js +75 -87
  205. package/services/LoggerService/LoggerService.js.map +1 -1
  206. package/services/LoggerService/index.js +0 -2
  207. package/services/RunCliRunnerService/RunCliRunnerService.js +15 -13
  208. package/services/RunCliRunnerService/RunCliRunnerService.js.map +1 -1
  209. package/services/RunCliRunnerService/index.js +0 -2
  210. package/services/StdioService/StdioService.js +15 -14
  211. package/services/StdioService/StdioService.js.map +1 -1
  212. package/services/StdioService/index.js +0 -2
  213. package/services/UiService/UiService.js +55 -58
  214. package/services/UiService/UiService.js.map +1 -1
  215. package/services/UiService/index.js +0 -2
  216. package/services/index.js +0 -2
  217. package/utils/ManuallyReportedError.js +7 -6
  218. package/utils/ManuallyReportedError.js.map +1 -1
  219. package/abstractions/features/index.js.map +0 -1
  220. package/abstractions/features/types.js.map +0 -1
  221. package/abstractions/index.js.map +0 -1
  222. package/abstractions/services/index.js.map +0 -1
  223. package/decorators/index.js.map +0 -1
  224. package/exports/cli/command.js.map +0 -1
  225. package/exports/cli.js.map +0 -1
  226. package/features/BuildCommand/index.js.map +0 -1
  227. package/features/DeployCommand/index.js.map +0 -1
  228. package/features/DepsSync/index.js.map +0 -1
  229. package/features/DestroyCommand/index.js.map +0 -1
  230. package/features/ExtensionCommand/index.js.map +0 -1
  231. package/features/InfoCommand/index.js.map +0 -1
  232. package/features/IsCi/index.js.map +0 -1
  233. package/features/PulumiCommand/index.js.map +0 -1
  234. package/features/RefreshCommand/index.js.map +0 -1
  235. package/features/UpgradeCommand/index.js.map +0 -1
  236. package/features/WatchCommand/index.js.map +0 -1
  237. package/features/common/index.js.map +0 -1
  238. package/features/globalOptions/index.js.map +0 -1
  239. package/features/gracefulErrorHandlers/index.js.map +0 -1
  240. package/features/index.js.map +0 -1
  241. package/features/utils/index.js.map +0 -1
  242. package/index.js.map +0 -1
  243. package/services/ArgvParserService/index.js.map +0 -1
  244. package/services/CliParamsService/index.js.map +0 -1
  245. package/services/CommandsRegistryService/index.js.map +0 -1
  246. package/services/GetArgvService/index.js.map +0 -1
  247. package/services/GetCliRunnerService/index.js.map +0 -1
  248. package/services/GetIsCiService/index.js.map +0 -1
  249. package/services/GetProjectSdkService/index.js.map +0 -1
  250. package/services/GlobalOptionsRegistryService/index.js.map +0 -1
  251. package/services/LoggerService/index.js.map +0 -1
  252. package/services/RunCliRunnerService/index.js.map +0 -1
  253. package/services/StdioService/index.js.map +0 -1
  254. package/services/UiService/index.js.map +0 -1
  255. package/services/index.js.map +0 -1
@@ -2,111 +2,122 @@ import { CliCommandFactory, UiService } from "../../abstractions/index.js";
2
2
  import { UpgradeCommandHandler } from "./abstraction.js";
3
3
  import semver from "semver";
4
4
  class UpgradeCommandImpl {
5
- constructor(ui, upgradeCommandHandler) {
6
- this.ui = ui;
7
- this.upgradeCommandHandler = upgradeCommandHandler;
8
- }
9
- async execute() {
10
- return {
11
- name: "upgrade",
12
- description: "Upgrade Webiny packages and dependencies to the latest or selected version.",
13
- examples: ["upgrade", "upgrade 6.2.0", "upgrade 0.0.0-unstable.abc --disable-semver"],
14
- params: [{
15
- name: "target",
16
- description: "Target version to upgrade to. Can be a specific version (e.g. 6.2.0) or 'latest' to upgrade to the latest version.",
17
- type: "string",
18
- default: "latest",
19
- required: false
20
- }],
21
- options: [{
22
- name: "force",
23
- description: "Force an upgrade for a version, even if it was ran before.",
24
- type: "boolean",
25
- default: false
26
- }, {
27
- name: "skip-checks",
28
- description: "Do not perform CLI version and Git tree checks.",
29
- type: "boolean",
30
- default: false
31
- }, {
32
- name: "log-level",
33
- default: "debug",
34
- description: `Set log level for the upgrade process executed by npx. Possible values are "debug", "info", "warning", and "error".`,
35
- type: "string"
36
- }, {
37
- name: "show-logs",
38
- default: false,
39
- description: `Show logs from the upgrade process executed by npx.`,
40
- type: "boolean"
41
- }, {
42
- name: "show-stack-trace",
43
- default: false,
44
- description: `Show stack trace if the upgrade process executed by npx fails.`,
45
- type: "boolean"
46
- }, {
47
- name: "registry",
48
- type: "string",
49
- default: "",
50
- description: "registry URL"
51
- }, {
52
- name: "package-manager",
53
- type: "string",
54
- default: "",
55
- description: "Package manager to use: yarn, pnpm, or npm (auto-detected from lock file if omitted)"
56
- }, {
57
- name: "skip-dependency-guard",
58
- default: false,
59
- description: `Skip the dependency guard that checks for incompatible dependencies before performing the upgrade.`,
60
- type: "boolean"
61
- }, {
62
- name: "install-version",
63
- type: "string",
64
- default: "",
65
- description: "Install a specific version of Webiny, no matter the version upgrade script is running for. Eg. upgrade script is for 6.5.0 but you want to install 6.5.0-rc.0"
66
- }],
67
- handler: async params => {
68
- /**
69
- * We assign only what we want so that we don't accidentally pass some parameters that are not relevant to the handler.
70
- */
71
- const version = this.getVersion(params);
72
- return this.upgradeCommandHandler.handle({
73
- force: params.force || false,
74
- logLevel: params.logLevel || "info",
75
- showLogs: params.showLogs || false,
76
- showStackTrace: params.showStackTrace || false,
77
- skipChecks: params.skipChecks || false,
78
- debug: true,
79
- packageManager: params.packageManager || undefined,
80
- registry: params.registry || undefined,
81
- installVersion: params.installVersion || undefined,
82
- skipDependencyGuard: params.skipDependencyGuard || false,
83
- version
84
- });
85
- }
86
- };
87
- }
88
- getVersion(params) {
89
- const version = semver.valid(params._[1]) ? params._[1] : params.target;
90
- if (!version || version === "latest") {
91
- return "latest";
5
+ constructor(ui, upgradeCommandHandler){
6
+ this.ui = ui;
7
+ this.upgradeCommandHandler = upgradeCommandHandler;
92
8
  }
93
- if (params.disableSemver) {
94
- return version;
9
+ async execute() {
10
+ return {
11
+ name: "upgrade",
12
+ description: "Upgrade Webiny packages and dependencies to the latest or selected version.",
13
+ examples: [
14
+ "upgrade",
15
+ "upgrade 6.2.0",
16
+ "upgrade 0.0.0-unstable.abc --disable-semver"
17
+ ],
18
+ params: [
19
+ {
20
+ name: "target",
21
+ description: "Target version to upgrade to. Can be a specific version (e.g. 6.2.0) or 'latest' to upgrade to the latest version.",
22
+ type: "string",
23
+ default: "latest",
24
+ required: false
25
+ }
26
+ ],
27
+ options: [
28
+ {
29
+ name: "force",
30
+ description: "Force an upgrade for a version, even if it was ran before.",
31
+ type: "boolean",
32
+ default: false
33
+ },
34
+ {
35
+ name: "skip-checks",
36
+ description: "Do not perform CLI version and Git tree checks.",
37
+ type: "boolean",
38
+ default: false
39
+ },
40
+ {
41
+ name: "log-level",
42
+ default: "debug",
43
+ description: 'Set log level for the upgrade process executed by npx. Possible values are "debug", "info", "warning", and "error".',
44
+ type: "string"
45
+ },
46
+ {
47
+ name: "show-logs",
48
+ default: false,
49
+ description: "Show logs from the upgrade process executed by npx.",
50
+ type: "boolean"
51
+ },
52
+ {
53
+ name: "show-stack-trace",
54
+ default: false,
55
+ description: "Show stack trace if the upgrade process executed by npx fails.",
56
+ type: "boolean"
57
+ },
58
+ {
59
+ name: "registry",
60
+ type: "string",
61
+ default: "",
62
+ description: "registry URL"
63
+ },
64
+ {
65
+ name: "package-manager",
66
+ type: "string",
67
+ default: "",
68
+ description: "Package manager to use: yarn, pnpm, or npm (auto-detected from lock file if omitted)"
69
+ },
70
+ {
71
+ name: "skip-dependency-guard",
72
+ default: false,
73
+ description: "Skip the dependency guard that checks for incompatible dependencies before performing the upgrade.",
74
+ type: "boolean"
75
+ },
76
+ {
77
+ name: "install-version",
78
+ type: "string",
79
+ default: "",
80
+ description: "Install a specific version of Webiny, no matter the version upgrade script is running for. Eg. upgrade script is for 6.5.0 but you want to install 6.5.0-rc.0"
81
+ }
82
+ ],
83
+ handler: async (params)=>{
84
+ const version = this.getVersion(params);
85
+ return this.upgradeCommandHandler.handle({
86
+ force: params.force || false,
87
+ logLevel: params.logLevel || "info",
88
+ showLogs: params.showLogs || false,
89
+ showStackTrace: params.showStackTrace || false,
90
+ skipChecks: params.skipChecks || false,
91
+ debug: true,
92
+ packageManager: params.packageManager || void 0,
93
+ registry: params.registry || void 0,
94
+ installVersion: params.installVersion || void 0,
95
+ skipDependencyGuard: params.skipDependencyGuard || false,
96
+ version
97
+ });
98
+ }
99
+ };
95
100
  }
96
- try {
97
- const parsed = semver.parse(version);
98
- if (!parsed) {
99
- throw new Error();
100
- }
101
- return parsed.format();
102
- } catch (ex) {
103
- throw new Error(`Invalid version provided: "${version}". Use --disable-semver to allow non-semver versions: ${ex.message}`);
101
+ getVersion(params) {
102
+ const version = semver.valid(params._[1]) ? params._[1] : params.target;
103
+ if (!version || "latest" === version) return "latest";
104
+ if (params.disableSemver) return version;
105
+ try {
106
+ const parsed = semver.parse(version);
107
+ if (!parsed) throw new Error();
108
+ return parsed.format();
109
+ } catch (ex) {
110
+ throw new Error(`Invalid version provided: "${version}". Use --disable-semver to allow non-semver versions: ${ex.message}`);
111
+ }
104
112
  }
105
- }
106
113
  }
107
- export const UpgradeCommand = CliCommandFactory.createImplementation({
108
- implementation: UpgradeCommandImpl,
109
- dependencies: [UiService, UpgradeCommandHandler]
114
+ const UpgradeCommand = CliCommandFactory.createImplementation({
115
+ implementation: UpgradeCommandImpl,
116
+ dependencies: [
117
+ UiService,
118
+ UpgradeCommandHandler
119
+ ]
110
120
  });
121
+ export { UpgradeCommand };
111
122
 
112
123
  //# sourceMappingURL=UpgradeCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CliCommandFactory","UiService","UpgradeCommandHandler","semver","UpgradeCommandImpl","constructor","ui","upgradeCommandHandler","execute","name","description","examples","params","type","default","required","options","handler","version","getVersion","handle","force","logLevel","showLogs","showStackTrace","skipChecks","debug","packageManager","undefined","registry","installVersion","skipDependencyGuard","valid","_","target","disableSemver","parsed","parse","Error","format","ex","message","UpgradeCommand","createImplementation","implementation","dependencies"],"sources":["UpgradeCommand.ts"],"sourcesContent":["import { CliCommandFactory, UiService } from \"~/abstractions/index.js\";\nimport { UpgradeCommandHandler } from \"./abstraction.js\";\nimport semver from \"semver\";\n\ninterface UpgradeCommandParams {\n skipChecks?: boolean;\n disableSemver?: boolean;\n debug?: boolean;\n _: string[];\n force?: boolean;\n target?: string;\n logLevel?: string;\n showLogs?: boolean;\n showStackTrace?: boolean;\n version?: string;\n registry?: string;\n packageManager?: string;\n installVersion?: string;\n skipDependencyGuard?: boolean;\n}\n\nclass UpgradeCommandImpl implements CliCommandFactory.Interface<UpgradeCommandParams> {\n public constructor(\n private ui: UiService.Interface,\n private upgradeCommandHandler: UpgradeCommandHandler.Interface\n ) {}\n\n public async execute(): Promise<CliCommandFactory.CommandDefinition<UpgradeCommandParams>> {\n return {\n name: \"upgrade\",\n description:\n \"Upgrade Webiny packages and dependencies to the latest or selected version.\",\n examples: [\"upgrade\", \"upgrade 6.2.0\", \"upgrade 0.0.0-unstable.abc --disable-semver\"],\n params: [\n {\n name: \"target\",\n description:\n \"Target version to upgrade to. Can be a specific version (e.g. 6.2.0) or 'latest' to upgrade to the latest version.\",\n type: \"string\",\n default: \"latest\",\n required: false\n }\n ],\n options: [\n {\n name: \"force\",\n description: \"Force an upgrade for a version, even if it was ran before.\",\n type: \"boolean\",\n default: false\n },\n {\n name: \"skip-checks\",\n description: \"Do not perform CLI version and Git tree checks.\",\n type: \"boolean\",\n default: false\n },\n {\n name: \"log-level\",\n default: \"debug\",\n description: `Set log level for the upgrade process executed by npx. Possible values are \"debug\", \"info\", \"warning\", and \"error\".`,\n type: \"string\"\n },\n {\n name: \"show-logs\",\n default: false,\n description: `Show logs from the upgrade process executed by npx.`,\n type: \"boolean\"\n },\n {\n name: \"show-stack-trace\",\n default: false,\n description: `Show stack trace if the upgrade process executed by npx fails.`,\n type: \"boolean\"\n },\n {\n name: \"registry\",\n type: \"string\",\n default: \"\",\n description: \"registry URL\"\n },\n {\n name: \"package-manager\",\n type: \"string\",\n default: \"\",\n description:\n \"Package manager to use: yarn, pnpm, or npm (auto-detected from lock file if omitted)\"\n },\n {\n name: \"skip-dependency-guard\",\n default: false,\n description: `Skip the dependency guard that checks for incompatible dependencies before performing the upgrade.`,\n type: \"boolean\"\n },\n {\n name: \"install-version\",\n type: \"string\",\n default: \"\",\n description:\n \"Install a specific version of Webiny, no matter the version upgrade script is running for. Eg. upgrade script is for 6.5.0 but you want to install 6.5.0-rc.0\"\n }\n ],\n handler: async params => {\n /**\n * We assign only what we want so that we don't accidentally pass some parameters that are not relevant to the handler.\n */\n const version = this.getVersion(params);\n return this.upgradeCommandHandler.handle({\n force: params.force || false,\n logLevel: params.logLevel || \"info\",\n showLogs: params.showLogs || false,\n showStackTrace: params.showStackTrace || false,\n skipChecks: params.skipChecks || false,\n debug: true,\n packageManager: params.packageManager || undefined,\n registry: params.registry || undefined,\n installVersion: params.installVersion || undefined,\n skipDependencyGuard: params.skipDependencyGuard || false,\n version\n });\n }\n };\n }\n\n private getVersion(params: UpgradeCommandParams): UpgradeCommandHandler.Version {\n const version = semver.valid(params._[1]) ? params._[1] : params.target;\n if (!version || version === \"latest\") {\n return \"latest\";\n }\n if (params.disableSemver) {\n return version as UpgradeCommandHandler.Version;\n }\n\n try {\n const parsed = semver.parse(version);\n if (!parsed) {\n throw new Error();\n }\n return parsed.format() as UpgradeCommandHandler.Version;\n } catch (ex) {\n throw new Error(\n `Invalid version provided: \"${version}\". Use --disable-semver to allow non-semver versions: ${ex.message}`\n );\n }\n }\n}\n\nexport const UpgradeCommand = CliCommandFactory.createImplementation({\n implementation: UpgradeCommandImpl,\n dependencies: [UiService, UpgradeCommandHandler]\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"features/UpgradeCommand/UpgradeCommand.js","sources":["../../../src/features/UpgradeCommand/UpgradeCommand.ts"],"sourcesContent":["import { CliCommandFactory, UiService } from \"~/abstractions/index.js\";\nimport { UpgradeCommandHandler } from \"./abstraction.js\";\nimport semver from \"semver\";\n\ninterface UpgradeCommandParams {\n skipChecks?: boolean;\n disableSemver?: boolean;\n debug?: boolean;\n _: string[];\n force?: boolean;\n target?: string;\n logLevel?: string;\n showLogs?: boolean;\n showStackTrace?: boolean;\n version?: string;\n registry?: string;\n packageManager?: string;\n installVersion?: string;\n skipDependencyGuard?: boolean;\n}\n\nclass UpgradeCommandImpl implements CliCommandFactory.Interface<UpgradeCommandParams> {\n public constructor(\n private ui: UiService.Interface,\n private upgradeCommandHandler: UpgradeCommandHandler.Interface\n ) {}\n\n public async execute(): Promise<CliCommandFactory.CommandDefinition<UpgradeCommandParams>> {\n return {\n name: \"upgrade\",\n description:\n \"Upgrade Webiny packages and dependencies to the latest or selected version.\",\n examples: [\"upgrade\", \"upgrade 6.2.0\", \"upgrade 0.0.0-unstable.abc --disable-semver\"],\n params: [\n {\n name: \"target\",\n description:\n \"Target version to upgrade to. Can be a specific version (e.g. 6.2.0) or 'latest' to upgrade to the latest version.\",\n type: \"string\",\n default: \"latest\",\n required: false\n }\n ],\n options: [\n {\n name: \"force\",\n description: \"Force an upgrade for a version, even if it was ran before.\",\n type: \"boolean\",\n default: false\n },\n {\n name: \"skip-checks\",\n description: \"Do not perform CLI version and Git tree checks.\",\n type: \"boolean\",\n default: false\n },\n {\n name: \"log-level\",\n default: \"debug\",\n description: `Set log level for the upgrade process executed by npx. Possible values are \"debug\", \"info\", \"warning\", and \"error\".`,\n type: \"string\"\n },\n {\n name: \"show-logs\",\n default: false,\n description: `Show logs from the upgrade process executed by npx.`,\n type: \"boolean\"\n },\n {\n name: \"show-stack-trace\",\n default: false,\n description: `Show stack trace if the upgrade process executed by npx fails.`,\n type: \"boolean\"\n },\n {\n name: \"registry\",\n type: \"string\",\n default: \"\",\n description: \"registry URL\"\n },\n {\n name: \"package-manager\",\n type: \"string\",\n default: \"\",\n description:\n \"Package manager to use: yarn, pnpm, or npm (auto-detected from lock file if omitted)\"\n },\n {\n name: \"skip-dependency-guard\",\n default: false,\n description: `Skip the dependency guard that checks for incompatible dependencies before performing the upgrade.`,\n type: \"boolean\"\n },\n {\n name: \"install-version\",\n type: \"string\",\n default: \"\",\n description:\n \"Install a specific version of Webiny, no matter the version upgrade script is running for. Eg. upgrade script is for 6.5.0 but you want to install 6.5.0-rc.0\"\n }\n ],\n handler: async params => {\n /**\n * We assign only what we want so that we don't accidentally pass some parameters that are not relevant to the handler.\n */\n const version = this.getVersion(params);\n return this.upgradeCommandHandler.handle({\n force: params.force || false,\n logLevel: params.logLevel || \"info\",\n showLogs: params.showLogs || false,\n showStackTrace: params.showStackTrace || false,\n skipChecks: params.skipChecks || false,\n debug: true,\n packageManager: params.packageManager || undefined,\n registry: params.registry || undefined,\n installVersion: params.installVersion || undefined,\n skipDependencyGuard: params.skipDependencyGuard || false,\n version\n });\n }\n };\n }\n\n private getVersion(params: UpgradeCommandParams): UpgradeCommandHandler.Version {\n const version = semver.valid(params._[1]) ? params._[1] : params.target;\n if (!version || version === \"latest\") {\n return \"latest\";\n }\n if (params.disableSemver) {\n return version as UpgradeCommandHandler.Version;\n }\n\n try {\n const parsed = semver.parse(version);\n if (!parsed) {\n throw new Error();\n }\n return parsed.format() as UpgradeCommandHandler.Version;\n } catch (ex) {\n throw new Error(\n `Invalid version provided: \"${version}\". Use --disable-semver to allow non-semver versions: ${ex.message}`\n );\n }\n }\n}\n\nexport const UpgradeCommand = CliCommandFactory.createImplementation({\n implementation: UpgradeCommandImpl,\n dependencies: [UiService, UpgradeCommandHandler]\n});\n"],"names":["UpgradeCommandImpl","ui","upgradeCommandHandler","params","version","undefined","semver","parsed","Error","ex","UpgradeCommand","CliCommandFactory","UiService","UpgradeCommandHandler"],"mappings":";;;AAqBA,MAAMA;IACF,YACYC,EAAuB,EACvBC,qBAAsD,CAChE;aAFUD,EAAE,GAAFA;aACAC,qBAAqB,GAArBA;IACT;IAEH,MAAa,UAA8E;QACvF,OAAO;YACH,MAAM;YACN,aACI;YACJ,UAAU;gBAAC;gBAAW;gBAAiB;aAA8C;YACrF,QAAQ;gBACJ;oBACI,MAAM;oBACN,aACI;oBACJ,MAAM;oBACN,SAAS;oBACT,UAAU;gBACd;aACH;YACD,SAAS;gBACL;oBACI,MAAM;oBACN,aAAa;oBACb,MAAM;oBACN,SAAS;gBACb;gBACA;oBACI,MAAM;oBACN,aAAa;oBACb,MAAM;oBACN,SAAS;gBACb;gBACA;oBACI,MAAM;oBACN,SAAS;oBACT,aAAa;oBACb,MAAM;gBACV;gBACA;oBACI,MAAM;oBACN,SAAS;oBACT,aAAa;oBACb,MAAM;gBACV;gBACA;oBACI,MAAM;oBACN,SAAS;oBACT,aAAa;oBACb,MAAM;gBACV;gBACA;oBACI,MAAM;oBACN,MAAM;oBACN,SAAS;oBACT,aAAa;gBACjB;gBACA;oBACI,MAAM;oBACN,MAAM;oBACN,SAAS;oBACT,aACI;gBACR;gBACA;oBACI,MAAM;oBACN,SAAS;oBACT,aAAa;oBACb,MAAM;gBACV;gBACA;oBACI,MAAM;oBACN,MAAM;oBACN,SAAS;oBACT,aACI;gBACR;aACH;YACD,SAAS,OAAMC;gBAIX,MAAMC,UAAU,IAAI,CAAC,UAAU,CAACD;gBAChC,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;oBACrC,OAAOA,OAAO,KAAK,IAAI;oBACvB,UAAUA,OAAO,QAAQ,IAAI;oBAC7B,UAAUA,OAAO,QAAQ,IAAI;oBAC7B,gBAAgBA,OAAO,cAAc,IAAI;oBACzC,YAAYA,OAAO,UAAU,IAAI;oBACjC,OAAO;oBACP,gBAAgBA,OAAO,cAAc,IAAIE;oBACzC,UAAUF,OAAO,QAAQ,IAAIE;oBAC7B,gBAAgBF,OAAO,cAAc,IAAIE;oBACzC,qBAAqBF,OAAO,mBAAmB,IAAI;oBACnDC;gBACJ;YACJ;QACJ;IACJ;IAEQ,WAAWD,MAA4B,EAAiC;QAC5E,MAAMC,UAAUE,OAAO,KAAK,CAACH,OAAO,CAAC,CAAC,EAAE,IAAIA,OAAO,CAAC,CAAC,EAAE,GAAGA,OAAO,MAAM;QACvE,IAAI,CAACC,WAAWA,AAAY,aAAZA,SACZ,OAAO;QAEX,IAAID,OAAO,aAAa,EACpB,OAAOC;QAGX,IAAI;YACA,MAAMG,SAASD,OAAO,KAAK,CAACF;YAC5B,IAAI,CAACG,QACD,MAAM,IAAIC;YAEd,OAAOD,OAAO,MAAM;QACxB,EAAE,OAAOE,IAAI;YACT,MAAM,IAAID,MACN,CAAC,2BAA2B,EAAEJ,QAAQ,sDAAsD,EAAEK,GAAG,OAAO,EAAE;QAElH;IACJ;AACJ;AAEO,MAAMC,iBAAiBC,kBAAkB,oBAAoB,CAAC;IACjE,gBAAgBX;IAChB,cAAc;QAACY;QAAWC;KAAsB;AACpD"}
@@ -1,113 +1,102 @@
1
- import { UpgradeCommandHandler as UpgradeCommandHandlerAbstraction } from "./abstraction.js";
1
+ import { UpgradeCommandHandler } from "./abstraction.js";
2
2
  import chalk from "chalk";
3
3
  import execa from "execa";
4
4
  import { UiService } from "../../abstractions/index.js";
5
5
  const GITHUB_REPOSITORY_URL = "https://github.com/webiny/webiny-upgrades-v6";
6
- export class UpgradeCommandHandlerImpl {
7
- constructor(ui) {
8
- this.ui = ui;
9
- }
10
- async handle(params) {
11
- const {
12
- version,
13
- skipChecks,
14
- debug,
15
- logLevel,
16
- showLogs,
17
- showStackTrace,
18
- installVersion,
19
- force
20
- } = params;
21
- if (!skipChecks) {
22
- /**
23
- * Before doing any upgrading, there must not be any active changes in the current branch.
24
- */
25
- let gitStatus = "";
26
- try {
27
- const {
28
- stdout
29
- } = execa.sync("git", ["status", "--porcelain"]);
30
- gitStatus = stdout.trim();
31
- } catch {}
32
- if (gitStatus) {
33
- this.ui.error(chalk.red("This git repository has untracked files or uncommitted changes:") + "\n\n" + gitStatus.split("\n").map(line => {
34
- const matched = line.match(/ .*/g);
35
- if (!matched || !matched[0]) {
36
- return "";
37
- }
38
- return matched[0].trim();
39
- }).join("\n") + "\n\n" + chalk.red("Remove untracked files, stash or commit any changes, and try again."));
40
- process.exit(1);
41
- }
6
+ class UpgradeCommandHandlerImpl {
7
+ constructor(ui){
8
+ this.ui = ui;
42
9
  }
43
- const command = [GITHUB_REPOSITORY_URL, version || undefined, debug ? "--debug" : "", showLogs ? `--showLogs=${showLogs}` : "", showStackTrace ? `--showStackTrace=${showStackTrace}` : "", logLevel ? `--logLevel=${logLevel}` : "--logLevel=debug", installVersion ? `--installVersion=${installVersion}` : "", force ? "--force" : "", "--json"].filter(Boolean);
44
- const npx = execa("npx", command, {
45
- env: {
46
- // TODO determine if this actually works
47
- // @ts-expect-error
48
- FORCE_COLOR: true
49
- },
50
- stdin: process.stdin
51
- });
52
- npx.stdout.on("data", data => {
53
- const lines = data.toString().replace(/\n$/, "").split("\n");
54
- for (const line of lines) {
55
- if (!line || !line.trim()) {
56
- continue;
10
+ async handle(params) {
11
+ const { version, skipChecks, debug, logLevel, showLogs, showStackTrace, installVersion, force } = params;
12
+ if (!skipChecks) {
13
+ let gitStatus = "";
14
+ try {
15
+ const { stdout } = execa.sync("git", [
16
+ "status",
17
+ "--porcelain"
18
+ ]);
19
+ gitStatus = stdout.trim();
20
+ } catch {}
21
+ if (gitStatus) {
22
+ this.ui.error(chalk.red("This git repository has untracked files or uncommitted changes:") + "\n\n" + gitStatus.split("\n").map((line)=>{
23
+ const matched = line.match(/ .*/g);
24
+ if (!matched || !matched[0]) return "";
25
+ return matched[0].trim();
26
+ }).join("\n") + "\n\n" + chalk.red("Remove untracked files, stash or commit any changes, and try again."));
27
+ process.exit(1);
28
+ }
29
+ }
30
+ const command = [
31
+ GITHUB_REPOSITORY_URL,
32
+ version || void 0,
33
+ debug ? "--debug" : "",
34
+ showLogs ? `--showLogs=${showLogs}` : "",
35
+ showStackTrace ? `--showStackTrace=${showStackTrace}` : "",
36
+ logLevel ? `--logLevel=${logLevel}` : "--logLevel=debug",
37
+ installVersion ? `--installVersion=${installVersion}` : "",
38
+ force ? "--force" : "",
39
+ "--json"
40
+ ].filter(Boolean);
41
+ const npx = execa("npx", command, {
42
+ env: {
43
+ FORCE_COLOR: true
44
+ },
45
+ stdin: process.stdin
46
+ });
47
+ npx.stdout.on("data", (data)=>{
48
+ const lines = data.toString().replace(/\n$/, "").split("\n");
49
+ for (const line of lines)if (line && line.trim()) this.output(line);
50
+ });
51
+ npx.stderr.on("data", (data)=>{
52
+ this.ui.error(data.toString());
53
+ });
54
+ try {
55
+ await npx;
56
+ } catch (ex) {
57
+ this.ui.error(`Upgrade process failed: ${ex.message}`);
57
58
  }
58
- this.output(line);
59
- }
60
- });
61
- npx.stderr.on("data", data => {
62
- this.ui.error(data.toString());
63
- });
64
- try {
65
- await npx;
66
- } catch (ex) {
67
- this.ui.error(`Upgrade process failed: ${ex.message}`);
68
59
  }
69
- }
70
- output(line) {
71
- try {
72
- const json = JSON.parse(line);
73
- switch (json.type) {
74
- case "debug":
75
- this.ui.debug(json.message);
76
- if (!json.data?.stack) {
77
- return;
78
- }
79
- this.ui.debug(json.data?.stack);
80
- return;
81
- case "info":
82
- this.ui.info(json.message);
83
- return;
84
- case "success":
85
- case "done":
86
- this.ui.success(json.message);
87
- return;
88
- case "warning":
89
- case "warn":
90
- this.ui.warning(json.message);
91
- return;
92
- case "error":
93
- case "fatal":
94
- this.ui.error(json.message);
95
- if (!json.data?.stack) {
96
- return;
97
- }
98
- this.ui.debug(json.data?.stack);
99
- return;
100
- default:
101
- console.log(json);
102
- }
103
- } catch {
104
- console.log(line);
60
+ output(line) {
61
+ try {
62
+ const json = JSON.parse(line);
63
+ switch(json.type){
64
+ case "debug":
65
+ this.ui.debug(json.message);
66
+ if (!json.data?.stack) return;
67
+ this.ui.debug(json.data?.stack);
68
+ return;
69
+ case "info":
70
+ this.ui.info(json.message);
71
+ return;
72
+ case "success":
73
+ case "done":
74
+ this.ui.success(json.message);
75
+ return;
76
+ case "warning":
77
+ case "warn":
78
+ this.ui.warning(json.message);
79
+ return;
80
+ case "error":
81
+ case "fatal":
82
+ this.ui.error(json.message);
83
+ if (!json.data?.stack) return;
84
+ this.ui.debug(json.data?.stack);
85
+ return;
86
+ default:
87
+ console.log(json);
88
+ }
89
+ } catch {
90
+ console.log(line);
91
+ }
105
92
  }
106
- }
107
93
  }
108
- export const UpgradeCommandHandler = UpgradeCommandHandlerAbstraction.createImplementation({
109
- implementation: UpgradeCommandHandlerImpl,
110
- dependencies: [UiService]
94
+ const UpgradeCommandHandler_UpgradeCommandHandler = UpgradeCommandHandler.createImplementation({
95
+ implementation: UpgradeCommandHandlerImpl,
96
+ dependencies: [
97
+ UiService
98
+ ]
111
99
  });
100
+ export { UpgradeCommandHandlerImpl, UpgradeCommandHandler_UpgradeCommandHandler as UpgradeCommandHandler };
112
101
 
113
102
  //# sourceMappingURL=UpgradeCommandHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["UpgradeCommandHandler","UpgradeCommandHandlerAbstraction","chalk","execa","UiService","GITHUB_REPOSITORY_URL","UpgradeCommandHandlerImpl","constructor","ui","handle","params","version","skipChecks","debug","logLevel","showLogs","showStackTrace","installVersion","force","gitStatus","stdout","sync","trim","error","red","split","map","line","matched","match","join","process","exit","command","undefined","filter","Boolean","npx","env","FORCE_COLOR","stdin","on","data","lines","toString","replace","output","stderr","ex","message","json","JSON","parse","type","stack","info","success","warning","console","log","createImplementation","implementation","dependencies"],"sources":["UpgradeCommandHandler.ts"],"sourcesContent":["import { UpgradeCommandHandler as UpgradeCommandHandlerAbstraction } from \"./abstraction.js\";\nimport chalk from \"chalk\";\nimport execa from \"execa\";\nimport { UiService } from \"~/abstractions/index.js\";\n\nconst GITHUB_REPOSITORY_URL = \"https://github.com/webiny/webiny-upgrades-v6\";\n\ntype LogType = \"debug\" | \"success\" | \"warning\" | \"warn\" | \"error\" | \"fatal\" | \"done\" | \"info\";\n\ninterface IUpgradeLine {\n type: LogType;\n message: string;\n data?: {\n stack?: string;\n [key: string]: any;\n };\n}\n\nexport class UpgradeCommandHandlerImpl implements UpgradeCommandHandlerAbstraction.Interface {\n public constructor(private ui: UiService.Interface) {}\n\n public async handle(params: UpgradeCommandHandlerAbstraction.Params): Promise<void> {\n const {\n version,\n skipChecks,\n debug,\n logLevel,\n showLogs,\n showStackTrace,\n installVersion,\n force\n } = params;\n\n if (!skipChecks) {\n /**\n * Before doing any upgrading, there must not be any active changes in the current branch.\n */\n let gitStatus = \"\";\n try {\n const { stdout } = execa.sync(\"git\", [\"status\", \"--porcelain\"]);\n gitStatus = stdout.trim();\n } catch {}\n\n if (gitStatus) {\n this.ui.error(\n chalk.red(\"This git repository has untracked files or uncommitted changes:\") +\n \"\\n\\n\" +\n gitStatus\n .split(\"\\n\")\n .map(line => {\n const matched = line.match(/ .*/g);\n if (!matched || !matched[0]) {\n return \"\";\n }\n return matched[0].trim();\n })\n .join(\"\\n\") +\n \"\\n\\n\" +\n chalk.red(\n \"Remove untracked files, stash or commit any changes, and try again.\"\n )\n );\n process.exit(1);\n }\n }\n\n const command = [\n GITHUB_REPOSITORY_URL,\n version || undefined,\n debug ? \"--debug\" : \"\",\n showLogs ? `--showLogs=${showLogs}` : \"\",\n showStackTrace ? `--showStackTrace=${showStackTrace}` : \"\",\n logLevel ? `--logLevel=${logLevel}` : \"--logLevel=debug\",\n installVersion ? `--installVersion=${installVersion}` : \"\",\n force ? \"--force\" : \"\",\n \"--json\"\n ].filter(Boolean);\n\n const npx = execa(\"npx\", command, {\n env: {\n // TODO determine if this actually works\n // @ts-expect-error\n FORCE_COLOR: true\n },\n stdin: process.stdin\n });\n\n npx.stdout!.on(\"data\", data => {\n const lines = data.toString().replace(/\\n$/, \"\").split(\"\\n\") as string[];\n for (const line of lines) {\n if (!line || !line.trim()) {\n continue;\n }\n this.output(line);\n }\n });\n\n npx.stderr!.on(\"data\", data => {\n this.ui.error(data.toString());\n });\n\n try {\n await npx;\n } catch (ex) {\n this.ui.error(`Upgrade process failed: ${ex.message}`);\n }\n }\n\n private output(line: string): void {\n try {\n const json = JSON.parse(line) as IUpgradeLine;\n switch (json.type) {\n case \"debug\":\n this.ui.debug(json.message);\n if (!json.data?.stack) {\n return;\n }\n this.ui.debug(json.data?.stack);\n return;\n case \"info\":\n this.ui.info(json.message);\n return;\n case \"success\":\n case \"done\":\n this.ui.success(json.message);\n return;\n case \"warning\":\n case \"warn\":\n this.ui.warning(json.message);\n return;\n case \"error\":\n case \"fatal\":\n this.ui.error(json.message);\n if (!json.data?.stack) {\n return;\n }\n this.ui.debug(json.data?.stack);\n return;\n default:\n console.log(json);\n }\n } catch {\n console.log(line);\n }\n }\n}\n\nexport const UpgradeCommandHandler = UpgradeCommandHandlerAbstraction.createImplementation({\n implementation: UpgradeCommandHandlerImpl,\n dependencies: [UiService]\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"features/UpgradeCommand/UpgradeCommandHandler.js","sources":["../../../src/features/UpgradeCommand/UpgradeCommandHandler.ts"],"sourcesContent":["import { UpgradeCommandHandler as UpgradeCommandHandlerAbstraction } from \"./abstraction.js\";\nimport chalk from \"chalk\";\nimport execa from \"execa\";\nimport { UiService } from \"~/abstractions/index.js\";\n\nconst GITHUB_REPOSITORY_URL = \"https://github.com/webiny/webiny-upgrades-v6\";\n\ntype LogType = \"debug\" | \"success\" | \"warning\" | \"warn\" | \"error\" | \"fatal\" | \"done\" | \"info\";\n\ninterface IUpgradeLine {\n type: LogType;\n message: string;\n data?: {\n stack?: string;\n [key: string]: any;\n };\n}\n\nexport class UpgradeCommandHandlerImpl implements UpgradeCommandHandlerAbstraction.Interface {\n public constructor(private ui: UiService.Interface) {}\n\n public async handle(params: UpgradeCommandHandlerAbstraction.Params): Promise<void> {\n const {\n version,\n skipChecks,\n debug,\n logLevel,\n showLogs,\n showStackTrace,\n installVersion,\n force\n } = params;\n\n if (!skipChecks) {\n /**\n * Before doing any upgrading, there must not be any active changes in the current branch.\n */\n let gitStatus = \"\";\n try {\n const { stdout } = execa.sync(\"git\", [\"status\", \"--porcelain\"]);\n gitStatus = stdout.trim();\n } catch {}\n\n if (gitStatus) {\n this.ui.error(\n chalk.red(\"This git repository has untracked files or uncommitted changes:\") +\n \"\\n\\n\" +\n gitStatus\n .split(\"\\n\")\n .map(line => {\n const matched = line.match(/ .*/g);\n if (!matched || !matched[0]) {\n return \"\";\n }\n return matched[0].trim();\n })\n .join(\"\\n\") +\n \"\\n\\n\" +\n chalk.red(\n \"Remove untracked files, stash or commit any changes, and try again.\"\n )\n );\n process.exit(1);\n }\n }\n\n const command = [\n GITHUB_REPOSITORY_URL,\n version || undefined,\n debug ? \"--debug\" : \"\",\n showLogs ? `--showLogs=${showLogs}` : \"\",\n showStackTrace ? `--showStackTrace=${showStackTrace}` : \"\",\n logLevel ? `--logLevel=${logLevel}` : \"--logLevel=debug\",\n installVersion ? `--installVersion=${installVersion}` : \"\",\n force ? \"--force\" : \"\",\n \"--json\"\n ].filter(Boolean);\n\n const npx = execa(\"npx\", command, {\n env: {\n // TODO determine if this actually works\n // @ts-expect-error\n FORCE_COLOR: true\n },\n stdin: process.stdin\n });\n\n npx.stdout!.on(\"data\", data => {\n const lines = data.toString().replace(/\\n$/, \"\").split(\"\\n\") as string[];\n for (const line of lines) {\n if (!line || !line.trim()) {\n continue;\n }\n this.output(line);\n }\n });\n\n npx.stderr!.on(\"data\", data => {\n this.ui.error(data.toString());\n });\n\n try {\n await npx;\n } catch (ex) {\n this.ui.error(`Upgrade process failed: ${ex.message}`);\n }\n }\n\n private output(line: string): void {\n try {\n const json = JSON.parse(line) as IUpgradeLine;\n switch (json.type) {\n case \"debug\":\n this.ui.debug(json.message);\n if (!json.data?.stack) {\n return;\n }\n this.ui.debug(json.data?.stack);\n return;\n case \"info\":\n this.ui.info(json.message);\n return;\n case \"success\":\n case \"done\":\n this.ui.success(json.message);\n return;\n case \"warning\":\n case \"warn\":\n this.ui.warning(json.message);\n return;\n case \"error\":\n case \"fatal\":\n this.ui.error(json.message);\n if (!json.data?.stack) {\n return;\n }\n this.ui.debug(json.data?.stack);\n return;\n default:\n console.log(json);\n }\n } catch {\n console.log(line);\n }\n }\n}\n\nexport const UpgradeCommandHandler = UpgradeCommandHandlerAbstraction.createImplementation({\n implementation: UpgradeCommandHandlerImpl,\n dependencies: [UiService]\n});\n"],"names":["GITHUB_REPOSITORY_URL","UpgradeCommandHandlerImpl","ui","params","version","skipChecks","debug","logLevel","showLogs","showStackTrace","installVersion","force","gitStatus","stdout","execa","chalk","line","matched","process","command","undefined","Boolean","npx","data","lines","ex","json","JSON","console","UpgradeCommandHandler","UpgradeCommandHandlerAbstraction","UiService"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { createAbstraction } from "../../abstractions/createAbstraction.js";
2
- export const UpgradeCommandHandler = createAbstraction("Cli/Core/UpgradeCommandHandler");
2
+ const UpgradeCommandHandler = createAbstraction("Cli/Core/UpgradeCommandHandler");
3
+ export { UpgradeCommandHandler };
3
4
 
4
5
  //# sourceMappingURL=abstraction.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","UpgradeCommandHandler"],"sources":["abstraction.ts"],"sourcesContent":["import { createAbstraction } from \"~/abstractions/createAbstraction.js\";\n\nexport type UpgradeCommandPackageVersion = `${number}.${number}.${number}` | \"latest\";\n\nexport interface IUpgradeCommandHandlerHandleParams {\n force: boolean;\n showLogs: boolean;\n logLevel: string;\n showStackTrace: boolean;\n skipChecks: boolean;\n debug: boolean;\n version: UpgradeCommandPackageVersion;\n packageManager?: string;\n registry?: string;\n skipDependencyGuard?: boolean;\n installVersion?: string;\n}\n\nexport interface IUpgradeCommandHandler {\n handle(params: IUpgradeCommandHandlerHandleParams): Promise<void>;\n}\n\nexport const UpgradeCommandHandler = createAbstraction<IUpgradeCommandHandler>(\n \"Cli/Core/UpgradeCommandHandler\"\n);\n\nexport namespace UpgradeCommandHandler {\n export type Interface = IUpgradeCommandHandler;\n export type Params = IUpgradeCommandHandlerHandleParams;\n export type Version = UpgradeCommandPackageVersion;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB;AAsB1B,OAAO,MAAMC,qBAAqB,GAAGD,iBAAiB,CAClD,gCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/UpgradeCommand/abstraction.js","sources":["../../../src/features/UpgradeCommand/abstraction.ts"],"sourcesContent":["import { createAbstraction } from \"~/abstractions/createAbstraction.js\";\n\nexport type UpgradeCommandPackageVersion = `${number}.${number}.${number}` | \"latest\";\n\nexport interface IUpgradeCommandHandlerHandleParams {\n force: boolean;\n showLogs: boolean;\n logLevel: string;\n showStackTrace: boolean;\n skipChecks: boolean;\n debug: boolean;\n version: UpgradeCommandPackageVersion;\n packageManager?: string;\n registry?: string;\n skipDependencyGuard?: boolean;\n installVersion?: string;\n}\n\nexport interface IUpgradeCommandHandler {\n handle(params: IUpgradeCommandHandlerHandleParams): Promise<void>;\n}\n\nexport const UpgradeCommandHandler = createAbstraction<IUpgradeCommandHandler>(\n \"Cli/Core/UpgradeCommandHandler\"\n);\n\nexport namespace UpgradeCommandHandler {\n export type Interface = IUpgradeCommandHandler;\n export type Params = IUpgradeCommandHandlerHandleParams;\n export type Version = UpgradeCommandPackageVersion;\n}\n"],"names":["UpgradeCommandHandler","createAbstraction"],"mappings":";AAsBO,MAAMA,wBAAwBC,kBACjC"}
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { UpgradeCommandHandler } from "./UpgradeCommandHandler.js";
3
3
  import { UpgradeCommand } from "./UpgradeCommand.js";
4
- export const UpgradeCommandFeature = createFeature({
5
- name: "Command/Upgrade",
6
- register(container) {
7
- container.register(UpgradeCommand).inSingletonScope();
8
- container.register(UpgradeCommandHandler);
9
- }
4
+ const UpgradeCommandFeature = createFeature({
5
+ name: "Command/Upgrade",
6
+ register (container) {
7
+ container.register(UpgradeCommand).inSingletonScope();
8
+ container.register(UpgradeCommandHandler);
9
+ }
10
10
  });
11
+ export { UpgradeCommandFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","UpgradeCommandHandler","UpgradeCommand","UpgradeCommandFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpgradeCommandHandler } from \"./UpgradeCommandHandler.js\";\nimport { UpgradeCommand } from \"./UpgradeCommand.js\";\n\nexport const UpgradeCommandFeature = createFeature({\n name: \"Command/Upgrade\",\n register(container) {\n container.register(UpgradeCommand).inSingletonScope();\n container.register(UpgradeCommandHandler);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AAEvB,OAAO,MAAMC,qBAAqB,GAAGH,aAAa,CAAC;EAC/CI,IAAI,EAAE,iBAAiB;EACvBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,cAAc,CAAC,CAACK,gBAAgB,CAAC,CAAC;IACrDD,SAAS,CAACD,QAAQ,CAACJ,qBAAqB,CAAC;EAC7C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/UpgradeCommand/feature.js","sources":["../../../src/features/UpgradeCommand/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpgradeCommandHandler } from \"./UpgradeCommandHandler.js\";\nimport { UpgradeCommand } from \"./UpgradeCommand.js\";\n\nexport const UpgradeCommandFeature = createFeature({\n name: \"Command/Upgrade\",\n register(container) {\n container.register(UpgradeCommand).inSingletonScope();\n container.register(UpgradeCommandHandler);\n }\n});\n"],"names":["UpgradeCommandFeature","createFeature","container","UpgradeCommand","UpgradeCommandHandler"],"mappings":";;;AAIO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,gBAAgB,gBAAgB;QACnDD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export { UpgradeCommandFeature } from "./feature.js";
2
2
  export { UpgradeCommandHandler } from "./UpgradeCommandHandler.js";
3
-
4
- //# sourceMappingURL=index.js.map