Updates user metadata schemas
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
import { Prisma } from "@prisma/client";
|
||||
import type { NextApiRequest, NextApiResponse } from "next";
|
||||
import { z, ZodError } from "zod";
|
||||
import { ZodError } from "zod";
|
||||
|
||||
import prisma from "@calcom/prisma";
|
||||
import { vitalSettingsUpdateSchema } from "@calcom/prisma/zod-utils";
|
||||
|
||||
export type VitalSettingsResponse = {
|
||||
connected: boolean;
|
||||
@@ -10,12 +11,6 @@ export type VitalSettingsResponse = {
|
||||
selectedParam: string;
|
||||
};
|
||||
|
||||
const vitalSettingsUpdateSchema = z.object({
|
||||
connected: z.boolean().optional(),
|
||||
selectedParam: z.string().optional(),
|
||||
sleepValue: z.number().optional(),
|
||||
});
|
||||
|
||||
const handler = async (
|
||||
req: NextApiRequest,
|
||||
res: NextApiResponse
|
||||
|
||||
@@ -165,6 +165,7 @@ model User {
|
||||
away Boolean @default(false)
|
||||
// participate in dynamic group booking or not
|
||||
allowDynamicBooking Boolean? @default(true)
|
||||
/// @zod.custom(imports.userMetadata)
|
||||
metadata Json?
|
||||
verified Boolean? @default(false)
|
||||
role UserPermissionRole @default(USER)
|
||||
|
||||
@@ -94,3 +94,17 @@ export const extendedBookingCreateBody = bookingCreateBodySchema.merge(
|
||||
rescheduleReason: z.string().optional(),
|
||||
})
|
||||
);
|
||||
|
||||
export const vitalSettingsUpdateSchema = z.object({
|
||||
connected: z.boolean().optional(),
|
||||
selectedParam: z.string().optional(),
|
||||
sleepValue: z.number().optional(),
|
||||
});
|
||||
|
||||
export const userMetadata = z
|
||||
.object({
|
||||
proPaidForByTeamId: z.string().optional(),
|
||||
stripeCustomerId: z.string().optional(),
|
||||
vitalSettings: vitalSettingsUpdateSchema.optional(),
|
||||
})
|
||||
.nullable();
|
||||
|
||||
Reference in New Issue
Block a user