@pristine-ts/cli 0.0.304 → 0.0.306
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/dist/lib/cjs/cli.js +45 -9
- package/dist/lib/cjs/cli.js.map +1 -1
- package/dist/lib/cjs/event-handlers/cli.event-handler.js +16 -5
- package/dist/lib/cjs/event-handlers/cli.event-handler.js.map +1 -1
- package/dist/lib/esm/event-handlers/cli.event-handler.js +16 -5
- package/dist/lib/esm/event-handlers/cli.event-handler.js.map +1 -1
- package/dist/types/event-handlers/cli.event-handler.d.ts +3 -1
- package/package.json +9 -7
package/dist/lib/cjs/cli.js
CHANGED
|
@@ -38,6 +38,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
38
38
|
const core_1 = require("@pristine-ts/core");
|
|
39
39
|
const fs_1 = __importDefault(require("fs"));
|
|
40
40
|
const logging_1 = require("@pristine-ts/logging");
|
|
41
|
+
const file_1 = require("@pristine-ts/file");
|
|
41
42
|
const getLocalAppModuleCJSPath = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
42
43
|
return new Promise((resolve, reject) => {
|
|
43
44
|
const packageJson = process.cwd() + "/package.json";
|
|
@@ -46,36 +47,71 @@ const getLocalAppModuleCJSPath = () => __awaiter(void 0, void 0, void 0, functio
|
|
|
46
47
|
const message = "Cannot find the package.json at '" + packageJson + "'. Make sure that you execute this script directly from the parent of your 'package.json'";
|
|
47
48
|
console.error(message);
|
|
48
49
|
console.error(err);
|
|
49
|
-
|
|
50
|
+
return resolve(undefined);
|
|
50
51
|
}
|
|
51
52
|
const { pristine } = yield Promise.resolve(`${packageJson}`).then(s => __importStar(require(s)));
|
|
52
53
|
if (pristine === undefined) {
|
|
53
54
|
const message = "There needs to be a section 'pristine' in your package.json file located at: '" + packageJson + "'";
|
|
54
55
|
console.error(message);
|
|
55
|
-
|
|
56
|
+
return resolve(undefined);
|
|
56
57
|
}
|
|
57
58
|
if (pristine.appModule === undefined) {
|
|
58
59
|
const message = "There should be a section 'appModule' under 'pristine' in your package.json file located at: '" + packageJson + "'";
|
|
59
60
|
console.error(message);
|
|
60
|
-
|
|
61
|
+
return resolve(undefined);
|
|
61
62
|
}
|
|
62
63
|
if (pristine.appModule.cjsPath === undefined) {
|
|
63
64
|
const message = "There should be a property 'cjsPath' under 'pristine.appModule' in your package.json file located at: '" + packageJson + "'";
|
|
64
65
|
console.error(message);
|
|
65
|
-
|
|
66
|
+
return resolve(undefined);
|
|
66
67
|
}
|
|
67
68
|
return resolve(process.cwd() + "/" + pristine.appModule.cjsPath);
|
|
68
69
|
}));
|
|
69
70
|
});
|
|
70
71
|
});
|
|
71
72
|
const bootstrap = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
let localAppModule;
|
|
74
|
+
let isLoggingModulePresent = false;
|
|
72
75
|
const cjsPath = yield getLocalAppModuleCJSPath();
|
|
73
|
-
|
|
76
|
+
if (cjsPath !== undefined) {
|
|
77
|
+
localAppModule = (yield Promise.resolve(`${cjsPath}`).then(s => __importStar(require(s)))).AppModule;
|
|
78
|
+
isLoggingModulePresent = localAppModule.importModules.find((module) => module.keyname === logging_1.LoggingModuleKeyname) !== undefined;
|
|
79
|
+
}
|
|
80
|
+
else { // Try the automatic Module creation.
|
|
81
|
+
// Loop over the `node_modules/@pristine-ts/*/dist/lib/cjs/*.module.js` folders and find all the module files that are loaded.
|
|
82
|
+
const directoryManager = new file_1.DirectoryManager();
|
|
83
|
+
const moduleFiles = yield directoryManager.list(process.cwd() + "/node_modules/@pristine-ts", {
|
|
84
|
+
matchType: file_1.MatchTypeEnum.Path,
|
|
85
|
+
match: /.*\/cjs\/.*\.module\.js$/,
|
|
86
|
+
types: file_1.TypesEnum.File,
|
|
87
|
+
resultType: file_1.DirectoryListResultEnum.FilePath,
|
|
88
|
+
recurse: true,
|
|
89
|
+
});
|
|
90
|
+
const modules = [];
|
|
91
|
+
for (const moduleFile of moduleFiles) {
|
|
92
|
+
const module = yield Promise.resolve(`${moduleFile}`).then(s => __importStar(require(s)));
|
|
93
|
+
for (const key in module) {
|
|
94
|
+
if (key === "LoggingModule") {
|
|
95
|
+
isLoggingModulePresent = true;
|
|
96
|
+
}
|
|
97
|
+
if (key.endsWith("Module")) {
|
|
98
|
+
modules.push(module[key]);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
localAppModule = {
|
|
103
|
+
keyname: "__auto_generated_app.module__",
|
|
104
|
+
importModules: modules,
|
|
105
|
+
importServices: [],
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
const configuration = {};
|
|
109
|
+
if (isLoggingModulePresent) {
|
|
110
|
+
configuration[logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"] = logging_1.OutputModeEnum.Simple;
|
|
111
|
+
configuration[logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"] = logging_1.SeverityEnum.Error;
|
|
112
|
+
}
|
|
74
113
|
const kernel = new core_1.Kernel();
|
|
75
|
-
yield kernel.start(localAppModule
|
|
76
|
-
[logging_1.LoggingModuleKeyname + ".consoleLoggerOutputMode"]: logging_1.OutputModeEnum.Simple,
|
|
77
|
-
[logging_1.LoggingModuleKeyname + ".logSeverityLevelConfiguration"]: logging_1.SeverityEnum.Error,
|
|
78
|
-
});
|
|
114
|
+
yield kernel.start(localAppModule, configuration);
|
|
79
115
|
yield kernel.handle(process.argv, { keyname: core_1.ExecutionContextKeynameEnum.Cli, context: null });
|
|
80
116
|
});
|
|
81
117
|
bootstrap();
|
package/dist/lib/cjs/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAsE;AACtE,4CAAoB;AACpB,kDAAwF;AACxF,4CAAsG;AAItG,MAAM,wBAAwB,GAAG,GAAsC,EAAE;IACrE,OAAO,IAAI,OAAO,CAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACvD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;QAEpD,YAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAO,GAAG,EAAE,KAAK,EAAE,EAAE;YACtC,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,mCAAmC,GAAG,WAAW,GAAG,2FAA2F,CAAA;gBAC/J,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnB,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;YAED,MAAM,EAAC,QAAQ,EAAC,GAAG,yBAAa,WAAW,uCAAC,CAAC;YAE7C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,gFAAgF,GAAG,WAAW,GAAG,GAAG,CAAC;gBACrH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvB,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;YAED,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,gGAAgG,GAAG,WAAW,GAAG,GAAG,CAAA;gBACpI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvB,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,QAAQ,CAAC,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAAG,yGAAyG,GAAG,WAAW,GAAG,GAAG,CAAA;gBAC7I,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvB,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrE,CAAC,CAAA,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAA,CAAA;AAGD,MAAM,SAAS,GAAG,GAAS,EAAE;IACzB,IAAI,cAAkC,CAAC;IACvC,IAAI,sBAAsB,GAAG,KAAK,CAAC;IAEnC,MAAM,OAAO,GAAG,MAAM,wBAAwB,EAAE,CAAC;IAEjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,cAAc,GAAG,CAAC,yBAAa,OAAO,uCAAC,CAAC,CAAC,SAAS,CAAC;QAEnD,sBAAsB,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,8BAAoB,CAAC,KAAK,SAAS,CAAC;IAClI,CAAC;SAAM,CAAC,CAAC,qCAAqC;QAC1C,8HAA8H;QAC9H,MAAM,gBAAgB,GAAG,IAAI,uBAAgB,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,4BAA4B,EAAE;YAC1F,SAAS,EAAE,oBAAa,CAAC,IAAI;YAC7B,KAAK,EAAE,0BAA0B;YACjC,KAAK,EAAE,gBAAS,CAAC,IAAI;YACrB,UAAU,EAAE,8BAAuB,CAAC,QAAQ;YAC5C,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,yBAAa,UAAoB,uCAAC,CAAC;YAElD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,IAAG,GAAG,KAAK,eAAe,EAAE,CAAC;oBACzB,sBAAsB,GAAG,IAAI,CAAC;gBAClC,CAAC;gBAED,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9B,CAAC;YACL,CAAC;QACL,CAAC;QAED,cAAc,GAAG;YACb,OAAO,EAAE,+BAA+B;YACxC,aAAa,EAAE,OAAO;YACtB,cAAc,EAAE,EAAE;SACrB,CAAA;IACL,CAAC;IAED,MAAM,aAAa,GAAgD,EAAE,CAAC;IAEtE,IAAG,sBAAsB,EAAE,CAAC;QACxB,aAAa,CAAC,8BAAoB,GAAG,0BAA0B,CAAC,GAAG,wBAAc,CAAC,MAAM,CAAC;QACzF,aAAa,CAAC,8BAAoB,GAAG,gCAAgC,CAAC,GAAG,sBAAY,CAAC,KAAK,CAAC;IAChG,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,aAAM,EAAE,CAAC;IAC5B,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAElD,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAC,OAAO,EAAE,kCAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAA;AAChG,CAAC,CAAA,CAAA;AAED,SAAS,EAAE,CAAC"}
|
|
@@ -28,15 +28,16 @@ const command_event_response_type_1 = require("../types/command-event-response.t
|
|
|
28
28
|
const common_1 = require("@pristine-ts/common");
|
|
29
29
|
const command_not_found_error_1 = require("../errors/command-not-found.error");
|
|
30
30
|
const class_validator_1 = require("@pristine-ts/class-validator");
|
|
31
|
-
const class_transformer_1 = require("class-transformer");
|
|
32
31
|
const console_manager_1 = require("../managers/console.manager");
|
|
33
32
|
const exit_code_enum_1 = require("../enums/exit-code.enum");
|
|
34
33
|
const cli_module_keyname_1 = require("../cli.module.keyname");
|
|
34
|
+
const data_mapping_common_1 = require("@pristine-ts/data-mapping-common");
|
|
35
35
|
let CliEventHandler = class CliEventHandler {
|
|
36
|
-
constructor(logHandler, validator, consoleManager, commands) {
|
|
36
|
+
constructor(logHandler, validator, consoleManager, dataMapper, commands) {
|
|
37
37
|
this.logHandler = logHandler;
|
|
38
38
|
this.validator = validator;
|
|
39
39
|
this.consoleManager = consoleManager;
|
|
40
|
+
this.dataMapper = dataMapper;
|
|
40
41
|
this.commands = commands;
|
|
41
42
|
}
|
|
42
43
|
handle(event) {
|
|
@@ -48,7 +49,16 @@ let CliEventHandler = class CliEventHandler {
|
|
|
48
49
|
}
|
|
49
50
|
let mappedArguments;
|
|
50
51
|
if (event.payload.arguments !== undefined) {
|
|
51
|
-
|
|
52
|
+
try {
|
|
53
|
+
mappedArguments = yield this.dataMapper.autoMap(event.payload.arguments, command.optionsType, {
|
|
54
|
+
isOptionalDefaultValue: true,
|
|
55
|
+
excludeExtraneousValues: false,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
// Trying without the arguments being mapped.
|
|
60
|
+
mappedArguments = event.payload.arguments;
|
|
61
|
+
}
|
|
52
62
|
}
|
|
53
63
|
// Validates if all the conditions are respected in the expected type.
|
|
54
64
|
const errors = yield this.validator.validate(mappedArguments);
|
|
@@ -91,8 +101,9 @@ exports.CliEventHandler = CliEventHandler = __decorate([
|
|
|
91
101
|
(0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
|
|
92
102
|
(0, tsyringe_1.injectable)(),
|
|
93
103
|
__param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
|
|
94
|
-
__param(
|
|
104
|
+
__param(4, (0, tsyringe_1.injectAll)(common_1.ServiceDefinitionTagEnum.Command)),
|
|
95
105
|
__metadata("design:paramtypes", [Object, class_validator_1.Validator,
|
|
96
|
-
console_manager_1.ConsoleManager,
|
|
106
|
+
console_manager_1.ConsoleManager,
|
|
107
|
+
data_mapping_common_1.DataMapper, Array])
|
|
97
108
|
], CliEventHandler);
|
|
98
109
|
//# sourceMappingURL=cli.event-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.event-handler.js","sourceRoot":"","sources":["../../../../src/event-handlers/cli.event-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuD;AAEvD,mFAA4E;AAE5E,sFAA0E;AAE1E,gDAAgF;AAChF,+EAAuE;AAEvE,kEAAuD;
|
|
1
|
+
{"version":3,"file":"cli.event-handler.js","sourceRoot":"","sources":["../../../../src/event-handlers/cli.event-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAuD;AAEvD,mFAA4E;AAE5E,sFAA0E;AAE1E,gDAAgF;AAChF,+EAAuE;AAEvE,kEAAuD;AAEvD,iEAA2D;AAC3D,4DAAqD;AACrD,8DAAuD;AACvD,0EAA4D;AAKrD,IAAM,eAAe,GAArB,MAAM,eAAe;IACxB,YACoD,UAA+B,EAC9D,SAAoB,EACpB,cAA8B,EAC9B,UAAsB,EACuB,QAAiC;QAJ/C,eAAU,GAAV,UAAU,CAAqB;QAC9D,cAAS,GAAT,SAAS,CAAW;QACpB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,eAAU,GAAV,UAAU,CAAY;QACuB,aAAQ,GAAR,QAAQ,CAAyB;IACnG,CAAC;IAEK,MAAM,CAAC,KAAmB;;YAC5B,gCAAgC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAEnF,IAAG,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvB,MAAM,IAAI,8CAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACtD,CAAC;YAED,IAAI,eAAe,CAAC;YAEpB,IAAG,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACD,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE;wBAC1F,sBAAsB,EAAE,IAAI;wBAC5B,uBAAuB,EAAE,KAAK;qBACjC,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,6CAA6C;oBAC7C,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC9C,CAAC;YACL,CAAC;YAED,sEAAsE;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;YAE9D,IAAG,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,6BAA6B;gBAC7B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,wBAAwB,GAAG,KAAK,CAAC,QAAQ,GAAG,sCAAsC,CAAC,CAAC;oBAClH,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACzC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;wBAC9C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC;oBAC5E,CAAC;gBACL,CAAC,CAAC,CAAA;gBAEF,OAAO,IAAI,kDAAoB,CAAC,KAAK,EAAE,6BAAY,CAAC,KAAK,CAAC,CAAC;YAC/D,CAAC;YAED,sBAAsB;YACtB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG;YAC9B,yFAAyF;YACzF,eAAe,CAClB,CAAC;YAEF,iCAAiC;YACjC,IAAI,MAAM,CAAC;YAEX,QAAQ,QAAQ,EAAE,CAAC;gBACf,KAAK,6BAAY,CAAC,OAAO;oBACrB,MAAM,GAAG,SAAS,CAAC;oBACnB,MAAM;gBACV;oBACI,MAAM,GAAG,OAAO,CAAC;oBACjB,MAAM;YACd,CAAC;YAED,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,GAAG,uBAAuB,GAAG,QAAQ,GAAG,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;YAEtI,OAAO,IAAI,kDAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC;KAAA;IAED,QAAQ,CAAC,KAAiB;QACtB,OAAO,KAAK,CAAC,OAAO,YAAY,2CAAmB,CAAC;IACxD,CAAC;CAEJ,CAAA;AA1EY,0CAAe;0BAAf,eAAe;IAH3B,IAAA,YAAG,EAAC,iCAAwB,CAAC,YAAY,CAAC;IAC1C,IAAA,qBAAY,EAAC,qCAAgB,CAAC;IAC9B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,qBAAqB,CAAC,CAAA;IAI7B,WAAA,IAAA,oBAAS,EAAC,iCAAwB,CAAC,OAAO,CAAC,CAAA;6CAHhB,2BAAS;QACJ,gCAAc;QAClB,gCAAU;GALlC,eAAe,CA0E3B"}
|
|
@@ -25,15 +25,16 @@ import { CommandEventResponse } from "../types/command-event-response.type";
|
|
|
25
25
|
import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
|
|
26
26
|
import { CommandNotFoundError } from "../errors/command-not-found.error";
|
|
27
27
|
import { Validator } from "@pristine-ts/class-validator";
|
|
28
|
-
import { plainToInstance } from "class-transformer";
|
|
29
28
|
import { ConsoleManager } from "../managers/console.manager";
|
|
30
29
|
import { ExitCodeEnum } from "../enums/exit-code.enum";
|
|
31
30
|
import { CliModuleKeyname } from "../cli.module.keyname";
|
|
31
|
+
import { DataMapper } from "@pristine-ts/data-mapping-common";
|
|
32
32
|
let CliEventHandler = class CliEventHandler {
|
|
33
|
-
constructor(logHandler, validator, consoleManager, commands) {
|
|
33
|
+
constructor(logHandler, validator, consoleManager, dataMapper, commands) {
|
|
34
34
|
this.logHandler = logHandler;
|
|
35
35
|
this.validator = validator;
|
|
36
36
|
this.consoleManager = consoleManager;
|
|
37
|
+
this.dataMapper = dataMapper;
|
|
37
38
|
this.commands = commands;
|
|
38
39
|
}
|
|
39
40
|
handle(event) {
|
|
@@ -45,7 +46,16 @@ let CliEventHandler = class CliEventHandler {
|
|
|
45
46
|
}
|
|
46
47
|
let mappedArguments;
|
|
47
48
|
if (event.payload.arguments !== undefined) {
|
|
48
|
-
|
|
49
|
+
try {
|
|
50
|
+
mappedArguments = yield this.dataMapper.autoMap(event.payload.arguments, command.optionsType, {
|
|
51
|
+
isOptionalDefaultValue: true,
|
|
52
|
+
excludeExtraneousValues: false,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
// Trying without the arguments being mapped.
|
|
57
|
+
mappedArguments = event.payload.arguments;
|
|
58
|
+
}
|
|
49
59
|
}
|
|
50
60
|
// Validates if all the conditions are respected in the expected type.
|
|
51
61
|
const errors = yield this.validator.validate(mappedArguments);
|
|
@@ -87,9 +97,10 @@ CliEventHandler = __decorate([
|
|
|
87
97
|
moduleScoped(CliModuleKeyname),
|
|
88
98
|
injectable(),
|
|
89
99
|
__param(0, inject("LogHandlerInterface")),
|
|
90
|
-
__param(
|
|
100
|
+
__param(4, injectAll(ServiceDefinitionTagEnum.Command)),
|
|
91
101
|
__metadata("design:paramtypes", [Object, Validator,
|
|
92
|
-
ConsoleManager,
|
|
102
|
+
ConsoleManager,
|
|
103
|
+
DataMapper, Array])
|
|
93
104
|
], CliEventHandler);
|
|
94
105
|
export { CliEventHandler };
|
|
95
106
|
//# sourceMappingURL=cli.event-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.event-handler.js","sourceRoot":"","sources":["../../../../src/event-handlers/cli.event-handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,UAAU,CAAC;AAEvD,OAAO,EAAC,mBAAmB,EAAC,MAAM,yCAAyC,CAAC;AAE5E,OAAO,EAAC,oBAAoB,EAAC,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAC,YAAY,EAAE,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAC,oBAAoB,EAAC,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAC,SAAS,EAAC,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.event-handler.js","sourceRoot":"","sources":["../../../../src/event-handlers/cli.event-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,12 +5,14 @@ import { CommandInterface } from "../interfaces/command.interface";
|
|
|
5
5
|
import { LogHandlerInterface } from "@pristine-ts/logging";
|
|
6
6
|
import { Validator } from "@pristine-ts/class-validator";
|
|
7
7
|
import { ConsoleManager } from "../managers/console.manager";
|
|
8
|
+
import { DataMapper } from "@pristine-ts/data-mapping-common";
|
|
8
9
|
export declare class CliEventHandler implements EventHandlerInterface<any, any> {
|
|
9
10
|
private readonly logHandler;
|
|
10
11
|
private readonly validator;
|
|
11
12
|
private readonly consoleManager;
|
|
13
|
+
private readonly dataMapper;
|
|
12
14
|
private readonly commands;
|
|
13
|
-
constructor(logHandler: LogHandlerInterface, validator: Validator, consoleManager: ConsoleManager, commands: CommandInterface<any>[]);
|
|
15
|
+
constructor(logHandler: LogHandlerInterface, validator: Validator, consoleManager: ConsoleManager, dataMapper: DataMapper, commands: CommandInterface<any>[]);
|
|
14
16
|
handle(event: CommandEvent): Promise<CommandEventResponse>;
|
|
15
17
|
supports(event: Event<any>): boolean;
|
|
16
18
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pristine-ts/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.306",
|
|
4
4
|
"description": "",
|
|
5
5
|
"module": "dist/lib/esm/cli.module.js",
|
|
6
6
|
"main": "dist/lib/cjs/cli.module.js",
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
"build": "tsc -p tsconfig.json && tsc -p tsconfig.cjs.json",
|
|
13
13
|
"prepublish": "npm run build",
|
|
14
14
|
"test": "jest",
|
|
15
|
-
"test:cov": "jest --coverage"
|
|
15
|
+
"test:cov": "jest --coverage",
|
|
16
|
+
"pristine:command": "pristine help"
|
|
16
17
|
},
|
|
17
18
|
"files": [
|
|
18
19
|
"dist"
|
|
@@ -23,10 +24,11 @@
|
|
|
23
24
|
"access": "public"
|
|
24
25
|
},
|
|
25
26
|
"dependencies": {
|
|
26
|
-
"@pristine-ts/common": "^0.0.
|
|
27
|
-
"@pristine-ts/core": "^0.0.
|
|
28
|
-
"@pristine-ts/
|
|
29
|
-
"@pristine-ts/
|
|
27
|
+
"@pristine-ts/common": "^0.0.306",
|
|
28
|
+
"@pristine-ts/core": "^0.0.306",
|
|
29
|
+
"@pristine-ts/file": "^0.0.306",
|
|
30
|
+
"@pristine-ts/logging": "^0.0.306",
|
|
31
|
+
"@pristine-ts/validation": "^0.0.306",
|
|
30
32
|
"class-transformer": "^0.5.1"
|
|
31
33
|
},
|
|
32
34
|
"jest": {
|
|
@@ -63,5 +65,5 @@
|
|
|
63
65
|
"src/*.{js,ts}"
|
|
64
66
|
]
|
|
65
67
|
},
|
|
66
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "7cd470d729226102adc8a4785c5b6918ac65f9fc"
|
|
67
69
|
}
|