@@ -6,7 +6,7 @@ import {GroupHeader} from "../../../../lib/components/auth/nav";
6
6
import { useAPIWithPagination } from "../../../../lib/hooks/api" ;
7
7
import { auth , MAX_LISTING_AMOUNT } from "../../../../lib/api" ;
8
8
import { Paginator } from "../../../../lib/components/pagination" ;
9
- import { AttachModal , ResolveEntityDisplayName } from "../../../../lib/components/auth/forms" ;
9
+ import { AttachModal } from "../../../../lib/components/auth/forms" ;
10
10
import { ConfirmationButton } from "../../../../lib/components/modals" ;
11
11
import {
12
12
ActionGroup ,
@@ -19,7 +19,7 @@ import {
19
19
} from "../../../../lib/components/controls" ;
20
20
import { useRouter } from "../../../../lib/hooks/router" ;
21
21
import { Link } from "../../../../lib/components/nav" ;
22
- import { resolveDisplayName } from "../../../../lib/utils" ;
22
+ import { resolveUserDisplayName } from "../../../../lib/utils" ;
23
23
24
24
25
25
const GroupMemberList = ( { groupId, after, onPaginate } ) => {
@@ -34,7 +34,7 @@ const GroupMemberList = ({ groupId, after, onPaginate }) => {
34
34
setAttachError ( null ) ;
35
35
} , [ refresh ] ) ;
36
36
37
- const setAllUsersFromLakeFS = async ( ) => {
37
+ const allUsersFromLakeFS = async ( resolveUserDisplayNameFN = ( user => user . id ) ) => {
38
38
if ( allUsers . length > 0 ) {
39
39
return allUsers
40
40
}
@@ -48,17 +48,17 @@ const GroupMemberList = ({ groupId, after, onPaginate }) => {
48
48
after = results . pagination . next_offset ;
49
49
hasMore = results . pagination . has_more ;
50
50
} while ( hasMore ) ;
51
- usersList . sort ( ( a , b ) => ResolveEntityDisplayName ( a ) . localeCompare ( ResolveEntityDisplayName ( b ) ) ) ;
51
+ usersList . sort ( ( a , b ) => resolveUserDisplayNameFN ( a ) . localeCompare ( resolveUserDisplayNameFN ( b ) ) ) ;
52
52
setAllUsers ( usersList ) ;
53
53
return usersList ;
54
54
} catch ( error ) {
55
55
console . error ( "Error fetching users:" , error ) ;
56
56
return [ ] ;
57
57
}
58
58
}
59
- const searchUsers = async ( prefix , maxResults ) => {
60
- let allUsersList = await setAllUsersFromLakeFS ( )
61
- let filteredUsers = allUsersList . filter ( user => ResolveEntityDisplayName ( user ) . startsWith ( prefix ) ) ;
59
+ const searchUsers = async ( prefix , maxResults , resolveUserDisplayNameFN = ( user => user . id ) ) => {
60
+ let allUsersList = await allUsersFromLakeFS ( resolveUserDisplayNameFN )
61
+ let filteredUsers = allUsersList . filter ( user => resolveUserDisplayNameFN ( user ) . startsWith ( prefix ) ) ;
62
62
return filteredUsers . slice ( 0 , maxResults ) ;
63
63
} ;
64
64
let content ;
@@ -71,7 +71,7 @@ const GroupMemberList = ({ groupId, after, onPaginate }) => {
71
71
< DataTable
72
72
keyFn = { user => user . id }
73
73
rowFn = { user => [
74
- < Link href = { { pathname : '/auth/users/:userId' , params : { userId : user . id } } } > { resolveDisplayName ( user ) } </ Link > ,
74
+ < Link href = { { pathname : '/auth/users/:userId' , params : { userId : user . id } } } > { resolveUserDisplayName ( user ) } </ Link > ,
75
75
< FormattedDate dateValue = { user . creation_date } />
76
76
] }
77
77
headers = { [ 'User ID' , 'Created At' ] }
@@ -80,7 +80,7 @@ const GroupMemberList = ({ groupId, after, onPaginate }) => {
80
80
buttonFn : user => < ConfirmationButton
81
81
size = "sm"
82
82
variant = "outline-danger"
83
- msg = { < span > Are you sure you{ '\'' } d like to remove user < strong > { resolveDisplayName ( user ) } </ strong > from group < strong > { groupId } </ strong > ?</ span > }
83
+ msg = { < span > Are you sure you{ '\'' } d like to remove user < strong > { resolveUserDisplayName ( user ) } </ strong > from group < strong > { groupId } </ strong > ?</ span > }
84
84
onConfirm = { ( ) => {
85
85
auth . removeUserFromGroup ( user . id , groupId )
86
86
. catch ( error => alert ( error ) )
@@ -101,7 +101,8 @@ const GroupMemberList = ({ groupId, after, onPaginate }) => {
101
101
filterPlaceholder = { 'Find User...' }
102
102
modalTitle = { 'Add to Group' }
103
103
addText = { 'Add to Group' }
104
- searchFn = { prefix => searchUsers ( prefix , 5 ) . then ( res => res ) }
104
+ resolveEntityFN = { resolveUserDisplayName }
105
+ searchFn = { prefix => searchUsers ( prefix , 5 , resolveUserDisplayName ) . then ( res => res ) }
105
106
onHide = { ( ) => setShowAddModal ( false ) }
106
107
onAttach = { ( selected ) => {
107
108
Promise . all ( selected . map ( user => auth . addUserToGroup ( user . id , groupId ) ) )
0 commit comments