getMainMenu method

Future<List<MainMenuModel>> getMainMenu()

Implementation

Future<List<MainMenuModel>> getMainMenu() async {
  var menu;
  GraphQLClient _client = graphQLConfiguration.clientToQuery();

  var homeBannerGql = """
                query retrieveCategoryForMenu() {
            retrieveCategoryForMenu() {
              _id
              categoryDescription
              categoryImage
              categoryMobileImage
              categoryName
              childCount
              sortOrder
              status
            }
          }
          """;

  QueryResult result = await _client.query(QueryOptions(
    document: gql(homeBannerGql),

    ///variables: vble,
    fetchPolicy: FetchPolicy.networkOnly,
  ));

  if (!result.hasException) {
    var mainMenu = result.data!['retrieveCategoryForMenu'];

    if (mainMenu != null && mainMenu.length > 0) {
      mainMenu.forEach((element) => {
            menu = new MainMenuModel(
              element['_id'],
              element['categoryDescription'],
              element['categoryImage'],
              element['categoryMobileImage'],
              element['categoryName'],
              element['childCount'],
              element['sortOrder'],
              element['status'],
            ),
            mainMenuList.add(menu)
          });
    }
    return mainMenuList;
  }
  return mainMenuList;
}