From 503cba3faf1b8f13da57b8946633fbc14f0d2a82 Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Mon, 6 Jun 2022 12:55:54 +0200 Subject: [PATCH] Add NetworkFollowerStatusView --- .../NetworkFollowerStatusView.swift | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Example/example-app/Sources/SessionFeature/NetworkFollowerStatusView.swift diff --git a/Example/example-app/Sources/SessionFeature/NetworkFollowerStatusView.swift b/Example/example-app/Sources/SessionFeature/NetworkFollowerStatusView.swift new file mode 100644 index 00000000..5d1ba1de --- /dev/null +++ b/Example/example-app/Sources/SessionFeature/NetworkFollowerStatusView.swift @@ -0,0 +1,44 @@ +import ElixxirDAppsSDK +import SwiftUI + +struct NetworkFollowerStatusView: View { + var status: NetworkFollowerStatus? + + var body: some View { + switch status { + case .stopped: + Label("Stopped", systemImage: "stop.fill") + + case .starting: + Label("Starting...", systemImage: "play") + + case .running: + Label("Running", systemImage: "play.fill") + + case .stopping: + Label("Stopping...", systemImage: "stop") + + case .unknown(let code): + Label("Status \(code)", systemImage: "questionmark") + + case .none: + Label("Unknown", systemImage: "questionmark") + } + } +} + +#if DEBUG +struct NetworkFollowerStatusView_Previews: PreviewProvider { + static var previews: some View { + Group { + NetworkFollowerStatusView(status: .stopped) + NetworkFollowerStatusView(status: .starting) + NetworkFollowerStatusView(status: .running) + NetworkFollowerStatusView(status: .stopping) + NetworkFollowerStatusView(status: .unknown(code: -1)) + NetworkFollowerStatusView(status: nil) + } + .previewLayout(.sizeThatFits) + } +} +#endif -- GitLab