Soy nuevo en el uso de la validación Yup. Estoy tratando de lograr que los campos sean obligatorios según la condición. como puede ver a continuación, quiero hacer que este objeto digital sea obligatorio solo si hasDigital es verdadero; de lo contrario, manténgalo opcional, probé el enfoque a continuación, pero siempre dice que se requiere digital.pages , incluso cuando estoy pasando hasDigital falso. Lo intenté eliminando la etiqueta required de hasDigital pero sigo enfrentándome al mismo problema.
No sé qué estoy haciendo mal, gracias de antemano por cualquier ayuda.
const validationSchema=Yup.object({ hasDigital:Yup.boolean().required(), digital:Yup.Object({ pages:Yup.number().required(), price:Yup.number().required() }).when("hasDigital", { is:true , then: Yup.object().required(), otherwise:Yup.object().optional()}) })