@@ -48,7 +48,7 @@ export default function InviteUsers({
4848 onCancel = { ( ) => onCancel ( ) }
4949 onSubmit = { ( ) => {
5050 const members = Object . keys ( selectedMembers ) . filter ( ( m ) => selectedMembers [ m ] ) ;
51- if ( typeof overrideInviteUser === 'function' ) {
51+ if ( typeof overrideInviteUser === 'function' ) {
5252 overrideInviteUser ( {
5353 users : members ,
5454 onClose : onCancel ,
@@ -79,26 +79,30 @@ export default function InviteUsers({
7979 } }
8080 >
8181 < div className = "sendbird-more-members__popup-scroll__inner" >
82- { members . map ( ( member ) => (
83- < UserListItem
84- checkBox
85- checked = { selectedMembers [ member . userId ] }
86- onChange = {
87- ( event ) => {
88- const modifiedSelectedMembers = {
89- ...selectedMembers ,
90- [ event . target . id ] : event . target . checked ,
91- } ;
92- if ( ! event . target . checked ) {
93- delete modifiedSelectedMembers [ event . target . id ] ;
82+ { members . map ( ( member ) => {
83+ const isJoinedMember = channel ?. members ?. some ( ( { userId } ) => userId === member ?. userId ) ;
84+ return (
85+ < UserListItem
86+ checkBox
87+ checked = { isJoinedMember || selectedMembers [ member . userId ] }
88+ disabled = { isJoinedMember }
89+ onChange = {
90+ ( event ) => {
91+ const modifiedSelectedMembers = {
92+ ...selectedMembers ,
93+ [ event . target . id ] : event . target . checked ,
94+ } ;
95+ if ( ! event . target . checked ) {
96+ delete modifiedSelectedMembers [ event . target . id ] ;
97+ }
98+ setSelectedMembers ( modifiedSelectedMembers ) ;
9499 }
95- setSelectedMembers ( modifiedSelectedMembers ) ;
96100 }
97- }
98- user = { member }
99- key = { member . userId }
100- />
101- ) ) }
101+ user = { member }
102+ key = { member . userId }
103+ />
104+ ) ;
105+ } ) }
102106 </ div >
103107 </ div >
104108 </ Modal >
0 commit comments