import { boolean, object, string } from 'yup'; import { registerSchema } from './auth'; export const createUserSchema = registerSchema.concat( object({ admin: boolean().default(false), }) ); export const editUserSchema = object({ name: string().trim().min(1).required('required'), email: string().email().trim().required('required'), password: string() .trim() .min(12) .max(32) .transform((s: string) => (s.length > 0 ? s : undefined)) .optional(), admin: boolean().required('required'), }); export const userWarrenSchema = object({ userId: string().uuid().required(), warrenId: string().uuid().required('required'), canListFiles: boolean().required(), canReadFiles: boolean().required(), canModifyFiles: boolean().required(), canDeleteFiles: boolean().required(), canListShares: boolean().required(), canCreateShares: boolean().required(), canModifyShares: boolean().required(), canDeleteShares: boolean().required(), }); export const createWarrenSchema = object({ name: string().min(1).required('required'), path: string().min(1).required('required'), }); export const editWarrenSchema = object({ name: string().min(1).required('required'), path: string().min(1).required('required'), });