41 lines
1.2 KiB
Dart
Raw Normal View History

2021-09-14 16:22:44 +08:00
import 'dart:typed_data';
import 'package:dartz/dartz.dart';
import 'package:flowy_sdk/dispatch/dispatch.dart';
import 'package:flowy_sdk/protobuf/flowy-document/doc.pb.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/errors.pb.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/view_query.pb.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/view_update.pb.dart';
class DocRepository {
final String docId;
DocRepository({
required this.docId,
});
Future<Either<Doc, WorkspaceError>> readDoc() {
final request = OpenViewRequest.create()..viewId = docId;
return WorkspaceEventOpenView(request).send();
2021-07-24 14:05:49 +08:00
}
2021-09-14 16:22:44 +08:00
Future<Either<Unit, WorkspaceError>> saveDoc({required Uint8List data}) {
final request = SaveViewDataRequest.create()
..viewId = docId
2021-09-14 16:22:44 +08:00
..data = data;
return WorkspaceEventSaveViewData(request).send();
}
2021-07-24 09:57:17 +08:00
2021-09-15 16:35:40 +08:00
Future<Either<Doc, WorkspaceError>> applyChangeset(
2021-09-14 16:22:44 +08:00
{required Uint8List data}) {
final request = ApplyChangesetRequest.create()
..viewId = docId
..data = data;
return WorkspaceEventApplyChangeset(request).send();
2021-09-11 21:30:58 +08:00
}
Future<Either<Unit, WorkspaceError>> closeDoc(
2021-07-24 09:57:17 +08:00
{String? name, String? desc, String? text}) {
throw UnimplementedError();
}
}