@jarbotickets/common 1.0.1 → 1.0.3
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/errors/bad-request-error.d.ts +9 -0
- package/dist/errors/bad-request-error.js +14 -0
- package/dist/errors/bad-request-error.js.map +1 -0
- package/dist/errors/custom-error.d.ts +8 -0
- package/dist/errors/custom-error.js +7 -0
- package/dist/errors/custom-error.js.map +1 -0
- package/dist/errors/database-connection-error.d.ts +9 -0
- package/dist/errors/database-connection-error.js +13 -0
- package/dist/errors/database-connection-error.js.map +1 -0
- package/dist/errors/index.d.ts +6 -0
- package/dist/errors/index.js +7 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/not-authorized-error.d.ts +9 -0
- package/dist/errors/not-authorized-error.js +14 -0
- package/dist/errors/not-authorized-error.js.map +1 -0
- package/dist/errors/not-found-error.d.ts +8 -0
- package/dist/errors/not-found-error.js +12 -0
- package/dist/errors/not-found-error.js.map +1 -0
- package/dist/errors/request-validation-error.d.ts +11 -0
- package/dist/errors/request-validation-error.js +19 -0
- package/dist/errors/request-validation-error.js.map +1 -0
- package/dist/index.d.ts +2 -6
- package/dist/index.js +2 -6
- package/dist/index.js.map +1 -1
- package/dist/middlewares/current-user.d.ts +16 -0
- package/dist/middlewares/current-user.js +18 -0
- package/dist/middlewares/current-user.js.map +1 -0
- package/dist/middlewares/error-handler.d.ts +2 -0
- package/dist/middlewares/error-handler.js +19 -0
- package/dist/middlewares/error-handler.js.map +1 -0
- package/dist/middlewares/index.d.ts +4 -0
- package/dist/middlewares/index.js +5 -0
- package/dist/middlewares/index.js.map +1 -0
- package/dist/middlewares/require-auth.d.ts +7 -0
- package/dist/middlewares/require-auth.js +8 -0
- package/dist/middlewares/require-auth.js.map +1 -0
- package/dist/middlewares/validate-request.d.ts +2 -0
- package/dist/middlewares/validate-request.js +10 -0
- package/dist/middlewares/validate-request.js.map +1 -0
- package/package.json +11 -1
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CustomError } from "./custom-error.js";
|
|
2
|
+
export class BadRequestError extends CustomError {
|
|
3
|
+
message;
|
|
4
|
+
statusCode = 400;
|
|
5
|
+
constructor(message) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.message = message;
|
|
8
|
+
Object.setPrototypeOf(this, BadRequestError.prototype);
|
|
9
|
+
}
|
|
10
|
+
serializeErrors() {
|
|
11
|
+
return [{ message: this.message }];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# 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,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAG3B,OAAO;IAF1B,UAAU,GAAG,GAAG,CAAC;IAEjB,YAAmB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;uBADE,OAAO;QAGxB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IAED,eAAe;QACb,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACrC,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-error.js","sourceRoot":"","sources":["../../src/errors/custom-error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAgB,WAAY,SAAQ,KAAK;IAE3C,YAAY,OAAe;QAC3B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;CAGF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CustomError } from "./custom-error.js";
|
|
2
|
+
export class DatabaseConnectionError extends CustomError {
|
|
3
|
+
statusCode = 500;
|
|
4
|
+
reason = "Error connecting to the database!";
|
|
5
|
+
constructor() {
|
|
6
|
+
super("Error connecting to the database");
|
|
7
|
+
Object.setPrototypeOf(this, DatabaseConnectionError.prototype);
|
|
8
|
+
}
|
|
9
|
+
serializeErrors() {
|
|
10
|
+
return [{ message: this.reason }];
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=database-connection-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-connection-error.js","sourceRoot":"","sources":["../../src/errors/database-connection-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IACtD,UAAU,GAAG,GAAG,CAAC;IACjB,MAAM,GAAG,mCAAmC,CAAC;IAC7C;QACE,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC1C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IAED,eAAe;QACb,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACpC,CAAC;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from "./bad-request-error.js";
|
|
2
|
+
export * from "./custom-error.js";
|
|
3
|
+
export * from "./database-connection-error.js";
|
|
4
|
+
export * from "./not-authorized-error.js";
|
|
5
|
+
export * from "./not-found-error.js";
|
|
6
|
+
export * from "./request-validation-error.js";
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CustomError } from "./custom-error.js";
|
|
2
|
+
export class NotAuthorizedError extends CustomError {
|
|
3
|
+
message;
|
|
4
|
+
statusCode = 401;
|
|
5
|
+
constructor(message = "Not authorized") {
|
|
6
|
+
super(message);
|
|
7
|
+
this.message = message;
|
|
8
|
+
Object.setPrototypeOf(this, NotAuthorizedError.prototype);
|
|
9
|
+
}
|
|
10
|
+
serializeErrors() {
|
|
11
|
+
return [{ message: this.message }];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# 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,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IAG9B,OAAO;IAF1B,UAAU,GAAG,GAAG,CAAC;IAEjB,YAAmB,OAAO,GAAW,gBAAgB;QACnD,KAAK,CAAC,OAAO,CAAC,CAAC;uBADE,OAAO;QAExB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED,eAAe;QACb,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACrC,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CustomError } from "./custom-error.js";
|
|
2
|
+
export class NotFoundError extends CustomError {
|
|
3
|
+
statusCode = 404;
|
|
4
|
+
constructor() {
|
|
5
|
+
super("Route not found");
|
|
6
|
+
Object.setPrototypeOf(this, NotFoundError.prototype);
|
|
7
|
+
}
|
|
8
|
+
serializeErrors() {
|
|
9
|
+
return [{ message: "Not found" }];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=not-found-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"not-found-error.js","sourceRoot":"","sources":["../../src/errors/not-found-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C,UAAU,GAAG,GAAG,CAAC;IACjB;QACE,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACzB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IACD,eAAe;QACb,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACpC,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ValidationError } from "express-validator";
|
|
2
|
+
import { CustomError } from "./custom-error.js";
|
|
3
|
+
export declare class RequestValidationError extends CustomError {
|
|
4
|
+
errors: ValidationError[];
|
|
5
|
+
statusCode: number;
|
|
6
|
+
constructor(errors: ValidationError[]);
|
|
7
|
+
serializeErrors(): {
|
|
8
|
+
message: any;
|
|
9
|
+
field: any;
|
|
10
|
+
}[];
|
|
11
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CustomError } from "./custom-error.js";
|
|
2
|
+
// const message = "Invalid request parameters";
|
|
3
|
+
// interface CustomValidationError extends Error {
|
|
4
|
+
// statusCode: number;
|
|
5
|
+
// serializeErrors(): { message: string; field?: string }[];
|
|
6
|
+
// }
|
|
7
|
+
export class RequestValidationError extends CustomError {
|
|
8
|
+
errors;
|
|
9
|
+
statusCode = 400;
|
|
10
|
+
constructor(errors) {
|
|
11
|
+
super("Invalid request parameters");
|
|
12
|
+
this.errors = errors;
|
|
13
|
+
Object.setPrototypeOf(this, RequestValidationError.prototype);
|
|
14
|
+
}
|
|
15
|
+
serializeErrors() {
|
|
16
|
+
return this.errors.map(error => ({ message: error.msg, field: error?.path || error?.location || "unknown field name" }));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=request-validation-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-validation-error.js","sourceRoot":"","sources":["../../src/errors/request-validation-error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,gDAAgD;AAEhD,kDAAkD;AAClD,wBAAwB;AACxB,8DAA8D;AAC9D,IAAI;AAGJ,MAAM,OAAO,sBAAuB,SAAQ,WAAW;IAElC,MAAM;IADzB,UAAU,GAAG,GAAG,CAAC;IACjB,YAAmB,MAAyB;QAC1C,KAAK,CAAC,4BAA4B,CAAC,CAAC;sBADnB,MAAM;QAEvB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IACD,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAC,KAAK,EAAG,KAAa,EAAE,IAAI,IAAK,KAAa,EAAE,QAAQ,IAAI,oBAAoB,EAAE,CAAC,CAAC,CAAC;IAC5I,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { NextFunction, Request, Response } from "express";
|
|
2
|
+
export interface UserPayload {
|
|
3
|
+
id: string;
|
|
4
|
+
email: string;
|
|
5
|
+
}
|
|
6
|
+
interface SessionRequest extends Request {
|
|
7
|
+
session?: {
|
|
8
|
+
jwt?: string;
|
|
9
|
+
} | null;
|
|
10
|
+
}
|
|
11
|
+
export declare const currentUser: (req: SessionRequest, res: Response & {
|
|
12
|
+
locals: {
|
|
13
|
+
currentUser: UserPayload | null;
|
|
14
|
+
};
|
|
15
|
+
}, next: NextFunction) => Promise<void>;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import jwt from "jsonwebtoken";
|
|
2
|
+
export const currentUser = async (req, res, next) => {
|
|
3
|
+
if (!req.session?.jwt) {
|
|
4
|
+
res.locals.currentUser = null;
|
|
5
|
+
return next();
|
|
6
|
+
}
|
|
7
|
+
try {
|
|
8
|
+
const payload = jwt.verify(req.session.jwt, process.env.JWT_KEY);
|
|
9
|
+
res.locals.currentUser = payload;
|
|
10
|
+
next();
|
|
11
|
+
}
|
|
12
|
+
catch (err) {
|
|
13
|
+
console.error(err);
|
|
14
|
+
res.locals.currentUser = null;
|
|
15
|
+
next(err);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=current-user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-user.js","sourceRoot":"","sources":["../../src/middlewares/current-user.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,cAAc,CAAC;AAW/B,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAmB,EACnB,GAA+D,EAC/D,IAAkB,EAClB,EAAE;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CACxB,GAAG,CAAC,OAAO,CAAC,GAAG,EACf,OAAO,CAAC,GAAG,CAAC,OAAsB,CACpB,CAAC;QACjB,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC;QACjC,IAAI,EAAE,CAAC;IACT,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,CAAC;IACZ,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CustomError } from "../errors/custom-error.js";
|
|
2
|
+
// import { RequestValidationError } from "../errors/request-validation-error.js";
|
|
3
|
+
// import { DatabaseConnectionError } from "../errors/database-connection-error.js";
|
|
4
|
+
export const errorHandler = (err, req, res, next) => {
|
|
5
|
+
if (err instanceof CustomError) {
|
|
6
|
+
return res.status(err.statusCode).send({ errors: err.serializeErrors() });
|
|
7
|
+
}
|
|
8
|
+
// if (err instanceof RequestValidationError) {
|
|
9
|
+
// // console.log("Handling this error as a RequestValidationError")
|
|
10
|
+
// return res.status(err.statusCode).send({ errors: err.serializeErrors() });
|
|
11
|
+
// }
|
|
12
|
+
// if (err instanceof DatabaseConnectionError) {
|
|
13
|
+
// // console.log("Handling this error as a DatabaseConnectionError")
|
|
14
|
+
// return res.status(err.statusCode).send({errors: err.serializeErrors() });
|
|
15
|
+
// }
|
|
16
|
+
console.error(err);
|
|
17
|
+
res.status(500).send({ errors: [{ message: "Something went wrong", field: "unknown field name" }] });
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=error-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/middlewares/error-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,kFAAkF;AAClF,oFAAoF;AAEpF,MAAM,CAAC,MAAM,YAAY,GAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IACvE,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;QAC/B,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,+CAA+C;IAC/C,sEAAsE;IAEtE,+EAA+E;IAC/E,IAAI;IACJ,gDAAgD;IAChD,uEAAuE;IACvE,iFAAiF;IACjF,IAAI;IACJ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,EAAE,CAAC,CAAC;AACvG,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middlewares/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { NextFunction, Request, Response } from "express";
|
|
2
|
+
import type { UserPayload } from "./current-user.js";
|
|
3
|
+
export declare const requireAuth: (req: Request, res: Response & {
|
|
4
|
+
locals: {
|
|
5
|
+
currentUser?: UserPayload | null;
|
|
6
|
+
};
|
|
7
|
+
}, next: NextFunction) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"require-auth.js","sourceRoot":"","sources":["../../src/middlewares/require-auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAGvE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,GAAY,EACZ,GAAgE,EAChE,IAAkB,EAClB,EAAE;IACF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,IAAI,kBAAkB,EAAE,CAAC;IACjC,CAAC;IACD,IAAI,EAAE,CAAC;AACT,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { validationResult } from "express-validator";
|
|
2
|
+
import { RequestValidationError } from "../errors/request-validation-error.js";
|
|
3
|
+
export const validateRequest = (req, res, next) => {
|
|
4
|
+
const errors = validationResult(req);
|
|
5
|
+
if (!errors.isEmpty()) {
|
|
6
|
+
throw new RequestValidationError(errors.array());
|
|
7
|
+
}
|
|
8
|
+
next();
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=validate-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-request.js","sourceRoot":"","sources":["../../src/middlewares/validate-request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;IACjF,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,EAAE,CAAC;AACT,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jarbotickets/common",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
"clean": "rm -rf dist",
|
|
12
12
|
"build": "npm run clean && tsc",
|
|
13
13
|
"prebuild": "npm run clean",
|
|
14
|
+
"pub": "git add . && git commit -m \"Updates\" && npm version patch && npm run build && npm publish",
|
|
14
15
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
15
16
|
},
|
|
16
17
|
"keywords": [],
|
|
@@ -20,5 +21,14 @@
|
|
|
20
21
|
"devDependencies": {
|
|
21
22
|
"@types/node": "^26.6.6",
|
|
22
23
|
"typescript": "^7.0.2"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@types/cookie-session": "^2.0.49",
|
|
27
|
+
"@types/express": "^5.0.6",
|
|
28
|
+
"@types/jsonwebtoken": "^9.0.10",
|
|
29
|
+
"cookie-session": "^2.1.1",
|
|
30
|
+
"express": "^5.3.0",
|
|
31
|
+
"express-validator": "^7.3.2",
|
|
32
|
+
"jsonwebtoken": "^9.0.3"
|
|
23
33
|
}
|
|
24
34
|
}
|