@naman_deep_singh/server-utils 1.0.3 → 1.0.5

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/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export { ExpressServer, createServer } from './server';
2
2
  export type { ServerInstance, ServerInfo, GrpcService, RpcMethod, WebhookConfig } from './server';
3
+ export { Request, Response, NextFunction, Router, Application } from 'express';
4
+ export type { RequestHandler, ErrorRequestHandler } from 'express';
3
5
  export { createHealthCheck, withHealthCheck, addHealthCheck } from './health';
4
6
  export { createGracefulShutdown, withGracefulShutdown, startServerWithShutdown } from './shutdown';
5
7
  export { createLoggingMiddleware, createErrorHandler, createRequestIdMiddleware, createValidationMiddleware, createRateLimitMiddleware, createAuthMiddleware, withLogging, withErrorHandler, withRequestId, withValidation, withRateLimit, withAuth, validateFields, rateLimit, requireAuth, type ValidationRule, type RateLimitConfig, type AuthConfig } from './middleware';
package/dist/index.js CHANGED
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getEnvBoolean = exports.getEnvNumber = exports.getEnv = exports.requireAuth = exports.rateLimit = exports.validateFields = exports.withAuth = exports.withRateLimit = exports.withValidation = exports.withRequestId = exports.withErrorHandler = exports.withLogging = exports.createAuthMiddleware = exports.createRateLimitMiddleware = exports.createValidationMiddleware = exports.createRequestIdMiddleware = exports.createErrorHandler = exports.createLoggingMiddleware = exports.startServerWithShutdown = exports.withGracefulShutdown = exports.createGracefulShutdown = exports.addHealthCheck = exports.withHealthCheck = exports.createHealthCheck = exports.createServer = exports.ExpressServer = void 0;
3
+ exports.getEnvBoolean = exports.getEnvNumber = exports.getEnv = exports.requireAuth = exports.rateLimit = exports.validateFields = exports.withAuth = exports.withRateLimit = exports.withValidation = exports.withRequestId = exports.withErrorHandler = exports.withLogging = exports.createAuthMiddleware = exports.createRateLimitMiddleware = exports.createValidationMiddleware = exports.createRequestIdMiddleware = exports.createErrorHandler = exports.createLoggingMiddleware = exports.startServerWithShutdown = exports.withGracefulShutdown = exports.createGracefulShutdown = exports.addHealthCheck = exports.withHealthCheck = exports.createHealthCheck = exports.Router = exports.createServer = exports.ExpressServer = void 0;
4
4
  // Core server utilities
5
5
  var server_1 = require("./server");
6
6
  Object.defineProperty(exports, "ExpressServer", { enumerable: true, get: function () { return server_1.ExpressServer; } });
7
7
  Object.defineProperty(exports, "createServer", { enumerable: true, get: function () { return server_1.createServer; } });
8
+ // Express re-exports (to avoid direct Express dependency in services)
9
+ var express_1 = require("express");
10
+ Object.defineProperty(exports, "Router", { enumerable: true, get: function () { return express_1.Router; } });
8
11
  // Health check utilities
9
12
  var health_1 = require("./health");
10
13
  Object.defineProperty(exports, "createHealthCheck", { enumerable: true, get: function () { return health_1.createHealthCheck; } });
package/dist/server.js CHANGED
@@ -22,6 +22,7 @@ class ExpressServer {
22
22
  cors: config.cors ?? true,
23
23
  helmet: config.helmet ?? true,
24
24
  json: config.json ?? true,
25
+ cookieParser: config.cookieParser ?? false,
25
26
  customMiddleware: config.customMiddleware || [],
26
27
  healthCheck: config.healthCheck ?? true,
27
28
  gracefulShutdown: config.gracefulShutdown ?? true,
@@ -56,6 +57,16 @@ class ExpressServer {
56
57
  if (this.config.json) {
57
58
  this.app.use(express_1.default.json());
58
59
  }
60
+ // Apply cookie parser if enabled
61
+ if (this.config.cookieParser) {
62
+ try {
63
+ const cookieParser = require('cookie-parser');
64
+ this.app.use(cookieParser());
65
+ }
66
+ catch (error) {
67
+ console.warn(`${this.config.name}: Cookie parser middleware not available. Install cookie-parser package.`);
68
+ }
69
+ }
59
70
  // Apply custom middleware
60
71
  if (this.config.customMiddleware && this.config.customMiddleware.length > 0) {
61
72
  this.config.customMiddleware.forEach(middleware => {
package/dist/types.d.ts CHANGED
@@ -14,6 +14,7 @@ export interface ServerConfig {
14
14
  cors?: boolean | CorsOptions;
15
15
  helmet?: boolean;
16
16
  json?: boolean;
17
+ cookieParser?: boolean;
17
18
  customMiddleware?: express.RequestHandler[];
18
19
  healthCheck?: boolean | string;
19
20
  gracefulShutdown?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@naman_deep_singh/server-utils",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Extensible server utilities for Express.js microservices with TypeScript",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,10 +18,15 @@
18
18
  "license": "ISC",
19
19
  "packageManager": "pnpm@10.20.0",
20
20
  "dependencies": {
21
- "express": "^4.21.1"
21
+ "express": "^5.1.0",
22
+ "cors": "^2.8.5",
23
+ "helmet": "^8.1.0",
24
+ "cookie-parser": "^1.4.6"
22
25
  },
23
26
  "devDependencies": {
24
- "@types/express": "^4.17.21",
27
+ "@types/express": "^5.0.5",
28
+ "@types/cors": "^2.8.19",
29
+ "@types/cookie-parser": "^1.4.7",
25
30
  "typescript": "^5.9.3"
26
31
  }
27
32
  }
package/src/index.ts CHANGED
@@ -2,6 +2,10 @@
2
2
  export { ExpressServer, createServer } from './server';
3
3
  export type { ServerInstance, ServerInfo, GrpcService, RpcMethod, WebhookConfig } from './server';
4
4
 
5
+ // Express re-exports (to avoid direct Express dependency in services)
6
+ export { Request, Response, NextFunction, Router, Application } from 'express';
7
+ export type { RequestHandler, ErrorRequestHandler } from 'express';
8
+
5
9
  // Health check utilities
6
10
  export { createHealthCheck, withHealthCheck, addHealthCheck } from './health';
7
11
 
package/src/server.ts CHANGED
@@ -83,6 +83,7 @@ export class ExpressServer implements ServerInstance {
83
83
  cors: config.cors ?? true,
84
84
  helmet: config.helmet ?? true,
85
85
  json: config.json ?? true,
86
+ cookieParser: config.cookieParser ?? false,
86
87
  customMiddleware: config.customMiddleware || [],
87
88
  healthCheck: config.healthCheck ?? true,
88
89
  gracefulShutdown: config.gracefulShutdown ?? true,
@@ -120,6 +121,16 @@ export class ExpressServer implements ServerInstance {
120
121
  this.app.use(express.json());
121
122
  }
122
123
 
124
+ // Apply cookie parser if enabled
125
+ if (this.config.cookieParser) {
126
+ try {
127
+ const cookieParser = require('cookie-parser');
128
+ this.app.use(cookieParser());
129
+ } catch (error) {
130
+ console.warn(`${this.config.name}: Cookie parser middleware not available. Install cookie-parser package.`);
131
+ }
132
+ }
133
+
123
134
  // Apply custom middleware
124
135
  if (this.config.customMiddleware && this.config.customMiddleware.length > 0) {
125
136
  this.config.customMiddleware.forEach(middleware => {
package/src/types.ts CHANGED
@@ -16,6 +16,7 @@ export interface ServerConfig {
16
16
  cors?: boolean | CorsOptions;
17
17
  helmet?: boolean;
18
18
  json?: boolean;
19
+ cookieParser?: boolean;
19
20
  customMiddleware?: express.RequestHandler[];
20
21
  healthCheck?: boolean | string;
21
22
  gracefulShutdown?: boolean;