diff --git a/frontend/rust-lib/event-integration/src/folder_event.rs b/frontend/rust-lib/event-integration/src/folder_event.rs index c388b78688..6d44c4e6a3 100644 --- a/frontend/rust-lib/event-integration/src/folder_event.rs +++ b/frontend/rust-lib/event-integration/src/folder_event.rs @@ -9,7 +9,7 @@ use flowy_user::entities::{ }; use flowy_user::errors::FlowyError; use flowy_user::event_map::UserEvent; -use flowy_user_pub::entities::WorkspaceRole; +use flowy_user_pub::entities::Role; use crate::event_builder::EventBuilder; use crate::EventIntegrationTest; @@ -26,12 +26,7 @@ impl EventIntegrationTest { .await; } - pub async fn invite_workspace_member( - &self, - workspace_id: &str, - email: &str, - role: WorkspaceRole, - ) { + pub async fn invite_workspace_member(&self, workspace_id: &str, email: &str, role: Role) { EventBuilder::new(self.clone()) .event(UserEvent::InviteWorkspaceMember) .payload(WorkspaceMemberInvitationPB { diff --git a/frontend/rust-lib/event-integration/tests/user/af_cloud_test/member_test.rs b/frontend/rust-lib/event-integration/tests/user/af_cloud_test/member_test.rs index 95eebc17eb..2d53be52fb 100644 --- a/frontend/rust-lib/event-integration/tests/user/af_cloud_test/member_test.rs +++ b/frontend/rust-lib/event-integration/tests/user/af_cloud_test/member_test.rs @@ -1,6 +1,6 @@ use event_integration::user_event::user_localhost_af_cloud; use event_integration::EventIntegrationTest; -use flowy_user_pub::entities::WorkspaceRole; +use flowy_user_pub::entities::Role; use crate::user::af_cloud_test::workspace_test::get_synced_workspaces; @@ -14,7 +14,7 @@ async fn af_cloud_invite_workspace_member() { let user_2 = test_2.af_cloud_sign_up().await; test_1 - .invite_workspace_member(&user_1.workspace_id, &user_2.email, WorkspaceRole::Member) + .invite_workspace_member(&user_1.workspace_id, &user_2.email, Role::Member) .await; let invitations = test_2.list_workspace_invitations().await; diff --git a/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/cloud_service_impl.rs b/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/cloud_service_impl.rs index 65a6df5310..586081b033 100644 --- a/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/cloud_service_impl.rs +++ b/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/cloud_service_impl.rs @@ -17,8 +17,8 @@ use parking_lot::RwLock; use flowy_error::{ErrorCode, FlowyError, FlowyResult}; use flowy_user_pub::cloud::{UserCloudService, UserCollabParams, UserUpdate, UserUpdateReceiver}; use flowy_user_pub::entities::{ - AFCloudOAuthParams, AuthResponse, UpdateUserProfileParams, UserCredentials, UserProfile, - UserWorkspace, WorkspaceInvitation, WorkspaceInvitationStatus, WorkspaceMember, WorkspaceRole, + AFCloudOAuthParams, AuthResponse, Role, UpdateUserProfileParams, UserCredentials, UserProfile, + UserWorkspace, WorkspaceInvitation, WorkspaceInvitationStatus, WorkspaceMember, }; use lib_infra::box_any::BoxAny; use lib_infra::future::FutureResult; @@ -206,7 +206,7 @@ where &self, invitee_email: String, workspace_id: String, - role: WorkspaceRole, + role: Role, ) -> FutureResult<(), Error> { let try_get_client = self.server.try_get_client(); FutureResult::new(async move { @@ -269,7 +269,7 @@ where &self, user_email: String, workspace_id: String, - role: WorkspaceRole, + role: Role, ) -> FutureResult<(), Error> { let try_get_client = self.server.try_get_client(); FutureResult::new(async move { diff --git a/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/dto.rs b/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/dto.rs index e0fe27ef84..c24ddbb51e 100644 --- a/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/dto.rs +++ b/frontend/rust-lib/flowy-server/src/af_cloud/impls/user/dto.rs @@ -3,8 +3,9 @@ use client_api::entity::auth_dto::{UpdateUserParams, UserMetaData}; use client_api::entity::{AFRole, AFUserProfile, AFWorkspaceInvitationStatus, AFWorkspaceMember}; use flowy_user_pub::entities::{ - Authenticator, UpdateUserProfileParams, UserProfile, WorkspaceInvitationStatus, WorkspaceMember, - WorkspaceRole, USER_METADATA_ICON_URL, USER_METADATA_OPEN_AI_KEY, USER_METADATA_STABILITY_AI_KEY, + Authenticator, Role, UpdateUserProfileParams, UserProfile, WorkspaceInvitationStatus, + WorkspaceMember, USER_METADATA_ICON_URL, USER_METADATA_OPEN_AI_KEY, + USER_METADATA_STABILITY_AI_KEY, }; use crate::af_cloud::impls::user::util::encryption_type_from_profile; @@ -67,19 +68,19 @@ pub fn user_profile_from_af_profile( }) } -pub fn to_af_role(role: WorkspaceRole) -> AFRole { +pub fn to_af_role(role: Role) -> AFRole { match role { - WorkspaceRole::Owner => AFRole::Owner, - WorkspaceRole::Member => AFRole::Member, - WorkspaceRole::Guest => AFRole::Guest, + Role::Owner => AFRole::Owner, + Role::Member => AFRole::Member, + Role::Guest => AFRole::Guest, } } -pub fn from_af_role(role: AFRole) -> WorkspaceRole { +pub fn from_af_role(role: AFRole) -> Role { match role { - AFRole::Owner => WorkspaceRole::Owner, - AFRole::Member => WorkspaceRole::Member, - AFRole::Guest => WorkspaceRole::Guest, + AFRole::Owner => Role::Owner, + AFRole::Member => Role::Member, + AFRole::Guest => Role::Guest, } } diff --git a/frontend/rust-lib/flowy-user-pub/src/cloud.rs b/frontend/rust-lib/flowy-user-pub/src/cloud.rs index 695d90d499..e12d26a3ba 100644 --- a/frontend/rust-lib/flowy-user-pub/src/cloud.rs +++ b/frontend/rust-lib/flowy-user-pub/src/cloud.rs @@ -15,9 +15,8 @@ use tokio_stream::wrappers::WatchStream; use uuid::Uuid; use crate::entities::{ - AuthResponse, Authenticator, UpdateUserProfileParams, UserCredentials, UserProfile, + AuthResponse, Authenticator, Role, UpdateUserProfileParams, UserCredentials, UserProfile, UserTokenState, UserWorkspace, WorkspaceInvitation, WorkspaceInvitationStatus, WorkspaceMember, - WorkspaceRole, }; #[derive(Debug, Clone, Serialize, Deserialize)] @@ -196,7 +195,7 @@ pub trait UserCloudService: Send + Sync + 'static { &self, invitee_email: String, workspace_id: String, - role: WorkspaceRole, + role: Role, ) -> FutureResult<(), Error> { FutureResult::new(async { Ok(()) }) } @@ -224,7 +223,7 @@ pub trait UserCloudService: Send + Sync + 'static { &self, user_email: String, workspace_id: String, - role: WorkspaceRole, + role: Role, ) -> FutureResult<(), Error> { FutureResult::new(async { Ok(()) }) } diff --git a/frontend/rust-lib/flowy-user-pub/src/entities.rs b/frontend/rust-lib/flowy-user-pub/src/entities.rs index 45fa0a7919..b09f801c90 100644 --- a/frontend/rust-lib/flowy-user-pub/src/entities.rs +++ b/frontend/rust-lib/flowy-user-pub/src/entities.rs @@ -380,8 +380,9 @@ pub enum UserTokenState { Invalid, } +// Workspace Role #[derive(Clone, Debug)] -pub enum WorkspaceRole { +pub enum Role { Owner, Member, Guest, @@ -389,7 +390,7 @@ pub enum WorkspaceRole { pub struct WorkspaceMember { pub email: String, - pub role: WorkspaceRole, + pub role: Role, pub name: String, } diff --git a/frontend/rust-lib/flowy-user/src/entities/workspace.rs b/frontend/rust-lib/flowy-user/src/entities/workspace.rs index 3028fb0324..cdbd928fe0 100644 --- a/frontend/rust-lib/flowy-user/src/entities/workspace.rs +++ b/frontend/rust-lib/flowy-user/src/entities/workspace.rs @@ -1,7 +1,7 @@ use validator::Validate; use flowy_derive::{ProtoBuf, ProtoBuf_Enum}; -use flowy_user_pub::entities::{WorkspaceInvitation, WorkspaceMember, WorkspaceRole}; +use flowy_user_pub::entities::{Role, WorkspaceInvitation, WorkspaceMember}; use lib_infra::validator_fn::required_not_empty_str; #[derive(ProtoBuf, Default, Clone)] @@ -13,7 +13,7 @@ pub struct WorkspaceMemberPB { pub name: String, #[pb(index = 3)] - pub role: WorkspaceRolePB, + pub role: AFRolePB, } impl From for WorkspaceMemberPB { @@ -43,7 +43,7 @@ pub struct WorkspaceMemberInvitationPB { pub invitee_email: String, #[pb(index = 3)] - pub role: WorkspaceRolePB, + pub role: AFRolePB, } #[derive(Debug, ProtoBuf, Default, Clone)] @@ -131,33 +131,34 @@ pub struct UpdateWorkspaceMemberPB { pub email: String, #[pb(index = 3)] - pub role: WorkspaceRolePB, + pub role: AFRolePB, } +// Workspace Role #[derive(ProtoBuf_Enum, Clone, Default)] -pub enum WorkspaceRolePB { +pub enum AFRolePB { Owner = 0, Member = 1, #[default] Guest = 2, } -impl From for WorkspaceRole { - fn from(value: WorkspaceRolePB) -> Self { +impl From for Role { + fn from(value: AFRolePB) -> Self { match value { - WorkspaceRolePB::Owner => WorkspaceRole::Owner, - WorkspaceRolePB::Member => WorkspaceRole::Member, - WorkspaceRolePB::Guest => WorkspaceRole::Guest, + AFRolePB::Owner => Role::Owner, + AFRolePB::Member => Role::Member, + AFRolePB::Guest => Role::Guest, } } } -impl From for WorkspaceRolePB { - fn from(value: WorkspaceRole) -> Self { +impl From for AFRolePB { + fn from(value: Role) -> Self { match value { - WorkspaceRole::Owner => WorkspaceRolePB::Owner, - WorkspaceRole::Member => WorkspaceRolePB::Member, - WorkspaceRole::Guest => WorkspaceRolePB::Guest, + Role::Owner => AFRolePB::Owner, + Role::Member => AFRolePB::Member, + Role::Guest => AFRolePB::Guest, } } } diff --git a/frontend/rust-lib/flowy-user/src/user_manager/manager_user_workspace.rs b/frontend/rust-lib/flowy-user/src/user_manager/manager_user_workspace.rs index 927ea7dcc9..138962a87b 100644 --- a/frontend/rust-lib/flowy-user/src/user_manager/manager_user_workspace.rs +++ b/frontend/rust-lib/flowy-user/src/user_manager/manager_user_workspace.rs @@ -10,7 +10,7 @@ use flowy_folder_pub::entities::{AppFlowyData, ImportData}; use flowy_sqlite::schema::user_workspace_table; use flowy_sqlite::{query_dsl::*, DBConnection, ExpressionMethods}; use flowy_user_pub::entities::{ - UserWorkspace, WorkspaceInvitation, WorkspaceInvitationStatus, WorkspaceMember, WorkspaceRole, + Role, UserWorkspace, WorkspaceInvitation, WorkspaceInvitationStatus, WorkspaceMember, }; use lib_dispatch::prelude::af_spawn; @@ -200,7 +200,7 @@ impl UserManager { &self, workspace_id: String, invitee_email: String, - role: WorkspaceRole, + role: Role, ) -> FlowyResult<()> { self .cloud_services @@ -272,7 +272,7 @@ impl UserManager { &self, user_email: String, workspace_id: String, - role: WorkspaceRole, + role: Role, ) -> FlowyResult<()> { self .cloud_services diff --git a/frontend/rust-lib/rust-toolchain.toml b/frontend/rust-lib/rust-toolchain.toml index 6d833ff506..83a52c3838 100644 --- a/frontend/rust-lib/rust-toolchain.toml +++ b/frontend/rust-lib/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.75" +channel = "1.76"