Browse Source

refactor: rename folder-data-model to folder-rev-model

appflowy 2 years ago
parent
commit
d39b31f357
41 changed files with 168 additions and 151 deletions
  1. 61 43
      frontend/rust-lib/Cargo.lock
  2. 1 1
      frontend/rust-lib/flowy-folder/Cargo.toml
  3. 1 1
      frontend/rust-lib/flowy-folder/src/entities/app.rs
  4. 1 1
      frontend/rust-lib/flowy-folder/src/entities/trash.rs
  5. 1 1
      frontend/rust-lib/flowy-folder/src/entities/view.rs
  6. 1 1
      frontend/rust-lib/flowy-folder/src/entities/workspace.rs
  7. 1 1
      frontend/rust-lib/flowy-folder/src/event_map.rs
  8. 1 1
      frontend/rust-lib/flowy-folder/src/manager.rs
  9. 1 1
      frontend/rust-lib/flowy-folder/src/services/app/controller.rs
  10. 1 1
      frontend/rust-lib/flowy-folder/src/services/app/event_handler.rs
  11. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/migration.rs
  12. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/mod.rs
  13. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_1/app_sql.rs
  14. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_1/trash_sql.rs
  15. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_1/v1_impl.rs
  16. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_1/view_sql.rs
  17. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_1/workspace_sql.rs
  18. 1 1
      frontend/rust-lib/flowy-folder/src/services/persistence/version_2/v2_impl.rs
  19. 1 1
      frontend/rust-lib/flowy-folder/src/services/trash/controller.rs
  20. 1 1
      frontend/rust-lib/flowy-folder/src/services/view/controller.rs
  21. 1 1
      frontend/rust-lib/flowy-folder/src/services/view/event_handler.rs
  22. 1 1
      frontend/rust-lib/flowy-folder/src/services/workspace/controller.rs
  23. 1 2
      frontend/rust-lib/flowy-net/Cargo.toml
  24. 1 1
      frontend/rust-lib/flowy-net/src/http_server/folder.rs
  25. 1 3
      frontend/rust-lib/flowy-net/src/local_server/server.rs
  26. 53 29
      shared-lib/Cargo.lock
  27. 1 1
      shared-lib/Cargo.toml
  28. 0 31
      shared-lib/flowy-folder-data-model/Cargo.toml
  29. 0 9
      shared-lib/flowy-folder-data-model/src/lib.rs
  30. 1 1
      shared-lib/flowy-sync/Cargo.toml
  31. 1 1
      shared-lib/flowy-sync/src/client_folder/builder.rs
  32. 2 4
      shared-lib/flowy-sync/src/client_folder/folder_pad.rs
  33. 16 0
      shared-lib/folder-rev-model/Cargo.toml
  34. 1 1
      shared-lib/folder-rev-model/src/app_rev.rs
  35. 1 1
      shared-lib/folder-rev-model/src/folder_rev.rs
  36. 4 0
      shared-lib/folder-rev-model/src/lib.rs
  37. 0 0
      shared-lib/folder-rev-model/src/macros.rs
  38. 0 0
      shared-lib/folder-rev-model/src/trash_rev.rs
  39. 1 1
      shared-lib/folder-rev-model/src/user_default.rs
  40. 1 1
      shared-lib/folder-rev-model/src/view_rev.rs
  41. 1 1
      shared-lib/folder-rev-model/src/workspace_rev.rs

+ 61 - 43
frontend/rust-lib/Cargo.lock

@@ -876,8 +876,8 @@ dependencies = [
  "rand 0.8.5",
  "serde",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "tracing-subscriber",
@@ -927,10 +927,10 @@ dependencies = [
  "flowy-document",
  "flowy-error",
  "flowy-folder",
- "flowy-folder-data-model",
  "flowy-revision",
  "flowy-sync",
  "flowy-test",
+ "folder-rev-model",
  "futures",
  "lazy_static",
  "lib-dispatch",
@@ -942,34 +942,13 @@ dependencies = [
  "protobuf",
  "serde",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "unicode-segmentation",
 ]
 
-[[package]]
-name = "flowy-folder-data-model"
-version = "0.1.0"
-dependencies = [
- "bytes",
- "chrono",
- "derive_more",
- "flowy-derive",
- "flowy-error-code",
- "lib-infra",
- "log",
- "nanoid",
- "protobuf",
- "serde",
- "serde_json",
- "serde_repr",
- "strum",
- "strum_macros",
- "unicode-segmentation",
-]
-
 [[package]]
 name = "flowy-grid"
 version = "0.1.0"
@@ -1005,8 +984,8 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_repr",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "url",
@@ -1040,9 +1019,9 @@ dependencies = [
  "flowy-document",
  "flowy-error",
  "flowy-folder",
- "flowy-folder-data-model",
  "flowy-sync",
  "flowy-user",
+ "folder-rev-model",
  "futures-util",
  "http-flowy",
  "hyper",
@@ -1058,8 +1037,8 @@ dependencies = [
  "serde",
  "serde-aux",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
 ]
@@ -1081,8 +1060,8 @@ dependencies = [
  "parking_lot 0.11.2",
  "serde",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
 ]
@@ -1128,8 +1107,8 @@ dependencies = [
  "dashmap",
  "dissimilar",
  "flowy-derive",
- "flowy-folder-data-model",
  "flowy-grid-data-model",
+ "folder-rev-model",
  "futures",
  "lib-infra",
  "lib-ot",
@@ -1139,8 +1118,8 @@ dependencies = [
  "protobuf",
  "serde",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "url",
@@ -1209,8 +1188,8 @@ dependencies = [
  "serde",
  "serde_json",
  "serial_test",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "unicode-segmentation",
@@ -1223,6 +1202,20 @@ version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
+[[package]]
+name = "folder-rev-model"
+version = "0.1.0"
+dependencies = [
+ "bytes",
+ "chrono",
+ "nanoid",
+ "serde",
+ "serde_json",
+ "serde_repr",
+ "strum 0.24.1",
+ "strum_macros 0.24.3",
+]
+
 [[package]]
 name = "foreign-types"
 version = "0.3.2"
@@ -1458,6 +1451,12 @@ dependencies = [
  "unicode-segmentation",
 ]
 
+[[package]]
+name = "heck"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+
 [[package]]
 name = "hermit-abi"
 version = "0.1.19"
@@ -1782,8 +1781,8 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_repr",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "thiserror",
  "tokio",
  "tracing",
@@ -1822,8 +1821,8 @@ dependencies = [
  "paste",
  "pin-project",
  "protobuf",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tokio-tungstenite",
  "tracing",
@@ -3111,15 +3110,34 @@ version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
 
+[[package]]
+name = "strum"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"
+
 [[package]]
 name = "strum_macros"
 version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
 dependencies = [
- "heck",
+ "heck 0.3.3",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.24.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
+dependencies = [
+ "heck 0.4.0",
  "proc-macro2",
  "quote",
+ "rustversion",
  "syn",
 ]
 

+ 1 - 1
frontend/rust-lib/flowy-folder/Cargo.toml

@@ -6,7 +6,7 @@ edition = "2018"
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-flowy-folder-data-model = { path = "../../../shared-lib/flowy-folder-data-model" }
+folder-rev-model = { path = "../../../shared-lib/folder-rev-model" }
 flowy-sync = { path = "../../../shared-lib/flowy-sync" }
 flowy-derive = { path = "../../../shared-lib/flowy-derive" }
 lib-ot = { path = "../../../shared-lib/lib-ot" }

+ 1 - 1
frontend/rust-lib/flowy-folder/src/entities/app.rs

@@ -8,7 +8,7 @@ use crate::{
     impl_def_and_def_mut,
 };
 use flowy_derive::ProtoBuf;
-use flowy_folder_data_model::revision::AppRevision;
+use folder_rev_model::AppRevision;
 use std::convert::TryInto;
 
 #[derive(Eq, PartialEq, ProtoBuf, Debug, Default, Clone)]

+ 1 - 1
frontend/rust-lib/flowy-folder/src/entities/trash.rs

@@ -1,6 +1,6 @@
 use crate::impl_def_and_def_mut;
 use flowy_derive::{ProtoBuf, ProtoBuf_Enum};
-use flowy_folder_data_model::revision::{TrashRevision, TrashTypeRevision};
+use folder_rev_model::{TrashRevision, TrashTypeRevision};
 use serde::{Deserialize, Serialize};
 use std::fmt::Formatter;
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/entities/view.rs

@@ -7,7 +7,7 @@ use crate::{
     impl_def_and_def_mut,
 };
 use flowy_derive::{ProtoBuf, ProtoBuf_Enum};
-use flowy_folder_data_model::revision::{gen_view_id, ViewDataFormatRevision, ViewLayoutTypeRevision, ViewRevision};
+use folder_rev_model::{gen_view_id, ViewDataFormatRevision, ViewLayoutTypeRevision, ViewRevision};
 use std::convert::TryInto;
 
 #[derive(Eq, PartialEq, ProtoBuf, Debug, Default, Clone)]

+ 1 - 1
frontend/rust-lib/flowy-folder/src/entities/workspace.rs

@@ -5,7 +5,7 @@ use crate::{
     impl_def_and_def_mut,
 };
 use flowy_derive::ProtoBuf;
-use flowy_folder_data_model::revision::WorkspaceRevision;
+use folder_rev_model::WorkspaceRevision;
 use std::convert::TryInto;
 
 #[derive(Eq, PartialEq, ProtoBuf, Default, Debug, Clone)]

+ 1 - 1
frontend/rust-lib/flowy-folder/src/event_map.rs

@@ -11,7 +11,7 @@ use crate::{
 };
 use flowy_database::{ConnectionPool, DBConnection};
 use flowy_derive::{Flowy_Event, ProtoBuf_Enum};
-use flowy_folder_data_model::revision::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use lib_dispatch::prelude::*;
 use lib_infra::future::FutureResult;
 use std::sync::Arc;

+ 1 - 1
frontend/rust-lib/flowy-folder/src/manager.rs

@@ -14,12 +14,12 @@ use crate::{
 use bytes::Bytes;
 use flowy_document::editor::initial_read_me;
 use flowy_error::FlowyError;
-use flowy_folder_data_model::user_default;
 use flowy_revision::{
     RevisionManager, RevisionPersistence, RevisionPersistenceConfiguration, RevisionWebSocket,
     SQLiteRevisionSnapshotPersistence,
 };
 use flowy_sync::{client_folder::FolderPad, entities::ws_data::ServerRevisionWSData};
+use folder_rev_model::user_default;
 use lazy_static::lazy_static;
 use lib_infra::future::FutureResult;
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/app/controller.rs

@@ -12,7 +12,7 @@ use crate::{
     },
 };
 
-use flowy_folder_data_model::revision::AppRevision;
+use folder_rev_model::AppRevision;
 use futures::{FutureExt, StreamExt};
 use std::{collections::HashSet, sync::Arc};
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/app/event_handler.rs

@@ -3,7 +3,7 @@ use crate::{
     errors::FlowyError,
     services::{AppController, TrashController, ViewController},
 };
-use flowy_folder_data_model::revision::TrashRevision;
+use folder_rev_model::TrashRevision;
 use lib_dispatch::prelude::{data_result, AppData, Data, DataResult};
 use std::{convert::TryInto, sync::Arc};
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/migration.rs

@@ -6,12 +6,12 @@ use crate::{
 use bytes::Bytes;
 use flowy_database::kv::KV;
 use flowy_error::{FlowyError, FlowyResult};
-use flowy_folder_data_model::revision::{AppRevision, FolderRevision, ViewRevision, WorkspaceRevision};
 use flowy_revision::reset::{RevisionResettable, RevisionStructReset};
 use flowy_sync::client_folder::make_folder_rev_json_str;
 use flowy_sync::client_folder::FolderPad;
 use flowy_sync::entities::revision::Revision;
 use flowy_sync::server_folder::FolderOperationsBuilder;
+use folder_rev_model::{AppRevision, FolderRevision, ViewRevision, WorkspaceRevision};
 
 use crate::services::persistence::rev_sqlite::SQLiteFolderRevisionPersistence;
 use flowy_sync::util::md5;

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/mod.rs

@@ -10,9 +10,9 @@ use crate::{
 };
 use flowy_database::ConnectionPool;
 use flowy_error::{FlowyError, FlowyResult};
-use flowy_folder_data_model::revision::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use flowy_revision::disk::{RevisionDiskCache, RevisionState, SyncRecord};
 use flowy_sync::{client_folder::FolderPad, entities::revision::Revision};
+use folder_rev_model::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 
 use crate::services::persistence::rev_sqlite::SQLiteFolderRevisionPersistence;
 use flowy_sync::server_folder::FolderOperationsBuilder;

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_1/app_sql.rs

@@ -8,7 +8,7 @@ use flowy_database::{
     schema::{app_table, app_table::dsl},
     SqliteConnection,
 };
-use flowy_folder_data_model::revision::AppRevision;
+use folder_rev_model::AppRevision;
 
 pub struct AppTableSql();
 impl AppTableSql {

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_1/trash_sql.rs

@@ -5,7 +5,7 @@ use flowy_database::{
     schema::{trash_table, trash_table::dsl},
     SqliteConnection,
 };
-use flowy_folder_data_model::revision::{TrashRevision, TrashTypeRevision};
+use folder_rev_model::{TrashRevision, TrashTypeRevision};
 
 pub struct TrashTableSql();
 impl TrashTableSql {

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_1/v1_impl.rs

@@ -8,7 +8,7 @@ use crate::services::persistence::{
 };
 use flowy_database::DBConnection;
 use flowy_error::FlowyResult;
-use flowy_folder_data_model::revision::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 
 /// V1Transaction is deprecated since version 0.0.2 version
 pub struct V1Transaction<'a>(pub &'a DBConnection);

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_1/view_sql.rs

@@ -13,7 +13,7 @@ use flowy_database::{
     SqliteConnection,
 };
 
-use flowy_folder_data_model::revision::{ViewDataFormatRevision, ViewLayoutTypeRevision, ViewRevision};
+use folder_rev_model::{ViewDataFormatRevision, ViewLayoutTypeRevision, ViewRevision};
 use lib_infra::util::timestamp;
 
 pub struct ViewTableSql();

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_1/workspace_sql.rs

@@ -4,7 +4,7 @@ use flowy_database::{
     prelude::*,
     schema::{workspace_table, workspace_table::dsl},
 };
-use flowy_folder_data_model::revision::WorkspaceRevision;
+use folder_rev_model::WorkspaceRevision;
 
 pub(crate) struct WorkspaceTableSql();
 impl WorkspaceTableSql {

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/persistence/version_2/v2_impl.rs

@@ -3,7 +3,7 @@ use crate::services::{
     persistence::{AppChangeset, FolderPersistenceTransaction, ViewChangeset, WorkspaceChangeset},
 };
 use flowy_error::{FlowyError, FlowyResult};
-use flowy_folder_data_model::revision::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use std::sync::Arc;
 
 impl FolderPersistenceTransaction for FolderEditor {

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/trash/controller.rs

@@ -6,7 +6,7 @@ use crate::{
     services::persistence::{FolderPersistence, FolderPersistenceTransaction},
 };
 
-use flowy_folder_data_model::revision::TrashRevision;
+use folder_rev_model::TrashRevision;
 use std::{fmt::Formatter, sync::Arc};
 use tokio::sync::{broadcast, mpsc};
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/view/controller.rs

@@ -16,8 +16,8 @@ use crate::{
 };
 use bytes::Bytes;
 use flowy_database::kv::KV;
-use flowy_folder_data_model::revision::{gen_view_id, ViewRevision};
 use flowy_sync::entities::document::DocumentIdPB;
+use folder_rev_model::{gen_view_id, ViewRevision};
 use futures::{FutureExt, StreamExt};
 use std::{collections::HashSet, sync::Arc};
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/view/event_handler.rs

@@ -13,7 +13,7 @@ use crate::{
     errors::FlowyError,
     services::{TrashController, ViewController},
 };
-use flowy_folder_data_model::revision::TrashRevision;
+use folder_rev_model::TrashRevision;
 use lib_dispatch::prelude::{data_result, AppData, Data, DataResult};
 use std::{convert::TryInto, sync::Arc};
 

+ 1 - 1
frontend/rust-lib/flowy-folder/src/services/workspace/controller.rs

@@ -10,7 +10,7 @@ use crate::{
     },
 };
 use flowy_database::kv::KV;
-use flowy_folder_data_model::revision::{AppRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, WorkspaceRevision};
 use std::sync::Arc;
 
 pub struct WorkspaceController {

+ 1 - 2
frontend/rust-lib/flowy-net/Cargo.toml

@@ -10,7 +10,7 @@ lib-dispatch = { path = "../lib-dispatch" }
 flowy-error = { path = "../flowy-error", features = ["collaboration", "http_server"] }
 flowy-derive = { path = "../../../shared-lib/flowy-derive" }
 flowy-sync = { path = "../../../shared-lib/flowy-sync"}
-flowy-folder-data-model = { path = "../../../shared-lib/flowy-folder-data-model"}
+folder-rev-model = { path = "../../../shared-lib/folder-rev-model"}
 flowy-folder = { path = "../flowy-folder" }
 flowy-user = { path = "../flowy-user" }
 flowy-document = { path = "../flowy-document" }
@@ -45,7 +45,6 @@ dart = [
     "flowy-user/dart",
     "flowy-sync/dart",
     "flowy-error/dart",
-    "flowy-folder-data-model/dart"
 ]
 
 [build-dependencies]

+ 1 - 1
frontend/rust-lib/flowy-net/src/http_server/folder.rs

@@ -10,7 +10,7 @@ use flowy_folder::entities::{
     {AppIdPB, CreateAppParams, UpdateAppParams},
 };
 use flowy_folder::event_map::FolderCouldServiceV1;
-use flowy_folder_data_model::revision::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use http_flowy::errors::ServerError;
 use http_flowy::response::FlowyResponse;
 use lazy_static::lazy_static;

+ 1 - 3
frontend/rust-lib/flowy-net/src/local_server/server.rs

@@ -258,13 +258,11 @@ use flowy_folder::entities::{
     view::{CreateViewParams, RepeatedViewIdPB, UpdateViewParams, ViewIdPB},
     workspace::{CreateWorkspaceParams, UpdateWorkspaceParams, WorkspaceIdPB},
 };
-use flowy_folder_data_model::revision::{
-    gen_app_id, gen_workspace_id, AppRevision, TrashRevision, ViewRevision, WorkspaceRevision,
-};
 use flowy_user::entities::{
     SignInParams, SignInResponse, SignUpParams, SignUpResponse, UpdateUserProfileParams, UserProfilePB,
 };
 use flowy_user::event_map::UserCloudService;
+use folder_rev_model::{gen_app_id, gen_workspace_id, AppRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use lib_infra::{future::FutureResult, util::timestamp};
 
 impl FolderCouldServiceV1 for LocalServer {

+ 53 - 29
shared-lib/Cargo.lock

@@ -403,27 +403,6 @@ dependencies = [
  "protobuf",
 ]
 
-[[package]]
-name = "flowy-folder-data-model"
-version = "0.1.0"
-dependencies = [
- "bytes",
- "chrono",
- "derive_more",
- "flowy-derive",
- "flowy-error-code",
- "lib-infra",
- "log",
- "nanoid",
- "protobuf",
- "serde",
- "serde_json",
- "serde_repr",
- "strum",
- "strum_macros",
- "unicode-segmentation",
-]
-
 [[package]]
 name = "flowy-grid-data-model"
 version = "0.1.0"
@@ -449,8 +428,8 @@ dependencies = [
  "dashmap",
  "dissimilar",
  "flowy-derive",
- "flowy-folder-data-model",
  "flowy-grid-data-model",
+ "folder-rev-model",
  "futures",
  "lib-infra",
  "lib-ot",
@@ -460,8 +439,8 @@ dependencies = [
  "protobuf",
  "serde",
  "serde_json",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tracing",
  "url",
@@ -473,6 +452,20 @@ version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
+[[package]]
+name = "folder-rev-model"
+version = "0.1.0"
+dependencies = [
+ "bytes",
+ "chrono",
+ "nanoid",
+ "serde",
+ "serde_json",
+ "serde_repr",
+ "strum 0.24.1",
+ "strum_macros 0.24.3",
+]
+
 [[package]]
 name = "form_urlencoded"
 version = "1.0.1"
@@ -663,6 +656,12 @@ dependencies = [
  "unicode-segmentation",
 ]
 
+[[package]]
+name = "heck"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+
 [[package]]
 name = "hermit-abi"
 version = "0.1.19"
@@ -823,8 +822,8 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_repr",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "thiserror",
  "tokio",
  "tracing",
@@ -848,8 +847,8 @@ dependencies = [
  "paste",
  "pin-project",
  "protobuf",
- "strum",
- "strum_macros",
+ "strum 0.21.0",
+ "strum_macros 0.21.1",
  "tokio",
  "tokio-tungstenite",
  "tracing",
@@ -1500,6 +1499,12 @@ dependencies = [
  "semver",
 ]
 
+[[package]]
+name = "rustversion"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8"
+
 [[package]]
 name = "ryu"
 version = "1.0.5"
@@ -1654,15 +1659,34 @@ version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
 
+[[package]]
+name = "strum"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"
+
 [[package]]
 name = "strum_macros"
 version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
 dependencies = [
- "heck",
+ "heck 0.3.3",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.24.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
+dependencies = [
+ "heck 0.4.0",
  "proc-macro2",
  "quote",
+ "rustversion",
  "syn",
 ]
 

+ 1 - 1
shared-lib/Cargo.toml

@@ -1,6 +1,6 @@
 [workspace]
 members = [
-  "flowy-folder-data-model",
+  "folder-rev-model",
   "flowy-sync",
   "lib-ot",
   "lib-ws",

+ 0 - 31
shared-lib/flowy-folder-data-model/Cargo.toml

@@ -1,31 +0,0 @@
-[package]
-name = "flowy-folder-data-model"
-version = "0.1.0"
-edition = "2018"
-
-# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
-
-[dependencies]
-flowy-derive = { path = "../flowy-derive" }
-protobuf = {version = "2.18.0"}
-bytes = "1.0"
-unicode-segmentation = "1.8"
-strum = "0.21"
-strum_macros = "0.21"
-derive_more = {version = "0.99", features = ["display"]}
-log = "0.4.14"
-nanoid = "0.4.0"
-chrono = { version = "0.4" }
-flowy-error-code = { path = "../flowy-error-code"}
-serde = { version = "1.0", features = ["derive", "rc"] }
-serde_json = "1.0"
-serde_repr = "0.1"
-
-[build-dependencies]
-lib-infra = { path = "../lib-infra", features = ["protobuf_file_gen"] }
-
-[features]
-default = []
-backend = []
-frontend = []
-dart = ["lib-infra/dart", "flowy-error-code/dart"]

+ 0 - 9
shared-lib/flowy-folder-data-model/src/lib.rs

@@ -1,9 +0,0 @@
-#[macro_use]
-mod macros;
-
-pub mod revision;
-pub mod user_default;
-
-pub mod errors {
-    pub use flowy_error_code::ErrorCode;
-}

+ 1 - 1
shared-lib/flowy-sync/Cargo.toml

@@ -9,7 +9,7 @@ edition = "2018"
 lib-ot = { path = "../lib-ot" }
 lib-infra = { path = "../lib-infra" }
 flowy-derive = { path = "../flowy-derive" }
-flowy-folder-data-model = { path = "../flowy-folder-data-model" }
+folder-rev-model = { path = "../folder-rev-model" }
 flowy-grid-data-model = { path = "../flowy-grid-data-model" }
 protobuf = {version = "2.18.0"}
 bytes = "1.0"

+ 1 - 1
shared-lib/flowy-sync/src/client_folder/builder.rs

@@ -6,7 +6,7 @@ use crate::{
 };
 
 use crate::server_folder::FolderOperations;
-use flowy_folder_data_model::revision::{TrashRevision, WorkspaceRevision};
+use folder_rev_model::{TrashRevision, WorkspaceRevision};
 use serde::{Deserialize, Serialize};
 
 #[derive(Serialize, Deserialize)]

+ 2 - 4
shared-lib/flowy-sync/src/client_folder/folder_pad.rs

@@ -6,7 +6,7 @@ use crate::{
     entities::revision::Revision,
     errors::{CollaborateError, CollaborateResult},
 };
-use flowy_folder_data_model::revision::{AppRevision, FolderRevision, TrashRevision, ViewRevision, WorkspaceRevision};
+use folder_rev_model::{AppRevision, FolderRevision, TrashRevision, ViewRevision, WorkspaceRevision};
 use lib_infra::util::move_vec_element;
 use lib_ot::core::*;
 use serde::Deserialize;
@@ -463,9 +463,7 @@ mod tests {
     use crate::client_folder::folder_pad::FolderPad;
     use crate::server_folder::{FolderOperations, FolderOperationsBuilder};
     use chrono::Utc;
-    use flowy_folder_data_model::revision::{
-        AppRevision, FolderRevision, TrashRevision, ViewRevision, WorkspaceRevision,
-    };
+    use folder_rev_model::{AppRevision, FolderRevision, TrashRevision, ViewRevision, WorkspaceRevision};
     use lib_ot::core::OperationTransform;
     use serde::Deserialize;
 

+ 16 - 0
shared-lib/folder-rev-model/Cargo.toml

@@ -0,0 +1,16 @@
+[package]
+name = "folder-rev-model"
+version = "0.1.0"
+edition = "2018"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+bytes = "1.0"
+strum = "0.24.1"
+strum_macros = "0.24.3"
+nanoid = "0.4.0"
+chrono = { version = "0.4" }
+serde = { version = "1.0", features = ["derive", "rc"] }
+serde_json = "1.0"
+serde_repr = "0.1"

+ 1 - 1
shared-lib/flowy-folder-data-model/src/revision/app_rev.rs → shared-lib/folder-rev-model/src/app_rev.rs

@@ -1,4 +1,4 @@
-use crate::revision::{TrashRevision, TrashTypeRevision, ViewRevision};
+use crate::{TrashRevision, TrashTypeRevision, ViewRevision};
 use nanoid::nanoid;
 use serde::{Deserialize, Serialize};
 

+ 1 - 1
shared-lib/flowy-folder-data-model/src/revision/folder_rev.rs → shared-lib/folder-rev-model/src/folder_rev.rs

@@ -1,4 +1,4 @@
-use crate::revision::{TrashRevision, WorkspaceRevision};
+use crate::{TrashRevision, WorkspaceRevision};
 use serde::de::{MapAccess, Visitor};
 use serde::{de, Deserialize, Deserializer, Serialize};
 use std::fmt;

+ 4 - 0
shared-lib/flowy-folder-data-model/src/revision/mod.rs → shared-lib/folder-rev-model/src/lib.rs

@@ -1,6 +1,10 @@
+#[macro_use]
+mod macros;
+
 mod app_rev;
 mod folder_rev;
 mod trash_rev;
+pub mod user_default;
 mod view_rev;
 mod workspace_rev;
 

+ 0 - 0
shared-lib/flowy-folder-data-model/src/macros.rs → shared-lib/folder-rev-model/src/macros.rs


+ 0 - 0
shared-lib/flowy-folder-data-model/src/revision/trash_rev.rs → shared-lib/folder-rev-model/src/trash_rev.rs


+ 1 - 1
shared-lib/flowy-folder-data-model/src/user_default.rs → shared-lib/folder-rev-model/src/user_default.rs

@@ -1,4 +1,4 @@
-use crate::revision::{
+use crate::{
     gen_app_id, gen_view_id, gen_workspace_id, AppRevision, ViewDataFormatRevision, ViewLayoutTypeRevision,
     ViewRevision, WorkspaceRevision,
 };

+ 1 - 1
shared-lib/flowy-folder-data-model/src/revision/view_rev.rs → shared-lib/folder-rev-model/src/view_rev.rs

@@ -1,4 +1,4 @@
-use crate::revision::{TrashRevision, TrashTypeRevision};
+use crate::{TrashRevision, TrashTypeRevision};
 use nanoid::nanoid;
 use serde::{Deserialize, Serialize};
 use serde_repr::*;

+ 1 - 1
shared-lib/flowy-folder-data-model/src/revision/workspace_rev.rs → shared-lib/folder-rev-model/src/workspace_rev.rs

@@ -1,4 +1,4 @@
-use crate::revision::AppRevision;
+use crate::AppRevision;
 use nanoid::nanoid;
 use serde::{Deserialize, Serialize};
 pub fn gen_workspace_id() -> String {