DM Design Tweaks (#3693)

* dm design tweaks

* adding equatable conformance

* topic will now be shown in DMs

* code suggestion

* updated details

* better check

* code improvement
This commit is contained in:
Mauro
2025-01-22 14:32:39 +01:00
committed by GitHub
parent f194285250
commit 48e530fec9
16 changed files with 69 additions and 38 deletions
@@ -31,6 +31,7 @@ struct JoinedRoomProxyMockConfiguration {
var timelineStartReached = false
var members: [RoomMemberProxyMock] = .allMembers
var heroes: [RoomMemberProxyMock] = []
var knockRequestsState: KnockRequestsState = .loaded([])
var ownUserID = RoomMemberProxyMock.mockMe.userID
var inviter: RoomMemberProxyProtocol?
@@ -159,7 +160,7 @@ extension RoomInfo {
isIgnored: $0.isIgnored,
suggestedRoleForPowerLevel: $0.role,
membershipChangeReason: $0.membershipChangeReason) },
heroes: [],
heroes: configuration.heroes.map(RoomHero.init),
activeMembersCount: UInt64(configuration.members.filter { $0.membership == .join || $0.membership == .invite }.count),
invitedMembersCount: UInt64(configuration.members.filter { $0.membership == .invite }.count),
joinedMembersCount: UInt64(configuration.members.filter { $0.membership == .join }.count),
@@ -178,3 +179,11 @@ extension RoomInfo {
historyVisibility: .shared)
}
}
private extension RoomHero {
init(from memberProxy: RoomMemberProxyMock) {
self.init(userId: memberProxy.userID,
displayName: memberProxy.displayName,
avatarUrl: memberProxy.avatarURL?.absoluteString)
}
}