function allErrorsOfFieldAndSubfield(
fields: Record<
string,
{
errors: ValidationError[];
}
>,
namespace: string,
) {
return Object.entries(fields).reduce<ValidationError[]>((errors, [name, field]) => {
if (!name.startsWith(namespace)) {
return errors;
}
errors.push(...field.errors);
return errors;
}, []);
}
// usage
const errors = allErrorsOfFieldAndSubfield(form.getAllErrors().fields, 'parentKey');
function allErrorsOfFieldAndSubfield(
fields: Record<
string,
{
errors: ValidationError[];
}
>,
namespace: string,
) {
return Object.entries(fields).reduce<ValidationError[]>((errors, [name, field]) => {
if (!name.startsWith(namespace)) {
return errors;
}
errors.push(...field.errors);
return errors;
}, []);
}
// usage
const errors = allErrorsOfFieldAndSubfield(form.getAllErrors().fields, 'parentKey');