getHomeSettings method

Future<List<HomeSettingModel>> getHomeSettings()

Implementation

Future<List<HomeSettingModel>> getHomeSettings() async {
  var homeSettings;

  GraphQLClient _client = graphQLConfiguration.clientToQuery();

  var homeSettingGql = """
             {
          getAllEnableHomepageSetting {
          sortOrder
          type
          typeId
          display
          status
        _id
        }
        }
          """;

  QueryResult result = await _client.query(QueryOptions(
    document: gql(homeSettingGql),
    fetchPolicy: FetchPolicy.networkOnly,
  ));

  if (!result.hasException) {
    var settingsAvailable = result.data!['getAllEnableHomepageSetting'];

    if (settingsAvailable != null && settingsAvailable.length > 0) {
      settingsAvailable.forEach((element) => {
            homeSettings = new HomeSettingModel(
              element['_id'],
              element['sortOrder'],
              element['type'],
              element['typeId'],
              element['display'],
              element['status'],
            ),
            homeSettingList.add(homeSettings)
          });
    }
    return homeSettingList;
  }
  return homeSettingList;
}