deleteItem method

  1. @override
Future<Result<int, String, T?>> deleteItem(
  1. String id, {
  2. Future<Result<int, String, T?>> alternativeFunc(
    1. String
    )?,
  3. String channel = 'main',
})
override

Implementation

@override
Future<Result<int, String, T?>> deleteItem(
    String id, {
      Future<Result<int, String, T?>> Function(String)? alternativeFunc,
      String channel = 'main',
    }) async {
  final res = await (alternativeFunc != null
      ? alternativeFunc(id)
      : _crud.deleteItem(id));
  if (res.code == 0) {
    final currentList = _currentList(channel);
    final updatedList = currentList.where((e) => e.id != id).toList();
    _getItemsStream(channel).add(updatedList);
  }
  return res;
}