Atproto AMA app
1export class RouteError extends Error {
2 constructor(
3 message: string,
4 public statusCode: number = 500,
5 public title: string = "Error",
6 ) {
7 super(message);
8 this.name = "RouteError";
9 }
10}
11
12export class NotFoundError extends RouteError {
13 constructor(message: string = "Page not found") {
14 super(message, 404, "Not Found");
15 }
16}
17
18export class ForbiddenError extends RouteError {
19 constructor(message: string = "Access denied") {
20 super(message, 403, "Forbidden");
21 }
22}
23
24export class UnauthorizedError extends RouteError {
25 constructor(message: string = "Please sign in to continue") {
26 super(message, 401, "Unauthorized");
27 }
28}