Implemented the "openItem(at: )" function for the FeedListViewModel view model in the Feed framework, and integrated it to the FeedListViewController view controller.

This commit is contained in:
Javier Cicchelli 2024-03-21 23:54:46 +01:00
parent 63739cb8cd
commit 80b7603504
2 changed files with 9 additions and 8 deletions

View File

@ -117,6 +117,12 @@ extension FeedListViewController {
? items[index - 1] ? items[index - 1]
: items[index] : items[index]
} }
func openItem(at index: Int) {
guard let item = item(for: index) else { return }
coordination?.open(item)
}
} }
} }

View File

@ -13,7 +13,7 @@ import ReviewsUIKit
import SwiftUI import SwiftUI
import UIKit import UIKit
class FeedListViewController: UITableViewController { final class FeedListViewController: UITableViewController {
// MARK: Constants // MARK: Constants
private let viewModel: ViewModel private let viewModel: ViewModel
@ -131,17 +131,12 @@ class FeedListViewController: UITableViewController {
_ tableView: UITableView, _ tableView: UITableView,
didSelectRowAt indexPath: IndexPath didSelectRowAt indexPath: IndexPath
) { ) {
guard let item = viewModel.item(for: indexPath.row) else { return } viewModel.openItem(at: indexPath.row)
tableView.deselectRow( tableView.deselectRow(
at: indexPath, at: indexPath,
animated: true animated: true
) )
navigationController?.pushViewController(
FeedItemViewController(item),
animated: true
)
} }
} }