share_service.dart 868 B

12345678910111213141516171819202122232425262728
  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-document/protobuf.dart';
  6. class ShareService {
  7. Future<Either<ExportDataPB, FlowyError>> export(
  8. String docId, ExportType type) {
  9. final request = ExportPayloadPB.create()
  10. ..viewId = docId
  11. ..exportType = type;
  12. return DocumentEventExportDocument(request).send();
  13. }
  14. Future<Either<ExportDataPB, FlowyError>> exportText(String docId) {
  15. return export(docId, ExportType.Text);
  16. }
  17. Future<Either<ExportDataPB, FlowyError>> exportMarkdown(String docId) {
  18. return export(docId, ExportType.Markdown);
  19. }
  20. Future<Either<ExportDataPB, FlowyError>> exportURL(String docId) {
  21. return export(docId, ExportType.Link);
  22. }
  23. }