diff --git a/LLMonFHIR.xcodeproj/project.pbxproj b/LLMonFHIR.xcodeproj/project.pbxproj index 3cc0cdf..eec8451 100644 --- a/LLMonFHIR.xcodeproj/project.pbxproj +++ b/LLMonFHIR.xcodeproj/project.pbxproj @@ -52,7 +52,6 @@ 2FE5DC3629EDD7CA004B9AB4 /* HealthKitPermissions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3029EDD7CA004B9AB4 /* HealthKitPermissions.swift */; }; 2FE5DC3729EDD7CA004B9AB4 /* OnboardingFlow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3129EDD7CA004B9AB4 /* OnboardingFlow.swift */; }; 2FE5DC3829EDD7CA004B9AB4 /* Disclaimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3229EDD7CA004B9AB4 /* Disclaimer.swift */; }; - 2FE5DC3929EDD7CA004B9AB4 /* String+ModuleLocalized.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3329EDD7CA004B9AB4 /* String+ModuleLocalized.swift */; }; 2FE5DC3A29EDD7CA004B9AB4 /* Welcome.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3429EDD7CA004B9AB4 /* Welcome.swift */; }; 2FE5DC4029EDD7EE004B9AB4 /* FeatureFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3E29EDD7ED004B9AB4 /* FeatureFlags.swift */; }; 2FE5DC4129EDD7EE004B9AB4 /* StorageKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE5DC3F29EDD7EE004B9AB4 /* StorageKeys.swift */; }; @@ -124,7 +123,6 @@ 2FE5DC3029EDD7CA004B9AB4 /* HealthKitPermissions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HealthKitPermissions.swift; sourceTree = ""; }; 2FE5DC3129EDD7CA004B9AB4 /* OnboardingFlow.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingFlow.swift; sourceTree = ""; }; 2FE5DC3229EDD7CA004B9AB4 /* Disclaimer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Disclaimer.swift; sourceTree = ""; }; - 2FE5DC3329EDD7CA004B9AB4 /* String+ModuleLocalized.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+ModuleLocalized.swift"; sourceTree = ""; }; 2FE5DC3429EDD7CA004B9AB4 /* Welcome.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Welcome.swift; sourceTree = ""; }; 2FE5DC3E29EDD7ED004B9AB4 /* FeatureFlags.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FeatureFlags.swift; sourceTree = ""; }; 2FE5DC3F29EDD7EE004B9AB4 /* StorageKeys.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StorageKeys.swift; sourceTree = ""; }; @@ -258,7 +256,6 @@ 2FE5DC3229EDD7CA004B9AB4 /* Disclaimer.swift */, 2F42429A2A8B14AC006E2B01 /* OpenAIAPIKey.swift */, 2FE5DC3129EDD7CA004B9AB4 /* OnboardingFlow.swift */, - 2FE5DC3329EDD7CA004B9AB4 /* String+ModuleLocalized.swift */, 2FE5DC3429EDD7CA004B9AB4 /* Welcome.swift */, ); path = Onboarding; @@ -559,7 +556,6 @@ files = ( 2FE5DC4129EDD7EE004B9AB4 /* StorageKeys.swift in Sources */, 2F42429B2A8B14AC006E2B01 /* OpenAIAPIKey.swift in Sources */, - 2FE5DC3929EDD7CA004B9AB4 /* String+ModuleLocalized.swift in Sources */, 2F036EC12B0EEE07009B2745 /* ResourceSelection.swift in Sources */, 2F036EA32B0EC9BC009B2745 /* FHIRStore+Extensions.swift in Sources */, 2FE5DC3A29EDD7CA004B9AB4 /* Welcome.swift in Sources */, @@ -697,7 +693,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = ""; - DEVELOPMENT_TEAM = 637867499T; + DEVELOPMENT_TEAM = WL9Z9UXPKF; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = "LLMonFHIR/Supporting Files/Info.plist"; @@ -720,7 +716,7 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir; + PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir2; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; @@ -900,7 +896,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = ""; - DEVELOPMENT_TEAM = 637867499T; + DEVELOPMENT_TEAM = WL9Z9UXPKF; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = "LLMonFHIR/Supporting Files/Info.plist"; @@ -923,7 +919,7 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir; + PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir2; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; @@ -943,12 +939,10 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_ENTITLEMENTS = "LLMonFHIR/Supporting Files/LLMonFHIR.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; - CODE_SIGN_STYLE = Manual; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = ""; DEVELOPMENT_TEAM = ""; - "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 637867499T; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = "LLMonFHIR/Supporting Files/Info.plist"; @@ -971,10 +965,9 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir; + PRODUCT_BUNDLE_IDENTIFIER = edu.stanford.bdhg.llmonfhir2; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "LLM on FHIR"; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; diff --git a/LLMonFHIR/Onboarding/Disclaimer.swift b/LLMonFHIR/Onboarding/Disclaimer.swift index 18f4513..97d2ea6 100644 --- a/LLMonFHIR/Onboarding/Disclaimer.swift +++ b/LLMonFHIR/Onboarding/Disclaimer.swift @@ -16,31 +16,31 @@ struct Disclaimer: View { var body: some View { SequentialOnboardingView( - title: "DISCLAIMER_TITLE".moduleLocalized, - subtitle: "DISCLAIMER_SUBTITLE".moduleLocalized, + title: "DISCLAIMER_TITLE", + subtitle: "DISCLAIMER_SUBTITLE", content: [ .init( - title: "DISCLAIMER_AREA1_TITLE".moduleLocalized, - description: "DISCLAIMER_AREA1_DESCRIPTION".moduleLocalized + title: "DISCLAIMER_AREA1_TITLE", + description: "DISCLAIMER_AREA1_DESCRIPTION" ), .init( - title: "DISCLAIMER_AREA2_TITLE".moduleLocalized, - description: "DISCLAIMER_AREA2_DESCRIPTION".moduleLocalized + title: "DISCLAIMER_AREA2_TITLE", + description: "DISCLAIMER_AREA2_DESCRIPTION" ), .init( - title: "DISCLAIMER_AREA3_TITLE".moduleLocalized, - description: "DISCLAIMER_AREA3_DESCRIPTION".moduleLocalized + title: "DISCLAIMER_AREA3_TITLE", + description: "DISCLAIMER_AREA3_DESCRIPTION" ), .init( - title: "DISCLAIMER_AREA4_TITLE".moduleLocalized, - description: "DISCLAIMER_AREA4_DESCRIPTION".moduleLocalized + title: "DISCLAIMER_AREA4_TITLE", + description: "DISCLAIMER_AREA4_DESCRIPTION" ), .init( - title: "DISCLAIMER_AREA5_TITLE".moduleLocalized, - description: "DISCLAIMER_AREA5_DESCRIPTION".moduleLocalized + title: "DISCLAIMER_AREA5_TITLE", + description: "DISCLAIMER_AREA5_DESCRIPTION" ) ], - actionText: "DISCLAIMER_BUTTON".moduleLocalized, + actionText: "DISCLAIMER_BUTTON", action: { onboardingNavigationPath.nextStep() } diff --git a/LLMonFHIR/Onboarding/HealthKitPermissions.swift b/LLMonFHIR/Onboarding/HealthKitPermissions.swift index a75aa21..a7e23a0 100644 --- a/LLMonFHIR/Onboarding/HealthKitPermissions.swift +++ b/LLMonFHIR/Onboarding/HealthKitPermissions.swift @@ -22,8 +22,8 @@ struct HealthKitPermissions: View { contentView: { VStack { OnboardingTitleView( - title: "HEALTHKIT_PERMISSIONS_TITLE".moduleLocalized, - subtitle: "HEALTHKIT_PERMISSIONS_SUBTITLE".moduleLocalized + title: "HEALTHKIT_PERMISSIONS_TITLE", + subtitle: "HEALTHKIT_PERMISSIONS_SUBTITLE" ) Spacer() Image(systemName: "heart.text.square.fill") @@ -37,7 +37,7 @@ struct HealthKitPermissions: View { } }, actionView: { OnboardingActionsView( - verbatim: "HEALTHKIT_PERMISSIONS_BUTTON".moduleLocalized, + verbatim: "HEALTHKIT_PERMISSIONS_BUTTON", action: { do { healthKitProcessing = true diff --git a/LLMonFHIR/Onboarding/String+ModuleLocalized.swift b/LLMonFHIR/Onboarding/String+ModuleLocalized.swift deleted file mode 100644 index 27f09ea..0000000 --- a/LLMonFHIR/Onboarding/String+ModuleLocalized.swift +++ /dev/null @@ -1,13 +0,0 @@ -// -// This source file is part of the Stanford LLM on FHIR project -// -// SPDX-FileCopyrightText: 2023 Stanford University -// -// SPDX-License-Identifier: MIT -// - -extension String { - var moduleLocalized: String { - String(localized: LocalizationValue(self)) - } -} diff --git a/LLMonFHIR/Onboarding/Welcome.swift b/LLMonFHIR/Onboarding/Welcome.swift index 808558b..acfe3d1 100644 --- a/LLMonFHIR/Onboarding/Welcome.swift +++ b/LLMonFHIR/Onboarding/Welcome.swift @@ -16,26 +16,35 @@ struct Welcome: View { var body: some View { OnboardingView( - title: "WELCOME_TITLE".moduleLocalized, - subtitle: "WELCOME_SUBTITLE".moduleLocalized, + title: "WELCOME_TITLE", + subtitle: "WELCOME_SUBTITLE", areas: [ - .init( - icon: Image(systemName: "apps.iphone"), // swiftlint:disable:this accessibility_label_for_image - title: "WELCOME_AREA1_TITLE".moduleLocalized, - description: "WELCOME_AREA1_DESCRIPTION".moduleLocalized + OnboardingInformationView.Content( + icon: { + Image(systemName: "apps.iphone") + .accessibilityHidden(true) + }, + title: "WELCOME_AREA1_TITLE", + description: "WELCOME_AREA1_DESCRIPTION" ), - .init( - icon: Image(systemName: "shippingbox.fill"), // swiftlint:disable:this accessibility_label_for_image - title: "WELCOME_AREA2_TITLE".moduleLocalized, - description: "WELCOME_AREA2_DESCRIPTION".moduleLocalized + OnboardingInformationView.Content( + icon: { + Image(systemName: "shippingbox.fill") + .accessibilityHidden(true) + }, + title: "WELCOME_AREA2_TITLE", + description: "WELCOME_AREA2_DESCRIPTION" ), - .init( - icon: Image(systemName: "list.bullet.clipboard.fill"), // swiftlint:disable:this accessibility_label_for_image - title: "WELCOME_AREA3_TITLE".moduleLocalized, - description: "WELCOME_AREA3_DESCRIPTION".moduleLocalized + OnboardingInformationView.Content( + icon: { + Image(systemName: "list.bullet.clipboard.fill") + .accessibilityHidden(true) + }, + title: "WELCOME_AREA3_TITLE", + description: "WELCOME_AREA3_DESCRIPTION" ) ], - actionText: "WELCOME_BUTTON".moduleLocalized, + actionText: "WELCOME_BUTTON", action: { onboardingNavigationPath.nextStep() }