form method

Widget form()

Builds each Field contained inside the TemplateForm.

It then wraps all the fields inside an AutofillGroup for better autocompleting.

Implementation

Widget form() {
  final List<Widget> fieldWidgets = [];

  int _index = 0;

  for (final Field _field in model.fields) {
    final bool isFinal = _index == -1 || _index == model.fields.length - 1;

    final String? nextFocusId = isFinal ? null : model.fields[_index + 1].id;

    fieldWidgets.add(fieldWidget(
      _field,
      nextFieldId: nextFocusId,
      isFinal: isFinal,
    ));

    _index++;
  }

  return AutofillGroup(
    child: Column(
      children: fieldWidgets,
    ),
  );
}