delete method

  1. @override
Future<void> delete()
override

Deletes the document.

Deleted documents are immediately reflected and removed from related collections, etc.

Implementation

@override
Future<void> delete() async {
  if (_saveCompleter != null) {
    return saving;
  }
  _saveCompleter = Completer<void>();
  try {
    await onDelete();
    _deleteProcess();
    notifyListeners();
    await onDidDelete();
    _saveCompleter?.complete();
    _saveCompleter = null;
  } catch (e) {
    _saveCompleter?.completeError(e);
    _saveCompleter = null;
  } finally {
    _saveCompleter?.complete();
    _saveCompleter = null;
  }
}