@expressots/core 1.8.1 → 1.9.1

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 (157) hide show
  1. package/lib/CHANGELOG.md +33 -10
  2. package/lib/cjs/application/application-factory.js +83 -0
  3. package/lib/cjs/application/index.js +3 -5
  4. package/lib/cjs/common/color-service.provider.js +46 -0
  5. package/lib/cjs/common/package-resolver.provider.js +35 -0
  6. package/lib/cjs/console/console.js +10 -33
  7. package/lib/cjs/controller/base-controller.js +1 -14
  8. package/lib/cjs/decorator/scope-binding.js +30 -0
  9. package/lib/cjs/error/report.js +14 -5
  10. package/lib/cjs/index.js +2 -2
  11. package/lib/cjs/middleware/index.js +5 -0
  12. package/lib/cjs/middleware/interfaces/body-parser.interface.js +2 -0
  13. package/lib/cjs/middleware/interfaces/compression.interface.js +2 -0
  14. package/lib/cjs/middleware/interfaces/cors.interface.js +2 -0
  15. package/lib/cjs/middleware/interfaces/serve-static.interface.js +2 -0
  16. package/lib/cjs/middleware/middleware-resolver.js +67 -0
  17. package/lib/cjs/middleware/middleware-service.js +145 -0
  18. package/lib/cjs/provider/dto-validator/dto-validator.provider.js +62 -0
  19. package/lib/cjs/{environment/env-validator.js → provider/environment/env-validator.provider.js} +16 -10
  20. package/lib/cjs/provider/index.js +11 -0
  21. package/lib/cjs/provider/logger/logger-service.js +114 -0
  22. package/lib/cjs/provider/provider-service.js +36 -0
  23. package/lib/cjs/types/application/application-factory.d.ts +34 -0
  24. package/lib/cjs/types/application/application-factory.d.ts.map +1 -0
  25. package/lib/cjs/types/application/index.d.ts +1 -1
  26. package/lib/cjs/types/application/index.d.ts.map +1 -1
  27. package/lib/cjs/types/common/color-service.provider.d.ts +30 -0
  28. package/lib/cjs/types/common/color-service.provider.d.ts.map +1 -0
  29. package/lib/cjs/types/common/package-resolver.provider.d.ts +9 -0
  30. package/lib/cjs/types/common/package-resolver.provider.d.ts.map +1 -0
  31. package/lib/cjs/types/console/console.d.ts +1 -1
  32. package/lib/cjs/types/console/console.d.ts.map +1 -1
  33. package/lib/cjs/types/controller/base-controller.d.ts +4 -10
  34. package/lib/cjs/types/controller/base-controller.d.ts.map +1 -1
  35. package/lib/cjs/types/decorator/scope-binding.d.ts +30 -0
  36. package/lib/cjs/types/decorator/scope-binding.d.ts.map +1 -1
  37. package/lib/cjs/types/error/report.d.ts +5 -3
  38. package/lib/cjs/types/error/report.d.ts.map +1 -1
  39. package/lib/cjs/types/index.d.ts +2 -2
  40. package/lib/cjs/types/index.d.ts.map +1 -1
  41. package/lib/cjs/types/middleware/index.d.ts +5 -0
  42. package/lib/cjs/types/middleware/index.d.ts.map +1 -0
  43. package/lib/cjs/types/middleware/interfaces/body-parser.interface.d.ts +34 -0
  44. package/lib/cjs/types/middleware/interfaces/body-parser.interface.d.ts.map +1 -0
  45. package/lib/cjs/types/middleware/interfaces/compression.interface.d.ts +99 -0
  46. package/lib/cjs/types/middleware/interfaces/compression.interface.d.ts.map +1 -0
  47. package/lib/cjs/types/middleware/interfaces/cors.interface.d.ts +58 -0
  48. package/lib/cjs/types/middleware/interfaces/cors.interface.d.ts.map +1 -0
  49. package/lib/cjs/types/middleware/interfaces/serve-static.interface.d.ts +71 -0
  50. package/lib/cjs/types/middleware/interfaces/serve-static.interface.d.ts.map +1 -0
  51. package/lib/cjs/types/middleware/middleware-resolver.d.ts +12 -0
  52. package/lib/cjs/types/middleware/middleware-resolver.d.ts.map +1 -0
  53. package/lib/cjs/types/middleware/middleware-service.d.ts +137 -0
  54. package/lib/cjs/types/middleware/middleware-service.d.ts.map +1 -0
  55. package/lib/cjs/types/provider/dto-validator/dto-validator.provider.d.ts +12 -0
  56. package/lib/cjs/types/provider/dto-validator/dto-validator.provider.d.ts.map +1 -0
  57. package/lib/cjs/types/{environment/env-validator.d.ts → provider/environment/env-validator.provider.d.ts} +7 -4
  58. package/lib/cjs/types/provider/environment/env-validator.provider.d.ts.map +1 -0
  59. package/lib/cjs/types/provider/index.d.ts +5 -0
  60. package/lib/cjs/types/provider/index.d.ts.map +1 -0
  61. package/lib/cjs/types/provider/logger/logger-service.d.ts +50 -0
  62. package/lib/cjs/types/provider/logger/logger-service.d.ts.map +1 -0
  63. package/lib/{esm/types/logger/general-logger.d.ts → cjs/types/provider/logger/winston-logger.d.ts} +1 -1
  64. package/lib/cjs/types/provider/logger/winston-logger.d.ts.map +1 -0
  65. package/lib/cjs/types/provider/provider-service.d.ts +31 -0
  66. package/lib/cjs/types/provider/provider-service.d.ts.map +1 -0
  67. package/lib/esm/application/application-factory.js +72 -0
  68. package/lib/esm/application/index.js +3 -5
  69. package/lib/esm/common/color-service.provider.js +46 -0
  70. package/lib/esm/common/package-resolver.provider.js +35 -0
  71. package/lib/esm/console/console.js +10 -33
  72. package/lib/esm/controller/base-controller.js +1 -15
  73. package/lib/esm/decorator/scope-binding.js +30 -0
  74. package/lib/esm/error/report.js +15 -5
  75. package/lib/esm/index.mjs +2 -2
  76. package/lib/esm/middleware/index.js +5 -0
  77. package/lib/esm/middleware/interfaces/body-parser.interface.js +2 -0
  78. package/lib/esm/middleware/interfaces/compression.interface.js +2 -0
  79. package/lib/esm/middleware/interfaces/cors.interface.js +2 -0
  80. package/lib/esm/middleware/interfaces/serve-static.interface.js +2 -0
  81. package/lib/esm/middleware/middleware-resolver.js +68 -0
  82. package/lib/esm/middleware/middleware-service.js +144 -0
  83. package/lib/esm/provider/dto-validator/dto-validator.provider.js +53 -0
  84. package/lib/esm/{environment/env-validator.js → provider/environment/env-validator.provider.js} +17 -10
  85. package/lib/esm/provider/index.js +11 -0
  86. package/lib/esm/provider/logger/logger-service.js +115 -0
  87. package/lib/esm/provider/provider-service.js +38 -0
  88. package/lib/esm/types/application/application-factory.d.ts +34 -0
  89. package/lib/esm/types/application/application-factory.d.ts.map +1 -0
  90. package/lib/esm/types/application/index.d.ts +1 -1
  91. package/lib/esm/types/application/index.d.ts.map +1 -1
  92. package/lib/esm/types/common/color-service.provider.d.ts +30 -0
  93. package/lib/esm/types/common/color-service.provider.d.ts.map +1 -0
  94. package/lib/esm/types/common/package-resolver.provider.d.ts +9 -0
  95. package/lib/esm/types/common/package-resolver.provider.d.ts.map +1 -0
  96. package/lib/esm/types/console/console.d.ts +1 -1
  97. package/lib/esm/types/console/console.d.ts.map +1 -1
  98. package/lib/esm/types/controller/base-controller.d.ts +4 -10
  99. package/lib/esm/types/controller/base-controller.d.ts.map +1 -1
  100. package/lib/esm/types/decorator/scope-binding.d.ts +30 -0
  101. package/lib/esm/types/decorator/scope-binding.d.ts.map +1 -1
  102. package/lib/esm/types/error/report.d.ts +5 -3
  103. package/lib/esm/types/error/report.d.ts.map +1 -1
  104. package/lib/esm/types/index.d.ts +2 -2
  105. package/lib/esm/types/index.d.ts.map +1 -1
  106. package/lib/esm/types/middleware/index.d.ts +5 -0
  107. package/lib/esm/types/middleware/index.d.ts.map +1 -0
  108. package/lib/esm/types/middleware/interfaces/body-parser.interface.d.ts +34 -0
  109. package/lib/esm/types/middleware/interfaces/body-parser.interface.d.ts.map +1 -0
  110. package/lib/esm/types/middleware/interfaces/compression.interface.d.ts +99 -0
  111. package/lib/esm/types/middleware/interfaces/compression.interface.d.ts.map +1 -0
  112. package/lib/esm/types/middleware/interfaces/cors.interface.d.ts +58 -0
  113. package/lib/esm/types/middleware/interfaces/cors.interface.d.ts.map +1 -0
  114. package/lib/esm/types/middleware/interfaces/serve-static.interface.d.ts +71 -0
  115. package/lib/esm/types/middleware/interfaces/serve-static.interface.d.ts.map +1 -0
  116. package/lib/esm/types/middleware/middleware-resolver.d.ts +12 -0
  117. package/lib/esm/types/middleware/middleware-resolver.d.ts.map +1 -0
  118. package/lib/esm/types/middleware/middleware-service.d.ts +137 -0
  119. package/lib/esm/types/middleware/middleware-service.d.ts.map +1 -0
  120. package/lib/esm/types/provider/dto-validator/dto-validator.provider.d.ts +12 -0
  121. package/lib/esm/types/provider/dto-validator/dto-validator.provider.d.ts.map +1 -0
  122. package/lib/esm/types/{environment/env-validator.d.ts → provider/environment/env-validator.provider.d.ts} +7 -4
  123. package/lib/esm/types/provider/environment/env-validator.provider.d.ts.map +1 -0
  124. package/lib/esm/types/provider/index.d.ts +5 -0
  125. package/lib/esm/types/provider/index.d.ts.map +1 -0
  126. package/lib/esm/types/provider/logger/logger-service.d.ts +50 -0
  127. package/lib/esm/types/provider/logger/logger-service.d.ts.map +1 -0
  128. package/lib/{cjs/types/logger/general-logger.d.ts → esm/types/provider/logger/winston-logger.d.ts} +1 -1
  129. package/lib/esm/types/provider/logger/winston-logger.d.ts.map +1 -0
  130. package/lib/esm/types/provider/provider-service.d.ts +31 -0
  131. package/lib/esm/types/provider/provider-service.d.ts.map +1 -0
  132. package/lib/package.json +7 -4
  133. package/package.json +7 -4
  134. package/lib/cjs/application/application.js +0 -141
  135. package/lib/cjs/environment/index.js +0 -5
  136. package/lib/cjs/logger/index.js +0 -7
  137. package/lib/cjs/types/application/application.d.ts +0 -70
  138. package/lib/cjs/types/application/application.d.ts.map +0 -1
  139. package/lib/cjs/types/environment/env-validator.d.ts.map +0 -1
  140. package/lib/cjs/types/environment/index.d.ts +0 -2
  141. package/lib/cjs/types/environment/index.d.ts.map +0 -1
  142. package/lib/cjs/types/logger/general-logger.d.ts.map +0 -1
  143. package/lib/cjs/types/logger/index.d.ts +0 -2
  144. package/lib/cjs/types/logger/index.d.ts.map +0 -1
  145. package/lib/esm/application/application.js +0 -144
  146. package/lib/esm/environment/index.js +0 -5
  147. package/lib/esm/logger/index.js +0 -7
  148. package/lib/esm/types/application/application.d.ts +0 -70
  149. package/lib/esm/types/application/application.d.ts.map +0 -1
  150. package/lib/esm/types/environment/env-validator.d.ts.map +0 -1
  151. package/lib/esm/types/environment/index.d.ts +0 -2
  152. package/lib/esm/types/environment/index.d.ts.map +0 -1
  153. package/lib/esm/types/logger/general-logger.d.ts.map +0 -1
  154. package/lib/esm/types/logger/index.d.ts +0 -2
  155. package/lib/esm/types/logger/index.d.ts.map +0 -1
  156. /package/lib/cjs/{logger/general-logger.js → provider/logger/winston-logger.js} +0 -0
  157. /package/lib/esm/{logger/general-logger.js → provider/logger/winston-logger.js} +0 -0
@@ -0,0 +1,31 @@
1
+ import { Logger } from "./logger/logger-service";
2
+ import { EnvValidatorProvider } from "./environment/env-validator.provider";
3
+ /**
4
+ * Interface defining the methods for the Provider class.
5
+ */
6
+ interface IProvider {
7
+ /**
8
+ * Returns an instance of the `EnvValidatorProvider`.
9
+ */
10
+ envValidator: EnvValidatorProvider;
11
+ /**
12
+ * Returns an instance of the `Logger`.
13
+ */
14
+ logger: Logger;
15
+ }
16
+ /**
17
+ * Class responsible for providing singleton instances of various services.
18
+ *
19
+ * This class implements the IProvider interface and is decorated with a
20
+ * singleton provider to ensure a single instance is reused.
21
+ */
22
+ declare class Provider implements IProvider {
23
+ envValidator: EnvValidatorProvider;
24
+ logger: Logger;
25
+ /**
26
+ * Initializes the instances of the various providers.
27
+ */
28
+ constructor();
29
+ }
30
+ export { IProvider, Provider };
31
+ //# sourceMappingURL=provider-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-service.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/provider/provider-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E;;GAEG;AACH,UAAU,SAAS;IACjB;;OAEG;IACH,YAAY,EAAE,oBAAoB,CAAC;IAEnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,cACM,QAAS,YAAW,SAAS;IACjC,YAAY,EAAE,oBAAoB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;;CAKJ;AAED,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC"}
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expressots/core",
3
- "version": "1.8.1",
3
+ "version": "1.9.0",
4
4
  "description": "Expressots - modern, fast, lightweight nodejs web framework (@core)",
5
5
  "author": "Richard Zampieri",
6
6
  "main": "./lib/cjs/index.js",
@@ -63,12 +63,11 @@
63
63
  "coverage": "vitest run --coverage",
64
64
  "test": "vitest run",
65
65
  "test:watch": "vitest",
66
- "format:write": "prettier --write \"packages/**/*.ts\" --cache",
66
+ "format": "prettier --write \"packages/**/*.ts\" --cache",
67
67
  "lint": "eslint \"packages/**/*.ts\"",
68
68
  "lint:fix": "eslint \"packages/**/*.ts\" --fix"
69
69
  },
70
70
  "dependencies": {
71
- "chalk": "^4.1.2",
72
71
  "dotenv": "^16.0.3",
73
72
  "express": "^4.18.2",
74
73
  "inversify": "^6.0.1",
@@ -81,6 +80,7 @@
81
80
  "devDependencies": {
82
81
  "@commitlint/cli": "^17.7.1",
83
82
  "@commitlint/config-conventional": "^17.7.0",
83
+ "@expressots/adapter-express": "latest",
84
84
  "@release-it/conventional-changelog": "^7.0.1",
85
85
  "@types/express": "^4.17.17",
86
86
  "@types/node": "^20.4.9",
@@ -94,7 +94,10 @@
94
94
  "ts-jest": "^29.0.5",
95
95
  "typescript": "^5.0.3",
96
96
  "vite": "4.4.9",
97
- "vitest": "0.34.3"
97
+ "vitest": "0.34.4"
98
+ },
99
+ "peerDependencies": {
100
+ "@expressots/adapter-express": "latest"
98
101
  },
99
102
  "release-it": {
100
103
  "git": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expressots/core",
3
- "version": "1.8.1",
3
+ "version": "1.9.1",
4
4
  "description": "Expressots - modern, fast, lightweight nodejs web framework (@core)",
5
5
  "author": "Richard Zampieri",
6
6
  "main": "./lib/cjs/index.js",
@@ -63,12 +63,11 @@
63
63
  "coverage": "vitest run --coverage",
64
64
  "test": "vitest run",
65
65
  "test:watch": "vitest",
66
- "format:write": "prettier --write \"packages/**/*.ts\" --cache",
66
+ "format": "prettier --write \"packages/**/*.ts\" --cache",
67
67
  "lint": "eslint \"packages/**/*.ts\"",
68
68
  "lint:fix": "eslint \"packages/**/*.ts\" --fix"
69
69
  },
70
70
  "dependencies": {
71
- "chalk": "^4.1.2",
72
71
  "dotenv": "^16.0.3",
73
72
  "express": "^4.18.2",
74
73
  "inversify": "^6.0.1",
@@ -81,6 +80,7 @@
81
80
  "devDependencies": {
82
81
  "@commitlint/cli": "^17.7.1",
83
82
  "@commitlint/config-conventional": "^17.7.0",
83
+ "@expressots/adapter-express": "latest",
84
84
  "@release-it/conventional-changelog": "^7.0.1",
85
85
  "@types/express": "^4.17.17",
86
86
  "@types/node": "^20.4.9",
@@ -94,7 +94,10 @@
94
94
  "ts-jest": "^29.0.5",
95
95
  "typescript": "^5.0.3",
96
96
  "vite": "4.4.9",
97
- "vitest": "0.34.3"
97
+ "vitest": "0.34.4"
98
+ },
99
+ "peerDependencies": {
100
+ "@expressots/adapter-express": "latest"
98
101
  },
99
102
  "release-it": {
100
103
  "git": {
@@ -1,141 +0,0 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- var Application_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ServerEnvironment = exports.Application = exports.AppInstance = void 0;
17
- const process_1 = __importDefault(require("process"));
18
- const express_1 = __importDefault(require("express"));
19
- const inversify_binding_decorators_1 = require("inversify-binding-decorators");
20
- const inversify_express_utils_1 = require("inversify-express-utils");
21
- const console_1 = require("../console/console");
22
- const error_handler_middleware_1 = __importDefault(require("../error/error-handler-middleware"));
23
- /**
24
- * Enum representing possible server environments.
25
- */
26
- var ServerEnvironment;
27
- (function (ServerEnvironment) {
28
- ServerEnvironment["Development"] = "development";
29
- ServerEnvironment["Staging"] = "staging";
30
- ServerEnvironment["Production"] = "production";
31
- })(ServerEnvironment || (exports.ServerEnvironment = ServerEnvironment = {}));
32
- /**
33
- * The Application class provides a way to configure and manage an Express application.
34
- * @provide Application
35
- */
36
- let Application = Application_1 = class Application {
37
- /**
38
- * Constructs a new instance of the Application class.
39
- */
40
- constructor() { }
41
- /**
42
- * Configure services that should be initialized before the server starts.
43
- */
44
- configureServices() { }
45
- /**
46
- * Configure services that should be executed after the server starts.
47
- */
48
- postServerInitialization() { }
49
- /**
50
- * Perform actions or cleanup after the server is shutdown.
51
- */
52
- serverShutdown() { }
53
- /**
54
- * Handles process exit by calling serverShutdown and then exiting the process.
55
- */
56
- handleExit() {
57
- this.serverShutdown();
58
- process_1.default.exit(0);
59
- }
60
- /**
61
- * Create and configure the Express application.
62
- * @param container - The InversifyJS container.
63
- * @param middlewares - An array of Express middlewares to be applied.
64
- * @returns The configured Application instance.
65
- */
66
- create(container, middlewares = []) {
67
- this.configureServices();
68
- const expressServer = new inversify_express_utils_1.InversifyExpressServer(container);
69
- expressServer.setConfig((app) => {
70
- // Detect if a middleware in the array has a body parser. If so, replace the default body parser.
71
- const hasCustomBodyParser = middlewares.some((middleware) => {
72
- const middlewareName = middleware.name.toLowerCase();
73
- return (middlewareName.includes("json") ||
74
- middlewareName.includes("urlencoded"));
75
- });
76
- if (!hasCustomBodyParser) {
77
- /* Default body parser application/json */
78
- app.use(express_1.default.json());
79
- /* Default body parser application/x-www-form-urlencoded */
80
- app.use(express_1.default.urlencoded({ extended: true }));
81
- }
82
- middlewares.forEach((middleware) => {
83
- app.use(middleware);
84
- });
85
- });
86
- expressServer.setErrorConfig((app) => {
87
- app.use(error_handler_middleware_1.default);
88
- });
89
- this.app = expressServer.build();
90
- return this;
91
- }
92
- /**
93
- * Start listening on the given port and environment.
94
- * @param port - The port number to listen on.
95
- * @param environment - The server environment.
96
- * @param consoleMessage - Optional message to display in the console.
97
- */
98
- listen(port, environment, consoleMessage) {
99
- this.port = port;
100
- this.environment = environment;
101
- this.app.listen(this.port, () => {
102
- new console_1.Console().messageServer(this.port, this.environment, consoleMessage);
103
- [
104
- "SIGTERM",
105
- "SIGHUP",
106
- "SIGBREAK",
107
- "SIGQUIT",
108
- "SIGINT",
109
- ].forEach((signal) => {
110
- process_1.default.on(signal, this.handleExit.bind(this));
111
- });
112
- });
113
- this.postServerInitialization();
114
- }
115
- /**
116
- * Configures the application's view engine based on the provided configuration options.
117
- *
118
- * @public
119
- * @method setEngine
120
- * @template T - A generic type extending from RenderTemplateOptions.
121
- *
122
- * @param {T} options - An object of type T (must be an object that extends RenderTemplateOptions)
123
- * that provides the configuration options for setting the view engine.
124
- * This includes the extension name, view path, and the engine function itself.
125
- */
126
- setEngine(options) {
127
- if ("extName" in options) {
128
- const { extName, viewPath, engine } = options;
129
- this.app.engine(extName, engine);
130
- this.app.set("view engine", extName);
131
- this.app.set("views", viewPath);
132
- }
133
- }
134
- };
135
- exports.Application = Application;
136
- exports.Application = Application = Application_1 = __decorate([
137
- (0, inversify_binding_decorators_1.provide)(Application_1),
138
- __metadata("design:paramtypes", [])
139
- ], Application);
140
- const appServerInstance = new Application();
141
- exports.AppInstance = appServerInstance;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Environments = void 0;
4
- var env_validator_1 = require("./env-validator");
5
- Object.defineProperty(exports, "Environments", { enumerable: true, get: function () { return env_validator_1.Environments; } });
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.log = exports.LogLevel = exports.GeneralLogger = void 0;
4
- var general_logger_1 = require("./general-logger");
5
- Object.defineProperty(exports, "GeneralLogger", { enumerable: true, get: function () { return general_logger_1.GeneralLogger; } });
6
- Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return general_logger_1.LogLevel; } });
7
- Object.defineProperty(exports, "log", { enumerable: true, get: function () { return general_logger_1.log; } });
@@ -1,70 +0,0 @@
1
- import express from "express";
2
- import { Container } from "inversify";
3
- import { IApplicationMessageToConsole } from "../console/console";
4
- import { RenderTemplateOptions } from "../render";
5
- /**
6
- * Enum representing possible server environments.
7
- */
8
- declare enum ServerEnvironment {
9
- Development = "development",
10
- Staging = "staging",
11
- Production = "production"
12
- }
13
- /**
14
- * The Application class provides a way to configure and manage an Express application.
15
- * @provide Application
16
- */
17
- declare class Application {
18
- private app;
19
- private port;
20
- private environment;
21
- /**
22
- * Constructs a new instance of the Application class.
23
- */
24
- constructor();
25
- /**
26
- * Configure services that should be initialized before the server starts.
27
- */
28
- protected configureServices(): void;
29
- /**
30
- * Configure services that should be executed after the server starts.
31
- */
32
- protected postServerInitialization(): void;
33
- /**
34
- * Perform actions or cleanup after the server is shutdown.
35
- */
36
- protected serverShutdown(): void;
37
- /**
38
- * Handles process exit by calling serverShutdown and then exiting the process.
39
- */
40
- private handleExit;
41
- /**
42
- * Create and configure the Express application.
43
- * @param container - The InversifyJS container.
44
- * @param middlewares - An array of Express middlewares to be applied.
45
- * @returns The configured Application instance.
46
- */
47
- create(container: Container, middlewares?: Array<express.RequestHandler>): Application;
48
- /**
49
- * Start listening on the given port and environment.
50
- * @param port - The port number to listen on.
51
- * @param environment - The server environment.
52
- * @param consoleMessage - Optional message to display in the console.
53
- */
54
- listen(port: number, environment: ServerEnvironment, consoleMessage?: IApplicationMessageToConsole): void;
55
- /**
56
- * Configures the application's view engine based on the provided configuration options.
57
- *
58
- * @public
59
- * @method setEngine
60
- * @template T - A generic type extending from RenderTemplateOptions.
61
- *
62
- * @param {T} options - An object of type T (must be an object that extends RenderTemplateOptions)
63
- * that provides the configuration options for setting the view engine.
64
- * This includes the extension name, view path, and the engine function itself.
65
- */
66
- setEngine<T extends RenderTemplateOptions>(options: T): void;
67
- }
68
- declare const appServerInstance: Application;
69
- export { appServerInstance as AppInstance, Application, ServerEnvironment };
70
- //# sourceMappingURL=application.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/application/application.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAW,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAE3E,OAAO,EAAe,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAE/D;;GAEG;AACH,aAAK,iBAAiB;IACpB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAED;;;GAGG;AACH,cACM,WAAW;IACf,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAoB;IAEvC;;OAEG;;IAGH;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAEnC;;OAEG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAE1C;;OAEG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAEhC;;OAEG;IACH,OAAO,CAAC,UAAU;IAKlB;;;;;OAKG;IACI,MAAM,CACX,SAAS,EAAE,SAAS,EACpB,WAAW,GAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAM,GAC9C,WAAW;IAqCd;;;;;OAKG;IACI,MAAM,CACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,iBAAiB,EAC9B,cAAc,CAAC,EAAE,4BAA4B,GAC5C,IAAI;IAuBP;;;;;;;;;;OAUG;IACI,SAAS,CAAC,CAAC,SAAS,qBAAqB,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;CAQpE;AAED,QAAA,MAAM,iBAAiB,EAAE,WAA+B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-validator.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/environment/env-validator.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,cACM,oBAAoB;IACxB;;;;;OAKG;WAEW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,GAAE,GAAe,GAAG,GAAG;IAIlE;;;OAGG;WACW,QAAQ,IAAI,IAAI;CAsC/B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,IAAI,OAAO,GAAG,SAAS,CAAC;QACjC,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;QAC/B,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;KAChC;CACF;AAyBD,OAAO,EAAE,oBAAoB,IAAI,YAAY,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export { Environments } from "./env-validator";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/environment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"general-logger.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/logger/general-logger.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,aAAK,QAAQ;IACX,KAAK,IAAA;IACL,KAAK,IAAA;IACL,IAAI,IAAA;CACL;AAED;;GAEG;AACH,cACM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAS;;IAMvB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;OAGG;IACH,OAAO,CAAC,6BAA6B;IAcrC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;;OAKG;IACI,GAAG,CACR,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,KAAK,GAAG,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,GACf,IAAI;CAyBR;AAGD,QAAA,MAAM,GAAG,aA/BK,QAAQ,WACT,KAAK,GAAG,MAAM,YACb,MAAM,KACf,IA4BwB,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export { GeneralLogger, LogLevel, log } from "./general-logger";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/logger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,144 +0,0 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- var Application_1;
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ServerEnvironment = exports.Application = exports.AppInstance = void 0;
17
- const process_1 = __importDefault(require("process"));
18
- const express_1 = __importDefault(require("express"));
19
- const inversify_binding_decorators_1 = require("inversify-binding-decorators");
20
- const inversify_express_utils_1 = require("inversify-express-utils");
21
- const console_1 = require("../console/console");
22
- const error_handler_middleware_1 = __importDefault(require("../error/error-handler-middleware"));
23
- /**
24
- * Enum representing possible server environments.
25
- */
26
- var ServerEnvironment;
27
- (function (ServerEnvironment) {
28
- ServerEnvironment["Development"] = "development";
29
- ServerEnvironment["Staging"] = "staging";
30
- ServerEnvironment["Production"] = "production";
31
- })(ServerEnvironment || (exports.ServerEnvironment = ServerEnvironment = {}));
32
- /**
33
- * The Application class provides a way to configure and manage an Express application.
34
- * @provide Application
35
- */
36
- let Application = Application_1 = class Application {
37
- app;
38
- port;
39
- environment;
40
- /**
41
- * Constructs a new instance of the Application class.
42
- */
43
- constructor() { }
44
- /**
45
- * Configure services that should be initialized before the server starts.
46
- */
47
- configureServices() { }
48
- /**
49
- * Configure services that should be executed after the server starts.
50
- */
51
- postServerInitialization() { }
52
- /**
53
- * Perform actions or cleanup after the server is shutdown.
54
- */
55
- serverShutdown() { }
56
- /**
57
- * Handles process exit by calling serverShutdown and then exiting the process.
58
- */
59
- handleExit() {
60
- this.serverShutdown();
61
- process_1.default.exit(0);
62
- }
63
- /**
64
- * Create and configure the Express application.
65
- * @param container - The InversifyJS container.
66
- * @param middlewares - An array of Express middlewares to be applied.
67
- * @returns The configured Application instance.
68
- */
69
- create(container, middlewares = []) {
70
- this.configureServices();
71
- const expressServer = new inversify_express_utils_1.InversifyExpressServer(container);
72
- expressServer.setConfig((app) => {
73
- // Detect if a middleware in the array has a body parser. If so, replace the default body parser.
74
- const hasCustomBodyParser = middlewares.some((middleware) => {
75
- const middlewareName = middleware.name.toLowerCase();
76
- return (middlewareName.includes("json") ||
77
- middlewareName.includes("urlencoded"));
78
- });
79
- if (!hasCustomBodyParser) {
80
- /* Default body parser application/json */
81
- app.use(express_1.default.json());
82
- /* Default body parser application/x-www-form-urlencoded */
83
- app.use(express_1.default.urlencoded({ extended: true }));
84
- }
85
- middlewares.forEach((middleware) => {
86
- app.use(middleware);
87
- });
88
- });
89
- expressServer.setErrorConfig((app) => {
90
- app.use(error_handler_middleware_1.default);
91
- });
92
- this.app = expressServer.build();
93
- return this;
94
- }
95
- /**
96
- * Start listening on the given port and environment.
97
- * @param port - The port number to listen on.
98
- * @param environment - The server environment.
99
- * @param consoleMessage - Optional message to display in the console.
100
- */
101
- listen(port, environment, consoleMessage) {
102
- this.port = port;
103
- this.environment = environment;
104
- this.app.listen(this.port, () => {
105
- new console_1.Console().messageServer(this.port, this.environment, consoleMessage);
106
- [
107
- "SIGTERM",
108
- "SIGHUP",
109
- "SIGBREAK",
110
- "SIGQUIT",
111
- "SIGINT",
112
- ].forEach((signal) => {
113
- process_1.default.on(signal, this.handleExit.bind(this));
114
- });
115
- });
116
- this.postServerInitialization();
117
- }
118
- /**
119
- * Configures the application's view engine based on the provided configuration options.
120
- *
121
- * @public
122
- * @method setEngine
123
- * @template T - A generic type extending from RenderTemplateOptions.
124
- *
125
- * @param {T} options - An object of type T (must be an object that extends RenderTemplateOptions)
126
- * that provides the configuration options for setting the view engine.
127
- * This includes the extension name, view path, and the engine function itself.
128
- */
129
- setEngine(options) {
130
- if ("extName" in options) {
131
- const { extName, viewPath, engine } = options;
132
- this.app.engine(extName, engine);
133
- this.app.set("view engine", extName);
134
- this.app.set("views", viewPath);
135
- }
136
- }
137
- };
138
- exports.Application = Application;
139
- exports.Application = Application = Application_1 = __decorate([
140
- (0, inversify_binding_decorators_1.provide)(Application_1),
141
- __metadata("design:paramtypes", [])
142
- ], Application);
143
- const appServerInstance = new Application();
144
- exports.AppInstance = appServerInstance;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Environments = void 0;
4
- var env_validator_1 = require("./env-validator");
5
- Object.defineProperty(exports, "Environments", { enumerable: true, get: function () { return env_validator_1.Environments; } });
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.log = exports.LogLevel = exports.GeneralLogger = void 0;
4
- var general_logger_1 = require("./general-logger");
5
- Object.defineProperty(exports, "GeneralLogger", { enumerable: true, get: function () { return general_logger_1.GeneralLogger; } });
6
- Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return general_logger_1.LogLevel; } });
7
- Object.defineProperty(exports, "log", { enumerable: true, get: function () { return general_logger_1.log; } });
@@ -1,70 +0,0 @@
1
- import express from "express";
2
- import { Container } from "inversify";
3
- import { IApplicationMessageToConsole } from "../console/console";
4
- import { RenderTemplateOptions } from "../render";
5
- /**
6
- * Enum representing possible server environments.
7
- */
8
- declare enum ServerEnvironment {
9
- Development = "development",
10
- Staging = "staging",
11
- Production = "production"
12
- }
13
- /**
14
- * The Application class provides a way to configure and manage an Express application.
15
- * @provide Application
16
- */
17
- declare class Application {
18
- private app;
19
- private port;
20
- private environment;
21
- /**
22
- * Constructs a new instance of the Application class.
23
- */
24
- constructor();
25
- /**
26
- * Configure services that should be initialized before the server starts.
27
- */
28
- protected configureServices(): void;
29
- /**
30
- * Configure services that should be executed after the server starts.
31
- */
32
- protected postServerInitialization(): void;
33
- /**
34
- * Perform actions or cleanup after the server is shutdown.
35
- */
36
- protected serverShutdown(): void;
37
- /**
38
- * Handles process exit by calling serverShutdown and then exiting the process.
39
- */
40
- private handleExit;
41
- /**
42
- * Create and configure the Express application.
43
- * @param container - The InversifyJS container.
44
- * @param middlewares - An array of Express middlewares to be applied.
45
- * @returns The configured Application instance.
46
- */
47
- create(container: Container, middlewares?: Array<express.RequestHandler>): Application;
48
- /**
49
- * Start listening on the given port and environment.
50
- * @param port - The port number to listen on.
51
- * @param environment - The server environment.
52
- * @param consoleMessage - Optional message to display in the console.
53
- */
54
- listen(port: number, environment: ServerEnvironment, consoleMessage?: IApplicationMessageToConsole): void;
55
- /**
56
- * Configures the application's view engine based on the provided configuration options.
57
- *
58
- * @public
59
- * @method setEngine
60
- * @template T - A generic type extending from RenderTemplateOptions.
61
- *
62
- * @param {T} options - An object of type T (must be an object that extends RenderTemplateOptions)
63
- * that provides the configuration options for setting the view engine.
64
- * This includes the extension name, view path, and the engine function itself.
65
- */
66
- setEngine<T extends RenderTemplateOptions>(options: T): void;
67
- }
68
- declare const appServerInstance: Application;
69
- export { appServerInstance as AppInstance, Application, ServerEnvironment };
70
- //# sourceMappingURL=application.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/application/application.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAW,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAE3E,OAAO,EAAe,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAE/D;;GAEG;AACH,aAAK,iBAAiB;IACpB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAED;;;GAGG;AACH,cACM,WAAW;IACf,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAoB;IAEvC;;OAEG;;IAGH;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAEnC;;OAEG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAE1C;;OAEG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAEhC;;OAEG;IACH,OAAO,CAAC,UAAU;IAKlB;;;;;OAKG;IACI,MAAM,CACX,SAAS,EAAE,SAAS,EACpB,WAAW,GAAE,KAAK,CAAC,OAAO,CAAC,cAAc,CAAM,GAC9C,WAAW;IAqCd;;;;;OAKG;IACI,MAAM,CACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,iBAAiB,EAC9B,cAAc,CAAC,EAAE,4BAA4B,GAC5C,IAAI;IAuBP;;;;;;;;;;OAUG;IACI,SAAS,CAAC,CAAC,SAAS,qBAAqB,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;CAQpE;AAED,QAAA,MAAM,iBAAiB,EAAE,WAA+B,CAAC;AAEzD,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-validator.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/environment/env-validator.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,cACM,oBAAoB;IACxB;;;;;OAKG;WAEW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,GAAE,GAAe,GAAG,GAAG;IAIlE;;;OAGG;WACW,QAAQ,IAAI,IAAI;CAsC/B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,IAAI,OAAO,GAAG,SAAS,CAAC;QACjC,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;QAC/B,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;KAChC;CACF;AAyBD,OAAO,EAAE,oBAAoB,IAAI,YAAY,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export { Environments } from "./env-validator";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/environment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"general-logger.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/logger/general-logger.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,aAAK,QAAQ;IACX,KAAK,IAAA;IACL,KAAK,IAAA;IACL,IAAI,IAAA;CACL;AAED;;GAEG;AACH,cACM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAS;;IAMvB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;OAGG;IACH,OAAO,CAAC,6BAA6B;IAcrC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;;OAKG;IACI,GAAG,CACR,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,KAAK,GAAG,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,GACf,IAAI;CAyBR;AAGD,QAAA,MAAM,GAAG,aA/BK,QAAQ,WACT,KAAK,GAAG,MAAM,YACb,MAAM,KACf,IA4BwB,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export { GeneralLogger, LogLevel, log } from "./general-logger";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/core/src/logger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC"}