feat: impl directory delete

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2025-09-14 18:12:29 +00:00
parent f32af46261
commit 59402f473f
13 changed files with 454 additions and 202 deletions

30
src/lib/error.ts Normal file
View File

@@ -0,0 +1,30 @@
import { toast } from "sonner"
import { Code as ErrorCode, isApplicationError } from "../../convex/model/error"
const ERROR_MESSAGE = {
[ErrorCode.DirectoryExists]: "Directory already exists",
[ErrorCode.FileExists]: "File already exists",
[ErrorCode.Internal]: "Internal application error",
} as const
export function formatError(error: unknown): string {
if (isApplicationError(error)) {
return ERROR_MESSAGE[error.data.code]
}
if (error instanceof Error) {
return error.message
}
return "Unknown error"
}
export function defaultOnError(error: unknown) {
console.log(error)
toast.error(formatError(error))
}
export function withDefaultOnError(fn: (error: unknown) => void) {
return (error: unknown) => {
defaultOnError(error)
fn(error)
}
}