handleDynamicFormSubmit method

void handleDynamicFormSubmit()

Implementation

void handleDynamicFormSubmit() {
  validateAllFields();

  // Check for any errors first
  if (errors.values.any((error) => error != null)) {
    nestedObject = null;
    return;
  }

  // Check if form is optional and no fields are touched
  if (formValidation == "optional" && !touched.values.any((touch) => touch)) {
    nestedObject = null;
    return;
  }

  // Construct nested object
  final constructedObject = constructNestedObject(values);

  // Only set nestedObject if the constructed object is not empty
  if (constructedObject.isNotEmpty) {
    nestedObject = constructedObject;
    errors.clear();
    touched.clear();
    submitted = false;
  }

  notifyListeners();
}