From 9bf86e3f614bce42d020f2edf8927d10df5d16be Mon Sep 17 00:00:00 2001 From: pengx17 Date: Tue, 27 May 2025 09:20:18 +0000 Subject: [PATCH] fix(core): add invite members button to sidebar (#12491) fix AF-2661 ## Summary by CodeRabbit - **New Features** - Added an "Invite Members" button to the sidebar, allowing users to quickly access workspace member settings (visible only for non-local workspaces). --- .../src/components/root-app-sidebar/index.tsx | 2 ++ .../invite-members-button.tsx | 36 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 packages/frontend/core/src/components/root-app-sidebar/invite-members-button.tsx diff --git a/packages/frontend/core/src/components/root-app-sidebar/index.tsx b/packages/frontend/core/src/components/root-app-sidebar/index.tsx index bbecdc139..6b9be76b5 100644 --- a/packages/frontend/core/src/components/root-app-sidebar/index.tsx +++ b/packages/frontend/core/src/components/root-app-sidebar/index.tsx @@ -44,6 +44,7 @@ import { workspaceAndUserWrapper, workspaceWrapper, } from './index.css'; +import { InviteMembersButton } from './invite-members-button'; import { AppSidebarJournalButton } from './journal-button'; import { NotificationButton } from './notification-button'; import { SidebarAudioPlayer } from './sidebar-audio-player'; @@ -211,6 +212,7 @@ export const RootAppSidebar = memo((): ReactElement => { > {t['Import']()} + { + const workspace = useService(WorkspaceService).workspace; + + const isLocal = workspace.flavour === 'local'; + + const dialogService = useService(WorkspaceDialogService); + const onOpenInviteMembersModal = useCallback(() => { + dialogService.open('setting', { + activeTab: `workspace:members`, + }); + }, [dialogService]); + + const t = useI18n(); + + if (isLocal) { + return null; + } + + return ( + } + onClick={onOpenInviteMembersModal} + > + {t['Invite Members']()} + + ); +};