From 9f8fef65dbf0f2c5b2b32cd9b30cae2496fd8f1e Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Mon, 6 Jun 2022 11:47:22 +0200 Subject: [PATCH] Add client getter to SessionEnvironment --- Example/example-app/Package.swift | 4 ++++ Example/example-app/Sources/AppFeature/App.swift | 4 +++- .../Sources/SessionFeature/SessionFeature.swift | 13 +++++++++++-- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/Example/example-app/Package.swift b/Example/example-app/Package.swift index 3b02bf97..6277f619 100644 --- a/Example/example-app/Package.swift +++ b/Example/example-app/Package.swift @@ -139,6 +139,10 @@ let package = Package( name: "ComposableArchitecture", package: "swift-composable-architecture" ), + .product( + name: "ElixxirDAppsSDK", + package: "elixxir-dapps-sdk-swift" + ), ], swiftSettings: swiftSettings ), diff --git a/Example/example-app/Sources/AppFeature/App.swift b/Example/example-app/Sources/AppFeature/App.swift index 1353882a..1af9cbbe 100644 --- a/Example/example-app/Sources/AppFeature/App.swift +++ b/Example/example-app/Sources/AppFeature/App.swift @@ -40,7 +40,9 @@ extension AppEnvironment { mainScheduler: mainScheduler, error: ErrorEnvironment() ), - session: SessionEnvironment() + session: SessionEnvironment( + getClient: { clientSubject.value } + ) ) } } diff --git a/Example/example-app/Sources/SessionFeature/SessionFeature.swift b/Example/example-app/Sources/SessionFeature/SessionFeature.swift index 3b7dd16f..c98f2d4d 100644 --- a/Example/example-app/Sources/SessionFeature/SessionFeature.swift +++ b/Example/example-app/Sources/SessionFeature/SessionFeature.swift @@ -1,4 +1,5 @@ import ComposableArchitecture +import ElixxirDAppsSDK public struct SessionState: Equatable { public init() {} @@ -9,7 +10,13 @@ public enum SessionAction: Equatable { } public struct SessionEnvironment { - public init() {} + public init( + getClient: @escaping () -> Client? + ) { + self.getClient = getClient + } + + public var getClient: () -> Client? } public let sessionReducer = Reducer<SessionState, SessionAction, SessionEnvironment> @@ -22,6 +29,8 @@ public let sessionReducer = Reducer<SessionState, SessionAction, SessionEnvironm #if DEBUG extension SessionEnvironment { - public static let failing = SessionEnvironment() + public static let failing = SessionEnvironment( + getClient: { .failing } + ) } #endif -- GitLab