Spaces:
Sleeping
Sleeping
| import { z } from "zod"; | |
| import { USER_ROLES, UserRoleNames } from "app-types/roles"; | |
| import { ActionState } from "lib/action-utils"; | |
| import { BasicUserWithLastLogin } from "app-types/user"; | |
| export const UpdateUserRoleSchema = z.object({ | |
| userId: z.uuid("Invalid user ID"), | |
| role: z | |
| .enum(Object.values(USER_ROLES) as [UserRoleNames, ...UserRoleNames[]]) | |
| .optional(), | |
| }); | |
| export const UpdateUserBanStatusSchema = z.object({ | |
| userId: z.uuid("Invalid user ID"), | |
| banned: z.enum(["true", "false"]).transform((value) => value === "true"), | |
| banReason: z.string().optional(), | |
| }); | |
| export type UpdateUserRoleActionState = ActionState & { | |
| user?: BasicUserWithLastLogin | null; | |
| }; | |
| export type UpdateUserBanStatusActionState = ActionState & { | |
| user?: BasicUserWithLastLogin | null; | |
| }; | |