27 lines
862 B
JavaScript
27 lines
862 B
JavaScript
const z = require("zod")
|
|
|
|
module.exports = {
|
|
POST: {
|
|
headers: z.object({
|
|
"content-type": z.string()
|
|
.regex(/application\/json|multipart\/form-data/i, {
|
|
message: "Content-Type must be application/json or multipart/form-data"
|
|
}),
|
|
"authorization": z.string().min(1, { message: "Authorization header is required." })
|
|
}),
|
|
body: z.union([
|
|
z.object({
|
|
variant: z.enum(["classic", "slim"]),
|
|
url: z.string().url()
|
|
}),
|
|
z.object({
|
|
variant: z.enum(["classic", "slim"]).optional(),
|
|
}).passthrough()
|
|
]),
|
|
error: {
|
|
code: 400,
|
|
message: "Invalid skin data, URL or variant.",
|
|
error: "IllegalArgumentException"
|
|
}
|
|
}
|
|
} |