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

26 lines
577 B
TypeScript

import { ConvexError } from "convex/values"
export enum Code {
DirectoryExists = "DirectoryExists",
FileExists = "FileExists",
Internal = "Internal",
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 &&
"message" in error.data
)
}
export function create(code: Code, message: string = "unknown error") {
return new ConvexError({
code,
message,
})
}