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 5510d9cd8a
commit 67383c1c4e
13 changed files with 454 additions and 202 deletions

View File

@@ -65,12 +65,24 @@ export const saveFile = mutation({
export const moveToTrash = mutation({
args: {
kind: v.union(v.literal("file"), v.literal("directory")),
itemId: v.union(v.id("files"), v.id("directories")),
},
handler: async (ctx, { itemId }) => {
await ctx.db.patch(itemId, {
deletedAt: new Date().toISOString(),
})
handler: async (ctx, { itemId, kind }) => {
switch (kind) {
case "file":
await ctx.db.patch(itemId, {
deletedAt: new Date().toISOString(),
})
break
case "directory":
await Directories.moveToTrashRecursive(
ctx,
itemId as Id<"directories">,
)
break
}
return itemId
},
})