@ddticketing/common 1.0.0 → 1.0.2

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 (45) hide show
  1. package/dist/errors/bad-request-error.d.ts +11 -0
  2. package/dist/errors/bad-request-error.d.ts.map +1 -0
  3. package/dist/errors/bad-request-error.js +19 -0
  4. package/dist/errors/bad-request-error.js.map +1 -0
  5. package/dist/errors/custom-error.d.ts +9 -0
  6. package/dist/errors/custom-error.d.ts.map +1 -0
  7. package/dist/errors/custom-error.js +11 -0
  8. package/dist/errors/custom-error.js.map +1 -0
  9. package/dist/errors/database-connection-errors.d.ts +10 -0
  10. package/dist/errors/database-connection-errors.d.ts.map +1 -0
  11. package/dist/errors/database-connection-errors.js +19 -0
  12. package/dist/errors/database-connection-errors.js.map +1 -0
  13. package/dist/errors/not-authorized-error.d.ts +9 -0
  14. package/dist/errors/not-authorized-error.d.ts.map +1 -0
  15. package/dist/errors/not-authorized-error.js +16 -0
  16. package/dist/errors/not-authorized-error.js.map +1 -0
  17. package/dist/errors/not-found-errors.d.ts +9 -0
  18. package/dist/errors/not-found-errors.d.ts.map +1 -0
  19. package/dist/errors/not-found-errors.js +16 -0
  20. package/dist/errors/not-found-errors.js.map +1 -0
  21. package/dist/errors/request-validation-errors.d.ts +12 -0
  22. package/dist/errors/request-validation-errors.d.ts.map +1 -0
  23. package/dist/errors/request-validation-errors.js +19 -0
  24. package/dist/errors/request-validation-errors.js.map +1 -0
  25. package/dist/index.d.ts +11 -0
  26. package/dist/index.d.ts.map +1 -0
  27. package/dist/index.js +27 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/middleware/current-user.d.ts +18 -0
  30. package/dist/middleware/current-user.d.ts.map +1 -0
  31. package/dist/middleware/current-user.js +22 -0
  32. package/dist/middleware/current-user.js.map +1 -0
  33. package/dist/middleware/errorHandller.d.ts +3 -0
  34. package/dist/middleware/errorHandller.d.ts.map +1 -0
  35. package/dist/middleware/errorHandller.js +19 -0
  36. package/dist/middleware/errorHandller.js.map +1 -0
  37. package/dist/middleware/require-auth.d.ts +3 -0
  38. package/dist/middleware/require-auth.d.ts.map +1 -0
  39. package/dist/middleware/require-auth.js +12 -0
  40. package/dist/middleware/require-auth.js.map +1 -0
  41. package/dist/middleware/validate-request.d.ts +3 -0
  42. package/dist/middleware/validate-request.d.ts.map +1 -0
  43. package/dist/middleware/validate-request.js +13 -0
  44. package/dist/middleware/validate-request.js.map +1 -0
  45. package/package.json +22 -4
@@ -0,0 +1,11 @@
1
+ import { CustomError } from "./custom-error";
2
+ export declare class BadRequestError extends CustomError {
3
+ statusCode: number;
4
+ reason: string;
5
+ constructor(message: string);
6
+ serialiseErrors(): {
7
+ message: string;
8
+ field?: string;
9
+ }[];
10
+ }
11
+ //# sourceMappingURL=bad-request-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bad-request-error.d.ts","sourceRoot":"","sources":["../../src/errors/bad-request-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,eAAgB,SAAQ,WAAW;IAC5C,UAAU,SAAO;IACjB,MAAM,EAAE,MAAM,CAAC;gBACH,OAAO,EAAE,MAAM;IAM3B,eAAe,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;KAAE,EAAE;CAGxD"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BadRequestError = void 0;
4
+ const custom_error_1 = require("./custom-error");
5
+ class BadRequestError extends custom_error_1.CustomError {
6
+ statusCode = 400;
7
+ reason;
8
+ constructor(message) {
9
+ super(message);
10
+ this.reason = message;
11
+ // Only because we are extending a built-in class
12
+ Object.setPrototypeOf(this, BadRequestError.prototype);
13
+ }
14
+ serialiseErrors() {
15
+ return [{ message: this.reason }];
16
+ }
17
+ }
18
+ exports.BadRequestError = BadRequestError;
19
+ //# sourceMappingURL=bad-request-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bad-request-error.js","sourceRoot":"","sources":["../../src/errors/bad-request-error.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,eAAgB,SAAQ,0BAAW;IAC5C,UAAU,GAAG,GAAG,CAAC;IACjB,MAAM,CAAS;IACf,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,iDAAiD;QACnD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IACD,eAAe;QACX,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;CACA;AAZL,0CAYK"}
@@ -0,0 +1,9 @@
1
+ export declare abstract class CustomError extends Error {
2
+ abstract statusCode: number;
3
+ constructor(message: string);
4
+ abstract serialiseErrors(): {
5
+ message: string;
6
+ field?: string;
7
+ }[];
8
+ }
9
+ //# sourceMappingURL=custom-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-error.d.ts","sourceRoot":"","sources":["../../src/errors/custom-error.ts"],"names":[],"mappings":"AAAA,8BAAsB,WAAY,SAAQ,KAAK;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAChB,OAAO,EAAE,MAAM;IAK3B,QAAQ,CAAC,eAAe,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE;CACpE"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomError = void 0;
4
+ class CustomError extends Error {
5
+ constructor(message) {
6
+ super(message);
7
+ Object.setPrototypeOf(this, CustomError.prototype);
8
+ }
9
+ }
10
+ exports.CustomError = CustomError;
11
+ //# sourceMappingURL=custom-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-error.js","sourceRoot":"","sources":["../../src/errors/custom-error.ts"],"names":[],"mappings":";;;AAAA,MAAsB,WAAY,SAAQ,KAAK;IAE3C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;CAGJ;AARD,kCAQC"}
@@ -0,0 +1,10 @@
1
+ import { CustomError } from "./custom-error";
2
+ export declare class DatabaseConnectionError extends CustomError {
3
+ reason: string;
4
+ statusCode: number;
5
+ constructor();
6
+ serialiseErrors(): {
7
+ message: string;
8
+ }[];
9
+ }
10
+ //# sourceMappingURL=database-connection-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-connection-errors.d.ts","sourceRoot":"","sources":["../../src/errors/database-connection-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,uBAAwB,SAAQ,WAAW;IACvD,MAAM,EAAE,MAAM,CAAC;IACZ,UAAU,SAAO;;IAQpB,eAAe;;;CAGf"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DatabaseConnectionError = void 0;
4
+ const custom_error_1 = require("./custom-error");
5
+ class DatabaseConnectionError extends custom_error_1.CustomError {
6
+ reason;
7
+ statusCode = 500;
8
+ constructor() {
9
+ super('Error connecting to database');
10
+ this.reason = 'Failed to connect to the database';
11
+ // Only because we are extending a built-in class
12
+ Object.setPrototypeOf(this, DatabaseConnectionError.prototype);
13
+ }
14
+ serialiseErrors() {
15
+ return [{ message: this.reason }];
16
+ }
17
+ }
18
+ exports.DatabaseConnectionError = DatabaseConnectionError;
19
+ //# sourceMappingURL=database-connection-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-connection-errors.js","sourceRoot":"","sources":["../../src/errors/database-connection-errors.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,uBAAwB,SAAQ,0BAAW;IACvD,MAAM,CAAS;IACZ,UAAU,GAAG,GAAG,CAAC;IACpB;QACC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAC;QAElD,iDAAiD;QACjD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IACD,eAAe;QACd,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,CAAC;CACD;AAbD,0DAaC"}
@@ -0,0 +1,9 @@
1
+ import { CustomError } from "./custom-error";
2
+ export declare class NotAuthorizedError extends CustomError {
3
+ statusCode: number;
4
+ constructor();
5
+ serialiseErrors(): {
6
+ message: string;
7
+ }[];
8
+ }
9
+ //# sourceMappingURL=not-authorized-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-authorized-error.d.ts","sourceRoot":"","sources":["../../src/errors/not-authorized-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,kBAAmB,SAAQ,WAAW;IAC/C,UAAU,SAAO;;IAQjB,eAAe;;;CAGlB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotAuthorizedError = void 0;
4
+ const custom_error_1 = require("./custom-error");
5
+ class NotAuthorizedError extends custom_error_1.CustomError {
6
+ statusCode = 401;
7
+ constructor() {
8
+ super('Not authorized');
9
+ Object.setPrototypeOf(this, NotAuthorizedError.prototype);
10
+ }
11
+ serialiseErrors() {
12
+ return [{ message: 'Not authorized' }];
13
+ }
14
+ }
15
+ exports.NotAuthorizedError = NotAuthorizedError;
16
+ //# sourceMappingURL=not-authorized-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-authorized-error.js","sourceRoot":"","sources":["../../src/errors/not-authorized-error.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,kBAAmB,SAAQ,0BAAW;IAC/C,UAAU,GAAG,GAAG,CAAC;IAEjB;QACI,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAExB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;IAED,eAAe;QACX,OAAO,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC3C,CAAC;CACJ;AAZD,gDAYC"}
@@ -0,0 +1,9 @@
1
+ import { CustomError } from "./custom-error";
2
+ export declare class NotFoundError extends CustomError {
3
+ statusCode: number;
4
+ constructor();
5
+ serialiseErrors(): {
6
+ message: string;
7
+ }[];
8
+ }
9
+ //# sourceMappingURL=not-found-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-found-errors.d.ts","sourceRoot":"","sources":["../../src/errors/not-found-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,aAAc,SAAQ,WAAW;IAC1C,UAAU,SAAO;;IAMjB,eAAe;;;CAGlB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotFoundError = void 0;
4
+ const custom_error_1 = require("./custom-error");
5
+ class NotFoundError extends custom_error_1.CustomError {
6
+ statusCode = 404;
7
+ constructor() {
8
+ super('Route not found');
9
+ Object.setPrototypeOf(this, NotFoundError.prototype);
10
+ }
11
+ serialiseErrors() {
12
+ return [{ message: 'Not Found' }];
13
+ }
14
+ }
15
+ exports.NotFoundError = NotFoundError;
16
+ //# sourceMappingURL=not-found-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-found-errors.js","sourceRoot":"","sources":["../../src/errors/not-found-errors.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,aAAc,SAAQ,0BAAW;IAC1C,UAAU,GAAG,GAAG,CAAC;IACjB;QACI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACzB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IAED,eAAe;QACX,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACtC,CAAC;CACJ;AAVD,sCAUC"}
@@ -0,0 +1,12 @@
1
+ import { ValidationError } from 'express-validator';
2
+ import { CustomError } from './custom-error';
3
+ export declare class RequestValidationError extends CustomError {
4
+ errors: ValidationError[];
5
+ statusCode: number;
6
+ constructor(errors: ValidationError[]);
7
+ serialiseErrors(): {
8
+ message: any;
9
+ field: "alternative" | "alternative_grouped" | "unknown_fields" | "field";
10
+ }[];
11
+ }
12
+ //# sourceMappingURL=request-validation-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-validation-errors.d.ts","sourceRoot":"","sources":["../../src/errors/request-validation-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,sBAAuB,SAAQ,WAAW;IAC/C,MAAM,EAAE,eAAe,EAAE,CAAC;IAC7B,UAAU,SAAO;gBACT,MAAM,EAAE,eAAe,EAAE;IAOrC,eAAe;;;;CAGf"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestValidationError = void 0;
4
+ const custom_error_1 = require("./custom-error");
5
+ class RequestValidationError extends custom_error_1.CustomError {
6
+ errors;
7
+ statusCode = 400;
8
+ constructor(errors) {
9
+ super('Invalid request parameters');
10
+ this.errors = errors;
11
+ // Only because we are extending a built-in class
12
+ Object.setPrototypeOf(this, RequestValidationError.prototype);
13
+ }
14
+ serialiseErrors() {
15
+ return this.errors.map(e => ({ message: e.msg, field: e.type }));
16
+ }
17
+ }
18
+ exports.RequestValidationError = RequestValidationError;
19
+ //# sourceMappingURL=request-validation-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-validation-errors.js","sourceRoot":"","sources":["../../src/errors/request-validation-errors.ts"],"names":[],"mappings":";;;AACA,iDAA6C;AAE7C,MAAa,sBAAuB,SAAQ,0BAAW;IAC/C,MAAM,CAAoB;IAC7B,UAAU,GAAG,GAAG,CAAC;IACrB,YAAY,MAAyB;QACpC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,iDAAiD;QACjD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IACD,eAAe;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;CACD;AAbD,wDAaC"}
@@ -0,0 +1,11 @@
1
+ export * from './errors/bad-request-error';
2
+ export * from './errors/custom-error';
3
+ export * from './errors/database-connection-errors';
4
+ export * from './errors/not-found-errors';
5
+ export * from './errors/request-validation-errors';
6
+ export * from './errors/not-authorized-error';
7
+ export * from './middleware/current-user';
8
+ export * from './middleware/errorHandller';
9
+ export * from './middleware/require-auth';
10
+ export * from './middleware/validate-request';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qCAAqC,CAAA;AACnD,cAAc,2BAA2B,CAAA;AACzC,cAAc,oCAAoC,CAAA;AAClD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,+BAA+B,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,27 @@
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("./errors/bad-request-error"), exports);
18
+ __exportStar(require("./errors/custom-error"), exports);
19
+ __exportStar(require("./errors/database-connection-errors"), exports);
20
+ __exportStar(require("./errors/not-found-errors"), exports);
21
+ __exportStar(require("./errors/request-validation-errors"), exports);
22
+ __exportStar(require("./errors/not-authorized-error"), exports);
23
+ __exportStar(require("./middleware/current-user"), exports);
24
+ __exportStar(require("./middleware/errorHandller"), exports);
25
+ __exportStar(require("./middleware/require-auth"), exports);
26
+ __exportStar(require("./middleware/validate-request"), exports);
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA0C;AAC1C,wDAAqC;AACrC,sEAAmD;AACnD,4DAAyC;AACzC,qEAAkD;AAClD,gEAA6C;AAC7C,4DAAyC;AACzC,6DAA0C;AAC1C,4DAAyC;AACzC,gEAA6C"}
@@ -0,0 +1,18 @@
1
+ import { Request, Response, NextFunction } from 'express';
2
+ interface UserPayload {
3
+ id: string;
4
+ email: string;
5
+ }
6
+ declare global {
7
+ namespace Express {
8
+ interface Request {
9
+ currentUser?: UserPayload;
10
+ session?: {
11
+ jwt?: string;
12
+ };
13
+ }
14
+ }
15
+ }
16
+ export declare const currentUser: (req: Request, res: Response, next: NextFunction) => void;
17
+ export {};
18
+ //# sourceMappingURL=current-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-user.d.ts","sourceRoot":"","sources":["../../src/middleware/current-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAGtD,UAAU,WAAW;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,OAAO,CAAC;QACd,UAAU,OAAO;YACb,WAAW,CAAC,EAAE,WAAW,CAAC;YAC1B,OAAO,CAAC,EAAE;gBAAE,GAAG,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC;SAC9B;KACJ;CACJ;AACD,eAAO,MAAM,WAAW,GAAE,KAAI,OAAO,EAAC,KAAI,QAAQ,EAAC,MAAK,YAAY,SAYnE,CAAA"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.currentUser = void 0;
7
+ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
8
+ const currentUser = (req, res, next) => {
9
+ if (!req.session || !req.session.jwt) {
10
+ return next();
11
+ }
12
+ try {
13
+ const payload = jsonwebtoken_1.default.verify(req.session.jwt, process.env.JWT_KEY);
14
+ req.currentUser = payload;
15
+ }
16
+ catch (err) {
17
+ // If JWT verification fails, we simply ignore the error and proceed without setting req.currentUser
18
+ }
19
+ return next();
20
+ };
21
+ exports.currentUser = currentUser;
22
+ //# sourceMappingURL=current-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-user.js","sourceRoot":"","sources":["../../src/middleware/current-user.ts"],"names":[],"mappings":";;;;;;AACA,gEAA+B;AAexB,MAAM,WAAW,GAAC,CAAC,GAAW,EAAC,GAAY,EAAC,IAAiB,EAAC,EAAE;IACnE,IAAG,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAC,CAAC;QACjC,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC;IACD,IAAG,CAAC;QACA,MAAM,OAAO,GAAC,sBAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,OAAQ,CAAgB,CAAC;QAC/E,GAAG,CAAC,WAAW,GAAC,OAAO,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,oGAAoG;IACxG,CAAC;IACD,OAAO,IAAI,EAAE,CAAC;AAElB,CAAC,CAAA;AAZY,QAAA,WAAW,eAYvB"}
@@ -0,0 +1,3 @@
1
+ import { Request, Response, NextFunction } from 'express';
2
+ export declare const errorHandler: (err: Error, req: Request, res: Response, next: NextFunction) => Response<any, Record<string, any>> | undefined;
3
+ //# sourceMappingURL=errorHandller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorHandller.d.ts","sourceRoot":"","sources":["../../src/middleware/errorHandller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAM1D,eAAO,MAAM,YAAY,GACxB,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,MAAM,YAAY,mDAalB,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.errorHandler = void 0;
4
+ const custom_error_1 = require("../errors/custom-error");
5
+ // Centralized error handler middleware
6
+ const errorHandler = (err, req, res, next) => {
7
+ if (err instanceof custom_error_1.CustomError) {
8
+ console.log('Custom error occurred:', err);
9
+ return res.status(err.statusCode).send({
10
+ errors: err.serialiseErrors(),
11
+ });
12
+ }
13
+ const statusCode = res.statusCode !== 200 ? res.statusCode : 400;
14
+ res.status(statusCode).send({
15
+ errors: [{ message: err.message || 'Something went wrong' }],
16
+ });
17
+ };
18
+ exports.errorHandler = errorHandler;
19
+ //# sourceMappingURL=errorHandller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorHandller.js","sourceRoot":"","sources":["../../src/middleware/errorHandller.ts"],"names":[],"mappings":";;;AAIA,yDAAqD;AAErD,uCAAuC;AAChC,MAAM,YAAY,GAAG,CAC3B,GAAU,EACV,GAAY,EACZ,GAAa,EACb,IAAkB,EACjB,EAAE;IACH,IAAI,GAAG,YAAY,0BAAW,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAC3C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YACtC,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE;SAC7B,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;IACjE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;QAC3B,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,sBAAsB,EAAE,CAAC;KAC5D,CAAC,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,YAAY,gBAiBvB"}
@@ -0,0 +1,3 @@
1
+ import { Request, Response, NextFunction } from "express";
2
+ export declare const requireAuth: (req: Request, res: Response, next: NextFunction) => void;
3
+ //# sourceMappingURL=require-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"require-auth.d.ts","sourceRoot":"","sources":["../../src/middleware/require-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAE,MAAM,SAAS,CAAC;AAGxD,eAAO,MAAM,WAAW,GAAE,KAAI,OAAO,EAAC,KAAI,QAAQ,EAAC,MAAK,YAAY,SAKnE,CAAA"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.requireAuth = void 0;
4
+ const not_authorized_error_1 = require("../errors/not-authorized-error");
5
+ const requireAuth = (req, res, next) => {
6
+ if (!req.currentUser) {
7
+ throw new not_authorized_error_1.NotAuthorizedError();
8
+ }
9
+ next();
10
+ };
11
+ exports.requireAuth = requireAuth;
12
+ //# sourceMappingURL=require-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"require-auth.js","sourceRoot":"","sources":["../../src/middleware/require-auth.ts"],"names":[],"mappings":";;;AACA,yEAAoE;AAE7D,MAAM,WAAW,GAAC,CAAC,GAAW,EAAC,GAAY,EAAC,IAAiB,EAAC,EAAE;IACnE,IAAG,CAAC,GAAG,CAAC,WAAW,EAAC,CAAC;QACjB,MAAM,IAAK,yCAAkB,EAAE,CAAC;IACpC,CAAC;IACD,IAAI,EAAE,CAAC;AACX,CAAC,CAAA;AALY,QAAA,WAAW,eAKvB"}
@@ -0,0 +1,3 @@
1
+ import { Request, Response, NextFunction } from "express";
2
+ export declare const RequestValidation: (req: Request, res: Response, next: NextFunction) => Response<any, Record<string, any>> | undefined;
3
+ //# sourceMappingURL=validate-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-request.d.ts","sourceRoot":"","sources":["../../src/middleware/validate-request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAE,MAAM,SAAS,CAAC;AAGxD,eAAO,MAAO,iBAAiB,GAAE,KAAI,OAAO,EAAC,KAAI,QAAQ,EAAC,MAAK,YAAY,mDAO1E,CAAA"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestValidation = void 0;
4
+ const express_validator_1 = require("express-validator");
5
+ const RequestValidation = (req, res, next) => {
6
+ const errors = (0, express_validator_1.validationResult)(req);
7
+ if (!errors.isEmpty()) {
8
+ return res.status(400).send({ errors: errors.array() });
9
+ }
10
+ next();
11
+ };
12
+ exports.RequestValidation = RequestValidation;
13
+ //# sourceMappingURL=validate-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-request.js","sourceRoot":"","sources":["../../src/middleware/validate-request.ts"],"names":[],"mappings":";;;AAEA,yDAAqD;AAE9C,MAAO,iBAAiB,GAAC,CAAC,GAAW,EAAC,GAAY,EAAC,IAAiB,EAAC,EAAE;IAC1E,MAAM,MAAM,GAAG,IAAA,oCAAgB,EAAC,GAAG,CAAC,CAAC;IAErC,IAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAC,CAAC;QAClB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,EAAE,CAAC;AACX,CAAC,CAAA;AAPa,QAAA,iBAAiB,qBAO9B"}
package/package.json CHANGED
@@ -1,12 +1,30 @@
1
1
  {
2
2
  "name": "@ddticketing/common",
3
- "version": "1.0.0",
4
- "main": "index.js",
3
+ "version": "1.0.2",
4
+ "main": "./dist/index.js",
5
+ "type": "commonjs",
6
+ "types": "./dist/index.d.ts",
7
+ "files": [
8
+ "dist/**/*"
9
+ ],
5
10
  "scripts": {
6
- "test": "echo \"Error: no test specified\" && exit 1"
11
+ "test": "echo \"Error: no test specified\" && exit 1",
12
+ "build": "tsc",
13
+ "clean": "del-cli dist"
7
14
  },
8
15
  "keywords": [],
9
16
  "author": "",
10
17
  "license": "ISC",
11
- "description": ""
18
+ "description": "",
19
+ "dependencies": {
20
+ "del-cli": "^7.0.0",
21
+ "express": "^4.18.4",
22
+ "express-validator": "^7.0.1",
23
+ "jsonwebtoken": "^9.0.2",
24
+ "typescript": "^6.0.3"
25
+ },
26
+ "devDependencies": {
27
+ "@types/express": "^4.17.19",
28
+ "@types/jsonwebtoken": "^9.0.2"
29
+ }
12
30
  }