From f42826256b8afe4e507efad646a3f5d3eb2a02ac Mon Sep 17 00:00:00 2001 From: DiamondThree Date: Thu, 22 Dec 2022 17:39:33 +0800 Subject: [PATCH] feat: delete confirm --- .../src/components/invite-members/index.tsx | 3 ++ .../workspace-setting/workspace-setting.tsx | 36 +++++++++++-------- packages/app/src/ui/confirm/confirm.tsx | 2 +- 3 files changed, 25 insertions(+), 16 deletions(-) diff --git a/packages/app/src/components/invite-members/index.tsx b/packages/app/src/components/invite-members/index.tsx index 2d8ceefccf..155192d61c 100644 --- a/packages/app/src/components/invite-members/index.tsx +++ b/packages/app/src/components/invite-members/index.tsx @@ -11,6 +11,7 @@ interface LoginModalProps { open: boolean; onClose: () => void; workspaceId: string; + onInviteSuccess: () => void; } export const debounce = any>( fn: T, @@ -42,6 +43,7 @@ export const InviteMembers = ({ open, onClose, workspaceId, + onInviteSuccess, }: LoginModalProps) => { const [canInvite, setCanInvite] = useState(true); const [email, setEmail] = useState(''); @@ -128,6 +130,7 @@ export const InviteMembers = ({ inviteMember({ id: workspaceId, email: email }) .then(() => { onClose(); + onInviteSuccess && onInviteSuccess(); }) .catch(err => { toast('Invite failed'); diff --git a/packages/app/src/components/workspace-setting/workspace-setting.tsx b/packages/app/src/components/workspace-setting/workspace-setting.tsx index 0c4a19f396..61fcd35ef4 100644 --- a/packages/app/src/components/workspace-setting/workspace-setting.tsx +++ b/packages/app/src/components/workspace-setting/workspace-setting.tsx @@ -129,7 +129,7 @@ export const WorkspaceSetting = ({ } }, [isShow]); return ( - + @@ -184,7 +184,7 @@ const GeneralPage = ({ workspace }: { workspace?: Workspace }) => { const MembersPage = ({ workspace }: { workspace: Workspace }) => { const [isInviteModalShow, setIsInviteModalShow] = useState(false); const [members, setMembers] = useState([]); - useEffect(() => { + const refreshMembers = () => { getWorkspaceMembers({ id: workspace.id, }) @@ -194,8 +194,10 @@ const MembersPage = ({ workspace }: { workspace: Workspace }) => { .catch(err => { console.log(err); }); + }; + useEffect(() => { + refreshMembers(); }, [workspace.id]); - const { confirm } = useConfirm(); return (
@@ -239,19 +241,20 @@ const MembersPage = ({ workspace }: { workspace: Workspace }) => { <> { - confirm({ - title: 'Delete Member?', - content: `will delete member`, - confirmText: 'Delete', - confirmType: 'danger', - }).then(confirm => { - removeMember({ - permissionId: member.id, - }).then(data => { - // console.log('data: ', data); - toast('Moved to Trash'); - }); + // confirm({ + // title: 'Delete Member?', + // content: `will delete member`, + // confirmText: 'Delete', + // confirmType: 'danger', + // }).then(confirm => { + removeMember({ + permissionId: member.id, + }).then(data => { + // console.log('data: ', data); + toast('Moved to Trash'); + refreshMembers(); }); + // }); }} icon={} > @@ -288,6 +291,9 @@ const MembersPage = ({ workspace }: { workspace: Workspace }) => { onClose={() => { setIsInviteModalShow(false); }} + onInviteSuccess={() => { + refreshMembers(); + }} workspaceId={workspace.id} open={isInviteModalShow} > diff --git a/packages/app/src/ui/confirm/confirm.tsx b/packages/app/src/ui/confirm/confirm.tsx index 269f53b64b..d3de35adb1 100644 --- a/packages/app/src/ui/confirm/confirm.tsx +++ b/packages/app/src/ui/confirm/confirm.tsx @@ -27,7 +27,7 @@ export const Confirm = ({ }: ConfirmProps) => { const [open, setOpen] = useState(true); return ( - + {