[Framework] Feed Item coordinator #17
@ -0,0 +1,42 @@
|
||||
//
|
||||
// FeedItemCoordinator.swift
|
||||
// ReviewsFeed
|
||||
//
|
||||
// Created by Javier Cicchelli on 21/03/2024.
|
||||
// Copyright © 2024 Röck+Cöde. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import ReviewsCoordinationKit
|
||||
|
||||
public final class FeedItemCoordinator: Coordinator {
|
||||
|
||||
// MARK: Constants
|
||||
public let router: any Router
|
||||
|
||||
private let item: Review
|
||||
|
||||
// MARK: Properties
|
||||
public var children: [any Coordinator] = []
|
||||
|
||||
public init(
|
||||
item: Review,
|
||||
router: any Router
|
||||
) {
|
||||
self.item = item
|
||||
self.router = router
|
||||
}
|
||||
|
||||
// MARK: Functions
|
||||
public func present(
|
||||
animated: Bool,
|
||||
onDismiss: Router.OnDismissClosure? = nil
|
||||
) {
|
||||
router.present(
|
||||
FeedItemViewController(item),
|
||||
animated: animated,
|
||||
onDismiss: onDismiss
|
||||
)
|
||||
}
|
||||
|
||||
}
|
@ -8,7 +8,7 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
struct Review {
|
||||
public struct Review {
|
||||
|
||||
// MARK: Constants
|
||||
let author: String
|
||||
|
@ -11,6 +11,8 @@
|
||||
023AC7FC2BAA3EC10027D064 /* Int+Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 023AC7FB2BAA3EC10027D064 /* Int+Constants.swift */; };
|
||||
02620B8C2BA89C9A00DE7137 /* FeedListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02620B8B2BA89C9A00DE7137 /* FeedListViewModel.swift */; };
|
||||
028134712BACC8CC0074AB4B /* FeedListConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 028134702BACC8CC0074AB4B /* FeedListConfiguration.swift */; };
|
||||
028134822BACCC780074AB4B /* FeedListCoordination.swift in Sources */ = {isa = PBXBuildFile; fileRef = 028134812BACCC770074AB4B /* FeedListCoordination.swift */; };
|
||||
028134842BACD0B20074AB4B /* FeedItemCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 028134832BACD0B20074AB4B /* FeedItemCoordinator.swift */; };
|
||||
02909E792BAB6B0200710E14 /* FilterOption.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02909E782BAB6B0200710E14 /* FilterOption.swift */; };
|
||||
02909E7B2BAB6D2E00710E14 /* Bundle+Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02909E7A2BAB6D2E00710E14 /* Bundle+Constants.swift */; };
|
||||
02909E7D2BAB7FFE00710E14 /* Review+DTOs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02909E7C2BAB7FFE00710E14 /* Review+DTOs.swift */; };
|
||||
@ -64,6 +66,8 @@
|
||||
023AC7FB2BAA3EC10027D064 /* Int+Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Int+Constants.swift"; sourceTree = "<group>"; };
|
||||
02620B8B2BA89C9A00DE7137 /* FeedListViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedListViewModel.swift; sourceTree = "<group>"; };
|
||||
028134702BACC8CC0074AB4B /* FeedListConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedListConfiguration.swift; sourceTree = "<group>"; };
|
||||
028134812BACCC770074AB4B /* FeedListCoordination.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedListCoordination.swift; sourceTree = "<group>"; };
|
||||
028134832BACD0B20074AB4B /* FeedItemCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedItemCoordinator.swift; sourceTree = "<group>"; };
|
||||
02909E782BAB6B0200710E14 /* FilterOption.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FilterOption.swift; sourceTree = "<group>"; };
|
||||
02909E7A2BAB6D2E00710E14 /* Bundle+Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Bundle+Constants.swift"; sourceTree = "<group>"; };
|
||||
02909E7C2BAB7FFE00710E14 /* Review+DTOs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Review+DTOs.swift"; sourceTree = "<group>"; };
|
||||
@ -185,6 +189,14 @@
|
||||
path = Structs;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
028134802BACCC630074AB4B /* Coordination */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
028134812BACCC770074AB4B /* FeedListCoordination.swift */,
|
||||
);
|
||||
path = Coordination;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
02909E772BAB6AD500710E14 /* Enumerations */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -213,6 +225,8 @@
|
||||
02C1B1952BAC9BE7001781DE /* Coordinators */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
028134802BACCC630074AB4B /* Coordination */,
|
||||
028134832BACD0B20074AB4B /* FeedItemCoordinator.swift */,
|
||||
02C1B1962BAC9BFE001781DE /* FeedListCoordinator.swift */,
|
||||
);
|
||||
path = Coordinators;
|
||||
@ -484,6 +498,7 @@
|
||||
02DC7FAC2BA51B4C000EEEBE /* FeedItemViewController.swift in Sources */,
|
||||
02909E7B2BAB6D2E00710E14 /* Bundle+Constants.swift in Sources */,
|
||||
02EACF2E2BABA34600FF8ECD /* FeedItemCell.swift in Sources */,
|
||||
028134842BACD0B20074AB4B /* FeedItemCoordinator.swift in Sources */,
|
||||
02909E7D2BAB7FFE00710E14 /* Review+DTOs.swift in Sources */,
|
||||
0220ADA32BA90646001E6A9F /* FeedItemView.swift in Sources */,
|
||||
02EACF362BABB2F200FF8ECD /* TopWord+DTOs.swift in Sources */,
|
||||
@ -492,6 +507,7 @@
|
||||
02DC7FAE2BA51B4C000EEEBE /* FeedListViewController.swift in Sources */,
|
||||
02EACF322BABB23A00FF8ECD /* TopWordsView.swift in Sources */,
|
||||
028134712BACC8CC0074AB4B /* FeedListConfiguration.swift in Sources */,
|
||||
028134822BACCC780074AB4B /* FeedListCoordination.swift in Sources */,
|
||||
02909E792BAB6B0200710E14 /* FilterOption.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user