File tree 1 file changed +8
-0
lines changed
components/dashboard/src/teams
1 file changed +8
-0
lines changed Original file line number Diff line number Diff line change @@ -31,6 +31,7 @@ export default function() {
31
31
const [ showInviteModal , setShowInviteModal ] = useState < boolean > ( false ) ;
32
32
const [ searchText , setSearchText ] = useState < string > ( '' ) ;
33
33
const [ roleFilter , setRoleFilter ] = useState < TeamMemberRole | undefined > ( ) ;
34
+ const [ leaveTeamEnabled , setLeaveTeamEnabled ] = useState < boolean > ( false ) ;
34
35
35
36
useEffect ( ( ) => {
36
37
if ( ! team ) {
@@ -46,6 +47,12 @@ export default function() {
46
47
} ) ( ) ;
47
48
} , [ team ] ) ;
48
49
50
+ useEffect ( ( ) => {
51
+ const owners = members . filter ( m => m . role === "owner" ) ;
52
+ const isOwner = owners . some ( o => o . userId === user ?. id ) ;
53
+ setLeaveTeamEnabled ( ! isOwner || owners . length > 1 ) ;
54
+ } , [ members ] ) ;
55
+
49
56
const ownMemberInfo = members . find ( m => m . userId === user ?. id ) ;
50
57
51
58
const getInviteURL = ( inviteId : string ) => {
@@ -181,6 +188,7 @@ export default function() {
181
188
? [ {
182
189
title : 'Leave Team' ,
183
190
customFontStyle : 'text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300' ,
191
+ active : leaveTeamEnabled ,
184
192
onClick : ( ) => removeTeamMember ( m . userId )
185
193
} ]
186
194
: ( ownMemberInfo ?. role === 'owner'
You can’t perform that action at this time.
0 commit comments