finished object endpoints

Added writing (tested) and deleting (untested) endpoints
This commit is contained in:
DecDuck
2024-10-09 15:08:55 +11:00
parent 435551c207
commit 486bce8bc7
7 changed files with 59 additions and 25 deletions

View File

@ -41,7 +41,7 @@ export default defineEventHandler(async (h3) => {
const user = await prisma.user.create({
data: {
username,
displayName: "",
displayName: "DecDuck",
email: "",
profilePicture: profilePictureObject,
},

View File

@ -0,0 +1,9 @@
export default defineEventHandler(async (h3) => {
const id = getRouterParam(h3, "id");
if (!id) throw createError({ statusCode: 400, statusMessage: "Invalid ID" });
const userId = await h3.context.session.getUserId(h3);
const result = await h3.context.objects.deleteWithPermission(id, userId);
return { success: result };
});

View File

@ -0,0 +1,21 @@
export default defineEventHandler(async (h3) => {
const id = getRouterParam(h3, "id");
if (!id) throw createError({ statusCode: 400, statusMessage: "Invalid ID" });
const body = await readRawBody(h3, "binary");
if (!body)
throw createError({
statusCode: 400,
statusMessage: "Invalid upload",
});
const userId = await h3.context.session.getUserId(h3);
const buffer = Buffer.from(body);
const result = await h3.context.objects.writeWithPermissions(
id,
async () => buffer,
userId
);
return { success: result };
});