mirror of
https://github.com/tulir/gomuks.git
synced 2025-04-19 18:13:41 -05:00
fixup! web/timeline: render MSC4144 per-message profiles
Signed-off-by: Sumner Evans <me@sumnerevans.com>
This commit is contained in:
parent
02894a939b
commit
4ff73a0172
2 changed files with 12 additions and 3 deletions
|
@ -103,6 +103,15 @@ export const ReplyBody = ({
|
|||
classNames.push("small")
|
||||
}
|
||||
const perMessageSender = getPerMessageProfile(event)
|
||||
let renderMemberEvtContent = memberEvtContent
|
||||
if (perMessageSender) {
|
||||
renderMemberEvtContent = {
|
||||
membership: "join",
|
||||
displayname: perMessageSender.displayname ?? memberEvtContent?.displayname,
|
||||
avatar_url: perMessageSender.avatar_url ?? memberEvtContent?.avatar_url,
|
||||
avatar_file: perMessageSender.avatar_file ?? memberEvtContent?.avatar_file,
|
||||
}
|
||||
}
|
||||
const userColorIndex = getUserColorIndex(perMessageSender?.id ?? event.sender)
|
||||
classNames.push(`sender-color-${userColorIndex}`)
|
||||
return <blockquote data-reply-to={event.event_id} className={classNames.join(" ")} onClick={onClickReply}>
|
||||
|
@ -115,7 +124,7 @@ export const ReplyBody = ({
|
|||
<img
|
||||
className="small avatar"
|
||||
loading="lazy"
|
||||
src={getAvatarURL(perMessageSender?.id ?? event.sender, perMessageSender ?? memberEvtContent)}
|
||||
src={getAvatarURL(perMessageSender?.id ?? event.sender, renderMemberEvtContent)}
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
|
@ -123,7 +132,7 @@ export const ReplyBody = ({
|
|||
className={`event-sender sender-color-${userColorIndex}`}
|
||||
title={perMessageSender ? perMessageSender.id : event.sender}
|
||||
>
|
||||
{getDisplayname(event.sender, perMessageSender ?? memberEvtContent)}
|
||||
{getDisplayname(event.sender, renderMemberEvtContent)}
|
||||
</span>
|
||||
{perMessageSender && <div className="per-message-event-sender">
|
||||
<span className="via">via</span>
|
||||
|
|
|
@ -114,7 +114,6 @@ const TimelineEvent = ({ evt, prevEvt, disableMenu, smallReplies, isFocused }: T
|
|||
}
|
||||
const memberEvt = useRoomMember(client, roomCtx.store, evt.sender)
|
||||
const memberEvtContent = memberEvt?.content as MemberEventContent | undefined
|
||||
let renderMemberEvtContent = memberEvtContent
|
||||
const BodyType = getBodyType(evt)
|
||||
const eventTS = new Date(evt.timestamp)
|
||||
const editEventTS = evt.last_edit ? new Date(evt.last_edit.timestamp) : null
|
||||
|
@ -173,6 +172,7 @@ const TimelineEvent = ({ evt, prevEvt, disableMenu, smallReplies, isFocused }: T
|
|||
}
|
||||
const perMessageSender = getPerMessageProfile(evt)
|
||||
const prevPerMessageSender = getPerMessageProfile(prevEvt)
|
||||
let renderMemberEvtContent = memberEvtContent
|
||||
if (perMessageSender) {
|
||||
renderMemberEvtContent = {
|
||||
membership: "join",
|
||||
|
|
Loading…
Add table
Reference in a new issue