[Library] Coordination library (#15)

This PR contains the work done to implement the necessary protocols and router to implement the Coordinators pattern in the app.

Reviewed-on: rock-n-code/app-reviews#15
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 #15.
This commit is contained in:
2024-03-21 16:40:30 +00:00
committed by javier
parent 394245dd29
commit 60cab50c1e
11 changed files with 534 additions and 0 deletions
+16
View File
@@ -11,6 +11,7 @@ let package = Package(
.library(
name: .Product.name.kit,
targets: [
.Target.coordination.kit,
.Target.feed.kit,
.Target.filter.kit,
.Target.foundation.kit,
@@ -20,6 +21,13 @@ let package = Package(
),
],
targets: [
.target(
name: .Target.coordination.kit,
dependencies: [
.byName(name: .Target.foundation.kit),
],
path: "Coordination/Kit"
),
.target(
name: .Target.feed.kit,
dependencies: [
@@ -53,6 +61,13 @@ let package = Package(
],
path: "UI/Kit"
),
.testTarget(
name: .Target.coordination.test,
dependencies: [
.byName(name: .Target.coordination.kit),
],
path: "Coordination/Test"
),
.testTarget(
name: .Target.feed.test,
dependencies: [
@@ -102,6 +117,7 @@ private extension String {
}
enum Target {
static let coordination = "\(String.Product.name)Coordination"
static let feed = "\(String.Product.name)Feed"
static let filter = "\(String.Product.name)Filter"
static let foundation = "\(String.Product.name)Foundation"