generateFields method

List<Widget>? generateFields({
  1. bool firstTime = true,
})

Generate supported widgets based on the JSON data provided

Implementation

List<Widget>? generateFields({bool firstTime = true}) {
  _widgets!.clear();
  for (Autogenerated item in _controllers) {
    //text field
    if (DynamicFormConstants.textTypes.contains(item.type)) {
      _generateTextField(item);
    }
    //radio buttons
    if (item.type == DynamicFormConstants.RADIO) {
      if (firstTime) {
        item.controller = item.values!.first.value;
      }
      _generateRadioButtons(item);
    }
    //dropdown button
    if (item.type == DynamicFormConstants.SELECT) {
      if (firstTime) {
        item.controller = item.values!.first.value;
      }
      _generateDropDown(item);
    }
    //checkbox
    if (item.values != null &&
        item.values!.isNotEmpty &&
        item.type == DynamicFormConstants.CHECKBOX) {
      _generateCheckbox(item);
    }
  }
  return _widgets;
}