|
@@ -3,7 +3,7 @@ use crate::DocumentUser;
|
|
use async_stream::stream;
|
|
use async_stream::stream;
|
|
use flowy_database::ConnectionPool;
|
|
use flowy_database::ConnectionPool;
|
|
use flowy_error::FlowyError;
|
|
use flowy_error::FlowyError;
|
|
-use flowy_revision::{OperationsMD5, RevisionManager, TransformOperations};
|
|
|
|
|
|
+use flowy_revision::{RevisionMD5, RevisionManager, TransformOperations};
|
|
use flowy_sync::{
|
|
use flowy_sync::{
|
|
client_document::{history::UndoResult, ClientDocument},
|
|
client_document::{history::UndoResult, ClientDocument},
|
|
entities::revision::{RevId, Revision},
|
|
entities::revision::{RevId, Revision},
|
|
@@ -70,7 +70,7 @@ impl EditDocumentQueue {
|
|
EditorCommand::ComposeLocalOperations { operations, ret } => {
|
|
EditorCommand::ComposeLocalOperations { operations, ret } => {
|
|
let mut document = self.document.write().await;
|
|
let mut document = self.document.write().await;
|
|
let _ = document.compose_operations(operations.clone())?;
|
|
let _ = document.compose_operations(operations.clone())?;
|
|
- let md5 = document.md5();
|
|
|
|
|
|
+ let md5 = document.document_md5();
|
|
drop(document);
|
|
drop(document);
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
@@ -78,16 +78,16 @@ impl EditDocumentQueue {
|
|
EditorCommand::ComposeRemoteOperation { client_operations, ret } => {
|
|
EditorCommand::ComposeRemoteOperation { client_operations, ret } => {
|
|
let mut document = self.document.write().await;
|
|
let mut document = self.document.write().await;
|
|
let _ = document.compose_operations(client_operations.clone())?;
|
|
let _ = document.compose_operations(client_operations.clone())?;
|
|
- let md5 = document.md5();
|
|
|
|
|
|
+ let md5 = document.document_md5();
|
|
drop(document);
|
|
drop(document);
|
|
- let _ = ret.send(Ok(md5));
|
|
|
|
|
|
+ let _ = ret.send(Ok(md5.into()));
|
|
}
|
|
}
|
|
EditorCommand::ResetOperations { operations, ret } => {
|
|
EditorCommand::ResetOperations { operations, ret } => {
|
|
let mut document = self.document.write().await;
|
|
let mut document = self.document.write().await;
|
|
let _ = document.set_operations(operations);
|
|
let _ = document.set_operations(operations);
|
|
- let md5 = document.md5();
|
|
|
|
|
|
+ let md5 = document.document_md5();
|
|
drop(document);
|
|
drop(document);
|
|
- let _ = ret.send(Ok(md5));
|
|
|
|
|
|
+ let _ = ret.send(Ok(md5.into()));
|
|
}
|
|
}
|
|
EditorCommand::TransformOperations { operations, ret } => {
|
|
EditorCommand::TransformOperations { operations, ret } => {
|
|
let f = || async {
|
|
let f = || async {
|
|
@@ -114,14 +114,14 @@ impl EditDocumentQueue {
|
|
EditorCommand::Insert { index, data, ret } => {
|
|
EditorCommand::Insert { index, data, ret } => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let operations = write_guard.insert(index, data)?;
|
|
let operations = write_guard.insert(index, data)?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
EditorCommand::Delete { interval, ret } => {
|
|
EditorCommand::Delete { interval, ret } => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let operations = write_guard.delete(interval)?;
|
|
let operations = write_guard.delete(interval)?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
@@ -132,14 +132,14 @@ impl EditDocumentQueue {
|
|
} => {
|
|
} => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let operations = write_guard.format(interval, attribute)?;
|
|
let operations = write_guard.format(interval, attribute)?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
EditorCommand::Replace { interval, data, ret } => {
|
|
EditorCommand::Replace { interval, data, ret } => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let operations = write_guard.replace(interval, data)?;
|
|
let operations = write_guard.replace(interval, data)?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
@@ -152,14 +152,14 @@ impl EditDocumentQueue {
|
|
EditorCommand::Undo { ret } => {
|
|
EditorCommand::Undo { ret } => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let UndoResult { operations } = write_guard.undo()?;
|
|
let UndoResult { operations } = write_guard.undo()?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
EditorCommand::Redo { ret } => {
|
|
EditorCommand::Redo { ret } => {
|
|
let mut write_guard = self.document.write().await;
|
|
let mut write_guard = self.document.write().await;
|
|
let UndoResult { operations } = write_guard.redo()?;
|
|
let UndoResult { operations } = write_guard.redo()?;
|
|
- let md5 = write_guard.md5();
|
|
|
|
|
|
+ let md5 = write_guard.document_md5();
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = self.save_local_operations(operations, md5).await?;
|
|
let _ = ret.send(Ok(()));
|
|
let _ = ret.send(Ok(()));
|
|
}
|
|
}
|
|
@@ -197,11 +197,11 @@ pub(crate) enum EditorCommand {
|
|
},
|
|
},
|
|
ComposeRemoteOperation {
|
|
ComposeRemoteOperation {
|
|
client_operations: DeltaTextOperations,
|
|
client_operations: DeltaTextOperations,
|
|
- ret: Ret<OperationsMD5>,
|
|
|
|
|
|
+ ret: Ret<RevisionMD5>,
|
|
},
|
|
},
|
|
ResetOperations {
|
|
ResetOperations {
|
|
operations: DeltaTextOperations,
|
|
operations: DeltaTextOperations,
|
|
- ret: Ret<OperationsMD5>,
|
|
|
|
|
|
+ ret: Ret<RevisionMD5>,
|
|
},
|
|
},
|
|
TransformOperations {
|
|
TransformOperations {
|
|
operations: DeltaTextOperations,
|
|
operations: DeltaTextOperations,
|