mirror of
https://github.com/Drop-OSS/drop.git
synced 2026-06-22 04:11:32 +10:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2d2b815441 |
@@ -160,6 +160,12 @@
|
||||
"add": "Add",
|
||||
"cannotUndo": "This action cannot be undone.",
|
||||
"close": "Close",
|
||||
"components": {
|
||||
"multiitem": {
|
||||
"new": "Create new: \"{0}\"",
|
||||
"placeholder": "Start typing..."
|
||||
}
|
||||
},
|
||||
"create": "Create",
|
||||
"date": "Date",
|
||||
"delete": "Delete",
|
||||
@@ -181,13 +187,7 @@
|
||||
"servers": "Servers",
|
||||
"srLoading": "Loading…",
|
||||
"tags": "Tags",
|
||||
"today": "Today",
|
||||
"components": {
|
||||
"multiitem": {
|
||||
"placeholder": "Start typing...",
|
||||
"new": "Create new: \"{0}\""
|
||||
}
|
||||
}
|
||||
"today": "Today"
|
||||
},
|
||||
"drop": {
|
||||
"desc": "An open-source game distribution platform built for speed, flexibility and beauty.",
|
||||
|
||||
@@ -16,10 +16,19 @@ export default defineEventHandler(async (h3) => {
|
||||
|
||||
const game = await prisma.game.findUnique({
|
||||
where: { id },
|
||||
select: { id: true },
|
||||
select: { id: true, tags: { select: { id: true } } },
|
||||
});
|
||||
if (!game) throw createError({ statusCode: 404, message: "Game not found" });
|
||||
|
||||
const tagSet = new Set(game.tags.map((v) => v.id));
|
||||
const toConnect = body.tags.filter((v) => !tagSet.has(v));
|
||||
|
||||
const bodyTagSet = new Set(body.tags);
|
||||
const toDisconnect = tagSet
|
||||
.values()
|
||||
.filter((v) => !bodyTagSet.has(v))
|
||||
.toArray();
|
||||
|
||||
// SAFETY: Okay to disable due to check above
|
||||
// eslint-disable-next-line drop/no-prisma-delete
|
||||
await prisma.game.update({
|
||||
@@ -28,7 +37,8 @@ export default defineEventHandler(async (h3) => {
|
||||
},
|
||||
data: {
|
||||
tags: {
|
||||
connect: body.tags.map((e) => ({ id: e })),
|
||||
connect: toConnect.map((e) => ({ id: e })),
|
||||
disconnect: toDisconnect.map((e) => ({ id: e })),
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user