forked from BRETT/BRETT
13 lines
385 B
TypeScript
13 lines
385 B
TypeScript
import { z } from 'zod'
|
|
|
|
const bodySchema = z.object({
|
|
name: z.string().trim().min(2).max(50).regex(/^[\w-]+$/, 'Nur Buchstaben, Zahlen, - und _'),
|
|
})
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
await requirePermission(event, 'roles.manage')
|
|
const { name } = await readValidatedBody(event, bodySchema.parse)
|
|
const id = await ensureRole(name)
|
|
return { id, name }
|
|
})
|