initializeForm method
void
initializeForm(
- String componentName,
- FormDefinition formJson,
- Map<
String, dynamic> ? existingData
Implementation
void initializeForm(String componentName, FormDefinition formJson,
Map<String, dynamic>? existingData) async {
formDefinitions[componentName] = formJson;
values.clear();
errors.clear();
touched.clear();
fieldsDisabled.clear();
await Future.delayed(Duration(milliseconds: 100));
int startIndex = formJson.startWithIndex ?? 0;
for (int index = 0; index <= startIndex; index++) {
allFields.addAll(extractFields(formJson, index: index));
}
if (existingData != null) {
values.addAll(flattenObject(existingData));
}
// Set default values & disabled fields
for (var field in allFields) {
await processFieldLogic(field);
}
notifyListeners();
}