Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/ts/8

 Conflicts:
	src/components/structures/MessagePanel.tsx
	src/components/structures/TimelinePanel.tsx
This commit is contained in:
Michael Telatynski 2021-06-29 15:22:54 +01:00
commit 623317cd47
76 changed files with 1524 additions and 719 deletions

View file

@ -50,6 +50,7 @@ import EditorStateTransfer from "../../utils/EditorStateTransfer";
const CONTINUATION_MAX_INTERVAL = 5 * 60 * 1000; // 5 minutes
const continuedTypes = [EventType.Sticker, EventType.RoomMessage];
const membershipTypes = [EventType.RoomMember, EventType.RoomThirdPartyInvite, EventType.RoomServerAcl];
// check if there is a previous event and it has the same sender as this event
// and the types are the same/is in continuedTypes and the time between them is <= CONTINUATION_MAX_INTERVAL
@ -78,10 +79,6 @@ function shouldFormContinuation(prevEvent: MatrixEvent, mxEvent: MatrixEvent): b
return true;
}
const isMembershipChange = (e: MatrixEvent): boolean => {
return e.getType() === EventType.RoomMember || e.getType() === EventType.RoomThirdPartyInvite;
}
interface IProps {
// the list of MatrixEvents to display
events: MatrixEvent[];
@ -1183,7 +1180,7 @@ class RedactionGrouper extends BaseGrouper {
// Wrap consecutive member events in a ListSummary, ignore if redacted
class MemberGrouper extends BaseGrouper {
static canStartGroup = function(panel: MessagePanel, ev: MatrixEvent): boolean {
return panel.shouldShowEvent(ev) && isMembershipChange(ev);
return panel.shouldShowEvent(ev) && membershipTypes.includes(ev.getType() as EventType);
}
constructor(
@ -1200,7 +1197,7 @@ class MemberGrouper extends BaseGrouper {
if (this.panel.wantsDateSeparator(this.events[0], ev.getDate())) {
return false;
}
return isMembershipChange(ev);
return membershipTypes.includes(ev.getType() as EventType);
}
public add(ev: MatrixEvent): void {