Files
file-one/packages/convex/model/error.ts

25 lines
675 B
TypeScript
Raw Normal View History

import { ConvexError } from "convex/values"
export enum Code {
Conflict = "Conflict",
DirectoryExists = "DirectoryExists",
2025-09-16 22:36:26 +00:00
DirectoryNotFound = "DirectoryNotFound",
FileExists = "FileExists",
Internal = "Internal",
2025-09-15 21:44:41 +00:00
Unauthenticated = "Unauthenticated",
}
export type ApplicationError = ConvexError<{ code: Code; message?: string }>
export function isApplicationError(error: unknown): error is ApplicationError {
return error instanceof ConvexError && "code" in error.data
}
export function create(code: Code, message?: string): ApplicationError {
return new ConvexError({
code,
2025-09-21 15:12:05 +00:00
message:
code === Code.Internal ? "Internal application error" : message,
})
}