trash_service.dart 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import 'dart:async';
  2. import 'package:dartz/dartz.dart';
  3. import 'package:flowy_sdk/dispatch/dispatch.dart';
  4. import 'package:flowy_sdk/protobuf/flowy-error/errors.pb.dart';
  5. import 'package:flowy_sdk/protobuf/flowy-folder/trash.pb.dart';
  6. class TrashService {
  7. Future<Either<RepeatedTrashPB, FlowyError>> readTrash() {
  8. return FolderEventReadTrash().send();
  9. }
  10. Future<Either<Unit, FlowyError>> putback(String trashId) {
  11. final id = TrashIdPB.create()..id = trashId;
  12. return FolderEventPutbackTrash(id).send();
  13. }
  14. Future<Either<Unit, FlowyError>> deleteViews(List<Tuple2<String, TrashType>> trashList) {
  15. final items = trashList.map((trash) {
  16. return TrashIdPB.create()
  17. ..id = trash.value1
  18. ..ty = trash.value2;
  19. });
  20. final ids = RepeatedTrashIdPB(items: items);
  21. return FolderEventDeleteTrash(ids).send();
  22. }
  23. Future<Either<Unit, FlowyError>> restoreAll() {
  24. return FolderEventRestoreAllTrash().send();
  25. }
  26. Future<Either<Unit, FlowyError>> deleteAll() {
  27. return FolderEventDeleteAllTrash().send();
  28. }
  29. }