@quickbiteapp/shared 1.0.6
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/build/errors/AppError.d.ts +4 -0
- package/build/errors/AppError.js +12 -0
- package/build/errors/BadRequestError.d.ts +4 -0
- package/build/errors/BadRequestError.js +10 -0
- package/build/errors/EmailAlreadyTaken.d.ts +4 -0
- package/build/errors/EmailAlreadyTaken.js +10 -0
- package/build/errors/InvalidEmailError.d.ts +4 -0
- package/build/errors/InvalidEmailError.js +10 -0
- package/build/errors/NotFoundError.d.ts +4 -0
- package/build/errors/NotFoundError.js +10 -0
- package/build/errors/RequestValidationError.d.ts +8 -0
- package/build/errors/RequestValidationError.js +12 -0
- package/build/errors/RequiredFieldError.d.ts +4 -0
- package/build/errors/RequiredFieldError.js +10 -0
- package/build/index.d.ts +9 -0
- package/build/index.js +25 -0
- package/build/middlewares/ErrorHandler.d.ts +2 -0
- package/build/middlewares/ErrorHandler.js +21 -0
- package/build/middlewares/ValidateRequest.d.ts +2 -0
- package/build/middlewares/ValidateRequest.js +16 -0
- package/package.json +31 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AppError = void 0;
|
|
4
|
+
class AppError extends Error {
|
|
5
|
+
constructor(message, statusCode = 500) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = this.constructor.name;
|
|
8
|
+
this.statusCode = statusCode;
|
|
9
|
+
Object.setPrototypeOf(this, AppError.prototype);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.AppError = AppError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BadRequestError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class BadRequestError extends AppError_1.AppError {
|
|
6
|
+
constructor(message = "Bad request") {
|
|
7
|
+
super(message, 400);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.BadRequestError = BadRequestError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EmailAlreadyTakenError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class EmailAlreadyTakenError extends AppError_1.AppError {
|
|
6
|
+
constructor(message = "Email is already in use") {
|
|
7
|
+
super(message, 409);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.EmailAlreadyTakenError = EmailAlreadyTakenError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvalidEmailError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class InvalidEmailError extends AppError_1.AppError {
|
|
6
|
+
constructor(message = "Email is invalid") {
|
|
7
|
+
super(message, 400);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.InvalidEmailError = InvalidEmailError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NotFoundError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class NotFoundError extends AppError_1.AppError {
|
|
6
|
+
constructor(message = "Not found.") {
|
|
7
|
+
super(message, 404);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.NotFoundError = NotFoundError;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequestValidationError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class RequestValidationError extends AppError_1.AppError {
|
|
6
|
+
constructor(errors) {
|
|
7
|
+
super("Invalid request parameters", 400);
|
|
8
|
+
this.errors = errors;
|
|
9
|
+
Object.setPrototypeOf(this, RequestValidationError.prototype);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.RequestValidationError = RequestValidationError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequiredFieldError = void 0;
|
|
4
|
+
const AppError_1 = require("./AppError");
|
|
5
|
+
class RequiredFieldError extends AppError_1.AppError {
|
|
6
|
+
constructor(message = "Field is required") {
|
|
7
|
+
super(message, 400);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.RequiredFieldError = RequiredFieldError;
|
package/build/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './errors/AppError';
|
|
2
|
+
export * from './errors/BadRequestError';
|
|
3
|
+
export * from './errors/EmailAlreadyTaken';
|
|
4
|
+
export * from './errors/InvalidEmailError';
|
|
5
|
+
export * from './errors/NotFoundError';
|
|
6
|
+
export * from './errors/RequestValidationError';
|
|
7
|
+
export * from './errors/RequiredFieldError';
|
|
8
|
+
export * from './middlewares/ErrorHandler';
|
|
9
|
+
export * from './middlewares/ValidateRequest';
|
package/build/index.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
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/AppError"), exports);
|
|
18
|
+
__exportStar(require("./errors/BadRequestError"), exports);
|
|
19
|
+
__exportStar(require("./errors/EmailAlreadyTaken"), exports);
|
|
20
|
+
__exportStar(require("./errors/InvalidEmailError"), exports);
|
|
21
|
+
__exportStar(require("./errors/NotFoundError"), exports);
|
|
22
|
+
__exportStar(require("./errors/RequestValidationError"), exports);
|
|
23
|
+
__exportStar(require("./errors/RequiredFieldError"), exports);
|
|
24
|
+
__exportStar(require("./middlewares/ErrorHandler"), exports);
|
|
25
|
+
__exportStar(require("./middlewares/ValidateRequest"), exports);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.errorHandler = void 0;
|
|
4
|
+
const AppError_1 = require("../errors/AppError");
|
|
5
|
+
const RequestValidationError_1 = require("../errors/RequestValidationError");
|
|
6
|
+
const errorHandler = (err, req, res, next) => {
|
|
7
|
+
if (err instanceof RequestValidationError_1.RequestValidationError) {
|
|
8
|
+
return res.status(err.statusCode).json({
|
|
9
|
+
message: err.message,
|
|
10
|
+
errors: err.errors
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
if (err instanceof AppError_1.AppError) {
|
|
14
|
+
return res.status(err.statusCode).json({
|
|
15
|
+
message: err.message
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
console.error(err);
|
|
19
|
+
res.status(500).json({ message: "Internal Server Error" });
|
|
20
|
+
};
|
|
21
|
+
exports.errorHandler = errorHandler;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateRequest = void 0;
|
|
4
|
+
const express_validator_1 = require("express-validator");
|
|
5
|
+
const RequestValidationError_1 = require("../errors/RequestValidationError");
|
|
6
|
+
const validateRequest = (req, res, next) => {
|
|
7
|
+
const result = (0, express_validator_1.validationResult)(req);
|
|
8
|
+
if (!result.isEmpty()) {
|
|
9
|
+
const errors = result.array({ onlyFirstError: true }).map(err => ({
|
|
10
|
+
message: err.msg
|
|
11
|
+
}));
|
|
12
|
+
throw new RequestValidationError_1.RequestValidationError(errors);
|
|
13
|
+
}
|
|
14
|
+
next();
|
|
15
|
+
};
|
|
16
|
+
exports.validateRequest = validateRequest;
|
package/package.json
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@quickbiteapp/shared",
|
|
3
|
+
"version": "1.0.6",
|
|
4
|
+
"main": "./build/index.js",
|
|
5
|
+
"types": "./build/index.d.ts",
|
|
6
|
+
"files": [
|
|
7
|
+
"build/**/*"
|
|
8
|
+
],
|
|
9
|
+
"scripts": {
|
|
10
|
+
"clean": "rimraf ./build",
|
|
11
|
+
"build": "npm run clean && tsc",
|
|
12
|
+
"pub": "git add . && git commit -m \"Updates\" && npm version patch && npm run build && npm publish"
|
|
13
|
+
},
|
|
14
|
+
"publishConfig": {
|
|
15
|
+
"access": "public"
|
|
16
|
+
},
|
|
17
|
+
"keywords": [],
|
|
18
|
+
"author": "",
|
|
19
|
+
"license": "ISC",
|
|
20
|
+
"description": "",
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"express": "^5.2.1",
|
|
23
|
+
"express-validator": "^7.3.1"
|
|
24
|
+
},
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"@types/express": "^5.0.6",
|
|
27
|
+
"del-cli": "^7.0.0",
|
|
28
|
+
"rimraf": "^6.1.2",
|
|
29
|
+
"typescript": "^5.9.3"
|
|
30
|
+
}
|
|
31
|
+
}
|