bootifyjs 1.3.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/examples/index.d.ts +2 -2
- package/dist/examples/index.d.ts.map +1 -1
- package/dist/examples/index.js +15 -15
- package/dist/examples/index.js.map +1 -1
- package/dist/logging/core/logger.provider.d.ts +1 -1
- package/dist/logging/core/logger.provider.d.ts.map +1 -1
- package/dist/logging/core/logger.provider.js +59 -44
- package/dist/logging/core/logger.provider.js.map +1 -1
- package/package.json +2 -1
package/dist/examples/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import "reflect-metadata";
|
|
2
|
+
import "../cache/stores/redis-cache.store";
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAe1B,OAAO,mCAAmC,CAAC"}
|
package/dist/examples/index.js
CHANGED
|
@@ -7,7 +7,6 @@ const dotenv_1 = __importDefault(require("dotenv"));
|
|
|
7
7
|
require("reflect-metadata");
|
|
8
8
|
const api_1 = require("../api");
|
|
9
9
|
const di_container_1 = require("../core/di-container");
|
|
10
|
-
const bootstrap_1 = require("../events/bootstrap");
|
|
11
10
|
const health_controller_1 = require("./controllers/health.controller");
|
|
12
11
|
const todo_controller_1 = require("./controllers/todo.controller");
|
|
13
12
|
dotenv_1.default.config();
|
|
@@ -24,14 +23,15 @@ const envSchema = zod_1.default.object({
|
|
|
24
23
|
});
|
|
25
24
|
// Global middleware implementations
|
|
26
25
|
const corsMiddleware = async (request, reply) => {
|
|
27
|
-
console.log(
|
|
28
|
-
reply.header(
|
|
29
|
-
reply.header(
|
|
30
|
-
reply.header(
|
|
26
|
+
console.log("🌐 CORS middleware executed");
|
|
27
|
+
reply.header("Access-Control-Allow-Origin", "*");
|
|
28
|
+
reply.header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
|
|
29
|
+
reply.header("Access-Control-Allow-Headers", "Content-Type, Authorization");
|
|
31
30
|
};
|
|
32
31
|
const requestTimingMiddleware = async (request, reply) => {
|
|
33
32
|
const startTime = Date.now();
|
|
34
33
|
console.log(`⏱️ Request started: ${request.method} ${request.url}`);
|
|
34
|
+
// Add timing info to request context
|
|
35
35
|
request.startTime = startTime;
|
|
36
36
|
request.logTiming = () => {
|
|
37
37
|
const duration = Date.now() - startTime;
|
|
@@ -39,24 +39,24 @@ const requestTimingMiddleware = async (request, reply) => {
|
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
41
|
const securityHeadersMiddleware = async (request, reply) => {
|
|
42
|
-
console.log(
|
|
43
|
-
reply.header(
|
|
44
|
-
reply.header(
|
|
45
|
-
reply.header(
|
|
46
|
-
reply.header(
|
|
42
|
+
console.log("🔒 Security headers middleware executed");
|
|
43
|
+
reply.header("X-Content-Type-Options", "nosniff");
|
|
44
|
+
reply.header("X-Frame-Options", "DENY");
|
|
45
|
+
reply.header("X-XSS-Protection", "1; mode=block");
|
|
46
|
+
reply.header("Strict-Transport-Security", "max-age=31536000; includeSubDomains");
|
|
47
47
|
};
|
|
48
48
|
const requestLoggingMiddleware = async (request, reply) => {
|
|
49
49
|
const clientIP = request.ip;
|
|
50
|
-
const userAgent = request.headers[
|
|
50
|
+
const userAgent = request.headers["user-agent"] || "Unknown";
|
|
51
51
|
console.log(`📝 Request: ${request.method} ${request.url} from ${clientIP} - ${userAgent}`);
|
|
52
52
|
};
|
|
53
53
|
async function main() {
|
|
54
54
|
// await intitializeLogging()
|
|
55
55
|
const { middleware: jwtAuthMiddleware, authManager } = await (0, basic_usage_1.setupJwtAuth)();
|
|
56
56
|
// Register authManager in DI container for controller injection
|
|
57
|
-
di_container_1.container.register(
|
|
57
|
+
di_container_1.container.register("AuthManager", { useFactory: () => authManager });
|
|
58
58
|
const allComponents = Array.from(di_container_1.container.getRegisteredComponents());
|
|
59
|
-
await
|
|
59
|
+
// await bootstrapEventSystem(allComponents, { useBufferedProcessing: true })
|
|
60
60
|
await (0, cache_1.bootstrapCache)();
|
|
61
61
|
const { app, start } = await (0, api_1.createBootifyApp)({
|
|
62
62
|
controllers: [health_controller_1.HealthController, todo_controller_1.TodoController],
|
|
@@ -71,9 +71,9 @@ async function main() {
|
|
|
71
71
|
corsMiddleware, // 1st: Handle CORS headers
|
|
72
72
|
securityHeadersMiddleware, // 2nd: Add security headers
|
|
73
73
|
requestTimingMiddleware, // 3rd: Start request timing
|
|
74
|
-
requestLoggingMiddleware // 4th: Log request details
|
|
74
|
+
requestLoggingMiddleware, // 4th: Log request details
|
|
75
75
|
],
|
|
76
|
-
enableCookie: true
|
|
76
|
+
enableCookie: true,
|
|
77
77
|
});
|
|
78
78
|
await (0, basic_usage_1.registerJWTAuthRoutes)(app, authManager, jwtAuthMiddleware);
|
|
79
79
|
// Setup context middleware with authentication
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.provider.d.ts","sourceRoot":"","sources":["../../../src/logging/core/logger.provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.provider.d.ts","sourceRoot":"","sources":["../../../src/logging/core/logger.provider.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AAKxB,eAAO,MAAM,YAAY,eAAuB,CAAC;AAIjD,eAAO,MAAM,aAAa,QAAO,IAAI,CAAC,MAqFrC,CAAC"}
|
|
@@ -4,20 +4,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.loggerFactory = exports.LOGGER_TOKEN = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
7
8
|
const pino_1 = __importDefault(require("pino"));
|
|
8
9
|
const AppConfig_1 = require("../../config/AppConfig");
|
|
9
10
|
const core_1 = require("../../core");
|
|
10
11
|
// 1. Define a unique DI token for our logger instance
|
|
11
|
-
exports.LOGGER_TOKEN = Symbol.for(
|
|
12
|
+
exports.LOGGER_TOKEN = Symbol.for("Logger");
|
|
12
13
|
// 2. The factory function
|
|
13
14
|
const loggerFactory = () => {
|
|
14
15
|
const appConfig = AppConfig_1.AppConfig.getInstance();
|
|
15
|
-
console.log(appConfig.get(
|
|
16
|
+
console.log(appConfig.get("LOG_LEVEL"));
|
|
16
17
|
const pinoOptions = {
|
|
17
|
-
level: appConfig.get(
|
|
18
|
-
messageKey:
|
|
18
|
+
level: appConfig.get("LOG_LEVEL"),
|
|
19
|
+
messageKey: "message",
|
|
19
20
|
base: {
|
|
20
|
-
service: appConfig.get(
|
|
21
|
+
service: appConfig.get("SERVICE_NAME"),
|
|
21
22
|
pid: process.pid,
|
|
22
23
|
},
|
|
23
24
|
mixin() {
|
|
@@ -31,48 +32,62 @@ const loggerFactory = () => {
|
|
|
31
32
|
};
|
|
32
33
|
const transportTargets = [];
|
|
33
34
|
// Add console transport for development
|
|
34
|
-
if (appConfig.get(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
35
|
+
// if (appConfig.get("LOG_LEVEL") === "debug") {
|
|
36
|
+
// transportTargets.push({
|
|
37
|
+
// target: "pino-pretty",
|
|
38
|
+
// level: "debug",
|
|
39
|
+
// options: {
|
|
40
|
+
// colorize: true,
|
|
41
|
+
// translateTime: "SYS:standard",
|
|
42
|
+
// ignore: "pid,hostname,service",
|
|
43
|
+
// },
|
|
44
|
+
// });
|
|
45
|
+
// } else {
|
|
46
|
+
// // Structured JSON logs for production
|
|
47
|
+
// }
|
|
48
|
+
transportTargets.push({
|
|
49
|
+
target: "pino/file", // pino/file writes to stdout by default
|
|
50
|
+
level: "info",
|
|
51
|
+
options: {},
|
|
52
|
+
});
|
|
53
|
+
// Add ClickHouse transport if enabled
|
|
54
|
+
// if (appConfig.get("CLICKHOUSE_ENABLED")) {
|
|
55
|
+
// transportTargets.push({
|
|
56
|
+
// target: './clickhouse.transport.js', // Path relative to the running script
|
|
57
|
+
// level: 'info',
|
|
58
|
+
// options: {
|
|
59
|
+
// url: appConfig.get('CLICKHOUSE_URL'),
|
|
60
|
+
// username: appConfig.get('CLICKHOUSE_USER'),
|
|
61
|
+
// password: appConfig.get('CLICKHOUSE_PASSWORD'),
|
|
62
|
+
// database: appConfig.get('CLICKHOUSE_DB'),
|
|
63
|
+
// application: appConfig.get('SERVICE_NAME'),
|
|
64
|
+
// },
|
|
65
|
+
// })
|
|
66
|
+
// transportTargets.push({
|
|
67
|
+
// level: 'info',
|
|
68
|
+
// // target: './clickhouse-transport.js',
|
|
69
|
+
// target: path.join(__dirname, 'clickhouse-transport.js'),
|
|
70
|
+
// options: {
|
|
71
|
+
// url: process.env.CLICKHOUSE_URL || 'http://localhost:8123',
|
|
72
|
+
// username: process.env.CLICKHOUSE_USER || 'default',
|
|
73
|
+
// password: process.env.CLICKHOUSE_PASSWORD || '',
|
|
74
|
+
// database: process.env.CLICKHOUSE_DB || 'default',
|
|
75
|
+
// application: process.env.APP_NAME || 'my-application',
|
|
76
|
+
// },
|
|
77
|
+
// })
|
|
78
|
+
if (process.env.POSTHOG_LOGGING_ENABLED) {
|
|
43
79
|
transportTargets.push({
|
|
44
|
-
target:
|
|
45
|
-
level:
|
|
46
|
-
options: {
|
|
80
|
+
target: path_1.default.join(__dirname, "posthog-transport.js"),
|
|
81
|
+
level: "info",
|
|
82
|
+
options: {
|
|
83
|
+
apiKey: process.env.POSTHOG_API_KEY || "",
|
|
84
|
+
host: process.env.POSTHOG_HOST || "https://us.i.posthog.com",
|
|
85
|
+
serviceName: "bootifyjs",
|
|
86
|
+
instanceId: process.env.INSTANCE_ID || "default",
|
|
87
|
+
},
|
|
47
88
|
});
|
|
48
89
|
}
|
|
49
|
-
|
|
50
|
-
if (appConfig.get('CLICKHOUSE_ENABLED')) {
|
|
51
|
-
// transportTargets.push({
|
|
52
|
-
// target: './clickhouse.transport.js', // Path relative to the running script
|
|
53
|
-
// level: 'info',
|
|
54
|
-
// options: {
|
|
55
|
-
// url: appConfig.get('CLICKHOUSE_URL'),
|
|
56
|
-
// username: appConfig.get('CLICKHOUSE_USER'),
|
|
57
|
-
// password: appConfig.get('CLICKHOUSE_PASSWORD'),
|
|
58
|
-
// database: appConfig.get('CLICKHOUSE_DB'),
|
|
59
|
-
// application: appConfig.get('SERVICE_NAME'),
|
|
60
|
-
// },
|
|
61
|
-
// })
|
|
62
|
-
// transportTargets.push({
|
|
63
|
-
// level: 'info',
|
|
64
|
-
// // target: './clickhouse-transport.js',
|
|
65
|
-
// target: path.join(__dirname, 'clickhouse-transport.js'),
|
|
66
|
-
// options: {
|
|
67
|
-
// url: process.env.CLICKHOUSE_URL || 'http://localhost:8123',
|
|
68
|
-
// username: process.env.CLICKHOUSE_USER || 'default',
|
|
69
|
-
// password: process.env.CLICKHOUSE_PASSWORD || '',
|
|
70
|
-
// database: process.env.CLICKHOUSE_DB || 'default',
|
|
71
|
-
// application: process.env.APP_NAME || 'my-application',
|
|
72
|
-
// },
|
|
73
|
-
// })
|
|
74
|
-
}
|
|
75
|
-
console.log('targets', transportTargets);
|
|
90
|
+
console.log("targets", transportTargets);
|
|
76
91
|
return (0, pino_1.default)({ ...pinoOptions, transport: { targets: transportTargets } });
|
|
77
92
|
};
|
|
78
93
|
exports.loggerFactory = loggerFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.provider.js","sourceRoot":"","sources":["../../../src/logging/core/logger.provider.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"logger.provider.js","sourceRoot":"","sources":["../../../src/logging/core/logger.provider.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bootifyjs",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": "Piyush Priyadarshi",
|
|
6
6
|
"license": "ISC",
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"@types/jsonwebtoken": "^9.0.10",
|
|
55
55
|
"fastify": "^5.4.0",
|
|
56
56
|
"jsonwebtoken": "^9.0.2",
|
|
57
|
+
"posthog-node": "^5.9.3",
|
|
57
58
|
"reflect-metadata": "^0.2.2",
|
|
58
59
|
"zod": "^3.25.76",
|
|
59
60
|
"zod-to-json-schema": "^3.24.6"
|