I want to receive something from an api and validate if all fields are strings
but if they are not present I want to set default values, I was planning to use yup
and validate the object based on that so the object that I return from the function is typed
import { v4 } from "uuid";
import { array, object, string } from "yup";
let mySchema = array(
object({
id: string().default(() => v4()),
title: string().default(""),
description: string().default(""),
courseVersions: array(
object({
courseCodeId: string().default(""),
courseName: string().default(""),
})
).default([]),
})
);
export default function validateCourses(originalObject: any) {
const cleanObject = mySchema.someFunction(originalObject); // Hope yup has a function
console.log({ originalObject, cleanObject });
return cleanObject;
}