2021-07-23 16:45:29 +08:00
|
|
|
import 'package:dartz/dartz.dart';
|
|
|
|
import 'package:flowy_sdk/dispatch/dispatch.dart';
|
2021-09-11 20:09:46 +08:00
|
|
|
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';
|
2021-07-23 16:45:29 +08:00
|
|
|
|
|
|
|
class DocRepository {
|
|
|
|
final String docId;
|
|
|
|
DocRepository({
|
|
|
|
required this.docId,
|
|
|
|
});
|
|
|
|
|
2021-10-06 15:23:38 +08:00
|
|
|
Future<Either<DocDelta, WorkspaceError>> readDoc() {
|
2021-09-11 20:09:46 +08:00
|
|
|
final request = OpenViewRequest.create()..viewId = docId;
|
|
|
|
return WorkspaceEventOpenView(request).send();
|
2021-07-24 14:05:49 +08:00
|
|
|
}
|
|
|
|
|
2021-10-06 15:23:38 +08:00
|
|
|
Future<Either<DocDelta, WorkspaceError>> applyDelta({required String data}) {
|
2021-09-23 13:15:35 +08:00
|
|
|
final request = DocDelta.create()
|
|
|
|
..docId = docId
|
2021-09-14 16:22:44 +08:00
|
|
|
..data = data;
|
2021-09-23 13:15:35 +08:00
|
|
|
return WorkspaceEventApplyDocDelta(request).send();
|
2021-09-11 21:30:58 +08:00
|
|
|
}
|
|
|
|
|
2021-09-11 20:09:46 +08:00
|
|
|
Future<Either<Unit, WorkspaceError>> closeDoc(
|
2021-07-24 09:57:17 +08:00
|
|
|
{String? name, String? desc, String? text}) {
|
|
|
|
throw UnimplementedError();
|
|
|
|
}
|
2021-07-23 16:45:29 +08:00
|
|
|
}
|