@pristine-ts/cli 0.0.240

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 (121) hide show
  1. package/LICENSE +201 -0
  2. package/dist/lib/cjs/bin.js +4 -0
  3. package/dist/lib/cjs/bin.js.map +1 -0
  4. package/dist/lib/cjs/cli.js +84 -0
  5. package/dist/lib/cjs/cli.js.map +1 -0
  6. package/dist/lib/cjs/cli.module.js +40 -0
  7. package/dist/lib/cjs/cli.module.js.map +1 -0
  8. package/dist/lib/cjs/cli.module.keyname.js +5 -0
  9. package/dist/lib/cjs/cli.module.keyname.js.map +1 -0
  10. package/dist/lib/cjs/commands/commands.js +19 -0
  11. package/dist/lib/cjs/commands/commands.js.map +1 -0
  12. package/dist/lib/cjs/commands/help.command.js +54 -0
  13. package/dist/lib/cjs/commands/help.command.js.map +1 -0
  14. package/dist/lib/cjs/commands/list.command.js +54 -0
  15. package/dist/lib/cjs/commands/list.command.js.map +1 -0
  16. package/dist/lib/cjs/enums/enums.js +18 -0
  17. package/dist/lib/cjs/enums/enums.js.map +1 -0
  18. package/dist/lib/cjs/enums/exit-code.enum.js +9 -0
  19. package/dist/lib/cjs/enums/exit-code.enum.js.map +1 -0
  20. package/dist/lib/cjs/errors/command-not-found.error.js +25 -0
  21. package/dist/lib/cjs/errors/command-not-found.error.js.map +1 -0
  22. package/dist/lib/cjs/errors/errors.js +18 -0
  23. package/dist/lib/cjs/errors/errors.js.map +1 -0
  24. package/dist/lib/cjs/event-handlers/cli.event-handler.js +95 -0
  25. package/dist/lib/cjs/event-handlers/cli.event-handler.js.map +1 -0
  26. package/dist/lib/cjs/event-handlers/event-handlers.js +18 -0
  27. package/dist/lib/cjs/event-handlers/event-handlers.js.map +1 -0
  28. package/dist/lib/cjs/event-payloads/command.event-payload.js +12 -0
  29. package/dist/lib/cjs/event-payloads/command.event-payload.js.map +1 -0
  30. package/dist/lib/cjs/event-payloads/event-payloads.js +18 -0
  31. package/dist/lib/cjs/event-payloads/event-payloads.js.map +1 -0
  32. package/dist/lib/cjs/interfaces/command.interface.js +3 -0
  33. package/dist/lib/cjs/interfaces/command.interface.js.map +1 -0
  34. package/dist/lib/cjs/interfaces/interfaces.js +18 -0
  35. package/dist/lib/cjs/interfaces/interfaces.js.map +1 -0
  36. package/dist/lib/cjs/managers/console.manager.js +26 -0
  37. package/dist/lib/cjs/managers/console.manager.js.map +1 -0
  38. package/dist/lib/cjs/managers/managers.js +18 -0
  39. package/dist/lib/cjs/managers/managers.js.map +1 -0
  40. package/dist/lib/cjs/mappers/command-event.mapper.js +93 -0
  41. package/dist/lib/cjs/mappers/command-event.mapper.js.map +1 -0
  42. package/dist/lib/cjs/mappers/mappers.js +18 -0
  43. package/dist/lib/cjs/mappers/mappers.js.map +1 -0
  44. package/dist/lib/cjs/types/command-event-response.type.js +8 -0
  45. package/dist/lib/cjs/types/command-event-response.type.js.map +1 -0
  46. package/dist/lib/cjs/types/command-event.type.js +8 -0
  47. package/dist/lib/cjs/types/command-event.type.js.map +1 -0
  48. package/dist/lib/cjs/types/types.js +19 -0
  49. package/dist/lib/cjs/types/types.js.map +1 -0
  50. package/dist/lib/esm/bin.js +4 -0
  51. package/dist/lib/esm/bin.js.map +1 -0
  52. package/dist/lib/esm/cli.module.js +23 -0
  53. package/dist/lib/esm/cli.module.js.map +1 -0
  54. package/dist/lib/esm/cli.module.keyname.js +2 -0
  55. package/dist/lib/esm/cli.module.keyname.js.map +1 -0
  56. package/dist/lib/esm/commands/commands.js +3 -0
  57. package/dist/lib/esm/commands/commands.js.map +1 -0
  58. package/dist/lib/esm/commands/help.command.js +51 -0
  59. package/dist/lib/esm/commands/help.command.js.map +1 -0
  60. package/dist/lib/esm/commands/list.command.js +51 -0
  61. package/dist/lib/esm/commands/list.command.js.map +1 -0
  62. package/dist/lib/esm/enums/enums.js +2 -0
  63. package/dist/lib/esm/enums/enums.js.map +1 -0
  64. package/dist/lib/esm/enums/exit-code.enum.js +6 -0
  65. package/dist/lib/esm/enums/exit-code.enum.js.map +1 -0
  66. package/dist/lib/esm/errors/command-not-found.error.js +21 -0
  67. package/dist/lib/esm/errors/command-not-found.error.js.map +1 -0
  68. package/dist/lib/esm/errors/errors.js +2 -0
  69. package/dist/lib/esm/errors/errors.js.map +1 -0
  70. package/dist/lib/esm/event-handlers/cli.event-handler.js +92 -0
  71. package/dist/lib/esm/event-handlers/cli.event-handler.js.map +1 -0
  72. package/dist/lib/esm/event-handlers/event-handlers.js +2 -0
  73. package/dist/lib/esm/event-handlers/event-handlers.js.map +1 -0
  74. package/dist/lib/esm/event-payloads/command.event-payload.js +8 -0
  75. package/dist/lib/esm/event-payloads/command.event-payload.js.map +1 -0
  76. package/dist/lib/esm/event-payloads/event-payloads.js +2 -0
  77. package/dist/lib/esm/event-payloads/event-payloads.js.map +1 -0
  78. package/dist/lib/esm/interfaces/command.interface.js +2 -0
  79. package/dist/lib/esm/interfaces/command.interface.js.map +1 -0
  80. package/dist/lib/esm/interfaces/interfaces.js +2 -0
  81. package/dist/lib/esm/interfaces/interfaces.js.map +1 -0
  82. package/dist/lib/esm/managers/console.manager.js +23 -0
  83. package/dist/lib/esm/managers/console.manager.js.map +1 -0
  84. package/dist/lib/esm/managers/managers.js +2 -0
  85. package/dist/lib/esm/managers/managers.js.map +1 -0
  86. package/dist/lib/esm/mappers/command-event.mapper.js +90 -0
  87. package/dist/lib/esm/mappers/command-event.mapper.js.map +1 -0
  88. package/dist/lib/esm/mappers/mappers.js +2 -0
  89. package/dist/lib/esm/mappers/mappers.js.map +1 -0
  90. package/dist/lib/esm/types/command-event-response.type.js +4 -0
  91. package/dist/lib/esm/types/command-event-response.type.js.map +1 -0
  92. package/dist/lib/esm/types/command-event.type.js +4 -0
  93. package/dist/lib/esm/types/command-event.type.js.map +1 -0
  94. package/dist/lib/esm/types/types.js +3 -0
  95. package/dist/lib/esm/types/types.js.map +1 -0
  96. package/dist/types/bin.d.ts +1 -0
  97. package/dist/types/cli.d.ts +1 -0
  98. package/dist/types/cli.module.d.ts +11 -0
  99. package/dist/types/cli.module.keyname.d.ts +1 -0
  100. package/dist/types/commands/commands.d.ts +2 -0
  101. package/dist/types/commands/help.command.d.ts +10 -0
  102. package/dist/types/commands/list.command.d.ts +12 -0
  103. package/dist/types/enums/enums.d.ts +1 -0
  104. package/dist/types/enums/exit-code.enum.d.ts +4 -0
  105. package/dist/types/errors/command-not-found.error.d.ts +12 -0
  106. package/dist/types/errors/errors.d.ts +1 -0
  107. package/dist/types/event-handlers/cli.event-handler.d.ts +16 -0
  108. package/dist/types/event-handlers/event-handlers.d.ts +1 -0
  109. package/dist/types/event-payloads/command.event-payload.d.ts +8 -0
  110. package/dist/types/event-payloads/event-payloads.d.ts +1 -0
  111. package/dist/types/interfaces/command.interface.d.ts +8 -0
  112. package/dist/types/interfaces/interfaces.d.ts +1 -0
  113. package/dist/types/managers/console.manager.d.ts +4 -0
  114. package/dist/types/managers/managers.d.ts +1 -0
  115. package/dist/types/mappers/command-event.mapper.d.ts +20 -0
  116. package/dist/types/mappers/mappers.d.ts +1 -0
  117. package/dist/types/types/command-event-response.type.d.ts +5 -0
  118. package/dist/types/types/command-event.type.d.ts +4 -0
  119. package/dist/types/types/types.d.ts +2 -0
  120. package/package.json +67 -0
  121. package/readme.md +31 -0
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.CliEventHandler = void 0;
25
+ const tsyringe_1 = require("tsyringe");
26
+ const command_event_payload_1 = require("../event-payloads/command.event-payload");
27
+ const command_event_response_type_1 = require("../types/command-event-response.type");
28
+ const common_1 = require("@pristine-ts/common");
29
+ const command_not_found_error_1 = require("../errors/command-not-found.error");
30
+ const class_validator_1 = require("@pristine-ts/class-validator");
31
+ const class_transformer_1 = require("class-transformer");
32
+ const console_manager_1 = require("../managers/console.manager");
33
+ const exit_code_enum_1 = require("../enums/exit-code.enum");
34
+ const cli_module_keyname_1 = require("../cli.module.keyname");
35
+ let CliEventHandler = class CliEventHandler {
36
+ constructor(logHandler, validator, consoleManager, commands) {
37
+ this.logHandler = logHandler;
38
+ this.validator = validator;
39
+ this.consoleManager = consoleManager;
40
+ this.commands = commands;
41
+ }
42
+ handle(event) {
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ // Check if a command is matched
45
+ const command = this.commands.find(command => command.name === event.payload.name);
46
+ if (command === undefined) {
47
+ throw new command_not_found_error_1.CommandNotFoundError(event.payload.name);
48
+ }
49
+ const mappedArguments = (0, class_transformer_1.plainToInstance)(command.optionsType, event.payload.arguments);
50
+ // Validates if all the conditions are respected in the expected type.
51
+ const errors = yield this.validator.validate(mappedArguments);
52
+ if (errors.length !== 0) {
53
+ // list the errors and return
54
+ errors.forEach(error => {
55
+ this.consoleManager.writeLine("Errors with argument '" + error.property + "'. The following constraints failed:");
56
+ for (const constraint in error.constraints) {
57
+ const message = error.constraints[constraint];
58
+ this.consoleManager.writeLine("/t/t- [" + constraint + "]: " + message);
59
+ }
60
+ });
61
+ return new command_event_response_type_1.CommandEventResponse(event, exit_code_enum_1.ExitCodeEnum.Error);
62
+ }
63
+ // Execute the command
64
+ const exitCode = yield command.run(
65
+ // @ts-ignore Needs to be ignored since we know we are casting it into the expected type.
66
+ mappedArguments);
67
+ // Log the status and the command
68
+ let status;
69
+ switch (exitCode) {
70
+ case exit_code_enum_1.ExitCodeEnum.Success:
71
+ status = "Success";
72
+ break;
73
+ default:
74
+ status = "Error";
75
+ break;
76
+ }
77
+ this.consoleManager.writeLine("Command '" + event.payload.name + "' exited with code: '" + exitCode + "' (Status: '" + status + "')");
78
+ return new command_event_response_type_1.CommandEventResponse(event, exitCode);
79
+ });
80
+ }
81
+ supports(event) {
82
+ return event.payload instanceof command_event_payload_1.CommandEventPayload;
83
+ }
84
+ };
85
+ CliEventHandler = __decorate([
86
+ (0, common_1.tag)(common_1.ServiceDefinitionTagEnum.EventHandler),
87
+ (0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
88
+ (0, tsyringe_1.injectable)(),
89
+ __param(0, (0, tsyringe_1.inject)("LogHandlerInterface")),
90
+ __param(3, (0, tsyringe_1.injectAll)(common_1.ServiceDefinitionTagEnum.Command)),
91
+ __metadata("design:paramtypes", [Object, class_validator_1.Validator,
92
+ console_manager_1.ConsoleManager, Array])
93
+ ], CliEventHandler);
94
+ exports.CliEventHandler = CliEventHandler;
95
+ //# sourceMappingURL=cli.event-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.event-handler.js","sourceRoot":"","sources":["../../../../src/event-handlers/cli.event-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cli.event-handler"), exports);
18
+ //# sourceMappingURL=event-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-handlers.js","sourceRoot":"","sources":["../../../../src/event-handlers/event-handlers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommandEventPayload = void 0;
4
+ class CommandEventPayload {
5
+ constructor(name, scriptPath) {
6
+ this.name = name;
7
+ this.scriptPath = scriptPath;
8
+ this.arguments = {};
9
+ }
10
+ }
11
+ exports.CommandEventPayload = CommandEventPayload;
12
+ //# sourceMappingURL=command.event-payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.event-payload.js","sourceRoot":"","sources":["../../../../src/event-payloads/command.event-payload.ts"],"names":[],"mappings":";;;AAAA,MAAa,mBAAmB;IAG5B,YAAmB,IAAY,EAAS,UAAkB;QAAvC,SAAI,GAAJ,IAAI,CAAQ;QAAS,eAAU,GAAV,UAAU,CAAQ;QAF1D,cAAS,GAAiD,EAAE,CAAC;IAG7D,CAAC;CACJ;AALD,kDAKC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./command.event-payload"), exports);
18
+ //# sourceMappingURL=event-payloads.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-payloads.js","sourceRoot":"","sources":["../../../../src/event-payloads/event-payloads.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=command.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.interface.js","sourceRoot":"","sources":["../../../../src/interfaces/command.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./command.interface"), exports);
18
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/interfaces/interfaces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ConsoleManager = void 0;
10
+ const tsyringe_1 = require("tsyringe");
11
+ const common_1 = require("@pristine-ts/common");
12
+ const cli_module_keyname_1 = require("../cli.module.keyname");
13
+ let ConsoleManager = class ConsoleManager {
14
+ write(message) {
15
+ process.stdout.write(message);
16
+ }
17
+ writeLine(message) {
18
+ this.write(message + "\n");
19
+ }
20
+ };
21
+ ConsoleManager = __decorate([
22
+ (0, tsyringe_1.injectable)(),
23
+ (0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname)
24
+ ], ConsoleManager);
25
+ exports.ConsoleManager = ConsoleManager;
26
+ //# sourceMappingURL=console.manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.manager.js","sourceRoot":"","sources":["../../../../src/managers/console.manager.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAAoC;AACpC,gDAAiD;AACjD,8DAAuD;AAIhD,IAAM,cAAc,GAApB,MAAM,cAAc;IACvB,KAAK,CAAC,OAAe;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,CAAC,OAAe;QACrB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC/B,CAAC;CACJ,CAAA;AARY,cAAc;IAF1B,IAAA,qBAAU,GAAE;IACZ,IAAA,qBAAY,EAAC,qCAAgB,CAAC;GAClB,cAAc,CAQ1B;AARY,wCAAc"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./console.manager"), exports);
18
+ //# sourceMappingURL=managers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managers.js","sourceRoot":"","sources":["../../../../src/managers/managers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CommandEventMapper = void 0;
10
+ const core_1 = require("@pristine-ts/core");
11
+ const tsyringe_1 = require("tsyringe");
12
+ const command_event_payload_1 = require("../event-payloads/command.event-payload");
13
+ const common_1 = require("@pristine-ts/common");
14
+ const cli_module_keyname_1 = require("../cli.module.keyname");
15
+ let CommandEventMapper = class CommandEventMapper {
16
+ supportsMapping(rawEvent, executionContext) {
17
+ return executionContext.keyname === core_1.ExecutionContextKeynameEnum.Cli;
18
+ }
19
+ /**
20
+ * Inspired from: https://github.com/eveningkid/args-parser
21
+ * @param rawEvent
22
+ * @param executionContext
23
+ */
24
+ map(rawEvent, executionContext) {
25
+ if (Array.isArray(rawEvent) === false) {
26
+ throw new Error("If using the 'CLI', process.argv should be passed as the event.");
27
+ }
28
+ if (rawEvent.length < 3) {
29
+ throw new Error("If using the 'CLI', there must be at least one command passed");
30
+ }
31
+ const command = new command_event_payload_1.CommandEventPayload(rawEvent[2], rawEvent[1]);
32
+ // if argument starts with - or --, then there is two options. Either there's an equal sign in the string and after the equal sign is the value or the next argument is actually the value
33
+ // for the value, we need to check if it can be a boolean and if not, if it can be a number. If yes, they should be transformed. Else, the value should be a string.
34
+ // If the argument doesn't start with --, then it's value is simply the true boolean
35
+ const passedArguments = rawEvent.slice(3);
36
+ for (let i = 0; i < passedArguments.length; i++) {
37
+ const arg = passedArguments[i];
38
+ if (arg.startsWith("-") === false) {
39
+ command.arguments[arg] = true;
40
+ continue;
41
+ }
42
+ const numberOfStartingDashes = arg.startsWith("--") ? 2 : 1;
43
+ const argumentName = arg.slice(numberOfStartingDashes);
44
+ // If there are no more passed arguments or the next one also starts with '-' or '--', then simply assign true.
45
+ if ((i + 1) >= passedArguments.length || passedArguments[i + 1].startsWith('-')) {
46
+ command.arguments[argumentName] = true;
47
+ continue;
48
+ }
49
+ const argumentValue = passedArguments[i + 1];
50
+ // Don't forget to increase the index by more than one since we have dealth with the value already.
51
+ i++;
52
+ let parsedValue = parseFloat(argumentValue);
53
+ if (!isNaN(parsedValue)) {
54
+ command.arguments[argumentName] = parsedValue;
55
+ continue;
56
+ }
57
+ parsedValue = argumentValue.toLowerCase();
58
+ if (parsedValue === "true") {
59
+ command.arguments[argumentName] = true;
60
+ continue;
61
+ }
62
+ else if (parsedValue === "false") {
63
+ command.arguments[argumentName] = false;
64
+ continue;
65
+ }
66
+ command.arguments[argumentName] = argumentValue;
67
+ }
68
+ return {
69
+ events: [new core_1.Event("command", command)],
70
+ executionOrder: "sequential",
71
+ };
72
+ }
73
+ supportsReverseMapping(eventResponse, response, executionContext) {
74
+ return executionContext.keyname === core_1.ExecutionContextKeynameEnum.Cli;
75
+ }
76
+ /**
77
+ * We want to support returning an exit code directly. This means that in the cli.ts file of the customers, they can directly do:
78
+ * process.exit(await kernel.handle(process.argv, {keyname:ExecutionContextKeynameEnum.Cli}));
79
+ * @param eventResponse
80
+ * @param response
81
+ * @param executionContext
82
+ */
83
+ reverseMap(eventResponse, response, executionContext) {
84
+ return eventResponse.response;
85
+ }
86
+ };
87
+ CommandEventMapper = __decorate([
88
+ (0, common_1.tag)(common_1.ServiceDefinitionTagEnum.EventMapper),
89
+ (0, common_1.moduleScoped)(cli_module_keyname_1.CliModuleKeyname),
90
+ (0, tsyringe_1.injectable)()
91
+ ], CommandEventMapper);
92
+ exports.CommandEventMapper = CommandEventMapper;
93
+ //# sourceMappingURL=command-event.mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-event.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/command-event.mapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./command-event.mapper"), exports);
18
+ //# sourceMappingURL=mappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mappers.js","sourceRoot":"","sources":["../../../../src/mappers/mappers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommandEventResponse = void 0;
4
+ const core_1 = require("@pristine-ts/core");
5
+ class CommandEventResponse extends core_1.EventResponse {
6
+ }
7
+ exports.CommandEventResponse = CommandEventResponse;
8
+ //# sourceMappingURL=command-event-response.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-event-response.type.js","sourceRoot":"","sources":["../../../../src/types/command-event-response.type.ts"],"names":[],"mappings":";;;AAAA,4CAAgD;AAIhD,MAAa,oBAAqB,SAAQ,oBAAyD;CAAG;AAAtG,oDAAsG"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommandEvent = void 0;
4
+ const core_1 = require("@pristine-ts/core");
5
+ class CommandEvent extends core_1.Event {
6
+ }
7
+ exports.CommandEvent = CommandEvent;
8
+ //# sourceMappingURL=command-event.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-event.type.js","sourceRoot":"","sources":["../../../../src/types/command-event.type.ts"],"names":[],"mappings":";;;AAAA,4CAAwC;AAGxC,MAAa,YAAa,SAAQ,YAA0B;CAAG;AAA/D,oCAA+D"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./command-event.type"), exports);
18
+ __exportStar(require("./command-event-response.type"), exports);
19
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,gEAA8C"}
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ require('./cli.js');
4
+ //# sourceMappingURL=bin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../../src/bin.ts"],"names":[],"mappings":";;AACA,OAAO,CAAC,UAAU,CAAC,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { CliModuleKeyname } from "./cli.module.keyname";
2
+ import { CoreModule } from "@pristine-ts/core";
3
+ import { ValidationModule } from "@pristine-ts/validation";
4
+ import { LoggingModule } from "@pristine-ts/logging";
5
+ export * from "./commands/commands";
6
+ export * from "./enums/enums";
7
+ export * from "./errors/errors";
8
+ export * from "./event-handlers/event-handlers";
9
+ export * from "./event-payloads/event-payloads";
10
+ export * from "./interfaces/interfaces";
11
+ export * from "./managers/managers";
12
+ export * from "./mappers/mappers";
13
+ export * from "./types/types";
14
+ export const CliModule = {
15
+ keyname: CliModuleKeyname,
16
+ configurationDefinitions: [],
17
+ importModules: [
18
+ CoreModule,
19
+ LoggingModule,
20
+ ValidationModule,
21
+ ]
22
+ };
23
+ //# sourceMappingURL=cli.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.module.js","sourceRoot":"","sources":["../../../src/cli.module.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAEnD,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAE9B,MAAM,CAAC,MAAM,SAAS,GAAoB;IACtC,OAAO,EAAE,gBAAgB;IACzB,wBAAwB,EAAE,EACzB;IACD,aAAa,EAAE;QACX,UAAU;QACV,aAAa;QACb,gBAAgB;KACnB;CACJ,CAAA"}
@@ -0,0 +1,2 @@
1
+ export const CliModuleKeyname = "pristine.cli";
2
+ //# sourceMappingURL=cli.module.keyname.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.module.keyname.js","sourceRoot":"","sources":["../../../src/cli.module.keyname.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAW,cAAc,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./help.command";
2
+ export * from "./list.command";
3
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/commands/commands.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,51 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
11
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
12
+ return new (P || (P = Promise))(function (resolve, reject) {
13
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
14
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
15
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
16
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
17
+ });
18
+ };
19
+ import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
20
+ import { injectable } from "tsyringe";
21
+ import { ConsoleManager } from "../managers/console.manager";
22
+ import { ExitCodeEnum } from "../enums/exit-code.enum";
23
+ import { CliModuleKeyname } from "../cli.module.keyname";
24
+ let HelpCommand = class HelpCommand {
25
+ constructor(consoleManager) {
26
+ this.consoleManager = consoleManager;
27
+ this.optionsType = null;
28
+ this.name = "help";
29
+ }
30
+ run(args) {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ this.consoleManager.writeLine("Pristine CLI Module (help)");
33
+ this.consoleManager.writeLine("");
34
+ this.consoleManager.writeLine("To implement your own command:");
35
+ this.consoleManager.writeLine(" 1- Implement the 'CommandInterface' from '@pristine-ts/cli'");
36
+ this.consoleManager.writeLine(" 2- Tag it with the `@tag(ServiceDefinitionTagEnum.Command)` decorator");
37
+ this.consoleManager.writeLine(" 3- Modify your package.json file to include the path to your COMPILED js module: `{'pristine': { 'appModule': { 'cjsPath': 'RELATIVE_PATH_TO_YOUR_MODULE_COMPILE_FOR_CJS'}}}`");
38
+ this.consoleManager.writeLine(" 4- Add your command to the `package.json` such as `'scripts': { 'my_command': 'pristine YOUR_COMMAND_HERE YOUR_ARGUMENTS_HERE'}`");
39
+ this.consoleManager.writeLine(" 5- Execute your command.");
40
+ return ExitCodeEnum.Success;
41
+ });
42
+ }
43
+ };
44
+ HelpCommand = __decorate([
45
+ tag(ServiceDefinitionTagEnum.Command),
46
+ moduleScoped(CliModuleKeyname),
47
+ injectable(),
48
+ __metadata("design:paramtypes", [ConsoleManager])
49
+ ], HelpCommand);
50
+ export { HelpCommand };
51
+ //# sourceMappingURL=help.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.command.js","sourceRoot":"","sources":["../../../../src/commands/help.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,YAAY,EAAE,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAKhD,IAAM,WAAW,GAAjB,MAAM,WAAW;IAKpB,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAJ3D,gBAAW,GAAG,IAAI,CAAC;QAEnB,SAAI,GAAG,MAAM,CAAC;IAGd,CAAC;IAEK,GAAG,CAAC,IAAS;;YACf,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;YAC5D,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACjC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAA;YAC/D,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,+DAA+D,CAAC,CAAC;YAC/F,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,yEAAyE,CAAC,CAAC;YACzG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,iLAAiL,CAAC,CAAA;YAChN,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,oIAAoI,CAAC,CAAC;YACpK,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAA;YAE3D,OAAO,YAAY,CAAC,OAAO,CAAC;QAChC,CAAC;KAAA;CACJ,CAAA;AApBY,WAAW;IAHvB,GAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC;IACrC,YAAY,CAAC,gBAAgB,CAAC;IAC9B,UAAU,EAAE;qCAMoC,cAAc;GALlD,WAAW,CAoBvB;SApBY,WAAW"}
@@ -0,0 +1,51 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ import { moduleScoped, ServiceDefinitionTagEnum, tag } from "@pristine-ts/common";
23
+ import { injectable, injectAll } from "tsyringe";
24
+ import { ConsoleManager } from "../managers/console.manager";
25
+ import { ExitCodeEnum } from "../enums/exit-code.enum";
26
+ import { CliModuleKeyname } from "../cli.module.keyname";
27
+ let ListCommand = class ListCommand {
28
+ constructor(consoleManager, container) {
29
+ this.consoleManager = consoleManager;
30
+ this.container = container;
31
+ this.optionsType = null;
32
+ this.name = "list";
33
+ }
34
+ run(args) {
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ this.consoleManager.writeLine("List of registered commands:");
37
+ const commands = this.container.resolveAll(ServiceDefinitionTagEnum.Command);
38
+ commands.forEach(command => this.consoleManager.writeLine(command.name));
39
+ return ExitCodeEnum.Success;
40
+ });
41
+ }
42
+ };
43
+ ListCommand = __decorate([
44
+ tag(ServiceDefinitionTagEnum.Command),
45
+ moduleScoped(CliModuleKeyname),
46
+ injectable(),
47
+ __param(1, injectAll(ServiceDefinitionTagEnum.CurrentChildContainer)),
48
+ __metadata("design:paramtypes", [ConsoleManager, Object])
49
+ ], ListCommand);
50
+ export { ListCommand };
51
+ //# sourceMappingURL=list.command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.command.js","sourceRoot":"","sources":["../../../../src/commands/list.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAC,YAAY,EAAE,wBAAwB,EAAE,GAAG,EAAC,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAC,UAAU,EAAE,SAAS,EAAsB,MAAM,UAAU,CAAC;AAEpE,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAKhD,IAAM,WAAW,GAAjB,MAAM,WAAW;IACpB,YACqB,cAA8B,EAC6B,SAA8B;QADzF,mBAAc,GAAd,cAAc,CAAgB;QAC6B,cAAS,GAAT,SAAS,CAAqB;QAG9G,gBAAW,GAAG,IAAI,CAAC;QACnB,SAAI,GAAG,MAAM,CAAC;IAHd,CAAC;IAKK,GAAG,CAAC,IAAS;;YACf,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;YAC9D,MAAM,QAAQ,GAA4B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YACtG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAEzE,OAAO,YAAY,CAAC,OAAO,CAAC;QAChC,CAAC;KAAA;CACJ,CAAA;AAhBY,WAAW;IAHvB,GAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC;IACrC,YAAY,CAAC,gBAAgB,CAAC;IAC9B,UAAU,EAAE;IAIJ,WAAA,SAAS,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAA;qCADzB,cAAc;GAF1C,WAAW,CAgBvB;SAhBY,WAAW"}
@@ -0,0 +1,2 @@
1
+ export * from "./exit-code.enum";
2
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/enums/enums.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export var ExitCodeEnum;
2
+ (function (ExitCodeEnum) {
3
+ ExitCodeEnum[ExitCodeEnum["Success"] = 0] = "Success";
4
+ ExitCodeEnum[ExitCodeEnum["Error"] = 1] = "Error";
5
+ })(ExitCodeEnum || (ExitCodeEnum = {}));
6
+ //# sourceMappingURL=exit-code.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exit-code.enum.js","sourceRoot":"","sources":["../../../../src/enums/exit-code.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,qDAAW,CAAA;IACX,iDAAS,CAAA;AACb,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB"}