deleteFollowing method

Future<void> deleteFollowing(
  1. AtNotification notification, {
  2. bool isSetStatus = true,
})

deletes notification.fromAtSign from following list.

Implementation

Future<void> deleteFollowing(AtNotification notification,
    {bool isSetStatus = true}) async {
  try {
    if (isSetStatus) connectionProvider.setStatus(Status.loading);
    if (!following.list!.contains(notification.fromAtSign)) {
      if (isSetStatus) connectionProvider.setStatus(Status.done);
      return;
    }
    following.remove(notification.fromAtSign);
    var atKey = this._formKey(isFollowing: true);
    following.list!.isNotEmpty
        ? await _sdkService.put(atKey, following.toString())
        : await this._sdkService.put(atKey, 'null');

    connectionProvider.followingList!
        .removeWhere((element) => element.title == notification.fromAtSign);
    if (isSetStatus) {
      connectionProvider.setStatus(Status.done);
      await _sdkService.sync();
    }
  } catch (err) {
    connectionProvider.error = err;
    connectionProvider.setStatus(Status.error);
  }
}