chore: bump collab (#6450)

* chore: upgrade collab

* chore: bump client api
This commit is contained in:
Nathan.fooo 2024-10-03 23:45:29 +08:00 committed by GitHub
parent 4d4e3bfb8a
commit 469ddacfcc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
25 changed files with 323 additions and 240 deletions

View File

@ -172,7 +172,7 @@ checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
[[package]]
name = "app-error"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"bincode",
@ -192,7 +192,7 @@ dependencies = [
[[package]]
name = "appflowy-ai-client"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"bytes",
@ -302,6 +302,17 @@ dependencies = [
"pin-project-lite",
]
[[package]]
name = "async-recursion"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.47",
]
[[package]]
name = "async-stream"
version = "0.3.5"
@ -837,7 +848,7 @@ dependencies = [
[[package]]
name = "client-api"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"again",
"anyhow",
@ -861,6 +872,7 @@ dependencies = [
"infra",
"lazy_static",
"mime",
"mime_guess",
"parking_lot 0.12.1",
"percent-encoding",
"pin-project",
@ -889,7 +901,7 @@ dependencies = [
[[package]]
name = "client-api-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"collab-entity",
"collab-rt-entity",
@ -902,7 +914,7 @@ dependencies = [
[[package]]
name = "client-websocket"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"futures-channel",
"futures-util",
@ -976,7 +988,7 @@ dependencies = [
[[package]]
name = "collab"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"arc-swap",
@ -1001,7 +1013,7 @@ dependencies = [
[[package]]
name = "collab-database"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"async-trait",
@ -1040,7 +1052,7 @@ dependencies = [
[[package]]
name = "collab-document"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"arc-swap",
@ -1061,7 +1073,7 @@ dependencies = [
[[package]]
name = "collab-entity"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"bytes",
@ -1081,7 +1093,7 @@ dependencies = [
[[package]]
name = "collab-folder"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"arc-swap",
@ -1097,14 +1109,16 @@ dependencies = [
"tokio",
"tokio-stream",
"tracing",
"uuid",
]
[[package]]
name = "collab-importer"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"async-recursion",
"async-trait",
"base64 0.22.1",
"chrono",
@ -1156,7 +1170,7 @@ dependencies = [
[[package]]
name = "collab-plugins"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"async-stream",
@ -1194,7 +1208,7 @@ dependencies = [
[[package]]
name = "collab-rt-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"bincode",
@ -1219,7 +1233,7 @@ dependencies = [
[[package]]
name = "collab-rt-protocol"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"async-trait",
@ -1236,7 +1250,7 @@ dependencies = [
[[package]]
name = "collab-user"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=38449cb51673fa0c1c6565d769cf417d2cb8db5a#38449cb51673fa0c1c6565d769cf417d2cb8db5a"
dependencies = [
"anyhow",
"collab",
@ -1485,7 +1499,7 @@ dependencies = [
"cssparser-macros",
"dtoa-short",
"itoa 1.0.6",
"phf 0.11.2",
"phf 0.8.0",
"smallvec",
]
@ -1610,7 +1624,7 @@ checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
[[package]]
name = "database-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"app-error",
@ -2702,6 +2716,7 @@ dependencies = [
"client-api",
"collab",
"collab-entity",
"collab-folder",
"flowy-error",
"flowy-folder-pub",
"lib-infra",
@ -3177,7 +3192,7 @@ dependencies = [
[[package]]
name = "gotrue"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"futures-util",
@ -3194,7 +3209,7 @@ dependencies = [
[[package]]
name = "gotrue-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"app-error",
@ -3577,9 +3592,9 @@ dependencies = [
[[package]]
name = "indexed_db_futures"
version = "0.4.1"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6cc2083760572ee02385ab8b7c02c20925d2dd1f97a1a25a8737a238608f1152"
checksum = "0704b71f13f81b5933d791abf2de26b33c40935143985220299a357721166706"
dependencies = [
"accessory",
"cfg-if",
@ -3626,7 +3641,7 @@ dependencies = [
[[package]]
name = "infra"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"bytes",
@ -4264,9 +4279,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
[[package]]
name = "mime_guess"
version = "2.0.4"
version = "2.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
dependencies = [
"mime",
"unicase",
@ -6264,7 +6279,7 @@ dependencies = [
[[package]]
name = "shared-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=98d9f823b2e08dedf093815364cf73e8b8903e77#98d9f823b2e08dedf093815364cf73e8b8903e77"
dependencies = [
"anyhow",
"app-error",
@ -7750,9 +7765,9 @@ checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba"
[[package]]
name = "uuid"
version = "1.6.1"
version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
dependencies = [
"getrandom 0.2.10",
"serde",

View File

@ -21,10 +21,10 @@ serde = "1.0"
serde_json = "1.0.108"
protobuf = { version = "2.28.0" }
diesel = { version = "2.1.0", features = [
"sqlite",
"chrono",
"r2d2",
"serde_json",
"sqlite",
"chrono",
"r2d2",
"serde_json",
] }
uuid = { version = "1.5.0", features = ["serde", "v4"] }
serde_repr = "0.1"
@ -59,22 +59,22 @@ collab-importer = { version = "0.1" }
# Run the script:
# scripts/tool/update_client_api_rev.sh new_rev_id
# ⚠️⚠️⚠️️
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "56f8f395fa59753262dff4f52ec1119d2230904b" }
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "9c0dffacef6b58070002d988fffd92d09e5516a8" }
[dependencies]
serde_json.workspace = true
serde.workspace = true
tauri = { version = "1.5", features = [
"dialog-all",
"clipboard-all",
"fs-all",
"shell-open",
"dialog-all",
"clipboard-all",
"fs-all",
"shell-open",
] }
tauri-utils = "1.5.2"
bytes.workspace = true
tracing.workspace = true
lib-dispatch = { path = "../../rust-lib/lib-dispatch", features = [
"use_serde",
"use_serde",
] }
flowy-core = { path = "../../rust-lib/flowy-core", features = ["ts"] }
flowy-user = { path = "../../rust-lib/flowy-user", features = ["tauri_ts"] }
@ -82,19 +82,19 @@ flowy-config = { path = "../../rust-lib/flowy-config", features = ["tauri_ts"] }
flowy-date = { path = "../../rust-lib/flowy-date", features = ["tauri_ts"] }
flowy-ai = { path = "../../rust-lib/flowy-ai", features = ["tauri_ts"] }
flowy-error = { path = "../../rust-lib/flowy-error", features = [
"impl_from_sqlite",
"impl_from_dispatch_error",
"impl_from_appflowy_cloud",
"impl_from_reqwest",
"impl_from_serde",
"tauri_ts",
"impl_from_sqlite",
"impl_from_dispatch_error",
"impl_from_appflowy_cloud",
"impl_from_reqwest",
"impl_from_serde",
"tauri_ts",
] }
flowy-search = { path = "../../rust-lib/flowy-search", features = ["tauri_ts"] }
flowy-document = { path = "../../rust-lib/flowy-document", features = [
"tauri_ts",
"tauri_ts",
] }
flowy-notification = { path = "../../rust-lib/flowy-notification", features = [
"tauri_ts",
"tauri_ts",
] }
uuid = "1.5.0"
@ -120,14 +120,25 @@ custom-protocol = ["tauri/custom-protocol"]
# To switch to the local path, run:
# scripts/tool/update_collab_source.sh
# ⚠️⚠️⚠️️
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
<<<<<<< Updated upstream
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
= = = = = = =
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
>>>>>>> Stashed changes
# Working directory: frontend

View File

@ -163,7 +163,7 @@ checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
[[package]]
name = "app-error"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bincode",
@ -183,7 +183,7 @@ dependencies = [
[[package]]
name = "appflowy-ai-client"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bytes",
@ -312,6 +312,17 @@ dependencies = [
"pin-project-lite",
]
[[package]]
name = "async-recursion"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.55",
]
[[package]]
name = "async-stream"
version = "0.3.5"
@ -826,7 +837,7 @@ dependencies = [
[[package]]
name = "client-api"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"again",
"anyhow",
@ -850,6 +861,7 @@ dependencies = [
"infra",
"lazy_static",
"mime",
"mime_guess",
"parking_lot 0.12.1",
"percent-encoding",
"pin-project",
@ -878,7 +890,7 @@ dependencies = [
[[package]]
name = "client-api-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"collab-entity",
"collab-rt-entity",
@ -891,7 +903,7 @@ dependencies = [
[[package]]
name = "client-websocket"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"futures-channel",
"futures-util",
@ -974,7 +986,7 @@ dependencies = [
[[package]]
name = "collab"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -999,7 +1011,7 @@ dependencies = [
[[package]]
name = "collab-database"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-trait",
@ -1038,7 +1050,7 @@ dependencies = [
[[package]]
name = "collab-document"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -1059,7 +1071,7 @@ dependencies = [
[[package]]
name = "collab-entity"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"bytes",
@ -1079,7 +1091,7 @@ dependencies = [
[[package]]
name = "collab-folder"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -1095,14 +1107,16 @@ dependencies = [
"tokio",
"tokio-stream",
"tracing",
"uuid",
]
[[package]]
name = "collab-importer"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-recursion",
"async-trait",
"base64 0.22.1",
"chrono",
@ -1154,7 +1168,7 @@ dependencies = [
[[package]]
name = "collab-plugins"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-stream",
@ -1192,7 +1206,7 @@ dependencies = [
[[package]]
name = "collab-rt-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bincode",
@ -1217,7 +1231,7 @@ dependencies = [
[[package]]
name = "collab-rt-protocol"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"async-trait",
@ -1234,7 +1248,7 @@ dependencies = [
[[package]]
name = "collab-user"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"collab",
@ -1490,7 +1504,7 @@ dependencies = [
"cssparser-macros",
"dtoa-short",
"itoa 1.0.10",
"phf 0.11.2",
"phf 0.8.0",
"smallvec",
]
@ -1615,7 +1629,7 @@ checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
[[package]]
name = "database-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -2221,6 +2235,7 @@ dependencies = [
"client-api",
"collab",
"collab-entity",
"collab-folder",
"collab-integrate",
"collab-plugins",
"dashmap 6.0.1",
@ -2747,6 +2762,7 @@ dependencies = [
"client-api",
"collab",
"collab-entity",
"collab-folder",
"flowy-error",
"flowy-folder-pub",
"lib-infra",
@ -3259,7 +3275,7 @@ dependencies = [
[[package]]
name = "gotrue"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"futures-util",
@ -3276,7 +3292,7 @@ dependencies = [
[[package]]
name = "gotrue-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -3664,9 +3680,9 @@ dependencies = [
[[package]]
name = "indexed_db_futures"
version = "0.4.1"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6cc2083760572ee02385ab8b7c02c20925d2dd1f97a1a25a8737a238608f1152"
checksum = "0704b71f13f81b5933d791abf2de26b33c40935143985220299a357721166706"
dependencies = [
"accessory",
"cfg-if",
@ -3713,7 +3729,7 @@ dependencies = [
[[package]]
name = "infra"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bytes",
@ -4350,9 +4366,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
[[package]]
name = "mime_guess"
version = "2.0.4"
version = "2.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
dependencies = [
"mime",
"unicase",
@ -6344,7 +6360,7 @@ dependencies = [
[[package]]
name = "shared-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -7884,9 +7900,9 @@ checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba"
[[package]]
name = "uuid"
version = "1.6.1"
version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
dependencies = [
"getrandom 0.2.12",
"serde",

View File

@ -21,10 +21,10 @@ serde = "1.0"
serde_json = "1.0.108"
protobuf = { version = "2.28.0" }
diesel = { version = "2.1.0", features = [
"sqlite",
"chrono",
"r2d2",
"serde_json",
"sqlite",
"chrono",
"r2d2",
"serde_json",
] }
uuid = { version = "1.5.0", features = ["serde", "v4"] }
serde_repr = "0.1"
@ -58,40 +58,40 @@ collab-importer = { version = "0.1" }
# Run the script:
# scripts/tool/update_client_api_rev.sh new_rev_id
# ⚠️⚠️⚠️️
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "56f8f395fa59753262dff4f52ec1119d2230904b" }
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "9c0dffacef6b58070002d988fffd92d09e5516a8" }
[dependencies]
serde_json.workspace = true
serde.workspace = true
tauri = { version = "1.5", features = [
"dialog-all",
"clipboard-all",
"fs-all",
"shell-open",
"dialog-all",
"clipboard-all",
"fs-all",
"shell-open",
] }
tauri-utils = "1.5.2"
bytes.workspace = true
tracing.workspace = true
lib-dispatch = { path = "../../rust-lib/lib-dispatch", features = [
"use_serde",
"use_serde",
] }
flowy-core = { path = "../../rust-lib/flowy-core", features = ["ts"] }
flowy-user = { path = "../../rust-lib/flowy-user", features = ["tauri_ts"] }
flowy-config = { path = "../../rust-lib/flowy-config", features = ["tauri_ts"] }
flowy-date = { path = "../../rust-lib/flowy-date", features = ["tauri_ts"] }
flowy-error = { path = "../../rust-lib/flowy-error", features = [
"impl_from_sqlite",
"impl_from_dispatch_error",
"impl_from_appflowy_cloud",
"impl_from_reqwest",
"impl_from_serde",
"tauri_ts",
"impl_from_sqlite",
"impl_from_dispatch_error",
"impl_from_appflowy_cloud",
"impl_from_reqwest",
"impl_from_serde",
"tauri_ts",
] }
flowy-document = { path = "../../rust-lib/flowy-document", features = [
"tauri_ts",
"tauri_ts",
] }
flowy-notification = { path = "../../rust-lib/flowy-notification", features = [
"tauri_ts",
"tauri_ts",
] }
flowy-ai = { path = "../../rust-lib/flowy-ai", features = ["tauri_ts"] }
@ -118,14 +118,14 @@ custom-protocol = ["tauri/custom-protocol"]
# To switch to the local path, run:
# scripts/tool/update_collab_source.sh
# ⚠️⚠️⚠️️
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
# Working directory: frontend

View File

@ -163,7 +163,7 @@ checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da"
[[package]]
name = "app-error"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bincode",
@ -183,7 +183,7 @@ dependencies = [
[[package]]
name = "appflowy-ai-client"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bytes",
@ -276,6 +276,17 @@ dependencies = [
"pin-project-lite",
]
[[package]]
name = "async-recursion"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.47",
]
[[package]]
name = "async-stream"
version = "0.3.5"
@ -729,7 +740,7 @@ dependencies = [
[[package]]
name = "client-api"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"again",
"anyhow",
@ -753,6 +764,7 @@ dependencies = [
"infra",
"lazy_static",
"mime",
"mime_guess",
"parking_lot 0.12.1",
"percent-encoding",
"pin-project",
@ -781,7 +793,7 @@ dependencies = [
[[package]]
name = "client-api-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"collab-entity",
"collab-rt-entity",
@ -794,7 +806,7 @@ dependencies = [
[[package]]
name = "client-websocket"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"futures-channel",
"futures-util",
@ -837,7 +849,7 @@ dependencies = [
[[package]]
name = "collab"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -862,7 +874,7 @@ dependencies = [
[[package]]
name = "collab-database"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-trait",
@ -901,7 +913,7 @@ dependencies = [
[[package]]
name = "collab-document"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -922,7 +934,7 @@ dependencies = [
[[package]]
name = "collab-entity"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"bytes",
@ -942,7 +954,7 @@ dependencies = [
[[package]]
name = "collab-folder"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"arc-swap",
@ -958,14 +970,16 @@ dependencies = [
"tokio",
"tokio-stream",
"tracing",
"uuid",
]
[[package]]
name = "collab-importer"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-recursion",
"async-trait",
"base64 0.22.1",
"chrono",
@ -1017,7 +1031,7 @@ dependencies = [
[[package]]
name = "collab-plugins"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"async-stream",
@ -1055,7 +1069,7 @@ dependencies = [
[[package]]
name = "collab-rt-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bincode",
@ -1080,7 +1094,7 @@ dependencies = [
[[package]]
name = "collab-rt-protocol"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"async-trait",
@ -1097,7 +1111,7 @@ dependencies = [
[[package]]
name = "collab-user"
version = "0.2.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=b3581aad2dcea8c02c807858e05b62358e38c24e#b3581aad2dcea8c02c807858e05b62358e38c24e"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d7dc26a906e3ce5d72a309e933f853f1e75da1cb#d7dc26a906e3ce5d72a309e933f853f1e75da1cb"
dependencies = [
"anyhow",
"collab",
@ -1434,7 +1448,7 @@ checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
[[package]]
name = "database-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -2001,6 +2015,7 @@ dependencies = [
"client-api",
"collab",
"collab-entity",
"collab-folder",
"collab-integrate",
"collab-plugins",
"console-subscriber",
@ -2547,6 +2562,7 @@ dependencies = [
"client-api",
"collab",
"collab-entity",
"collab-folder",
"flowy-error",
"flowy-folder-pub",
"lib-infra",
@ -2856,7 +2872,7 @@ dependencies = [
[[package]]
name = "gotrue"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"futures-util",
@ -2873,7 +2889,7 @@ dependencies = [
[[package]]
name = "gotrue-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -3190,9 +3206,9 @@ dependencies = [
[[package]]
name = "indexed_db_futures"
version = "0.4.1"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6cc2083760572ee02385ab8b7c02c20925d2dd1f97a1a25a8737a238608f1152"
checksum = "0704b71f13f81b5933d791abf2de26b33c40935143985220299a357721166706"
dependencies = [
"accessory",
"cfg-if",
@ -3229,7 +3245,7 @@ dependencies = [
[[package]]
name = "infra"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"bytes",
@ -3744,9 +3760,9 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
[[package]]
name = "mime_guess"
version = "2.0.4"
version = "2.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
dependencies = [
"mime",
"unicase",
@ -5485,7 +5501,7 @@ dependencies = [
[[package]]
name = "shared-entity"
version = "0.1.0"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=56f8f395fa59753262dff4f52ec1119d2230904b#56f8f395fa59753262dff4f52ec1119d2230904b"
source = "git+https://github.com/AppFlowy-IO/AppFlowy-Cloud?rev=9c0dffacef6b58070002d988fffd92d09e5516a8#9c0dffacef6b58070002d988fffd92d09e5516a8"
dependencies = [
"anyhow",
"app-error",
@ -6716,9 +6732,9 @@ checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba"
[[package]]
name = "uuid"
version = "1.6.1"
version = "1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
dependencies = [
"getrandom 0.2.10",
"serde",

View File

@ -1,37 +1,37 @@
[workspace]
members = [
"lib-dispatch",
"lib-log",
"flowy-core",
"dart-ffi",
"flowy-user",
"flowy-user-pub",
"event-integration-test",
"flowy-sqlite",
"flowy-folder",
"flowy-folder-pub",
"flowy-notification",
"flowy-document",
"flowy-document-pub",
"flowy-error",
"flowy-database2",
"flowy-database-pub",
"flowy-server",
"flowy-server-pub",
"flowy-config",
"flowy-encrypt",
"flowy-storage",
"collab-integrate",
"flowy-date",
"flowy-search",
"lib-infra",
"build-tool/flowy-ast",
"build-tool/flowy-codegen",
"build-tool/flowy-derive",
"flowy-search-pub",
"flowy-ai",
"flowy-ai-pub",
"flowy-storage-pub",
"lib-dispatch",
"lib-log",
"flowy-core",
"dart-ffi",
"flowy-user",
"flowy-user-pub",
"event-integration-test",
"flowy-sqlite",
"flowy-folder",
"flowy-folder-pub",
"flowy-notification",
"flowy-document",
"flowy-document-pub",
"flowy-error",
"flowy-database2",
"flowy-database-pub",
"flowy-server",
"flowy-server-pub",
"flowy-config",
"flowy-encrypt",
"flowy-storage",
"collab-integrate",
"flowy-date",
"flowy-search",
"lib-infra",
"build-tool/flowy-ast",
"build-tool/flowy-codegen",
"build-tool/flowy-derive",
"flowy-search-pub",
"flowy-ai",
"flowy-ai-pub",
"flowy-storage-pub",
]
resolver = "2"
@ -75,10 +75,10 @@ serde_json = "1.0.108"
serde = "1.0.194"
protobuf = { version = "2.28.0" }
diesel = { version = "2.1.0", features = [
"sqlite",
"chrono",
"r2d2",
"serde_json",
"sqlite",
"chrono",
"r2d2",
"serde_json",
] }
uuid = { version = "1.5.0", features = ["serde", "v4", "v5"] }
serde_repr = "0.1"
@ -106,8 +106,8 @@ dashmap = "6.0.1"
# Run the script.add_workspace_members:
# scripts/tool/update_client_api_rev.sh new_rev_id
# ⚠️⚠️⚠️️
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "56f8f395fa59753262dff4f52ec1119d2230904b" }
client-api-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "56f8f395fa59753262dff4f52ec1119d2230904b" }
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "9c0dffacef6b58070002d988fffd92d09e5516a8" }
client-api-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "9c0dffacef6b58070002d988fffd92d09e5516a8" }
[profile.dev]
opt-level = 0
@ -142,14 +142,14 @@ rocksdb = { git = "https://github.com/rust-rocksdb/rust-rocksdb", rev = "1710120
# To switch to the local path, run:
# scripts/tool/update_collab_source.sh
# ⚠️⚠️⚠️️
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "b3581aad2dcea8c02c807858e05b62358e38c24e" }
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
collab-importer = { version = "0.1", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d7dc26a906e3ce5d72a309e933f853f1e75da1cb" }
# Working directory: frontend
# To update the commit ID, run:

View File

@ -259,7 +259,7 @@ impl AppFlowyCollabBuilder {
) -> Result<Arc<RwLock<WorkspaceDatabase>>, Error> {
let expected_collab_type = CollabType::WorkspaceDatabase;
assert_eq!(object.collab_type, expected_collab_type);
let workspace = WorkspaceDatabase::open(&object.object_id, collab, collab_service);
let workspace = WorkspaceDatabase::open(&object.object_id, collab, collab_service)?;
let workspace = Arc::new(RwLock::new(workspace));
self.finalize(object, builder_config, workspace)
}

View File

@ -27,6 +27,7 @@ flowy-search = { workspace = true }
flowy-search-pub = { workspace = true }
collab-entity = { workspace = true }
collab-plugins = { workspace = true }
collab-folder = { workspace = true }
collab = { workspace = true }
#collab = { workspace = true, features = ["verbose_log"] }
@ -66,28 +67,28 @@ profiling = ["console-subscriber", "tokio/tracing"]
http_sync = []
native_sync = []
dart = [
"flowy-user/dart",
"flowy-date/dart",
"flowy-search/dart",
"flowy-folder/dart",
"flowy-database2/dart",
"flowy-ai/dart",
"flowy-storage/dart",
"flowy-user/dart",
"flowy-date/dart",
"flowy-search/dart",
"flowy-folder/dart",
"flowy-database2/dart",
"flowy-ai/dart",
"flowy-storage/dart",
]
ts = [
"flowy-user/tauri_ts",
"flowy-folder/tauri_ts",
"flowy-search/tauri_ts",
"flowy-database2/ts",
"flowy-config/tauri_ts",
"flowy-ai/tauri_ts",
"flowy-storage/tauri_ts",
"flowy-user/tauri_ts",
"flowy-folder/tauri_ts",
"flowy-search/tauri_ts",
"flowy-database2/ts",
"flowy-config/tauri_ts",
"flowy-ai/tauri_ts",
"flowy-storage/tauri_ts",
]
openssl_vendored = ["flowy-sqlite/openssl_vendored"]
# Enable/Disable AppFlowy Verbose Log Configuration
verbose_log = [
"flowy-document/verbose_log",
"flowy-database2/verbose_log",
"client-api/sync_verbose_log"
"flowy-document/verbose_log",
"flowy-database2/verbose_log",
"client-api/sync_verbose_log"
]

View File

@ -1,6 +1,7 @@
use bytes::Bytes;
use collab_entity::{CollabType, EncodedCollab};
use collab_folder::hierarchy_builder::NestedViewBuilder;
use collab_integrate::collab_builder::AppFlowyCollabBuilder;
use collab_integrate::CollabKVDB;
use flowy_ai::ai_manager::AIManager;
@ -20,7 +21,6 @@ use flowy_folder::view_operation::{
FolderOperationHandlers, ImportedData, View, ViewData,
};
use flowy_folder::ViewLayout;
use flowy_folder_pub::folder_builder::NestedViewBuilder;
use flowy_search::folder::indexer::FolderIndexManagerImpl;
use flowy_sqlite::kv::KVStorePreferences;
use flowy_user::services::authenticate_user::AuthenticateUser;

View File

@ -1,9 +1,9 @@
use crate::integrate::server::ServerProvider;
use collab_folder::hierarchy_builder::ParentChildViews;
use collab_integrate::collab_builder::AppFlowyCollabBuilder;
use flowy_database2::DatabaseManager;
use flowy_error::FlowyResult;
use flowy_folder::manager::FolderManager;
use flowy_folder_pub::folder_builder::ParentChildViews;
use flowy_sqlite::kv::KVStorePreferences;
use flowy_user::services::authenticate_user::AuthenticateUser;
use flowy_user::user_manager::UserManager;

View File

@ -1,4 +1,4 @@
use crate::folder_builder::ParentChildViews;
use collab_folder::hierarchy_builder::ParentChildViews;
use collab_folder::{ViewIcon, ViewLayout};
use serde::{Deserialize, Serialize};
use std::collections::HashMap;

View File

@ -1,3 +1,2 @@
pub mod cloud;
pub mod entities;
pub mod folder_builder;

View File

@ -24,6 +24,7 @@ use arc_swap::ArcSwapOption;
use collab::core::collab::DataSource;
use collab::lock::RwLock;
use collab_entity::{CollabType, EncodedCollab};
use collab_folder::hierarchy_builder::ParentChildViews;
use collab_folder::{
Folder, FolderData, FolderNotify, Section, SectionItem, TrashInfo, View, ViewLayout, ViewUpdate,
Workspace,
@ -38,7 +39,6 @@ use flowy_folder_pub::entities::{
PublishDatabaseData, PublishDatabasePayload, PublishDocumentPayload, PublishInfoResponse,
PublishPayload, PublishViewInfo, PublishViewMeta, PublishViewMetaData,
};
use flowy_folder_pub::folder_builder::ParentChildViews;
use flowy_search_pub::entities::FolderIndexManager;
use flowy_sqlite::kv::KVStorePreferences;
use futures::future;

View File

@ -1,7 +1,7 @@
use std::sync::Arc;
use collab_folder::hierarchy_builder::{FlattedViews, NestedViewBuilder, ParentChildViews};
use collab_folder::{FolderData, RepeatedViewIdentifier, ViewIdentifier, Workspace};
use flowy_folder_pub::folder_builder::{FlattedViews, NestedViewBuilder, ParentChildViews};
use tokio::sync::RwLock;
use lib_infra::util::timestamp;
@ -50,7 +50,7 @@ impl DefaultFolderBuilder {
FolderData {
workspace,
current_view: first_view.id,
views: FlattedViews::flatten_views(views),
views: FlattedViews::flatten_views(views.into_inner()),
favorites: Default::default(),
recent: Default::default(),
trash: Default::default(),

View File

@ -1,7 +1,7 @@
use crate::entities::UserFolderPB;
use collab_folder::hierarchy_builder::ParentChildViews;
use collab_folder::Folder;
use flowy_error::{ErrorCode, FlowyError};
use flowy_folder_pub::folder_builder::ParentChildViews;
use tracing::{event, instrument};
pub(crate) fn folder_not_init_error() -> FlowyError {

View File

@ -2,6 +2,7 @@ use async_trait::async_trait;
use bytes::Bytes;
use collab::entity::EncodedCollab;
use collab_entity::CollabType;
use collab_folder::hierarchy_builder::NestedViewBuilder;
pub use collab_folder::View;
use collab_folder::ViewLayout;
use std::collections::HashMap;
@ -10,7 +11,6 @@ use tokio::sync::RwLock;
use flowy_error::FlowyError;
use flowy_folder_pub::folder_builder::NestedViewBuilder;
use lib_infra::util::timestamp;
use crate::entities::{CreateViewParams, ViewLayoutPB};

View File

@ -656,7 +656,7 @@ fn to_user_workspace(af_workspace: AFWorkspace) -> UserWorkspace {
id: af_workspace.workspace_id.to_string(),
name: af_workspace.workspace_name,
created_at: af_workspace.created_at,
database_indexer_id: af_workspace.database_storage_id.to_string(),
workspace_database_id: af_workspace.database_storage_id.to_string(),
icon: af_workspace.icon,
}
}

View File

@ -212,7 +212,7 @@ fn make_user_workspace() -> UserWorkspace {
id: uuid::Uuid::new_v4().to_string(),
name: "My Workspace".to_string(),
created_at: Default::default(),
database_indexer_id: uuid::Uuid::new_v4().to_string(),
workspace_database_id: uuid::Uuid::new_v4().to_string(),
icon: "".to_string(),
}
}

View File

@ -19,6 +19,7 @@ anyhow.workspace = true
tokio = { workspace = true, features = ["sync"] }
tokio-stream = "0.1.14"
flowy-folder-pub.workspace = true
collab-folder = { workspace = true }
tracing.workspace = true
base64 = "0.21"
client-api = { workspace = true }

View File

@ -140,7 +140,7 @@ pub struct UserWorkspace {
pub created_at: DateTime<Utc>,
/// The database storage id is used indexing all the database views in current workspace.
#[serde(rename = "database_storage_id")]
pub database_indexer_id: String,
pub workspace_database_id: String,
#[serde(default)]
pub icon: String,
}
@ -151,7 +151,7 @@ impl UserWorkspace {
id: workspace_id.to_string(),
name: "".to_string(),
created_at: Utc::now(),
database_indexer_id: Uuid::new_v4().to_string(),
workspace_database_id: Uuid::new_v4().to_string(),
icon: "".to_string(),
}
}

View File

@ -73,7 +73,7 @@ impl<'de> Visitor<'de> for SessionVisitor {
name: "My Workspace".to_string(),
created_at: Utc::now(),
// For historical reasons, the database_storage_id is constructed by the user_id.
database_indexer_id: STANDARD.encode(format!("{}:user:database", user_id)),
workspace_database_id: STANDARD.encode(format!("{}:user:database", user_id)),
icon: "".to_owned(),
})
}

View File

@ -1,5 +1,5 @@
use collab_folder::hierarchy_builder::ParentChildViews;
use flowy_error::FlowyResult;
use flowy_folder_pub::folder_builder::ParentChildViews;
use lib_infra::async_trait::async_trait;
use std::collections::HashMap;

View File

@ -75,7 +75,7 @@ impl AuthenticateUser {
pub fn workspace_database_object_id(&self) -> FlowyResult<String> {
let session = self.get_session()?;
Ok(session.user_workspace.database_indexer_id.clone())
Ok(session.user_workspace.workspace_database_id.clone())
}
pub fn get_collab_db(&self, uid: i64) -> FlowyResult<Weak<CollabKVDB>> {

View File

@ -9,6 +9,7 @@ use anyhow::anyhow;
use collab::core::collab::DataSource;
use collab::core::origin::CollabOrigin;
use collab::preclude::updates::decoder::Decode;
use collab::preclude::updates::encoder::Encode;
use collab::preclude::{Collab, Doc, ReadTxn, StateVector, Transact, Update};
use collab_database::database::{
is_database_collab, mut_database_views_with_collab, reset_inline_view_id,
@ -17,19 +18,18 @@ use collab_database::rows::{database_row_document_id_from_row_id, mut_row_with_c
use collab_database::workspace_database::WorkspaceDatabaseBody;
use collab_document::document_data::default_document_collab_data;
use collab_entity::CollabType;
use collab_folder::hierarchy_builder::{ParentChildViews, ViewBuilder};
use collab_folder::{Folder, UserId, View, ViewIdentifier, ViewLayout};
use collab_integrate::{CollabKVAction, CollabKVDB, PersistenceError};
use collab_plugins::local_storage::kv::KVTransactionDB;
use collab::preclude::updates::encoder::Encode;
use flowy_error::FlowyError;
use flowy_folder_pub::cloud::gen_view_id;
use flowy_folder_pub::entities::{AppFlowyData, ImportData};
use flowy_folder_pub::folder_builder::{ParentChildViews, ViewBuilder};
use flowy_sqlite::kv::KVStorePreferences;
use flowy_user_pub::cloud::{UserCloudService, UserCollabParams};
use flowy_user_pub::entities::{user_awareness_object_id, Authenticator};
use flowy_user_pub::session::Session;
use std::borrow::Borrow;
use std::collections::{HashMap, HashSet};
use std::ops::{Deref, DerefMut};
use std::path::Path;
@ -159,7 +159,7 @@ pub(crate) fn generate_import_data(
// 3. the user awareness
// So we remove these object ids from the list
let user_workspace_id = &imported_session.user_workspace.id;
let database_indexer_id = &imported_session.user_workspace.database_indexer_id;
let database_indexer_id = &imported_session.user_workspace.workspace_database_id;
let user_awareness_id =
user_awareness_object_id(&imported_session.user_uuid, user_workspace_id).to_string();
all_imported_object_ids.retain(|id| {
@ -169,7 +169,7 @@ pub(crate) fn generate_import_data(
match imported_folder.source {
ImportedSource::ExternalFolder => {
// 2. mapping the database indexer ids
mapping_database_indexer_ids(
mapping_workspace_database_ids(
&mut old_to_new_id_map,
&imported_session,
&imported_collab_read_txn,
@ -321,7 +321,7 @@ where
)
.with_view_id(import_container_view_id)
.with_layout(ViewLayout::Document)
.with_name(name)
.with_name(&name)
.with_child_views(child_views)
.build()];
@ -329,7 +329,7 @@ where
Ok(import_container_views)
}
fn mapping_database_indexer_ids<'a, W>(
fn mapping_workspace_database_ids<'a, W>(
old_to_new_id_map: &mut OldToNewIdMap,
imported_session: &Session,
imported_collab_read_txn: &W,
@ -340,21 +340,24 @@ where
W: CollabKVAction<'a>,
PersistenceError: From<W::Error>,
{
let mut imported_database_indexer = Collab::new(
let mut workspace_database_collab = Collab::new(
imported_session.user_id,
&imported_session.user_workspace.database_indexer_id,
&imported_session.user_workspace.workspace_database_id,
"import_device",
vec![],
false,
);
imported_collab_read_txn.load_doc_with_txn(
imported_session.user_id,
&imported_session.user_workspace.database_indexer_id,
&mut imported_database_indexer.transact_mut(),
&imported_session.user_workspace.workspace_database_id,
&mut workspace_database_collab.transact_mut(),
)?;
let array = WorkspaceDatabaseBody::open(&mut imported_database_indexer);
for database_meta_list in array.get_all_database_meta(&imported_database_indexer.transact()) {
let workspace_database_body = init_workspace_database_body(
&imported_session.user_workspace.workspace_database_id,
workspace_database_collab,
);
for database_meta_list in workspace_database_body.get_all_database_meta() {
database_view_ids_by_database_id.insert(
old_to_new_id_map.exchange_new_id(&database_meta_list.database_id),
database_meta_list
@ -373,6 +376,20 @@ where
Ok(())
}
fn init_workspace_database_body(object_id: &str, collab: Collab) -> WorkspaceDatabaseBody {
match WorkspaceDatabaseBody::open(collab) {
Ok(body) => body,
Err(err) => {
error!(
"🔴init workspace database body failed: {:?}, create a new one",
err
);
let collab = Collab::new_with_origin(CollabOrigin::Empty, object_id, vec![], false);
WorkspaceDatabaseBody::create(collab)
},
}
}
fn migrate_database_with_views_object<'a, 'b, W, R>(
old_to_new_id_map: &mut OldToNewIdMap,
old_user_session: &Session,
@ -387,26 +404,28 @@ where
PersistenceError: From<W::Error>,
PersistenceError: From<R::Error>,
{
let mut database_with_views_collab = Collab::new(
let mut workspace_database_collab = Collab::new(
old_user_session.user_id,
&old_user_session.user_workspace.database_indexer_id,
&old_user_session.user_workspace.workspace_database_id,
"migrate_device",
vec![],
false,
);
old_collab_r_txn.load_doc_with_txn(
old_user_session.user_id,
&old_user_session.user_workspace.database_indexer_id,
&mut database_with_views_collab.transact_mut(),
&old_user_session.user_workspace.workspace_database_id,
&mut workspace_database_collab.transact_mut(),
)?;
let new_uid = new_user_session.user_id;
let new_object_id = &new_user_session.user_workspace.database_indexer_id;
let new_object_id = &new_user_session.user_workspace.workspace_database_id;
let mut workspace_database_body = init_workspace_database_body(
&old_user_session.user_workspace.workspace_database_id,
workspace_database_collab,
);
let array = WorkspaceDatabaseBody::open(&mut database_with_views_collab);
let mut txn = database_with_views_collab.transact_mut();
for database_meta in array.get_all_database_meta(&txn) {
array.update_database(&mut txn, &database_meta.database_id, |update| {
for database_meta in workspace_database_body.get_all_database_meta() {
workspace_database_body.update_database(&database_meta.database_id, |update| {
let new_linked_views = update
.linked_views
.iter()
@ -417,10 +436,15 @@ where
})
}
if let Err(err) = new_collab_w_txn.create_new_doc(new_uid, new_object_id, &txn) {
error!("🔴migrate database storage failed: {:?}", err);
{
let collab: &Collab = workspace_database_body.borrow();
let txn = collab.transact();
if let Err(err) = new_collab_w_txn.create_new_doc(new_uid, new_object_id, &txn) {
error!("🔴migrate database storage failed: {:?}", err);
}
drop(txn);
}
drop(txn);
Ok(())
}

View File

@ -81,7 +81,7 @@ impl TryFrom<(i64, &UserWorkspace)> for UserWorkspaceTable {
if value.1.id.is_empty() {
return Err(FlowyError::invalid_data().with_context("The id is empty"));
}
if value.1.database_indexer_id.is_empty() {
if value.1.workspace_database_id.is_empty() {
return Err(FlowyError::invalid_data().with_context("The database storage id is empty"));
}
@ -90,7 +90,7 @@ impl TryFrom<(i64, &UserWorkspace)> for UserWorkspaceTable {
name: value.1.name.clone(),
uid: value.0,
created_at: value.1.created_at.timestamp(),
database_storage_id: value.1.database_indexer_id.clone(),
database_storage_id: value.1.workspace_database_id.clone(),
icon: value.1.icon.clone(),
})
}
@ -105,7 +105,7 @@ impl From<UserWorkspaceTable> for UserWorkspace {
.timestamp_opt(value.created_at, 0)
.single()
.unwrap_or_default(),
database_indexer_id: value.database_storage_id,
workspace_database_id: value.database_storage_id,
icon: value.icon,
}
}