Initial import NDC_1C
This commit is contained in:
+46
@@ -0,0 +1,46 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.ApiError = void 0;
|
||||
exports.ok = ok;
|
||||
exports.created = created;
|
||||
exports.errorMiddleware = errorMiddleware;
|
||||
class ApiError extends Error {
|
||||
code;
|
||||
status;
|
||||
details;
|
||||
constructor(code, message, status = 400, details) {
|
||||
super(message);
|
||||
this.code = code;
|
||||
this.status = status;
|
||||
this.details = details;
|
||||
}
|
||||
}
|
||||
exports.ApiError = ApiError;
|
||||
function ok(res, payload) {
|
||||
return res.status(200).json(payload);
|
||||
}
|
||||
function created(res, payload) {
|
||||
return res.status(201).json(payload);
|
||||
}
|
||||
function errorMiddleware(err, _req, res, _next) {
|
||||
if (err instanceof ApiError) {
|
||||
res.status(err.status).json({
|
||||
ok: false,
|
||||
error: {
|
||||
code: err.code,
|
||||
message: err.message,
|
||||
details: err.details ?? null
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
||||
const fallback = err instanceof Error ? err.message : "Unknown error";
|
||||
res.status(500).json({
|
||||
ok: false,
|
||||
error: {
|
||||
code: "INTERNAL_ERROR",
|
||||
message: fallback,
|
||||
details: null
|
||||
}
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user