convertMapToClassModel static method

String convertMapToClassModel({
  1. required String name,
  2. required Map response,
})

convert API response to model class

Implementation

static String convertMapToClassModel({
  required String name,
  required Map response,
}) {
  String classContents =
      "class ${name.toCamelCaseFirstLetterForEachWord()}Model {\n";

  List<Map> mapKeys = [];

  // setup variables
  classContents = SetupHelperMethods.setupVariables(
    data: response,
    content: classContents,
    mapKeys: mapKeys,
  );

  // setup optional constructor
  classContents = SetupHelperMethods.setupOptionalConstructor(
    content: classContents,
    name: name,
    data: response,
  );

  // setup fromJson method
  classContents = SetupHelperMethods.setupFromJson(
    content: classContents,
    name: name,
    data: response,
  );

  // setup toJson method
  classContents = SetupHelperMethods.setupToJson(
    content: classContents,
    data: response,
  );

  // Recursive for each element has value map []
  for (var element in mapKeys) {
    element.forEach((key, value) {
      classContents += convertMapToClassModel(name: key, response: value);
    });
  }

  return classContents;
}