feat(wiki): add admin wiki management API routes

This commit is contained in:
Jennie Robinson Faber 2026-04-09 22:36:44 +01:00
parent 3797ff7925
commit e4f2efd6d0
5 changed files with 375 additions and 0 deletions

View file

@ -0,0 +1,28 @@
import * as z from 'zod'
import WikiArticle from '../../../models/wikiArticle.js'
import { connectDB } from '../../../utils/mongoose.js'
const wikiTagsSchema = z.object({
tags: z.array(z.string())
})
export default defineEventHandler(async (event) => {
await requireAdmin(event)
const body = await validateBody(event, wikiTagsSchema)
const id = getRouterParam(event, 'id')
await connectDB()
const article = await WikiArticle.findByIdAndUpdate(
id,
{ tags: body.tags },
{ new: true }
)
if (!article) {
throw createError({ statusCode: 404, statusMessage: 'Article not found' })
}
return article
})