updateHybridList method

void updateHybridList(
  1. LocationNotificationModel newUser
)

Implementation

void updateHybridList(LocationNotificationModel newUser) async {
  var contains = false;
  late int index;
  allReceivedUsersList!.forEach((user) {
    if (user.displayName == newUser.atsignCreator) {
      contains = true;
      index = allReceivedUsersList!.indexOf(user);
    }
  });
  if (!contains) {
    if (newUser.getLatLng != LatLng(0, 0)) {
      print('!contains from main app');
      var atsign = newUser.atsignCreator;
      var _latlng = newUser.getLatLng;
      var _image = await getImageOfAtsignNew(atsign);

      var user = HybridModel(
          displayName: newUser.atsignCreator,
          latLng: _latlng,
          image: _image,
          eta: '?');

      allReceivedUsersList!.add(user);
      _allReceivedUsersController.add(allReceivedUsersList);
      allReceivedUsersSink.add(allReceivedUsersList);
      LocationService().newList();
    }
  } else {
    print('contains from main app');

    allReceivedUsersList![index].latLng = newUser.getLatLng;
    allReceivedUsersList![index].eta = '?';
    _allReceivedUsersController.add(allReceivedUsersList);
    allReceivedUsersSink.add(allReceivedUsersList);
    LocationService().newList();
  }
}