can-validate.js
function (rawErrors) {
	var normalizedErrors = [];
  if (
    typeof rawErrors === 'string' ||
    (typeof rawErrors === 'object' && !Array.isArray(rawErrors))
  ) {
		// Only one error set, which we can assume was for a single property
		rawErrors = [rawErrors];
	}

  if (rawErrors != null) {
    canReflect.eachIndex(rawErrors, function (error) {
      [].push.apply(normalizedErrors, parseErrorItem(error));
    });
  }

	return normalizedErrors;
}
function (rawErrors) {
	var normalizedErrors = [];
  if (
    typeof rawErrors === 'string' ||
    (typeof rawErrors === 'object' && !Array.isArray(rawErrors))
  ) {
		// Only one error set, which we can assume was for a single property
		rawErrors = [rawErrors];
	}

  if (rawErrors != null) {
    canReflect.eachIndex(rawErrors, function (error) {
      [].push.apply(normalizedErrors, parseErrorItem(error));
    });
  }

	return normalizedErrors;
}
Takes errors and normalizes them