diff --git a/src/MessageQueueContext.tsx b/src/MessageQueueContext.tsx index 3d46e50..ac822cf 100644 --- a/src/MessageQueueContext.tsx +++ b/src/MessageQueueContext.tsx @@ -26,6 +26,7 @@ export const MessageQueueProvider = ({ children }) => { type, groupDirectId, identifier: tempId, + signature: uid.rnd(), retries: 0, // Retry count for display purposes status: 'pending' // Initial status is 'pending' }; diff --git a/src/components/Chat/ChatList.tsx b/src/components/Chat/ChatList.tsx index 0fffc03..31f6f23 100644 --- a/src/components/Chat/ChatList.tsx +++ b/src/components/Chat/ChatList.tsx @@ -18,7 +18,7 @@ export const ChatList = ({ initialMessages, myAddress, tempMessages, chatId, onR count: messages.length, getItemKey: (index) => messages[index].signature, getScrollElement: () => parentRef?.current, - estimateSize: () => 80, // Provide an estimated height of items, adjust this as needed + estimateSize: useCallback(() => 80, []), // Provide an estimated height of items, adjust this as needed overscan: 10, // Number of items to render outside the visible area to improve smoothness }); diff --git a/src/components/Chat/MessageItem.tsx b/src/components/Chat/MessageItem.tsx index ed5492f..519c83c 100644 --- a/src/components/Chat/MessageItem.tsx +++ b/src/components/Chat/MessageItem.tsx @@ -82,9 +82,9 @@ export const MessageItem = ({ color: "white", }} alt={message?.senderName} - src={`${getBaseApiReact()}/arbitrary/THUMBNAIL/${ + src={message?.senderName ? `${getBaseApiReact()}/arbitrary/THUMBNAIL/${ message?.senderName - }/qortal_avatar?async=true`} + }/qortal_avatar?async=true` : ''} > {message?.senderName?.charAt(0)} diff --git a/src/components/Group/ListOfBans.tsx b/src/components/Group/ListOfBans.tsx index 183653c..db4c6ba 100644 --- a/src/components/Group/ListOfBans.tsx +++ b/src/components/Group/ListOfBans.tsx @@ -12,7 +12,7 @@ export const getMemberInvites = async (groupNumber) => { return groupData; } -const getNames = async (listOfMembers) => { +const getNames = async (listOfMembers, includeNoNames) => { let members = []; if (listOfMembers && Array.isArray(listOfMembers)) { for (const member of listOfMembers) { @@ -20,6 +20,8 @@ const getNames = async (listOfMembers) => { const name = await getNameInfo(member.offender); if (name) { members.push({ ...member, name }); + } else if(includeNoNames){ + members.push({ ...member, name: name || "" }); } } } @@ -42,7 +44,7 @@ export const ListOfBans = ({ groupId, setInfoSnack, setOpenSnack, show }) => { const getInvites = async (groupId) => { try { const res = await getMemberInvites(groupId); - const resWithNames = await getNames(res); + const resWithNames = await getNames(res, true); setBans(resWithNames); } catch (error) { console.error(error); @@ -162,7 +164,7 @@ export const ListOfBans = ({ groupId, setInfoSnack, setOpenSnack, show }) => { diff --git a/src/components/Group/ListOfInvites.tsx b/src/components/Group/ListOfInvites.tsx index b742ece..a41bc47 100644 --- a/src/components/Group/ListOfInvites.tsx +++ b/src/components/Group/ListOfInvites.tsx @@ -12,7 +12,7 @@ export const getMemberInvites = async (groupNumber) => { return groupData; } -const getNames = async (listOfMembers) => { +const getNames = async (listOfMembers, includeNoNames) => { let members = []; if (listOfMembers && Array.isArray(listOfMembers)) { for (const member of listOfMembers) { @@ -20,6 +20,8 @@ const getNames = async (listOfMembers) => { const name = await getNameInfo(member.invitee); if (name) { members.push({ ...member, name }); + } else if(includeNoNames){ + members.push({ ...member, name: name || "" }); } } } @@ -43,7 +45,7 @@ export const ListOfInvites = ({ groupId, setInfoSnack, setOpenSnack, show }) => const getInvites = async (groupId) => { try { const res = await getMemberInvites(groupId); - const resWithNames = await getNames(res); + const resWithNames = await getNames(res, true); setInvites(resWithNames); } catch (error) { console.error(error); @@ -163,7 +165,7 @@ export const ListOfInvites = ({ groupId, setInfoSnack, setOpenSnack, show }) => diff --git a/src/components/Group/ListOfJoinRequests.tsx b/src/components/Group/ListOfJoinRequests.tsx index 491c69d..24ecc70 100644 --- a/src/components/Group/ListOfJoinRequests.tsx +++ b/src/components/Group/ListOfJoinRequests.tsx @@ -12,7 +12,7 @@ export const getMemberInvites = async (groupNumber) => { return groupData; } -const getNames = async (listOfMembers) => { +const getNames = async (listOfMembers, includeNoNames) => { let members = []; if (listOfMembers && Array.isArray(listOfMembers)) { for (const member of listOfMembers) { @@ -20,6 +20,8 @@ const getNames = async (listOfMembers) => { const name = await getNameInfo(member.joiner); if (name) { members.push({ ...member, name }); + } else if(includeNoNames){ + members.push({ ...member, name: name || "" }); } } } @@ -44,7 +46,7 @@ export const ListOfJoinRequests = ({ groupId, setInfoSnack, setOpenSnack, show } const getInvites = async (groupId) => { try { const res = await getMemberInvites(groupId); - const resWithNames = await getNames(res); + const resWithNames = await getNames(res, true); setInvites(resWithNames); } catch (error) { console.error(error); @@ -181,7 +183,7 @@ export const ListOfJoinRequests = ({ groupId, setInfoSnack, setOpenSnack, show } diff --git a/src/components/Group/ListOfMembers.tsx b/src/components/Group/ListOfMembers.tsx index a54a616..9910453 100644 --- a/src/components/Group/ListOfMembers.tsx +++ b/src/components/Group/ListOfMembers.tsx @@ -336,7 +336,7 @@ const ListOfMembers = ({ { + const getMembersWithNames = async (groupId) => { try { setIsLoadingMembers(true) const res = await getGroupMembers(groupId); @@ -123,6 +124,14 @@ export const ManageMembers = ({ } catch (error) {} }; + const getMembers = async (groupId) => { + try { + const res = await getGroupMembers(groupId); + console.log('res', res) + setMembersWithNames(res?.members || []); + } catch (error) {} + }; + React.useEffect(()=> { if(selectedGroup?.groupId){ getMembers(selectedGroup?.groupId) @@ -256,6 +265,8 @@ export const ManageMembers = ({ maxWidth: '750px' }} > + +