79600039

Date: 2025-04-30 09:48:31
Score: 0.5
Natty:
Report link

I ended up finding the solution by using test and testContext.

idNumber: Yup.object({
        number: Yup.number(),
        label: Yup.string()
    })
        .test("", "ID is required", (value, testContext) => {
            let unknown = testContext.parent.name.isNameUnknown

            if (!unknown) {
                testContext.schema.fields.number.required()
                testContext.schema.fields.label.required()
            }
            
            return unknown || (!unknown && value.number && value.label)
        })
Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Alextpedro