From 6f0fd66cbbe744637494b047ab239becee0ccb35 Mon Sep 17 00:00:00 2001 From: nriedman <108841122+nriedman@users.noreply.github.com> Date: Thu, 4 Apr 2024 00:28:01 -0700 Subject: [PATCH] Decomposed Dashboard Greeting into separate file --- ENGAGEHF.xcodeproj/project.pbxproj | 4 ++ ENGAGEHF/Dashboard/DashboardView.swift | 32 ---------------- ENGAGEHF/Dashboard/GreetingView.swift | 44 ++++++++++++++++++++++ ENGAGEHF/Education/EducationView.swift | 2 - ENGAGEHF/HeartHealth/HeartHealthView.swift | 2 - ENGAGEHF/Medications/MedicationsView.swift | 2 - 6 files changed, 48 insertions(+), 38 deletions(-) create mode 100644 ENGAGEHF/Dashboard/GreetingView.swift diff --git a/ENGAGEHF.xcodeproj/project.pbxproj b/ENGAGEHF.xcodeproj/project.pbxproj index 182713ab..7217de33 100644 --- a/ENGAGEHF.xcodeproj/project.pbxproj +++ b/ENGAGEHF.xcodeproj/project.pbxproj @@ -64,6 +64,7 @@ 4DB025C12BBDEA0B002D2545 /* MedicationsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DB025C02BBDEA0B002D2545 /* MedicationsView.swift */; }; 4DB025C62BBE21EF002D2545 /* index.js in Resources */ = {isa = PBXBuildFile; fileRef = 4DB025C52BBE21EF002D2545 /* index.js */; }; 4DB025CA2BBE3A59002D2545 /* HomeViewUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DB025C92BBE3A59002D2545 /* HomeViewUITests.swift */; }; + 4DB025CE2BBE8D2E002D2545 /* GreetingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DB025CD2BBE8D2E002D2545 /* GreetingView.swift */; }; 56E708352BB06B7100B08F0A /* SpeziLicense in Frameworks */ = {isa = PBXBuildFile; productRef = 56E708342BB06B7100B08F0A /* SpeziLicense */; }; 56E7083B2BB06F6F00B08F0A /* SwiftPackageList in Frameworks */ = {isa = PBXBuildFile; productRef = 56E7083A2BB06F6F00B08F0A /* SwiftPackageList */; }; 653A2551283387FE005D4D48 /* ENGAGEHF.swift in Sources */ = {isa = PBXBuildFile; fileRef = 653A2550283387FE005D4D48 /* ENGAGEHF.swift */; }; @@ -136,6 +137,7 @@ 4DB025C02BBDEA0B002D2545 /* MedicationsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MedicationsView.swift; sourceTree = ""; }; 4DB025C52BBE21EF002D2545 /* index.js */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; path = index.js; sourceTree = ""; }; 4DB025C92BBE3A59002D2545 /* HomeViewUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeViewUITests.swift; sourceTree = ""; }; + 4DB025CD2BBE8D2E002D2545 /* GreetingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GreetingView.swift; sourceTree = ""; }; 653A254D283387FE005D4D48 /* ENGAGEHF.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ENGAGEHF.app; sourceTree = BUILT_PRODUCTS_DIR; }; 653A2550283387FE005D4D48 /* ENGAGEHF.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ENGAGEHF.swift; sourceTree = ""; }; 653A255428338800005D4D48 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; @@ -289,6 +291,7 @@ isa = PBXGroup; children = ( 4DB025B62BBDE903002D2545 /* DashboardView.swift */, + 4DB025CD2BBE8D2E002D2545 /* GreetingView.swift */, ); path = Dashboard; sourceTree = ""; @@ -637,6 +640,7 @@ 2F65B44E2A3B8B0600A36932 /* NotificationPermissions.swift in Sources */, 27FA29902A388E9B009CAC45 /* ModalView.swift in Sources */, 2FE5DC2629EDD38A004B9AB4 /* Contacts.swift in Sources */, + 4DB025CE2BBE8D2E002D2545 /* GreetingView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ENGAGEHF/Dashboard/DashboardView.swift b/ENGAGEHF/Dashboard/DashboardView.swift index 7fdd96b2..f45fd6f4 100644 --- a/ENGAGEHF/Dashboard/DashboardView.swift +++ b/ENGAGEHF/Dashboard/DashboardView.swift @@ -11,40 +11,8 @@ // Created by Nick Riedman on 4/3/24. // -import SpeziAccount -import SpeziMockWebService import SwiftUI -struct Greeting: View { - @State private var dateString: String? - - var body: some View { - HStack { - // Todo: replace world! with first name from account info - Text("Hello, world!") - .font(.title2) - .accessibilityLabel(Text("DASHBOARD_GREETING")) - Spacer() - Text(dateString ?? "No date") - .font(.title2) - .accessibilityLabel(Text("DASHBOARD_DATE")) - } - .padding() - .task { - getDateString() - } - } - - private func getDateString() { - let currentDate = Date() - let dateFormatter = DateFormatter() - - dateFormatter.dateStyle = .short - - dateString = dateFormatter.string(from: currentDate) - } -} - struct Dashboard: View { @Binding var presentingAccount: Bool diff --git a/ENGAGEHF/Dashboard/GreetingView.swift b/ENGAGEHF/Dashboard/GreetingView.swift new file mode 100644 index 00000000..414faac7 --- /dev/null +++ b/ENGAGEHF/Dashboard/GreetingView.swift @@ -0,0 +1,44 @@ +// +// This source file is part of the ENGAGE-HF project based on the Stanford Spezi Template Application project +// +// SPDX-FileCopyrightText: 2023 Stanford University +// +// SPDX-License-Identifier: MIT +// +// GreetingView.swift +// ENGAGEHF +// +// Created by Nick Riedman on 4/4/24. +// + +import SwiftUI + +struct Greeting: View { + @State private var dateString: String? + + var body: some View { + HStack { + // Todo: replace world! with first name from account info + Text("Hello, world!") + .font(.title2) + .accessibilityLabel(Text("DASHBOARD_GREETING")) + Spacer() + Text(dateString ?? "No date") + .font(.title2) + .accessibilityLabel(Text("DASHBOARD_DATE")) + } + .padding() + .task { + getDateString() + } + } + + private func getDateString() { + let currentDate = Date() + let dateFormatter = DateFormatter() + + dateFormatter.dateStyle = .short + + dateString = dateFormatter.string(from: currentDate) + } +} diff --git a/ENGAGEHF/Education/EducationView.swift b/ENGAGEHF/Education/EducationView.swift index 978e6764..25f51601 100644 --- a/ENGAGEHF/Education/EducationView.swift +++ b/ENGAGEHF/Education/EducationView.swift @@ -11,8 +11,6 @@ // Created by Nick Riedman on 4/3/24. // -import SpeziAccount -import SpeziMockWebService import SwiftUI struct Education: View { diff --git a/ENGAGEHF/HeartHealth/HeartHealthView.swift b/ENGAGEHF/HeartHealth/HeartHealthView.swift index e7e771ec..503081f2 100644 --- a/ENGAGEHF/HeartHealth/HeartHealthView.swift +++ b/ENGAGEHF/HeartHealth/HeartHealthView.swift @@ -11,8 +11,6 @@ // Created by Nick Riedman on 4/3/24. // -import SpeziAccount -import SpeziMockWebService import SwiftUI struct HeartHealth: View { diff --git a/ENGAGEHF/Medications/MedicationsView.swift b/ENGAGEHF/Medications/MedicationsView.swift index 9fab4c98..ebab664e 100644 --- a/ENGAGEHF/Medications/MedicationsView.swift +++ b/ENGAGEHF/Medications/MedicationsView.swift @@ -11,8 +11,6 @@ // Created by Nick Riedman on 4/3/24. // -import SpeziAccount -import SpeziMockWebService import SwiftUI struct Medications: View {