mirror of
https://github.com/ArthurDanjou/website.git
synced 2026-01-14 20:19:35 +01:00
17 lines
384 B
TypeScript
17 lines
384 B
TypeScript
import {z} from 'zod'
|
|
|
|
const PostSchema = z.object({ slug: z.string() }).parse
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const { slug } = await readValidatedBody(event, PostSchema)
|
|
return useDB().insert(tables.posts).values({
|
|
slug,
|
|
}).onConflictDoUpdate({
|
|
target: tables.posts.id,
|
|
set: {
|
|
views: sql`${tables.posts.views}
|
|
+ 1`,
|
|
},
|
|
})
|
|
})
|