create static method
Map<String, TextEditingController> forms = Forms.create(['name', {'qty': 1}]) // Only String and Map are allowed
Implementation
static Map<String, TextEditingController> create(List keys) {
Map<String, TextEditingController> res =
Map.fromEntries(List.generate(keys.length, (i) {
bool isString = keys[i] is String;
bool isMap = keys[i] is Map;
if (!isString && !isMap) {
throw 'Only String and Map are allowed';
}
return MapEntry(
isString ? keys[i] : (keys[i] as Map).keys.first,
TextEditingController(
text: isString ? '' : (keys[i] as Map).values.first.toString()));
}));
return res;
}