added real event

This commit is contained in:
Flavio Alescio
2023-01-23 17:36:11 +01:00
parent c8ecc927eb
commit f509a1a172
6 changed files with 31 additions and 26 deletions
@@ -21,6 +21,7 @@ import MatrixSDK
struct PollHistoryDetailCoordinatorParameters {
let pollHistoryDetails: TimelinePollDetails
let event: MXEvent
let session: MXSession
let room: MXRoom
}
@@ -37,19 +38,13 @@ final class PollHistoryDetailCoordinator: Coordinator, Presentable {
var childCoordinators: [Coordinator] = []
var completion: ((PollHistoryDetailViewModelResult) -> Void)?
init(parameters: PollHistoryDetailCoordinatorParameters) {
init(parameters: PollHistoryDetailCoordinatorParameters) throws {
self.parameters = parameters
// let event: MXEvent = .init()
// do {
// let timelinePollCoordinator = try TimelinePollCoordinator(parameters: .init(session: parameters.session, room: parameters.room, pollEvent: event))
// } catch {
// MXLog.debug("[PollHistoryDetailCoordinator] initKeys: Failed to init TimelinePollCoordinator with event: \(error.localizedDescription)")
// }
let viewModel = PollHistoryDetailViewModel(pollHistoryDetails: parameters.pollHistoryDetails)
let timelinePollCoordinator = try TimelinePollCoordinator(parameters: .init(session: parameters.session, room: parameters.room, pollEvent: parameters.event))
let viewModel = PollHistoryDetailViewModel(pollHistoryDetails: parameters.pollHistoryDetails, timelineViewModel: timelinePollCoordinator.viewModel)
let view = PollHistoryDetail(viewModel: viewModel.context)
pollHistoryDetailViewModel = viewModel
pollHistoryDetailHostingController = VectorHostingController(rootView: view)
indicatorPresenter = UserIndicatorTypePresenter(presentingViewController: pollHistoryDetailHostingController)
@@ -49,7 +49,7 @@ enum MockPollHistoryDetailScreenState: MockScreenState, CaseIterable {
var screenView: ([Any], AnyView) {
let viewModel = PollHistoryDetailViewModel(pollHistoryDetails: poll)
let viewModel = PollHistoryDetailViewModel(pollHistoryDetails: poll, timelineViewModel: TimelinePollViewModel(timelinePollDetails: poll))
return ([viewModel], AnyView(PollHistoryDetail(viewModel: viewModel.context)))
}
@@ -32,7 +32,7 @@ enum PollHistoryDetailViewModelResult {
struct PollHistoryDetailViewState: BindableState {
var poll: TimelinePollDetails
var timelineViewModel: TimelinePollViewModel
var timelineViewModel: TimelinePollViewModelProtocol
}
enum PollHistoryDetailViewAction {
@@ -29,8 +29,8 @@ class PollHistoryDetailViewModel: PollHistoryDetailViewModelType, PollHistoryDet
// MARK: - Setup
init(pollHistoryDetails: TimelinePollDetails) {
super.init(initialViewState: PollHistoryDetailViewState(poll: pollHistoryDetails, timelineViewModel: TimelinePollViewModel(timelinePollDetails: pollHistoryDetails)))
init(pollHistoryDetails: TimelinePollDetails, timelineViewModel: TimelinePollViewModelProtocol) {
super.init(initialViewState: PollHistoryDetailViewState(poll: pollHistoryDetails, timelineViewModel: timelineViewModel))
}
// MARK: - Public