UNPKG

nuxt-users

Version:

A comprehensive user management module for Nuxt 3 and Nuxt 4 applications with authentication, authorization, database support, and CLI tools

30 lines (29 loc) 870 B
import { createError, defineEventHandler, readBody } from "h3"; import { useRuntimeConfig } from "#imports"; import { createUser } from "../../utils/user.js"; export default defineEventHandler(async (event) => { const { nuxtUsers } = useRuntimeConfig(); const options = nuxtUsers; const body = await readBody(event); if (!body.email || !body.name || !body.password) { throw createError({ statusCode: 400, statusMessage: "Missing required fields: email, name, password" }); } try { const newUser = await createUser({ email: body.email, name: body.name, password: body.password, role: body.role // role is optional }, options); return { user: newUser }; } catch (error) { throw createError({ statusCode: 500, statusMessage: `Error creating user: ${error.message}` }); } });