@using MatrixRoomUtils.Core.Responses @using MatrixRoomUtils.Core.StateEventTypes @using MatrixRoomUtils.Core.StateEventTypes.Spec @inherits BaseTimelineItem @if (roomMemberData is not null) { @if (roomMemberData.Membership == "ban") { @Event.StateKey was banned } else if (roomMemberData.Membership == "invite") { @Event.StateKey was invited } else if (roomMemberData.Membership == "join") { @if (Event.ReplacesState is not null) { @Event.StateKey changed their display name to @(roomMemberData.Displayname ?? Event.Sender) } else { joined } } else if (roomMemberData.Membership == "leave") { @Event.StateKey left } else if (roomMemberData.Membership == "knock") { @Event.StateKey knocked } else { @Event.StateKey has an unknown state:
        @Event.ToJson()
    
} } else {
Unknown membership event for @Event.StateKey
            @Event.ToJson()
        
} @code { private RoomMemberEventData? roomMemberData => Event.TypedContent as RoomMemberEventData; }