[Framework] Feed list view in the Feed framework (#9)

This PR contains the work done to provide the existing `FeedViewController` view controller with real life data by integrating the `iTunesService` service into its view model. In addition, the list item cell has been design has been updated, and re-implemented using the `SwiftUI` framework.

Reviewed-on: rock-n-code/app-reviews#9
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
This commit was merged in pull request #9.
This commit is contained in:
2024-03-19 08:31:13 +00:00
committed by javier
parent 26c2c0c581
commit 09df006ab9
16 changed files with 664 additions and 166 deletions
+8 -3
View File
@@ -8,11 +8,16 @@
import ReviewsFeedKit
struct Feed {
public struct Feed {
// MARK: Constants
let entries: [Review]
// MARK: Initialisers
public init(entries: [Review]) {
self.entries = entries
}
}
// MARK: - Decodable
@@ -28,7 +33,7 @@ extension Feed: Decodable {
}
// MARK: Initialisers
init(from decoder: any Decoder) throws {
public init(from decoder: any Decoder) throws {
let feed = try decoder.container(keyedBy: FeedKeys.self)
let feedEntry = try feed.nestedContainer(keyedBy: EntryKeys.self, forKey: .feed)
@@ -41,7 +46,7 @@ extension Feed: Decodable {
extension Feed: Encodable {
// MARK: Functions
func encode(to encoder: any Encoder) throws {
public func encode(to encoder: any Encoder) throws {
var feed = encoder.container(keyedBy: FeedKeys.self)
var feedEntry = feed.nestedContainer(keyedBy: EntryKeys.self, forKey: .feed)