mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 16:10:20 +00:00
RoomMemberDetailsScreen (#727)
* generated files * Revert "generated files" This reverts commit f62c1dbcd9e505083ad4ff17532e2c054e253187. * renaming files to RoomMembersList * completed the renaming of the list files * added generated files * basic setup of the view and the mock * added a new mock with a avatar * share/copy link * copyUserLink implemented * removed unimplemented tests * block user UI * navigation to room member details added * implemented but we require a sync from the Rust side * adjusted some UI test screens * alert for unblocking * completed * some tests * changelog * some unit tests * improved the tests * removed unused comment * Update ElementX/Sources/Services/Room/RoomProxy.swift Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com> * optional displayName * removing toggle * removed cancel title * Update UnitTests/Sources/RoomMemberDetailsViewModelTests.swift Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com> * removing Group * pr suggestion * better naming * removed capitalizingFirstLetter * Update ElementX/Sources/Other/Extensions/Alert.swift Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com> * trailing closure * removed useless catch clause * naming conformed to ignore --------- Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
This commit is contained in:
@@ -17,6 +17,12 @@
|
||||
import Foundation
|
||||
import MatrixRustSDK
|
||||
|
||||
enum RoomMemberProxyError: Error {
|
||||
case ignoreUserFailed
|
||||
case unignoreUserFailed
|
||||
}
|
||||
|
||||
@MainActor
|
||||
// sourcery: AutoMockable
|
||||
protocol RoomMemberProxyProtocol {
|
||||
var userID: String { get }
|
||||
@@ -26,4 +32,15 @@ protocol RoomMemberProxyProtocol {
|
||||
var isNameAmbiguous: Bool { get }
|
||||
var powerLevel: Int { get }
|
||||
var normalizedPowerLevel: Int { get }
|
||||
var isAccountOwner: Bool { get }
|
||||
var isIgnored: Bool { get }
|
||||
|
||||
func ignoreUser() async -> Result<Void, RoomMemberProxyError>
|
||||
func unignoreUser() async -> Result<Void, RoomMemberProxyError>
|
||||
}
|
||||
|
||||
extension RoomMemberProxyProtocol {
|
||||
var permalink: URL? {
|
||||
try? PermalinkBuilder.permalinkTo(userIdentifier: userID)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user