24 lines
507 B
TypeScript
24 lines
507 B
TypeScript
import { APIEvent } from "solid-start"
|
|
import { z } from "zod"
|
|
import sendError from "./sendError"
|
|
|
|
const pinBodySchema = z.object({
|
|
pin: z.string(),
|
|
})
|
|
|
|
async function getPinFromBody(request: APIEvent["request"]) {
|
|
try {
|
|
const body = request.json()
|
|
const { pin } = pinBodySchema.parse(body)
|
|
return pin
|
|
} catch {
|
|
sendError(request, {
|
|
message: "No pin in request body!",
|
|
statusCode: 401,
|
|
solved: true,
|
|
type: ["warn"],
|
|
})
|
|
}
|
|
}
|
|
|
|
export default getPinFromBody
|