Skip to content

Commit

Permalink
chore: remove deprecated add member directly
Browse files Browse the repository at this point in the history
  • Loading branch information
speed2exe committed Jun 23, 2024
1 parent 7586a0e commit d7e70e0
Show file tree
Hide file tree
Showing 13 changed files with 548 additions and 93 deletions.
2 changes: 1 addition & 1 deletion frontend/rust-lib/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ validator = { version = "0.16.1", features = ["derive"] }

# Please using the following command to update the revision id
# Current directory: frontend
# Run the script.add_workspace_members:
# Run the script:
# scripts/tool/update_client_api_rev.sh new_rev_id
# ⚠️⚠️⚠️️
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "6262816043efeede8823d7a7ea252083adf407e9" }
Expand Down
37 changes: 21 additions & 16 deletions frontend/rust-lib/event-integration-test/src/folder_event.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use flowy_folder::event_map::FolderEvent::*;
use flowy_folder::{entities::*, ViewLayout};
use flowy_search::services::manager::{SearchHandler, SearchType};
use flowy_user::entities::{
AcceptWorkspaceInvitationPB, AddWorkspaceMemberPB, QueryWorkspacePB, RemoveWorkspaceMemberPB,
AcceptWorkspaceInvitationPB, QueryWorkspacePB, RemoveWorkspaceMemberPB,
RepeatedWorkspaceInvitationPB, RepeatedWorkspaceMemberPB, WorkspaceMemberInvitationPB,
WorkspaceMemberPB,
};
Expand All @@ -19,21 +19,6 @@ use crate::event_builder::EventBuilder;
use crate::EventIntegrationTest;

impl EventIntegrationTest {
pub async fn add_workspace_member(&self, workspace_id: &str, email: &str) {
if let Some(err) = EventBuilder::new(self.clone())
.event(UserEvent::AddWorkspaceMember)
.payload(AddWorkspaceMemberPB {
workspace_id: workspace_id.to_string(),
email: email.to_string(),
})
.async_send()
.await
.error()
{
panic!("Add workspace member failed: {:?}", err);
}
}

pub async fn invite_workspace_member(&self, workspace_id: &str, email: &str, role: Role) {
EventBuilder::new(self.clone())
.event(UserEvent::InviteWorkspaceMember)
Expand All @@ -46,6 +31,26 @@ impl EventIntegrationTest {
.await;
}

// convenient function to add workspace member by inviting and accepting the invitation
pub async fn add_workspace_member(&self, workspace_id: &str, other: &EventIntegrationTest) {
let other_email = other.get_user_profile().await.unwrap().email;

self
.invite_workspace_member(workspace_id, &other_email, Role::Member)
.await;

let invitations = other.list_workspace_invitations().await;
let target_invi = invitations
.items
.into_iter()
.find(|i| i.workspace_id == workspace_id)
.unwrap();

other
.accept_workspace_invitation(&target_invi.invite_id)
.await;
}

pub async fn list_workspace_invitations(&self) -> RepeatedWorkspaceInvitationPB {
EventBuilder::new(self.clone())
.event(UserEvent::ListWorkspaceInvitations)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ async fn af_cloud_add_workspace_member_test() {
assert_eq!(members[0].email, user_1.email);

test_1
.add_workspace_member(&user_1.workspace_id, &user_2.email)
.add_workspace_member(&user_1.workspace_id, &test_2)
.await;

let members = test_1.get_workspace_members(&user_1.workspace_id).await;
Expand All @@ -66,7 +66,7 @@ async fn af_cloud_delete_workspace_member_test() {
let user_2 = test_2.af_cloud_sign_up().await;

test_1
.add_workspace_member(&user_1.workspace_id, &user_2.email)
.add_workspace_member(&user_1.workspace_id, &test_2)
.await;

test_1
Expand All @@ -88,7 +88,7 @@ async fn af_cloud_leave_workspace_test() {
let user_2 = test_2.af_cloud_sign_up().await;

test_1
.add_workspace_member(&user_1.workspace_id, &user_2.email)
.add_workspace_member(&user_1.workspace_id, &test_2)
.await;

// test_2 should have 2 workspace
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ async fn af_cloud_different_open_same_workspace_test() {
}

client_1
.add_workspace_member(&owner_profile.workspace_id, &client_profile.email)
.add_workspace_member(&owner_profile.workspace_id, &client)
.await;
clients.push((client, client_profile));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ use client_api::entity::billing_dto::{
SubscriptionPlan, SubscriptionStatus, WorkspaceSubscriptionPlan, WorkspaceSubscriptionStatus,
};
use client_api::entity::workspace_dto::{
CreateWorkspaceMember, CreateWorkspaceParam, PatchWorkspaceParam, WorkspaceMemberChangeset,
WorkspaceMemberInvitation,
CreateWorkspaceParam, PatchWorkspaceParam, WorkspaceMemberChangeset, WorkspaceMemberInvitation,
};
use client_api::entity::{
AFRole, AFWorkspace, AFWorkspaceInvitation, AuthProvider, CollabParams, CreateCollabParams,
Expand Down Expand Up @@ -222,28 +221,6 @@ where
})
}

#[allow(deprecated)]
fn add_workspace_member(
&self,
user_email: String,
workspace_id: String,
) -> FutureResult<(), FlowyError> {
let try_get_client = self.server.try_get_client();
FutureResult::new(async move {
// TODO(zack): add_workspace_members will be deprecated after finishing the invite logic. Don't forget to remove the #[allow(deprecated)]
try_get_client?
.add_workspace_members(
workspace_id,
vec![CreateWorkspaceMember {
email: user_email,
role: AFRole::Member,
}],
)
.await?;
Ok(())
})
}

fn invite_workspace_member(
&self,
invitee_email: String,
Expand Down
18 changes: 9 additions & 9 deletions frontend/rust-lib/flowy-sqlite/src/schema.rs
Original file line number Diff line number Diff line change
Expand Up @@ -102,13 +102,13 @@ diesel::table! {
}

diesel::allow_tables_to_appear_in_same_query!(
chat_message_table,
chat_table,
collab_snapshot,
upload_file_part,
upload_file_table,
user_data_migration_records,
user_table,
user_workspace_table,
workspace_members_table,
chat_message_table,
chat_table,
collab_snapshot,
upload_file_part,
upload_file_table,
user_data_migration_records,
user_table,
user_workspace_table,
workspace_members_table,
);
9 changes: 0 additions & 9 deletions frontend/rust-lib/flowy-user-pub/src/cloud.rs
Original file line number Diff line number Diff line change
Expand Up @@ -178,15 +178,6 @@ pub trait UserCloudService: Send + Sync + 'static {
/// Deletes a workspace owned by the user.
fn delete_workspace(&self, workspace_id: &str) -> FutureResult<(), FlowyError>;

// Deprecated, use invite instead
fn add_workspace_member(
&self,
user_email: String,
workspace_id: String,
) -> FutureResult<(), FlowyError> {
FutureResult::new(async { Ok(()) })
}

fn invite_workspace_member(
&self,
invitee_email: String,
Expand Down
1 change: 1 addition & 0 deletions frontend/rust-lib/flowy-user/src/entities/workspace.rs
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ pub struct AcceptWorkspaceInvitationPB {
pub invite_id: String,
}

// Deprecated
#[derive(ProtoBuf, Default, Clone, Validate)]
pub struct AddWorkspaceMemberPB {
#[pb(index = 1)]
Expand Down
13 changes: 0 additions & 13 deletions frontend/rust-lib/flowy-user/src/event_handler.rs
Original file line number Diff line number Diff line change
Expand Up @@ -623,19 +623,6 @@ pub async fn update_reminder_event_handler(
Ok(())
}

#[tracing::instrument(level = "debug", skip_all, err)]
pub async fn add_workspace_member_handler(
data: AFPluginData<AddWorkspaceMemberPB>,
manager: AFPluginState<Weak<UserManager>>,
) -> Result<(), FlowyError> {
let data = data.try_into_inner()?;
let manager = upgrade_manager(manager)?;
manager
.add_workspace_member(data.email, data.workspace_id)
.await?;
Ok(())
}

#[tracing::instrument(level = "debug", skip_all, err)]
pub async fn delete_workspace_member_handler(
data: AFPluginData<RemoveWorkspaceMemberPB>,
Expand Down
4 changes: 1 addition & 3 deletions frontend/rust-lib/flowy-user/src/event_map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,6 @@ pub fn init(user_manager: Weak<UserManager>) -> AFPlugin {
.event(UserEvent::SetNotificationSettings, set_notification_settings)
.event(UserEvent::GetNotificationSettings, get_notification_settings)
.event(UserEvent::ImportAppFlowyDataFolder, import_appflowy_data_folder_handler)
// Workspace member
.event(UserEvent::AddWorkspaceMember, add_workspace_member_handler) // deprecated, use invite
// instead
.event(UserEvent::GetMemberInfo, get_workspace_member_info)
.event(UserEvent::RemoveWorkspaceMember, delete_workspace_member_handler)
.event(UserEvent::GetWorkspaceMembers, get_workspace_members_handler)
Expand Down Expand Up @@ -196,6 +193,7 @@ pub enum UserEvent {
#[event(output = "NotificationSettingsPB")]
GetNotificationSettings = 36,

// Deprecated
#[event(input = "AddWorkspaceMemberPB")]
AddWorkspaceMember = 37,

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -327,20 +327,6 @@ impl UserManager {
Ok(())
}

// deprecated, use invite instead
pub async fn add_workspace_member(
&self,
user_email: String,
workspace_id: String,
) -> FlowyResult<()> {
self
.cloud_services
.get_user_service()?
.add_workspace_member(user_email, workspace_id)
.await?;
Ok(())
}

pub async fn remove_workspace_member(
&self,
user_email: String,
Expand Down
Loading

0 comments on commit d7e70e0

Please sign in to comment.