mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 20:39:24 +00:00
Rename SpaceRoomProxy to SpaceServiceRoom and stop proxying the struct. (#4952)
* Rename SpaceRoomProxy to SpaceServiceRoom. The underlying type is a struct, we don't need to proxy it. * Actually stop proxying the SpaceRoom.
This commit is contained in:
@@ -10,19 +10,19 @@ import Combine
|
||||
import MatrixRustSDK
|
||||
|
||||
class SpaceRoomListProxy: SpaceRoomListProxyProtocol {
|
||||
var id: String { spaceRoomProxyPublisher.value.id }
|
||||
var id: String { spaceServiceRoomPublisher.value.id }
|
||||
|
||||
private let spaceRoomList: SpaceRoomListProtocol
|
||||
|
||||
private var spaceRoomProxyHandle: TaskHandle?
|
||||
private let spaceRoomProxySubject: CurrentValueSubject<SpaceRoomProxyProtocol, Never>
|
||||
var spaceRoomProxyPublisher: CurrentValuePublisher<SpaceRoomProxyProtocol, Never> {
|
||||
spaceRoomProxySubject.asCurrentValuePublisher()
|
||||
private var spaceServiceRoomHandle: TaskHandle?
|
||||
private let spaceServiceRoomSubject: CurrentValueSubject<SpaceServiceRoomProtocol, Never>
|
||||
var spaceServiceRoomPublisher: CurrentValuePublisher<SpaceServiceRoomProtocol, Never> {
|
||||
spaceServiceRoomSubject.asCurrentValuePublisher()
|
||||
}
|
||||
|
||||
private var spaceRoomsHandle: TaskHandle?
|
||||
private let spaceRoomsSubject = CurrentValueSubject<[SpaceRoomProxyProtocol], Never>([])
|
||||
var spaceRoomsPublisher: CurrentValuePublisher<[SpaceRoomProxyProtocol], Never> {
|
||||
private let spaceRoomsSubject = CurrentValueSubject<[SpaceServiceRoomProtocol], Never>([])
|
||||
var spaceRoomsPublisher: CurrentValuePublisher<[SpaceServiceRoomProtocol], Never> {
|
||||
spaceRoomsSubject.asCurrentValuePublisher()
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ class SpaceRoomListProxy: SpaceRoomListProxyProtocol {
|
||||
guard let spaceRoom = spaceRoomList.space() else { throw SpaceRoomListProxyError.missingSpace }
|
||||
|
||||
self.spaceRoomList = spaceRoomList
|
||||
spaceRoomProxySubject = .init(SpaceRoomProxy(spaceRoom: spaceRoom))
|
||||
spaceServiceRoomSubject = .init(SpaceServiceRoom(spaceRoom: spaceRoom))
|
||||
|
||||
let paginationStateSubject = CurrentValueSubject<SpaceRoomListPaginationState, Never>(spaceRoomList.paginationState())
|
||||
paginationStatePublisher = paginationStateSubject.asCurrentValuePublisher()
|
||||
@@ -46,9 +46,9 @@ class SpaceRoomListProxy: SpaceRoomListProxyProtocol {
|
||||
self?.handleUpdates(updates)
|
||||
})
|
||||
|
||||
spaceRoomProxyHandle = spaceRoomList.subscribeToSpaceUpdates(listener: SDKListener { [weak self] spaceRoom in
|
||||
spaceServiceRoomHandle = spaceRoomList.subscribeToSpaceUpdates(listener: SDKListener { [weak self] spaceRoom in
|
||||
guard let spaceRoom else { return }
|
||||
self?.spaceRoomProxySubject.send(SpaceRoomProxy(spaceRoom: spaceRoom))
|
||||
self?.spaceServiceRoomSubject.send(SpaceServiceRoom(spaceRoom: spaceRoom))
|
||||
})
|
||||
}
|
||||
|
||||
@@ -68,27 +68,27 @@ class SpaceRoomListProxy: SpaceRoomListProxyProtocol {
|
||||
for update in updates {
|
||||
switch update {
|
||||
case .append(let spaceRooms):
|
||||
rooms.append(contentsOf: spaceRooms.map(SpaceRoomProxy.init))
|
||||
rooms.append(contentsOf: spaceRooms.map(SpaceServiceRoom.init))
|
||||
case .clear:
|
||||
rooms.removeAll()
|
||||
case .pushFront(let spaceRoom):
|
||||
rooms.insert(SpaceRoomProxy(spaceRoom: spaceRoom), at: 0)
|
||||
rooms.insert(SpaceServiceRoom(spaceRoom: spaceRoom), at: 0)
|
||||
case .pushBack(let spaceRoom):
|
||||
rooms.append(SpaceRoomProxy(spaceRoom: spaceRoom))
|
||||
rooms.append(SpaceServiceRoom(spaceRoom: spaceRoom))
|
||||
case .popFront:
|
||||
rooms.removeFirst()
|
||||
case .popBack:
|
||||
rooms.removeLast()
|
||||
case .insert(let index, let spaceRoom):
|
||||
rooms.insert(SpaceRoomProxy(spaceRoom: spaceRoom), at: Int(index))
|
||||
rooms.insert(SpaceServiceRoom(spaceRoom: spaceRoom), at: Int(index))
|
||||
case .set(let index, let spaceRoom):
|
||||
rooms[Int(index)] = SpaceRoomProxy(spaceRoom: spaceRoom)
|
||||
rooms[Int(index)] = SpaceServiceRoom(spaceRoom: spaceRoom)
|
||||
case .remove(let index):
|
||||
rooms.remove(at: Int(index))
|
||||
case .truncate(let length):
|
||||
rooms.removeSubrange(Int(length)..<rooms.count)
|
||||
case .reset(let spaceRooms):
|
||||
rooms = spaceRooms.map(SpaceRoomProxy.init)
|
||||
rooms = spaceRooms.map(SpaceServiceRoom.init)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user