mirror of
https://github.com/cinnyapp/cinny.git
synced 2025-09-13 22:32:26 +03:00
support displaying invite reason for receiver
This commit is contained in:
parent
02524ea357
commit
f5d14519b4
1 changed files with 16 additions and 2 deletions
|
@ -81,6 +81,7 @@ type InviteData = {
|
||||||
senderId: string;
|
senderId: string;
|
||||||
senderName: string;
|
senderName: string;
|
||||||
inviteTs?: number;
|
inviteTs?: number;
|
||||||
|
reason?: string;
|
||||||
|
|
||||||
isSpace: boolean;
|
isSpace: boolean;
|
||||||
isDirect: boolean;
|
isDirect: boolean;
|
||||||
|
@ -102,11 +103,17 @@ const makeInviteData = (mx: MatrixClient, room: Room, useAuthentication: boolean
|
||||||
const member = room.getMember(userId);
|
const member = room.getMember(userId);
|
||||||
const memberEvent = member?.events.member;
|
const memberEvent = member?.events.member;
|
||||||
|
|
||||||
|
const content = memberEvent?.getContent();
|
||||||
const senderId = memberEvent?.getSender();
|
const senderId = memberEvent?.getSender();
|
||||||
|
|
||||||
const senderName = senderId
|
const senderName = senderId
|
||||||
? getMemberDisplayName(room, senderId) ?? getMxIdLocalPart(senderId) ?? senderId
|
? getMemberDisplayName(room, senderId) ?? getMxIdLocalPart(senderId) ?? senderId
|
||||||
: undefined;
|
: undefined;
|
||||||
const inviteTs = memberEvent?.getTs();
|
const inviteTs = memberEvent?.getTs();
|
||||||
|
const reason =
|
||||||
|
content && 'reason' in content && typeof content.reason === 'string'
|
||||||
|
? content.reason
|
||||||
|
: undefined;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
room,
|
room,
|
||||||
|
@ -119,6 +126,7 @@ const makeInviteData = (mx: MatrixClient, room: Room, useAuthentication: boolean
|
||||||
senderId: senderId ?? 'Unknown',
|
senderId: senderId ?? 'Unknown',
|
||||||
senderName: senderName ?? 'Unknown',
|
senderName: senderName ?? 'Unknown',
|
||||||
inviteTs,
|
inviteTs,
|
||||||
|
reason,
|
||||||
|
|
||||||
isSpace: isSpace(room),
|
isSpace: isSpace(room),
|
||||||
isDirect: direct,
|
isDirect: direct,
|
||||||
|
@ -130,7 +138,8 @@ const hasBadWords = (invite: InviteData): boolean =>
|
||||||
testBadWords(invite.roomName) ||
|
testBadWords(invite.roomName) ||
|
||||||
testBadWords(invite.roomTopic ?? '') ||
|
testBadWords(invite.roomTopic ?? '') ||
|
||||||
testBadWords(invite.senderName) ||
|
testBadWords(invite.senderName) ||
|
||||||
testBadWords(invite.senderId);
|
testBadWords(invite.senderId) ||
|
||||||
|
testBadWords(invite.reason || '');
|
||||||
|
|
||||||
type NavigateHandler = (roomId: string, space: boolean) => void;
|
type NavigateHandler = (roomId: string, space: boolean) => void;
|
||||||
|
|
||||||
|
@ -299,10 +308,15 @@ function InviteCard({
|
||||||
</Box>
|
</Box>
|
||||||
</Box>
|
</Box>
|
||||||
<Box gap="200" alignItems="Baseline">
|
<Box gap="200" alignItems="Baseline">
|
||||||
<Box grow="Yes">
|
<Box grow="Yes" direction="Column">
|
||||||
<Text size="T200" priority="300">
|
<Text size="T200" priority="300">
|
||||||
From: <b>{invite.senderId}</b>
|
From: <b>{invite.senderId}</b>
|
||||||
</Text>
|
</Text>
|
||||||
|
{invite.reason && (
|
||||||
|
<Text size="T200" priority="300">
|
||||||
|
Reason: <b>{invite.reason}</b>
|
||||||
|
</Text>
|
||||||
|
)}
|
||||||
</Box>
|
</Box>
|
||||||
{typeof invite.inviteTs === 'number' && invite.inviteTs !== 0 && (
|
{typeof invite.inviteTs === 'number' && invite.inviteTs !== 0 && (
|
||||||
<Box shrink="No">
|
<Box shrink="No">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue