@webiny/cli-core 6.3.0 → 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.
- package/Cli.js +12 -11
- package/Cli.js.map +1 -1
- package/abstractions/createAbstraction.js +3 -2
- package/abstractions/createAbstraction.js.map +1 -1
- package/abstractions/features/CliCommand.js +2 -4
- package/abstractions/features/CliCommand.js.map +1 -1
- package/abstractions/features/ErrorHandler.js +2 -1
- package/abstractions/features/ErrorHandler.js.map +1 -1
- package/abstractions/features/GlobalCliOption.js +2 -1
- package/abstractions/features/GlobalCliOption.js.map +1 -1
- package/abstractions/features/IsCi.js +2 -1
- package/abstractions/features/IsCi.js.map +1 -1
- package/abstractions/features/index.js +0 -2
- package/abstractions/features/types.js +0 -3
- package/abstractions/index.js +0 -2
- package/abstractions/services/ArgvParserService.js +2 -1
- package/abstractions/services/ArgvParserService.js.map +1 -1
- package/abstractions/services/CliParamsService.js +2 -1
- package/abstractions/services/CliParamsService.js.map +1 -1
- package/abstractions/services/CommandsRegistryService.js +2 -1
- package/abstractions/services/CommandsRegistryService.js.map +1 -1
- package/abstractions/services/GetArgvService.js +2 -1
- package/abstractions/services/GetArgvService.js.map +1 -1
- package/abstractions/services/GetCliRunnerService.js +2 -1
- package/abstractions/services/GetCliRunnerService.js.map +1 -1
- package/abstractions/services/GetIsCiService.js +2 -1
- package/abstractions/services/GetIsCiService.js.map +1 -1
- package/abstractions/services/GetProjectSdkService.js +2 -1
- package/abstractions/services/GetProjectSdkService.js.map +1 -1
- package/abstractions/services/GlobalOptionsRegistryService.js +2 -1
- package/abstractions/services/GlobalOptionsRegistryService.js.map +1 -1
- package/abstractions/services/LoggerService.js +2 -1
- package/abstractions/services/LoggerService.js.map +1 -1
- package/abstractions/services/RunCliRunnerService.js +2 -1
- package/abstractions/services/RunCliRunnerService.js.map +1 -1
- package/abstractions/services/StdioService.js +2 -1
- package/abstractions/services/StdioService.js.map +1 -1
- package/abstractions/services/UiService.js +2 -1
- package/abstractions/services/UiService.js.map +1 -1
- package/abstractions/services/index.js +0 -2
- package/createCliContainer.js +87 -113
- package/createCliContainer.js.map +1 -1
- package/decorators/CommandsWithGracefulErrorHandling.js +34 -32
- package/decorators/CommandsWithGracefulErrorHandling.js.map +1 -1
- package/decorators/DeployCommandWithTelemetry.js +72 -82
- package/decorators/DeployCommandWithTelemetry.js.map +1 -1
- package/decorators/index.js +0 -2
- package/exports/cli/command.js +0 -2
- package/exports/cli.js +0 -2
- package/extensions/CliCommand.js +15 -18
- package/extensions/CliCommand.js.map +1 -1
- package/extensions/CliCommandDecorator.js +15 -18
- package/extensions/CliCommandDecorator.js.map +1 -1
- package/extensions/index.js +5 -2
- package/extensions/index.js.map +1 -1
- package/features/AboutCommand.js +80 -86
- package/features/AboutCommand.js.map +1 -1
- package/features/BuildCommand/BuildCommand.js +46 -36
- package/features/BuildCommand/BuildCommand.js.map +1 -1
- package/features/BuildCommand/buildRunners/BaseBuildRunner.js +10 -13
- package/features/BuildCommand/buildRunners/BaseBuildRunner.js.map +1 -1
- package/features/BuildCommand/buildRunners/BuildRunner.js +18 -21
- package/features/BuildCommand/buildRunners/BuildRunner.js.map +1 -1
- package/features/BuildCommand/buildRunners/MultipleBuildsRunner.js +20 -19
- package/features/BuildCommand/buildRunners/MultipleBuildsRunner.js.map +1 -1
- package/features/BuildCommand/buildRunners/SingleBuildRunner.js +15 -14
- package/features/BuildCommand/buildRunners/SingleBuildRunner.js.map +1 -1
- package/features/BuildCommand/buildRunners/ZeroBuildsRunner.js +3 -4
- package/features/BuildCommand/buildRunners/ZeroBuildsRunner.js.map +1 -1
- package/features/BuildCommand/index.js +0 -2
- package/features/ConfigCommand.js +55 -56
- package/features/ConfigCommand.js.map +1 -1
- package/features/DeployCommand/DeployCommand.js +162 -156
- package/features/DeployCommand/DeployCommand.js.map +1 -1
- package/features/DeployCommand/deployOutputs/BaseDeployOutput.js +12 -17
- package/features/DeployCommand/deployOutputs/BaseDeployOutput.js.map +1 -1
- package/features/DeployCommand/deployOutputs/DeployOutput.js +16 -17
- package/features/DeployCommand/deployOutputs/DeployOutput.js.map +1 -1
- package/features/DeployCommand/deployOutputs/NoDeploymentLogsDeployOutput.js +89 -54
- package/features/DeployCommand/deployOutputs/NoDeploymentLogsDeployOutput.js.map +1 -1
- package/features/DeployCommand/deployOutputs/WithDeploymentLogsDeployOutput.js +24 -37
- package/features/DeployCommand/deployOutputs/WithDeploymentLogsDeployOutput.js.map +1 -1
- package/features/DeployCommand/index.js +0 -2
- package/features/DepsSync/BuildDependencyTree.js +16 -21
- package/features/DepsSync/BuildDependencyTree.js.map +1 -1
- package/features/DepsSync/DependencyTree.js +108 -126
- package/features/DepsSync/DependencyTree.js.map +1 -1
- package/features/DepsSync/ListAllPackageJsonFiles.js +19 -14
- package/features/DepsSync/ListAllPackageJsonFiles.js.map +1 -1
- package/features/DepsSync/ListAllPackages.js +7 -9
- package/features/DepsSync/ListAllPackages.js.map +1 -1
- package/features/DepsSync/commands/SyncDepsCommand.js +30 -24
- package/features/DepsSync/commands/SyncDepsCommand.js.map +1 -1
- package/features/DepsSync/commands/VerifyDepsCommand.js +69 -70
- package/features/DepsSync/commands/VerifyDepsCommand.js.map +1 -1
- package/features/DepsSync/createDependencyTree.js +25 -18
- package/features/DepsSync/createDependencyTree.js.map +1 -1
- package/features/DepsSync/createReferenceFile.js +21 -25
- package/features/DepsSync/createReferenceFile.js.map +1 -1
- package/features/DepsSync/index.js +0 -2
- package/features/DepsSync/paths.js +3 -6
- package/features/DepsSync/paths.js.map +1 -1
- package/features/DepsSync/types.js +7 -6
- package/features/DepsSync/types.js.map +1 -1
- package/features/DestroyCommand/DestroyCommand.js +71 -67
- package/features/DestroyCommand/DestroyCommand.js.map +1 -1
- package/features/DestroyCommand/index.js +0 -2
- package/features/DisableTelemetryCommand.js +28 -25
- package/features/DisableTelemetryCommand.js.map +1 -1
- package/features/EnableTelemetryCommand.js +28 -25
- package/features/EnableTelemetryCommand.js.map +1 -1
- package/features/ExtensionCommand/ExtensionCommand.js +60 -63
- package/features/ExtensionCommand/ExtensionCommand.js.map +1 -1
- package/features/ExtensionCommand/index.js +0 -2
- package/features/InfoCommand/InfoCommand.js +54 -56
- package/features/InfoCommand/InfoCommand.js.map +1 -1
- package/features/InfoCommand/PrintInfoForEnv.js +31 -47
- package/features/InfoCommand/PrintInfoForEnv.js.map +1 -1
- package/features/InfoCommand/index.js +0 -2
- package/features/IsCi/IsCi.js +14 -11
- package/features/IsCi/IsCi.js.map +1 -1
- package/features/IsCi/index.js +1 -3
- package/features/OpenCommand.js +48 -47
- package/features/OpenCommand.js.map +1 -1
- package/features/OutputCommand.js +56 -69
- package/features/OutputCommand.js.map +1 -1
- package/features/PulumiCommand/PulumiCommand.js +48 -41
- package/features/PulumiCommand/PulumiCommand.js.map +1 -1
- package/features/PulumiCommand/index.js +0 -2
- package/features/RefreshCommand/RefreshCommand.js +42 -36
- package/features/RefreshCommand/RefreshCommand.js.map +1 -1
- package/features/RefreshCommand/index.js +0 -2
- package/features/UpgradeCommand/UpgradeCommand.js +112 -101
- package/features/UpgradeCommand/UpgradeCommand.js.map +1 -1
- package/features/UpgradeCommand/UpgradeCommandHandler.js +90 -101
- package/features/UpgradeCommand/UpgradeCommandHandler.js.map +1 -1
- package/features/UpgradeCommand/abstraction.js +2 -1
- package/features/UpgradeCommand/abstraction.js.map +1 -1
- package/features/UpgradeCommand/feature.js +7 -6
- package/features/UpgradeCommand/feature.js.map +1 -1
- package/features/UpgradeCommand/index.js +0 -2
- package/features/WatchCommand/WatchCommand.js +131 -131
- package/features/WatchCommand/WatchCommand.js.map +1 -1
- package/features/WatchCommand/createPrefixer.js +11 -15
- package/features/WatchCommand/createPrefixer.js.map +1 -1
- package/features/WatchCommand/getRandomColorForString.js +86 -8
- package/features/WatchCommand/getRandomColorForString.js.map +1 -1
- package/features/WatchCommand/index.js +0 -2
- package/features/Wcp/LinkProjectCommand.js +119 -138
- package/features/Wcp/LinkProjectCommand.js.map +1 -1
- package/features/Wcp/LoginCommand.js +104 -118
- package/features/Wcp/LoginCommand.js.map +1 -1
- package/features/Wcp/LogoutCommand.js +29 -23
- package/features/Wcp/LogoutCommand.js.map +1 -1
- package/features/Wcp/WhoAmICommand.js +33 -29
- package/features/Wcp/WhoAmICommand.js.map +1 -1
- package/features/common/index.js +0 -2
- package/features/common/options.js +41 -50
- package/features/common/options.js.map +1 -1
- package/features/globalOptions/LogLevelGlobalOption.js +25 -16
- package/features/globalOptions/LogLevelGlobalOption.js.map +1 -1
- package/features/globalOptions/ShowLogsGlobalOption.js +16 -15
- package/features/globalOptions/ShowLogsGlobalOption.js.map +1 -1
- package/features/globalOptions/StackTraceGlobalOption.js +16 -15
- package/features/globalOptions/StackTraceGlobalOption.js.map +1 -1
- package/features/globalOptions/index.js +0 -2
- package/features/gracefulErrorHandlers/DdbPutItemConditionalCheckFailedGracefulErrorHandler.js +17 -16
- package/features/gracefulErrorHandlers/DdbPutItemConditionalCheckFailedGracefulErrorHandler.js.map +1 -1
- package/features/gracefulErrorHandlers/MissingFilesInBuildGracefulErrorHandler.js +12 -18
- package/features/gracefulErrorHandlers/MissingFilesInBuildGracefulErrorHandler.js.map +1 -1
- package/features/gracefulErrorHandlers/PendingOperationsGracefulErrorHandler.js +19 -19
- package/features/gracefulErrorHandlers/PendingOperationsGracefulErrorHandler.js.map +1 -1
- package/features/gracefulErrorHandlers/index.js +0 -2
- package/features/index.js +0 -2
- package/features/utils/index.js +0 -2
- package/features/utils/measureDuration.js +7 -8
- package/features/utils/measureDuration.js.map +1 -1
- package/index.js +0 -2
- package/package.json +10 -10
- package/services/ArgvParserService/ArgvParserService.js +27 -33
- package/services/ArgvParserService/ArgvParserService.js.map +1 -1
- package/services/ArgvParserService/index.js +0 -2
- package/services/CliParamsService/CliParamsService.js +18 -15
- package/services/CliParamsService/CliParamsService.js.map +1 -1
- package/services/CliParamsService/index.js +0 -2
- package/services/CommandsRegistryService/CommandsRegistryService.js +19 -13
- package/services/CommandsRegistryService/CommandsRegistryService.js.map +1 -1
- package/services/CommandsRegistryService/index.js +0 -2
- package/services/GetArgvService/GetArgvService.js +14 -11
- package/services/GetArgvService/GetArgvService.js.map +1 -1
- package/services/GetArgvService/index.js +0 -2
- package/services/GetCliRunnerService/GetCliRunnerService.js +119 -155
- package/services/GetCliRunnerService/GetCliRunnerService.js.map +1 -1
- package/services/GetCliRunnerService/index.js +0 -2
- package/services/GetIsCiService/GetIsCiService.js +9 -8
- package/services/GetIsCiService/GetIsCiService.js.map +1 -1
- package/services/GetIsCiService/index.js +1 -3
- package/services/GetProjectSdkService/GetProjectSdkService.js +25 -24
- package/services/GetProjectSdkService/GetProjectSdkService.js.map +1 -1
- package/services/GetProjectSdkService/index.js +0 -2
- package/services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.js +19 -13
- package/services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.js.map +1 -1
- package/services/GlobalOptionsRegistryService/index.js +0 -2
- package/services/LoggerService/LoggerService.js +75 -87
- package/services/LoggerService/LoggerService.js.map +1 -1
- package/services/LoggerService/index.js +0 -2
- package/services/RunCliRunnerService/RunCliRunnerService.js +15 -13
- package/services/RunCliRunnerService/RunCliRunnerService.js.map +1 -1
- package/services/RunCliRunnerService/index.js +0 -2
- package/services/StdioService/StdioService.js +15 -14
- package/services/StdioService/StdioService.js.map +1 -1
- package/services/StdioService/index.js +0 -2
- package/services/UiService/UiService.js +55 -58
- package/services/UiService/UiService.js.map +1 -1
- package/services/UiService/index.js +0 -2
- package/services/index.js +0 -2
- package/utils/ManuallyReportedError.js +7 -6
- package/utils/ManuallyReportedError.js.map +1 -1
- package/abstractions/features/index.js.map +0 -1
- package/abstractions/features/types.js.map +0 -1
- package/abstractions/index.js.map +0 -1
- package/abstractions/services/index.js.map +0 -1
- package/decorators/index.js.map +0 -1
- package/exports/cli/command.js.map +0 -1
- package/exports/cli.js.map +0 -1
- package/features/BuildCommand/index.js.map +0 -1
- package/features/DeployCommand/index.js.map +0 -1
- package/features/DepsSync/index.js.map +0 -1
- package/features/DestroyCommand/index.js.map +0 -1
- package/features/ExtensionCommand/index.js.map +0 -1
- package/features/InfoCommand/index.js.map +0 -1
- package/features/IsCi/index.js.map +0 -1
- package/features/PulumiCommand/index.js.map +0 -1
- package/features/RefreshCommand/index.js.map +0 -1
- package/features/UpgradeCommand/index.js.map +0 -1
- package/features/WatchCommand/index.js.map +0 -1
- package/features/common/index.js.map +0 -1
- package/features/globalOptions/index.js.map +0 -1
- package/features/gracefulErrorHandlers/index.js.map +0 -1
- package/features/index.js.map +0 -1
- package/features/utils/index.js.map +0 -1
- package/index.js.map +0 -1
- package/services/ArgvParserService/index.js.map +0 -1
- package/services/CliParamsService/index.js.map +0 -1
- package/services/CommandsRegistryService/index.js.map +0 -1
- package/services/GetArgvService/index.js.map +0 -1
- package/services/GetCliRunnerService/index.js.map +0 -1
- package/services/GetIsCiService/index.js.map +0 -1
- package/services/GetProjectSdkService/index.js.map +0 -1
- package/services/GlobalOptionsRegistryService/index.js.map +0 -1
- package/services/LoggerService/index.js.map +0 -1
- package/services/RunCliRunnerService/index.js.map +0 -1
- package/services/StdioService/index.js.map +0 -1
- package/services/UiService/index.js.map +0 -1
- package/services/index.js.map +0 -1
|
@@ -1,167 +1,131 @@
|
|
|
1
1
|
import { createImplementation } from "@webiny/di";
|
|
2
|
-
import { CommandsRegistryService, GetArgvService, GetCliRunnerService,
|
|
3
|
-
import
|
|
2
|
+
import { CommandsRegistryService, GetArgvService, GetCliRunnerService, GetProjectSdkService, GlobalOptionsRegistryService, UiService } from "../../abstractions/index.js";
|
|
3
|
+
import yargs_yargs from "yargs/yargs";
|
|
4
4
|
import chalk from "chalk";
|
|
5
5
|
import { GracefulError } from "@webiny/project";
|
|
6
6
|
import { ManuallyReportedError } from "../../utils/ManuallyReportedError.js";
|
|
7
|
-
const {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
this.uiService = uiService;
|
|
17
|
-
this.getProjectSdkService = getProjectSdkService;
|
|
18
|
-
this.getArgvService = getArgvService;
|
|
19
|
-
}
|
|
20
|
-
yargsRunner = null;
|
|
21
|
-
async execute() {
|
|
22
|
-
if (this.yargsRunner) {
|
|
23
|
-
return this.yargsRunner;
|
|
7
|
+
const { blue: blue, bgYellow: bgYellow, bold: bold } = chalk;
|
|
8
|
+
class DefaultGetCliRunnerService {
|
|
9
|
+
constructor(commandsRegistryService, globalOptionsRegistryService, uiService, getProjectSdkService, getArgvService){
|
|
10
|
+
this.commandsRegistryService = commandsRegistryService;
|
|
11
|
+
this.globalOptionsRegistryService = globalOptionsRegistryService;
|
|
12
|
+
this.uiService = uiService;
|
|
13
|
+
this.getProjectSdkService = getProjectSdkService;
|
|
14
|
+
this.getArgvService = getArgvService;
|
|
15
|
+
this.yargsRunner = null;
|
|
24
16
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
choices: config.choices,
|
|
42
|
-
global: true
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
yargsRunner.fail((invalidParamsMessage, error) => {
|
|
46
|
-
if (invalidParamsMessage) {
|
|
47
|
-
if (invalidParamsMessage.includes("Not enough non-option arguments")) {
|
|
48
|
-
ui.emptyLine();
|
|
49
|
-
ui.error("Command was not invoked as expected.");
|
|
50
|
-
ui.info(`Some non-optional arguments are missing. See the usage examples printed below.`);
|
|
51
|
-
ui.emptyLine();
|
|
52
|
-
yargsRunner.showHelp();
|
|
53
|
-
process.exit(1);
|
|
54
|
-
}
|
|
55
|
-
if (invalidParamsMessage.includes("Missing required argument")) {
|
|
56
|
-
const args = invalidParamsMessage.split(":")[1].split(",").map(v => v.trim());
|
|
57
|
-
ui.emptyLine();
|
|
58
|
-
ui.error("Command was not invoked as expected.");
|
|
59
|
-
ui.info(`Missing required argument(s): ${args.join(", ")}. See the usage examples printed below.`);
|
|
60
|
-
ui.emptyLine();
|
|
61
|
-
yargsRunner.showHelp();
|
|
62
|
-
process.exit(1);
|
|
17
|
+
async execute() {
|
|
18
|
+
if (this.yargsRunner) return this.yargsRunner;
|
|
19
|
+
const ui = this.uiService;
|
|
20
|
+
const projectSdk = await this.getProjectSdkService.execute();
|
|
21
|
+
const yargsRunner = yargs_yargs().usage("Usage: $0 <command> [options]").help(false).demandCommand(1).recommendCommands().scriptName("webiny").epilogue(`To find more information, docs and tutorials, see ${blue("https://www.webiny.com/docs")}.`).epilogue(`Want to contribute? ${blue("https://github.com/webiny/webiny-js")}.`);
|
|
22
|
+
const globalOptions = this.globalOptionsRegistryService.execute();
|
|
23
|
+
for (const globalOption of globalOptions){
|
|
24
|
+
const { name, config } = await globalOption.execute();
|
|
25
|
+
yargsRunner.option(name, {
|
|
26
|
+
type: config.type,
|
|
27
|
+
default: config.default,
|
|
28
|
+
desc: config.description,
|
|
29
|
+
alias: config.alias,
|
|
30
|
+
choices: config.choices,
|
|
31
|
+
global: true
|
|
32
|
+
});
|
|
63
33
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (paramVersionExists) {
|
|
106
|
-
ui.error(`The command "${name}" cannot have a parameter named "version" as it conflicts with the global --version option.`);
|
|
107
|
-
process.exit();
|
|
108
|
-
}
|
|
109
|
-
if (params.length > 0) {
|
|
110
|
-
yargsCommand += " " + params.map(param => {
|
|
111
|
-
const paramName = param.array ? `${param.name}..` : param.name;
|
|
112
|
-
return param.required ? `<${paramName}>` : `[${paramName}]`;
|
|
113
|
-
}).join(" ");
|
|
114
|
-
}
|
|
115
|
-
yargsRunner.command(yargsCommand, description, yargs => {
|
|
116
|
-
params.forEach(param => {
|
|
117
|
-
const {
|
|
118
|
-
name,
|
|
119
|
-
required,
|
|
120
|
-
validation,
|
|
121
|
-
array,
|
|
122
|
-
...rest
|
|
123
|
-
} = param;
|
|
124
|
-
const yargsParam = yargs.positional(name, {
|
|
125
|
-
...rest,
|
|
126
|
-
...(array && {
|
|
127
|
-
array: true
|
|
128
|
-
}),
|
|
129
|
-
demandOption: required
|
|
130
|
-
});
|
|
131
|
-
if (validation) {
|
|
132
|
-
yargsParam.check(validation);
|
|
133
|
-
}
|
|
34
|
+
yargsRunner.fail((invalidParamsMessage, error)=>{
|
|
35
|
+
if (invalidParamsMessage) {
|
|
36
|
+
if (invalidParamsMessage.includes("Not enough non-option arguments")) {
|
|
37
|
+
ui.emptyLine();
|
|
38
|
+
ui.error("Command was not invoked as expected.");
|
|
39
|
+
ui.info("Some non-optional arguments are missing. See the usage examples printed below.");
|
|
40
|
+
ui.emptyLine();
|
|
41
|
+
yargsRunner.showHelp();
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
if (invalidParamsMessage.includes("Missing required argument")) {
|
|
45
|
+
const args = invalidParamsMessage.split(":")[1].split(",").map((v)=>v.trim());
|
|
46
|
+
ui.emptyLine();
|
|
47
|
+
ui.error("Command was not invoked as expected.");
|
|
48
|
+
ui.info(`Missing required argument(s): ${args.join(", ")}. See the usage examples printed below.`);
|
|
49
|
+
ui.emptyLine();
|
|
50
|
+
yargsRunner.showHelp();
|
|
51
|
+
process.exit(1);
|
|
52
|
+
}
|
|
53
|
+
ui.emptyLine();
|
|
54
|
+
ui.error(invalidParamsMessage);
|
|
55
|
+
process.exit(1);
|
|
56
|
+
}
|
|
57
|
+
const logger = projectSdk.getLogger();
|
|
58
|
+
logger.error({
|
|
59
|
+
err: error
|
|
60
|
+
}, "CLI command execution failed.");
|
|
61
|
+
const realError = error.cause || error;
|
|
62
|
+
realError instanceof ManuallyReportedError || ui.error(realError.message);
|
|
63
|
+
const argv = this.getArgvService.execute();
|
|
64
|
+
if (argv.showStackTrace && realError.stack) {
|
|
65
|
+
ui.emptyLine();
|
|
66
|
+
ui.debug("Stack trace:");
|
|
67
|
+
ui.text(realError.stack);
|
|
68
|
+
}
|
|
69
|
+
if (error instanceof GracefulError) {
|
|
70
|
+
ui.emptyLine();
|
|
71
|
+
ui.text(bgYellow(bold("💡 How can I resolve this?")));
|
|
72
|
+
ui.text(error.message);
|
|
73
|
+
}
|
|
74
|
+
process.exit(1);
|
|
134
75
|
});
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
name,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
76
|
+
const commands = this.commandsRegistryService.execute();
|
|
77
|
+
for (const command of commands){
|
|
78
|
+
const { name, description, params = [], options = [], handler } = await command.execute();
|
|
79
|
+
let yargsCommand = name;
|
|
80
|
+
const paramVersionExists = params.some((p)=>"version" === p.name);
|
|
81
|
+
if (paramVersionExists) {
|
|
82
|
+
ui.error(`The command "${name}" cannot have a parameter named "version" as it conflicts with the global --version option.`);
|
|
83
|
+
process.exit();
|
|
84
|
+
}
|
|
85
|
+
if (params.length > 0) yargsCommand += " " + params.map((param)=>{
|
|
86
|
+
const paramName = param.array ? `${param.name}..` : param.name;
|
|
87
|
+
return param.required ? `<${paramName}>` : `[${paramName}]`;
|
|
88
|
+
}).join(" ");
|
|
89
|
+
yargsRunner.command(yargsCommand, description, (yargs)=>{
|
|
90
|
+
params.forEach((param)=>{
|
|
91
|
+
const { name, required, validation, array, ...rest } = param;
|
|
92
|
+
const yargsParam = yargs.positional(name, {
|
|
93
|
+
...rest,
|
|
94
|
+
...array && {
|
|
95
|
+
array: true
|
|
96
|
+
},
|
|
97
|
+
demandOption: required
|
|
98
|
+
});
|
|
99
|
+
if (validation) yargsParam.check(validation);
|
|
100
|
+
});
|
|
101
|
+
options.forEach((option)=>{
|
|
102
|
+
const { name, required, validation, ...rest } = option;
|
|
103
|
+
const yargsOption = yargs.option(name, {
|
|
104
|
+
...rest,
|
|
105
|
+
demandOption: required
|
|
106
|
+
});
|
|
107
|
+
if (option.group) yargsOption.group(option.name, option.group);
|
|
108
|
+
if (validation) yargsOption.check(validation);
|
|
109
|
+
});
|
|
110
|
+
}, handler);
|
|
111
|
+
}
|
|
112
|
+
yargsRunner.help(true);
|
|
113
|
+
yargsRunner.version(projectSdk.getProjectVersion());
|
|
114
|
+
this.yargsRunner = yargsRunner;
|
|
115
|
+
return this.yargsRunner;
|
|
154
116
|
}
|
|
155
|
-
yargsRunner.help(true);
|
|
156
|
-
yargsRunner.version(projectSdk.getProjectVersion());
|
|
157
|
-
this.yargsRunner = yargsRunner;
|
|
158
|
-
return this.yargsRunner;
|
|
159
|
-
}
|
|
160
117
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
118
|
+
const getCliRunnerService = createImplementation({
|
|
119
|
+
abstraction: GetCliRunnerService,
|
|
120
|
+
implementation: DefaultGetCliRunnerService,
|
|
121
|
+
dependencies: [
|
|
122
|
+
CommandsRegistryService,
|
|
123
|
+
GlobalOptionsRegistryService,
|
|
124
|
+
UiService,
|
|
125
|
+
GetProjectSdkService,
|
|
126
|
+
GetArgvService
|
|
127
|
+
]
|
|
165
128
|
});
|
|
129
|
+
export { DefaultGetCliRunnerService, getCliRunnerService };
|
|
166
130
|
|
|
167
131
|
//# sourceMappingURL=GetCliRunnerService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createImplementation","CommandsRegistryService","GetArgvService","GetCliRunnerService","GlobalOptionsRegistryService","GetProjectSdkService","UiService","yargs","chalk","GracefulError","ManuallyReportedError","blue","bgYellow","bold","DefaultGetCliRunnerService","constructor","commandsRegistryService","globalOptionsRegistryService","uiService","getProjectSdkService","getArgvService","yargsRunner","execute","ui","projectSdk","usage","help","demandCommand","recommendCommands","scriptName","epilogue","globalOptions","globalOption","name","config","option","type","default","desc","description","alias","choices","global","fail","invalidParamsMessage","error","includes","emptyLine","info","showHelp","process","exit","args","split","map","v","trim","join","logger","getLogger","err","realError","cause","message","argv","showStackTrace","stack","debug","text","commands","command","params","options","handler","yargsCommand","paramVersionExists","some","p","length","param","paramName","array","required","forEach","validation","rest","yargsParam","positional","demandOption","check","yargsOption","group","version","getProjectVersion","getCliRunnerService","abstraction","implementation","dependencies"],"sources":["GetCliRunnerService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport {\n CliCommandFactory,\n CommandsRegistryService,\n GetArgvService,\n GetCliRunnerService,\n GlobalOptionsRegistryService,\n GetProjectSdkService,\n UiService\n} from \"~/abstractions/index.js\";\nimport yargs from \"yargs/yargs\";\nimport chalk from \"chalk\";\nimport { Argv } from \"yargs\";\nimport { GracefulError } from \"@webiny/project\";\nimport { ManuallyReportedError } from \"~/utils/ManuallyReportedError.js\";\n\nconst { blue, bgYellow, bold } = chalk;\n\nexport class DefaultGetCliRunnerService implements GetCliRunnerService.Interface {\n constructor(\n private readonly commandsRegistryService: CommandsRegistryService.Interface,\n private readonly globalOptionsRegistryService: GlobalOptionsRegistryService.Interface,\n private readonly uiService: UiService.Interface,\n private readonly getProjectSdkService: GetProjectSdkService.Interface,\n private readonly getArgvService: GetArgvService.Interface\n ) {}\n\n private yargsRunner: Argv | null = null;\n\n async execute() {\n if (this.yargsRunner) {\n return this.yargsRunner;\n }\n\n const ui = this.uiService;\n const projectSdk = await this.getProjectSdkService.execute();\n\n const yargsRunner = yargs()\n .usage(\"Usage: $0 <command> [options]\")\n .help(false)\n .demandCommand(1)\n .recommendCommands()\n .scriptName(\"webiny\")\n .epilogue(\n `To find more information, docs and tutorials, see ${blue(\n \"https://www.webiny.com/docs\"\n )}.`\n )\n .epilogue(`Want to contribute? ${blue(\"https://github.com/webiny/webiny-js\")}.`);\n\n // Register global options.\n const globalOptions = this.globalOptionsRegistryService.execute();\n for (const globalOption of globalOptions) {\n const { name, config } = await globalOption.execute();\n yargsRunner.option(name, {\n type: config.type,\n default: config.default,\n desc: config.description,\n alias: config.alias,\n choices: config.choices,\n global: true\n });\n }\n\n yargsRunner.fail((invalidParamsMessage, error) => {\n if (invalidParamsMessage) {\n if (invalidParamsMessage.includes(\"Not enough non-option arguments\")) {\n ui.emptyLine();\n ui.error(\"Command was not invoked as expected.\");\n ui.info(\n `Some non-optional arguments are missing. See the usage examples printed below.`\n );\n ui.emptyLine();\n yargsRunner.showHelp();\n process.exit(1);\n }\n\n if (invalidParamsMessage.includes(\"Missing required argument\")) {\n const args = invalidParamsMessage\n .split(\":\")[1]\n .split(\",\")\n .map(v => v.trim());\n\n ui.emptyLine();\n ui.error(\"Command was not invoked as expected.\");\n ui.info(\n `Missing required argument(s): ${args.join(\n \", \"\n )}. See the usage examples printed below.`\n );\n ui.emptyLine();\n yargsRunner.showHelp();\n process.exit(1);\n }\n\n ui.emptyLine();\n ui.error(invalidParamsMessage);\n\n process.exit(1);\n }\n\n const logger = projectSdk.getLogger();\n logger.error({ err: error }, \"CLI command execution failed.\");\n\n const realError = (error.cause as Error) || error;\n\n if (realError instanceof ManuallyReportedError) {\n // Do nothing as the error reporting has already been\n // handled within the invoked CLI command.\n } else {\n ui.error(realError.message);\n }\n\n const argv = this.getArgvService.execute();\n if (argv.showStackTrace && realError.stack) {\n ui.emptyLine();\n ui.debug(\"Stack trace:\");\n ui.text(realError.stack);\n }\n\n if (error instanceof GracefulError) {\n ui.emptyLine();\n ui.text(bgYellow(bold(\"💡 How can I resolve this?\")));\n ui.text(error.message);\n }\n\n process.exit(1);\n });\n\n const commands = this.commandsRegistryService.execute();\n\n for (const command of commands) {\n const {\n name,\n description,\n params = [],\n options = [],\n handler\n } = await command.execute();\n\n let yargsCommand = name;\n const paramVersionExists = params.some(p => {\n return p.name === \"version\";\n });\n if (paramVersionExists) {\n ui.error(\n `The command \"${name}\" cannot have a parameter named \"version\" as it conflicts with the global --version option.`\n );\n process.exit();\n }\n\n if (params.length > 0) {\n yargsCommand +=\n \" \" +\n params\n .map(param => {\n const paramName = param.array ? `${param.name}..` : param.name;\n return param.required ? `<${paramName}>` : `[${paramName}]`;\n })\n .join(\" \");\n }\n\n yargsRunner.command(\n yargsCommand,\n description,\n yargs => {\n params.forEach((param: CliCommandFactory.ParamDefinition<unknown>) => {\n const { name, required, validation, array, ...rest } = param;\n\n const yargsParam = yargs.positional(name, {\n ...rest,\n ...(array && { array: true }),\n demandOption: required\n });\n\n if (validation) {\n yargsParam.check(validation);\n }\n });\n\n options.forEach((option: CliCommandFactory.OptionDefinition<unknown>) => {\n const { name, required, validation, ...rest } = option;\n\n const yargsOption = yargs.option(name, {\n ...rest,\n demandOption: required\n });\n\n if (option.group) {\n yargsOption.group(option.name, option.group);\n }\n\n if (validation) {\n yargsOption.check(validation);\n }\n });\n },\n handler\n );\n }\n\n yargsRunner.help(true);\n yargsRunner.version(projectSdk.getProjectVersion());\n this.yargsRunner = yargsRunner;\n return this.yargsRunner;\n }\n}\n\nexport const getCliRunnerService = createImplementation({\n abstraction: GetCliRunnerService,\n implementation: DefaultGetCliRunnerService,\n dependencies: [\n CommandsRegistryService,\n GlobalOptionsRegistryService,\n UiService,\n GetProjectSdkService,\n GetArgvService\n ]\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"services/GetCliRunnerService/GetCliRunnerService.js","sources":["../../../src/services/GetCliRunnerService/GetCliRunnerService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport {\n CliCommandFactory,\n CommandsRegistryService,\n GetArgvService,\n GetCliRunnerService,\n GlobalOptionsRegistryService,\n GetProjectSdkService,\n UiService\n} from \"~/abstractions/index.js\";\nimport yargs from \"yargs/yargs\";\nimport chalk from \"chalk\";\nimport { Argv } from \"yargs\";\nimport { GracefulError } from \"@webiny/project\";\nimport { ManuallyReportedError } from \"~/utils/ManuallyReportedError.js\";\n\nconst { blue, bgYellow, bold } = chalk;\n\nexport class DefaultGetCliRunnerService implements GetCliRunnerService.Interface {\n constructor(\n private readonly commandsRegistryService: CommandsRegistryService.Interface,\n private readonly globalOptionsRegistryService: GlobalOptionsRegistryService.Interface,\n private readonly uiService: UiService.Interface,\n private readonly getProjectSdkService: GetProjectSdkService.Interface,\n private readonly getArgvService: GetArgvService.Interface\n ) {}\n\n private yargsRunner: Argv | null = null;\n\n async execute() {\n if (this.yargsRunner) {\n return this.yargsRunner;\n }\n\n const ui = this.uiService;\n const projectSdk = await this.getProjectSdkService.execute();\n\n const yargsRunner = yargs()\n .usage(\"Usage: $0 <command> [options]\")\n .help(false)\n .demandCommand(1)\n .recommendCommands()\n .scriptName(\"webiny\")\n .epilogue(\n `To find more information, docs and tutorials, see ${blue(\n \"https://www.webiny.com/docs\"\n )}.`\n )\n .epilogue(`Want to contribute? ${blue(\"https://github.com/webiny/webiny-js\")}.`);\n\n // Register global options.\n const globalOptions = this.globalOptionsRegistryService.execute();\n for (const globalOption of globalOptions) {\n const { name, config } = await globalOption.execute();\n yargsRunner.option(name, {\n type: config.type,\n default: config.default,\n desc: config.description,\n alias: config.alias,\n choices: config.choices,\n global: true\n });\n }\n\n yargsRunner.fail((invalidParamsMessage, error) => {\n if (invalidParamsMessage) {\n if (invalidParamsMessage.includes(\"Not enough non-option arguments\")) {\n ui.emptyLine();\n ui.error(\"Command was not invoked as expected.\");\n ui.info(\n `Some non-optional arguments are missing. See the usage examples printed below.`\n );\n ui.emptyLine();\n yargsRunner.showHelp();\n process.exit(1);\n }\n\n if (invalidParamsMessage.includes(\"Missing required argument\")) {\n const args = invalidParamsMessage\n .split(\":\")[1]\n .split(\",\")\n .map(v => v.trim());\n\n ui.emptyLine();\n ui.error(\"Command was not invoked as expected.\");\n ui.info(\n `Missing required argument(s): ${args.join(\n \", \"\n )}. See the usage examples printed below.`\n );\n ui.emptyLine();\n yargsRunner.showHelp();\n process.exit(1);\n }\n\n ui.emptyLine();\n ui.error(invalidParamsMessage);\n\n process.exit(1);\n }\n\n const logger = projectSdk.getLogger();\n logger.error({ err: error }, \"CLI command execution failed.\");\n\n const realError = (error.cause as Error) || error;\n\n if (realError instanceof ManuallyReportedError) {\n // Do nothing as the error reporting has already been\n // handled within the invoked CLI command.\n } else {\n ui.error(realError.message);\n }\n\n const argv = this.getArgvService.execute();\n if (argv.showStackTrace && realError.stack) {\n ui.emptyLine();\n ui.debug(\"Stack trace:\");\n ui.text(realError.stack);\n }\n\n if (error instanceof GracefulError) {\n ui.emptyLine();\n ui.text(bgYellow(bold(\"💡 How can I resolve this?\")));\n ui.text(error.message);\n }\n\n process.exit(1);\n });\n\n const commands = this.commandsRegistryService.execute();\n\n for (const command of commands) {\n const {\n name,\n description,\n params = [],\n options = [],\n handler\n } = await command.execute();\n\n let yargsCommand = name;\n const paramVersionExists = params.some(p => {\n return p.name === \"version\";\n });\n if (paramVersionExists) {\n ui.error(\n `The command \"${name}\" cannot have a parameter named \"version\" as it conflicts with the global --version option.`\n );\n process.exit();\n }\n\n if (params.length > 0) {\n yargsCommand +=\n \" \" +\n params\n .map(param => {\n const paramName = param.array ? `${param.name}..` : param.name;\n return param.required ? `<${paramName}>` : `[${paramName}]`;\n })\n .join(\" \");\n }\n\n yargsRunner.command(\n yargsCommand,\n description,\n yargs => {\n params.forEach((param: CliCommandFactory.ParamDefinition<unknown>) => {\n const { name, required, validation, array, ...rest } = param;\n\n const yargsParam = yargs.positional(name, {\n ...rest,\n ...(array && { array: true }),\n demandOption: required\n });\n\n if (validation) {\n yargsParam.check(validation);\n }\n });\n\n options.forEach((option: CliCommandFactory.OptionDefinition<unknown>) => {\n const { name, required, validation, ...rest } = option;\n\n const yargsOption = yargs.option(name, {\n ...rest,\n demandOption: required\n });\n\n if (option.group) {\n yargsOption.group(option.name, option.group);\n }\n\n if (validation) {\n yargsOption.check(validation);\n }\n });\n },\n handler\n );\n }\n\n yargsRunner.help(true);\n yargsRunner.version(projectSdk.getProjectVersion());\n this.yargsRunner = yargsRunner;\n return this.yargsRunner;\n }\n}\n\nexport const getCliRunnerService = createImplementation({\n abstraction: GetCliRunnerService,\n implementation: DefaultGetCliRunnerService,\n dependencies: [\n CommandsRegistryService,\n GlobalOptionsRegistryService,\n UiService,\n GetProjectSdkService,\n GetArgvService\n ]\n});\n"],"names":["blue","bgYellow","bold","chalk","DefaultGetCliRunnerService","commandsRegistryService","globalOptionsRegistryService","uiService","getProjectSdkService","getArgvService","ui","projectSdk","yargsRunner","yargs","globalOptions","globalOption","name","config","invalidParamsMessage","error","process","args","v","logger","realError","ManuallyReportedError","argv","GracefulError","commands","command","description","params","options","handler","yargsCommand","paramVersionExists","p","param","paramName","required","validation","array","rest","yargsParam","option","yargsOption","getCliRunnerService","createImplementation","GetCliRunnerService","CommandsRegistryService","GlobalOptionsRegistryService","UiService","GetProjectSdkService","GetArgvService"],"mappings":";;;;;;AAgBA,MAAM,EAAEA,MAAAA,IAAI,EAAEC,UAAAA,QAAQ,EAAEC,MAAAA,IAAI,EAAE,GAAGC;AAE1B,MAAMC;IACT,YACqBC,uBAA0D,EAC1DC,4BAAoE,EACpEC,SAA8B,EAC9BC,oBAAoD,EACpDC,cAAwC,CAC3D;aALmBJ,uBAAuB,GAAvBA;aACAC,4BAA4B,GAA5BA;aACAC,SAAS,GAATA;aACAC,oBAAoB,GAApBA;aACAC,cAAc,GAAdA;aAGb,WAAW,GAAgB;IAFhC;IAIH,MAAM,UAAU;QACZ,IAAI,IAAI,CAAC,WAAW,EAChB,OAAO,IAAI,CAAC,WAAW;QAG3B,MAAMC,KAAK,IAAI,CAAC,SAAS;QACzB,MAAMC,aAAa,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO;QAE1D,MAAMC,cAAcC,cACf,KAAK,CAAC,iCACN,IAAI,CAAC,OACL,aAAa,CAAC,GACd,iBAAiB,GACjB,UAAU,CAAC,UACX,QAAQ,CACL,CAAC,kDAAkD,EAAEb,KACjD,+BACF,CAAC,CAAC,EAEP,QAAQ,CAAC,CAAC,oBAAoB,EAAEA,KAAK,uCAAuC,CAAC,CAAC;QAGnF,MAAMc,gBAAgB,IAAI,CAAC,4BAA4B,CAAC,OAAO;QAC/D,KAAK,MAAMC,gBAAgBD,cAAe;YACtC,MAAM,EAAEE,IAAI,EAAEC,MAAM,EAAE,GAAG,MAAMF,aAAa,OAAO;YACnDH,YAAY,MAAM,CAACI,MAAM;gBACrB,MAAMC,OAAO,IAAI;gBACjB,SAASA,OAAO,OAAO;gBACvB,MAAMA,OAAO,WAAW;gBACxB,OAAOA,OAAO,KAAK;gBACnB,SAASA,OAAO,OAAO;gBACvB,QAAQ;YACZ;QACJ;QAEAL,YAAY,IAAI,CAAC,CAACM,sBAAsBC;YACpC,IAAID,sBAAsB;gBACtB,IAAIA,qBAAqB,QAAQ,CAAC,oCAAoC;oBAClER,GAAG,SAAS;oBACZA,GAAG,KAAK,CAAC;oBACTA,GAAG,IAAI,CACH;oBAEJA,GAAG,SAAS;oBACZE,YAAY,QAAQ;oBACpBQ,QAAQ,IAAI,CAAC;gBACjB;gBAEA,IAAIF,qBAAqB,QAAQ,CAAC,8BAA8B;oBAC5D,MAAMG,OAAOH,qBACR,KAAK,CAAC,IAAI,CAAC,EAAE,CACb,KAAK,CAAC,KACN,GAAG,CAACI,CAAAA,IAAKA,EAAE,IAAI;oBAEpBZ,GAAG,SAAS;oBACZA,GAAG,KAAK,CAAC;oBACTA,GAAG,IAAI,CACH,CAAC,8BAA8B,EAAEW,KAAK,IAAI,CACtC,MACF,uCAAuC,CAAC;oBAE9CX,GAAG,SAAS;oBACZE,YAAY,QAAQ;oBACpBQ,QAAQ,IAAI,CAAC;gBACjB;gBAEAV,GAAG,SAAS;gBACZA,GAAG,KAAK,CAACQ;gBAETE,QAAQ,IAAI,CAAC;YACjB;YAEA,MAAMG,SAASZ,WAAW,SAAS;YACnCY,OAAO,KAAK,CAAC;gBAAE,KAAKJ;YAAM,GAAG;YAE7B,MAAMK,YAAaL,MAAM,KAAK,IAAcA;YAExCK,qBAAqBC,yBAIrBf,GAAG,KAAK,CAACc,UAAU,OAAO;YAG9B,MAAME,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO;YACxC,IAAIA,KAAK,cAAc,IAAIF,UAAU,KAAK,EAAE;gBACxCd,GAAG,SAAS;gBACZA,GAAG,KAAK,CAAC;gBACTA,GAAG,IAAI,CAACc,UAAU,KAAK;YAC3B;YAEA,IAAIL,iBAAiBQ,eAAe;gBAChCjB,GAAG,SAAS;gBACZA,GAAG,IAAI,CAACT,SAASC,KAAK;gBACtBQ,GAAG,IAAI,CAACS,MAAM,OAAO;YACzB;YAEAC,QAAQ,IAAI,CAAC;QACjB;QAEA,MAAMQ,WAAW,IAAI,CAAC,uBAAuB,CAAC,OAAO;QAErD,KAAK,MAAMC,WAAWD,SAAU;YAC5B,MAAM,EACFZ,IAAI,EACJc,WAAW,EACXC,SAAS,EAAE,EACXC,UAAU,EAAE,EACZC,OAAO,EACV,GAAG,MAAMJ,QAAQ,OAAO;YAEzB,IAAIK,eAAelB;YACnB,MAAMmB,qBAAqBJ,OAAO,IAAI,CAACK,CAAAA,IAC5BA,AAAW,cAAXA,EAAE,IAAI;YAEjB,IAAID,oBAAoB;gBACpBzB,GAAG,KAAK,CACJ,CAAC,aAAa,EAAEM,KAAK,2FAA2F,CAAC;gBAErHI,QAAQ,IAAI;YAChB;YAEA,IAAIW,OAAO,MAAM,GAAG,GAChBG,gBACI,MACAH,OACK,GAAG,CAACM,CAAAA;gBACD,MAAMC,YAAYD,MAAM,KAAK,GAAG,GAAGA,MAAM,IAAI,CAAC,EAAE,CAAC,GAAGA,MAAM,IAAI;gBAC9D,OAAOA,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAEC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC;YAC/D,GACC,IAAI,CAAC;YAGlB1B,YAAY,OAAO,CACfsB,cACAJ,aACAjB,CAAAA;gBACIkB,OAAO,OAAO,CAAC,CAACM;oBACZ,MAAM,EAAErB,IAAI,EAAEuB,QAAQ,EAAEC,UAAU,EAAEC,KAAK,EAAE,GAAGC,MAAM,GAAGL;oBAEvD,MAAMM,aAAa9B,MAAM,UAAU,CAACG,MAAM;wBACtC,GAAG0B,IAAI;wBACP,GAAID,SAAS;4BAAE,OAAO;wBAAK,CAAC;wBAC5B,cAAcF;oBAClB;oBAEA,IAAIC,YACAG,WAAW,KAAK,CAACH;gBAEzB;gBAEAR,QAAQ,OAAO,CAAC,CAACY;oBACb,MAAM,EAAE5B,IAAI,EAAEuB,QAAQ,EAAEC,UAAU,EAAE,GAAGE,MAAM,GAAGE;oBAEhD,MAAMC,cAAchC,MAAM,MAAM,CAACG,MAAM;wBACnC,GAAG0B,IAAI;wBACP,cAAcH;oBAClB;oBAEA,IAAIK,OAAO,KAAK,EACZC,YAAY,KAAK,CAACD,OAAO,IAAI,EAAEA,OAAO,KAAK;oBAG/C,IAAIJ,YACAK,YAAY,KAAK,CAACL;gBAE1B;YACJ,GACAP;QAER;QAEArB,YAAY,IAAI,CAAC;QACjBA,YAAY,OAAO,CAACD,WAAW,iBAAiB;QAChD,IAAI,CAAC,WAAW,GAAGC;QACnB,OAAO,IAAI,CAAC,WAAW;IAC3B;AACJ;AAEO,MAAMkC,sBAAsBC,qBAAqB;IACpD,aAAaC;IACb,gBAAgB5C;IAChB,cAAc;QACV6C;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { createImplementation } from "@webiny/di";
|
|
2
2
|
import { GetIsCiService } from "../../abstractions/index.js";
|
|
3
3
|
import { isCI } from "ci-info";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
class DefaultGetIsCiService {
|
|
5
|
+
execute() {
|
|
6
|
+
return isCI;
|
|
7
|
+
}
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
const getIsCiService = createImplementation({
|
|
10
|
+
abstraction: GetIsCiService,
|
|
11
|
+
implementation: DefaultGetIsCiService,
|
|
12
|
+
dependencies: []
|
|
13
13
|
});
|
|
14
|
+
export { DefaultGetIsCiService, getIsCiService };
|
|
14
15
|
|
|
15
16
|
//# sourceMappingURL=GetIsCiService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GetIsCiService/GetIsCiService.js","sources":["../../../src/services/GetIsCiService/GetIsCiService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport { GetIsCiService } from \"~/abstractions/index.js\";\nimport { isCI } from \"ci-info\";\n\nexport class DefaultGetIsCiService implements GetIsCiService.Interface {\n execute() {\n return isCI;\n }\n}\n\nexport const getIsCiService = createImplementation({\n abstraction: GetIsCiService,\n implementation: DefaultGetIsCiService,\n dependencies: []\n});\n"],"names":["DefaultGetIsCiService","isCI","getIsCiService","createImplementation","GetIsCiService"],"mappings":";;;AAIO,MAAMA;IACT,UAAU;QACN,OAAOC;IACX;AACJ;AAEO,MAAMC,iBAAiBC,qBAAqB;IAC/C,aAAaC;IACb,gBAAgBJ;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
import { createImplementation } from "@webiny/di";
|
|
2
2
|
import { ProjectSdk } from "@webiny/project";
|
|
3
3
|
import { CliParamsService, GetArgvService, GetProjectSdkService } from "../../abstractions/index.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
}
|
|
4
|
+
class DefaultGetProjectSdkService {
|
|
5
|
+
constructor(cliParamsService, getArgvService){
|
|
6
|
+
this.cliParamsService = cliParamsService;
|
|
7
|
+
this.getArgvService = getArgvService;
|
|
8
|
+
}
|
|
9
|
+
async execute() {
|
|
10
|
+
const cliParams = this.cliParamsService.get();
|
|
11
|
+
const argv = this.getArgvService.execute();
|
|
12
|
+
return ProjectSdk.init({
|
|
13
|
+
...argv,
|
|
14
|
+
cwd: cliParams.cwd,
|
|
15
|
+
logging: {
|
|
16
|
+
streamToStdout: argv.showLogs,
|
|
17
|
+
level: argv.logLevel
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
24
21
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
const getProjectSdkService = createImplementation({
|
|
23
|
+
abstraction: GetProjectSdkService,
|
|
24
|
+
implementation: DefaultGetProjectSdkService,
|
|
25
|
+
dependencies: [
|
|
26
|
+
CliParamsService,
|
|
27
|
+
GetArgvService
|
|
28
|
+
]
|
|
29
29
|
});
|
|
30
|
+
export { DefaultGetProjectSdkService, getProjectSdkService };
|
|
30
31
|
|
|
31
32
|
//# sourceMappingURL=GetProjectSdkService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GetProjectSdkService/GetProjectSdkService.js","sources":["../../../src/services/GetProjectSdkService/GetProjectSdkService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport { ProjectSdk } from \"@webiny/project\";\nimport { CliParamsService, GetArgvService, GetProjectSdkService } from \"~/abstractions/index.js\";\n\nexport class DefaultGetProjectSdkService implements GetProjectSdkService.Interface {\n constructor(\n private readonly cliParamsService: CliParamsService.Interface,\n private readonly getArgvService: GetArgvService.Interface\n ) {}\n\n async execute() {\n const cliParams = this.cliParamsService.get();\n const argv = this.getArgvService.execute();\n\n // Extract env/variant/region from argv and pass to ProjectSdk.init()\n // ProjectSdk.init() handles caching internally based on these parameters\n return ProjectSdk.init({\n ...argv,\n cwd: cliParams.cwd,\n logging: {\n streamToStdout: argv.showLogs,\n level: argv.logLevel\n }\n });\n }\n}\n\nexport const getProjectSdkService = createImplementation({\n abstraction: GetProjectSdkService,\n implementation: DefaultGetProjectSdkService,\n dependencies: [CliParamsService, GetArgvService]\n});\n"],"names":["DefaultGetProjectSdkService","cliParamsService","getArgvService","cliParams","argv","ProjectSdk","getProjectSdkService","createImplementation","GetProjectSdkService","CliParamsService","GetArgvService"],"mappings":";;;AAIO,MAAMA;IACT,YACqBC,gBAA4C,EAC5CC,cAAwC,CAC3D;aAFmBD,gBAAgB,GAAhBA;aACAC,cAAc,GAAdA;IAClB;IAEH,MAAM,UAAU;QACZ,MAAMC,YAAY,IAAI,CAAC,gBAAgB,CAAC,GAAG;QAC3C,MAAMC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO;QAIxC,OAAOC,WAAW,IAAI,CAAC;YACnB,GAAGD,IAAI;YACP,KAAKD,UAAU,GAAG;YAClB,SAAS;gBACL,gBAAgBC,KAAK,QAAQ;gBAC7B,OAAOA,KAAK,QAAQ;YACxB;QACJ;IACJ;AACJ;AAEO,MAAME,uBAAuBC,qBAAqB;IACrD,aAAaC;IACb,gBAAgBR;IAChB,cAAc;QAACS;QAAkBC;KAAe;AACpD"}
|
|
@@ -1,19 +1,25 @@
|
|
|
1
1
|
import { createImplementation } from "@webiny/di";
|
|
2
2
|
import { GlobalCliOption, GlobalOptionsRegistryService } from "../../abstractions/index.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
class DefaultGlobalOptionsRegistryService {
|
|
4
|
+
constructor(globalOptions){
|
|
5
|
+
this.globalOptions = globalOptions;
|
|
6
|
+
}
|
|
7
|
+
execute() {
|
|
8
|
+
return this.globalOptions;
|
|
9
|
+
}
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
const globalOptionsRegistryService = createImplementation({
|
|
12
|
+
abstraction: GlobalOptionsRegistryService,
|
|
13
|
+
implementation: DefaultGlobalOptionsRegistryService,
|
|
14
|
+
dependencies: [
|
|
15
|
+
[
|
|
16
|
+
GlobalCliOption,
|
|
17
|
+
{
|
|
18
|
+
multiple: true
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
]
|
|
17
22
|
});
|
|
23
|
+
export { DefaultGlobalOptionsRegistryService, globalOptionsRegistryService };
|
|
18
24
|
|
|
19
25
|
//# sourceMappingURL=GlobalOptionsRegistryService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.js","sources":["../../../src/services/GlobalOptionsRegistryService/GlobalOptionsRegistryService.ts"],"sourcesContent":["import { createImplementation } from \"@webiny/di\";\nimport { GlobalCliOption, GlobalOptionsRegistryService } from \"~/abstractions/index.js\";\n\nexport class DefaultGlobalOptionsRegistryService implements GlobalOptionsRegistryService.Interface {\n constructor(private globalOptions: GlobalCliOption.Interface[]) {}\n\n execute() {\n return this.globalOptions;\n }\n}\n\nexport const globalOptionsRegistryService = createImplementation({\n abstraction: GlobalOptionsRegistryService,\n implementation: DefaultGlobalOptionsRegistryService,\n dependencies: [[GlobalCliOption, { multiple: true }]]\n});\n"],"names":["DefaultGlobalOptionsRegistryService","globalOptions","globalOptionsRegistryService","createImplementation","GlobalOptionsRegistryService","GlobalCliOption"],"mappings":";;AAGO,MAAMA;IACT,YAAoBC,aAA0C,CAAE;aAA5CA,aAAa,GAAbA;IAA6C;IAEjE,UAAU;QACN,OAAO,IAAI,CAAC,aAAa;IAC7B;AACJ;AAEO,MAAMC,+BAA+BC,qBAAqB;IAC7D,aAAaC;IACb,gBAAgBJ;IAChB,cAAc;QAAC;YAACK;YAAiB;gBAAE,UAAU;YAAK;SAAE;KAAC;AACzD"}
|