learning_ai_common_plat/packages/errors/src/http-errors.ts
saravanakumardb1 9c0ab36171 feat(errors): add @bytelyst/errors package
- ServiceError base class with statusCode, message, details
- HTTP errors: BadRequest, Unauthorized, Forbidden, NotFound, Conflict, TooManyRequests
- 10 tests passing (vitest)
- Superset of all 4 service error files in LysnrAI
2026-02-12 11:19:35 -08:00

38 lines
1.0 KiB
TypeScript

import { ServiceError } from "./service-error.js";
export class BadRequestError extends ServiceError {
constructor(message = "Bad request", details?: Record<string, unknown>) {
super(400, message, details);
}
}
export class UnauthorizedError extends ServiceError {
constructor(message = "Unauthorized", details?: Record<string, unknown>) {
super(401, message, details);
}
}
export class ForbiddenError extends ServiceError {
constructor(message = "Forbidden", details?: Record<string, unknown>) {
super(403, message, details);
}
}
export class NotFoundError extends ServiceError {
constructor(message = "Not found", details?: Record<string, unknown>) {
super(404, message, details);
}
}
export class ConflictError extends ServiceError {
constructor(message = "Conflict", details?: Record<string, unknown>) {
super(409, message, details);
}
}
export class TooManyRequestsError extends ServiceError {
constructor(message = "Too many requests", details?: Record<string, unknown>) {
super(429, message, details);
}
}