From 7b59c792228ba7618763d35a1d0cda33632be5f9 Mon Sep 17 00:00:00 2001 From: VincentMeilinger Date: Wed, 20 Mar 2024 08:53:58 +0100 Subject: [PATCH] Number formatting settings, recipe ingredient amount calculation --- .../project.pbxproj | 4 ++ .../UserInterfaceState.xcuserstate | Bin 160780 -> 160779 bytes .../textHighlight.colorset/Contents.json | 56 +++++++++++++++ .../Data/ObservableRecipeDetail.swift | 64 +++++++++++++++--- .../Data/UserSettings.swift | 7 ++ .../Extensions/ColorExtension.swift | 3 + .../Localizable.xcstrings | 30 +++++++- .../Util/NumberFormatter.swift | 22 ++++++ .../RecipeIngredientSection.swift | 43 ++++++------ .../Views/SettingsView.swift | 21 ++++-- 10 files changed, 211 insertions(+), 39 deletions(-) create mode 100644 Nextcloud Cookbook iOS Client/Assets.xcassets/textHighlight.colorset/Contents.json create mode 100644 Nextcloud Cookbook iOS Client/Util/NumberFormatter.swift diff --git a/Nextcloud Cookbook iOS Client.xcodeproj/project.pbxproj b/Nextcloud Cookbook iOS Client.xcodeproj/project.pbxproj index f1eb67e..7a7f909 100644 --- a/Nextcloud Cookbook iOS Client.xcodeproj/project.pbxproj +++ b/Nextcloud Cookbook iOS Client.xcodeproj/project.pbxproj @@ -57,6 +57,7 @@ A977D0E22B60034E009783A9 /* GroceryListTabView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A977D0E12B60034E009783A9 /* GroceryListTabView.swift */; }; A97B4D322B80B3E900EC1A88 /* RecipeModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = A97B4D312B80B3E900EC1A88 /* RecipeModels.swift */; }; A97B4D352B80B82A00EC1A88 /* ShareView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A97B4D342B80B82A00EC1A88 /* ShareView.swift */; }; + A9805BED2BAAC70E003B7231 /* NumberFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9805BEC2BAAC70E003B7231 /* NumberFormatter.swift */; }; A9A43AE12B963150003D95CA /* SwipeActions in Frameworks */ = {isa = PBXBuildFile; productRef = A9A43AE02B963150003D95CA /* SwipeActions */; }; A9BBB38C2B8D3B0C002DA7FF /* ParallaxHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9BBB38B2B8D3B0C002DA7FF /* ParallaxHeaderView.swift */; }; A9BBB38E2B8E44B3002DA7FF /* BottomClipper.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9BBB38D2B8E44B3002DA7FF /* BottomClipper.swift */; }; @@ -139,6 +140,7 @@ A977D0E12B60034E009783A9 /* GroceryListTabView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroceryListTabView.swift; sourceTree = ""; }; A97B4D312B80B3E900EC1A88 /* RecipeModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecipeModels.swift; sourceTree = ""; }; A97B4D342B80B82A00EC1A88 /* ShareView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareView.swift; sourceTree = ""; }; + A9805BEC2BAAC70E003B7231 /* NumberFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberFormatter.swift; sourceTree = ""; }; A9BBB38B2B8D3B0C002DA7FF /* ParallaxHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParallaxHeaderView.swift; sourceTree = ""; }; A9BBB38D2B8E44B3002DA7FF /* BottomClipper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomClipper.swift; sourceTree = ""; }; A9BBB38F2B91BE31002DA7FF /* ObservableRecipeDetail.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ObservableRecipeDetail.swift; sourceTree = ""; }; @@ -375,6 +377,7 @@ isa = PBXGroup; children = ( A76B8A702AE002AE00096CEC /* Alerts.swift */, + A9805BEC2BAAC70E003B7231 /* NumberFormatter.swift */, A79AA8DF2AFF80E3007D25F2 /* DurationComponents.swift */, A76B8A6E2ADFFA8800096CEC /* SupportedLanguage.swift */, ); @@ -570,6 +573,7 @@ A97506192B920EC200E86029 /* RecipeIngredientSection.swift in Sources */, A97B4D352B80B82A00EC1A88 /* ShareView.swift in Sources */, A975061F2B920FFC00E86029 /* RecipeToolSection.swift in Sources */, + A9805BED2BAAC70E003B7231 /* NumberFormatter.swift in Sources */, A9D89AB02B4FE97800F49D92 /* TimerView.swift in Sources */, A9BBB38C2B8D3B0C002DA7FF /* ParallaxHeaderView.swift in Sources */, A79AA8E22AFF8C14007D25F2 /* RecipeEditViewModel.swift in Sources */, diff --git a/Nextcloud Cookbook iOS Client.xcodeproj/project.xcworkspace/xcuserdata/vincie.xcuserdatad/UserInterfaceState.xcuserstate b/Nextcloud Cookbook iOS Client.xcodeproj/project.xcworkspace/xcuserdata/vincie.xcuserdatad/UserInterfaceState.xcuserstate index 7e65337b9f74dcc5d1b44d80b112ab54599b5ef9..54a9314fd0b0a2accf209571ec2ce9c56fdc7fe9 100644 GIT binary patch literal 160779 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 diff --git a/Nextcloud Cookbook iOS Client/Assets.xcassets/textHighlight.colorset/Contents.json b/Nextcloud Cookbook iOS Client/Assets.xcassets/textHighlight.colorset/Contents.json new file mode 100644 index 0000000..8385deb --- /dev/null +++ b/Nextcloud Cookbook iOS Client/Assets.xcassets/textHighlight.colorset/Contents.json @@ -0,0 +1,56 @@ +{ + "colors" : [ + { + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "0xC9", + "green" : "0x82", + "red" : "0x00" + } + }, + "idiom" : "universal" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "light" + } + ], + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "0xC9", + "green" : "0x82", + "red" : "0x00" + } + }, + "idiom" : "universal" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "0xC9", + "green" : "0x82", + "red" : "0x00" + } + }, + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Nextcloud Cookbook iOS Client/Data/ObservableRecipeDetail.swift b/Nextcloud Cookbook iOS Client/Data/ObservableRecipeDetail.swift index dd2b0eb..a91c10a 100644 --- a/Nextcloud Cookbook iOS Client/Data/ObservableRecipeDetail.swift +++ b/Nextcloud Cookbook iOS Client/Data/ObservableRecipeDetail.swift @@ -29,6 +29,8 @@ class ObservableRecipeDetail: ObservableObject { // Additional functionality @Published var ingredientMultiplier: Double + + init() { id = "" name = String(localized: "New Recipe") @@ -92,9 +94,34 @@ class ObservableRecipeDetail: ObservableObject { } static func adjustIngredient(_ ingredient: String, by factor: Double) -> AttributedString { - var matches = ObservableRecipeDetail.matchPatternAndMultiply(.mixedFraction, in: ingredient, multFactor: factor) - matches.append(contentsOf: ObservableRecipeDetail.matchPatternAndMultiply(.fraction, in: ingredient, multFactor: factor, excludedRanges: matches.map({ tuple in tuple.1 }))) - matches.append(contentsOf: ObservableRecipeDetail.matchPatternAndMultiply(.number, in: ingredient, multFactor: factor, excludedRanges: matches.map({ tuple in tuple.1 }))) + if factor == 0 { + return AttributedString(ingredient) + } + // Match mixed fractions first + var matches = ObservableRecipeDetail.matchPatternAndMultiply( + .mixedFraction, + in: ingredient, + multFactor: factor + ) + // Then match fractions, exclude mixed fraction ranges + matches.append(contentsOf: + ObservableRecipeDetail.matchPatternAndMultiply( + .fraction, + in: ingredient, + multFactor: factor, + excludedRanges: matches.map({ tuple in tuple.1 }) + ) + ) + // Match numbers at last, exclude all prior matches + matches.append(contentsOf: + ObservableRecipeDetail.matchPatternAndMultiply( + .number, + in: ingredient, + multFactor: factor, + excludedRanges: matches.map({ tuple in tuple.1 }) + ) + ) + // Sort matches by match range lower bound, descending. matches.sort(by: { a, b in a.1.lowerBound > b.1.lowerBound}) var attributedString = AttributedString(ingredient) @@ -102,7 +129,8 @@ class ObservableRecipeDetail: ObservableObject { print(newSubstring, matchRange) guard let range = Range(matchRange, in: attributedString) else { continue } var attributedSubString = AttributedString(newSubstring) - attributedSubString.foregroundColor = .blue + //attributedSubString.foregroundColor = .ncTextHighlight + attributedSubString.font = .system(.body, weight: .bold) attributedString.replaceSubrange(range, with: attributedSubString) print("\n", attributedString) } @@ -130,8 +158,8 @@ class ObservableRecipeDetail: ObservableObject { var adjustedValue: Double = 0 switch expr { case .number: - guard let number = Double(matchedString) else { continue } - adjustedValue = number + guard let number = numberFormatter.number(from: matchedString) else { continue } + adjustedValue = number.doubleValue case .fraction: let fracComponents = matchedString.split(separator: "/") guard fracComponents.count == 2 else { continue } @@ -160,6 +188,9 @@ class ObservableRecipeDetail: ObservableObject { } static func formatNumber(_ value: Double) -> String { + if value <= 0.0001 { + return "0" + } let integerPart = value >= 1 ? Int(value) : 0 let decimalPart = value - Double(integerPart) @@ -183,7 +214,7 @@ class ObservableRecipeDetail: ObservableObject { return "\(String(integerPart)) \(closest.fraction)" } else { // If no close match is found, return the original value as a string - return String(format: "%.2f", value) + return numberFormatter.string(from: NSNumber(value: value)) ?? "0"//String(format: "%.2f", value) } } @@ -192,17 +223,30 @@ class ObservableRecipeDetail: ObservableObject { } } -enum RegexPattern { +enum RegexPattern: String, CaseIterable, Identifiable { case mixedFraction, fraction, number + var id: String { self.rawValue } + var pattern: String { switch self { case .mixedFraction: #"(\d+)\s+(\d+)/(\d+)"# case .fraction: - #"(?:[1-9][0-9]*|0)\/[1-9][0-9]*"# + #"(?:[1-9][0-9]*|0)\/([1-9][0-9]*)"# case .number: - #"(\d+(\.\d+)?)"# + #"(\d+([.,]\d+)?)"# + } + } + + var localizedDescription: LocalizedStringKey { + switch self { + case .mixedFraction: + "Mixed fraction" + case .fraction: + "Fraction" + case .number: + "Number" } } } diff --git a/Nextcloud Cookbook iOS Client/Data/UserSettings.swift b/Nextcloud Cookbook iOS Client/Data/UserSettings.swift index de942c4..cddb099 100644 --- a/Nextcloud Cookbook iOS Client/Data/UserSettings.swift +++ b/Nextcloud Cookbook iOS Client/Data/UserSettings.swift @@ -115,6 +115,12 @@ class UserSettings: ObservableObject { } } + @Published var decimalNumberSeparator: String { + didSet { + UserDefaults.standard.set(decimalNumberSeparator, forKey: "decimalNumberSeparator") + } + } + init() { self.username = UserDefaults.standard.object(forKey: "username") as? String ?? "" self.token = UserDefaults.standard.object(forKey: "token") as? String ?? "" @@ -133,6 +139,7 @@ class UserSettings: ObservableObject { self.expandKeywordSection = UserDefaults.standard.object(forKey: "expandKeywordSection") as? Bool ?? false self.expandInfoSection = UserDefaults.standard.object(forKey: "expandInfoSection") as? Bool ?? false self.keepScreenAwake = UserDefaults.standard.object(forKey: "keepScreenAwake") as? Bool ?? true + self.decimalNumberSeparator = UserDefaults.standard.object(forKey: "decimalNumberSeparator") as? String ?? "." if authString == "" { if token != "" && username != "" { diff --git a/Nextcloud Cookbook iOS Client/Extensions/ColorExtension.swift b/Nextcloud Cookbook iOS Client/Extensions/ColorExtension.swift index 439e045..d2a2699 100644 --- a/Nextcloud Cookbook iOS Client/Extensions/ColorExtension.swift +++ b/Nextcloud Cookbook iOS Client/Extensions/ColorExtension.swift @@ -27,4 +27,7 @@ extension Color { public static var ncGradientLight: Color { return Color("ncgradientlightblue") } + public static var ncTextHighlight: Color { + return Color("textHighlight") + } } diff --git a/Nextcloud Cookbook iOS Client/Localizable.xcstrings b/Nextcloud Cookbook iOS Client/Localizable.xcstrings index f2c0a01..d9d6eed 100644 --- a/Nextcloud Cookbook iOS Client/Localizable.xcstrings +++ b/Nextcloud Cookbook iOS Client/Localizable.xcstrings @@ -354,6 +354,12 @@ } } } + }, + "1,42 (Comma)" : { + + }, + "1.42 (Point)" : { + }, "A recipe with that name already exists." : { "localizations" : { @@ -1094,6 +1100,12 @@ }, "decilitre" : { + }, + "Decimal number format" : { + + }, + "Decimal Separator" : { + }, "Delete" : { "localizations" : { @@ -1575,6 +1587,9 @@ }, "fluid ounce" : { + }, + "Fraction" : { + }, "g" : { @@ -2309,6 +2324,9 @@ } } } + }, + "Mixed fraction" : { + }, "ml" : { @@ -2489,6 +2507,9 @@ } } } + }, + "Number" : { + }, "Nutrition" : { "localizations" : { @@ -2577,9 +2598,6 @@ } } } - }, - "Only highlighted ingredient were adjusted!" : { - }, "Other" : { "localizations" : { @@ -3682,6 +3700,9 @@ } } } + }, + "This setting will take effect after the app is restarted. It affects the adjustment of ingredient quantities." : { + }, "This website might not be currently supported. If this appears incorrect, you can use the support options in the app settings to raise awareness about this issue." : { "localizations" : { @@ -3864,6 +3885,9 @@ }, "tsp" : { + }, + "Unable to adjust some ingredients!" : { + }, "Unable to complete action." : { "localizations" : { diff --git a/Nextcloud Cookbook iOS Client/Util/NumberFormatter.swift b/Nextcloud Cookbook iOS Client/Util/NumberFormatter.swift new file mode 100644 index 0000000..213a003 --- /dev/null +++ b/Nextcloud Cookbook iOS Client/Util/NumberFormatter.swift @@ -0,0 +1,22 @@ +// +// Locale.swift +// Nextcloud Cookbook iOS Client +// +// Created by Vincent Meilinger on 20.03.24. +// + +import Foundation + + +// Ingredient number formatting +func getNumberFormatter() -> NumberFormatter { + let formatter = NumberFormatter() + formatter.numberStyle = .decimal + formatter.maximumFractionDigits = 2 + formatter.decimalSeparator = UserSettings.shared.decimalNumberSeparator + return formatter +} + +let numberFormatter = getNumberFormatter() + + diff --git a/Nextcloud Cookbook iOS Client/Views/Recipes/RecipeViewSections/RecipeIngredientSection.swift b/Nextcloud Cookbook iOS Client/Views/Recipes/RecipeViewSections/RecipeIngredientSection.swift index f556976..c23daac 100644 --- a/Nextcloud Cookbook iOS Client/Views/Recipes/RecipeViewSections/RecipeIngredientSection.swift +++ b/Nextcloud Cookbook iOS Client/Views/Recipes/RecipeViewSections/RecipeIngredientSection.swift @@ -47,14 +47,7 @@ struct RecipeIngredientSection: View { ServingPickerView(selectedServingSize: $viewModel.observableRecipeDetail.ingredientMultiplier) } - if viewModel.observableRecipeDetail.ingredientMultiplier != Double(viewModel.observableRecipeDetail.recipeYield) { - HStack() { - Image(systemName: "exclamationmark.triangle.fill") - .foregroundStyle(.red) - Text("Only highlighted ingredient were adjusted!") - .foregroundStyle(.secondary) - } - } + ForEach(0..) { - _selectedServingSize = selectedServingSize - numberFormatter = NumberFormatter() - numberFormatter.usesSignificantDigits = true - numberFormatter.maximumFractionDigits = 2 - numberFormatter.decimalSeparator = "." - } // Computed property to handle the text field input and update the selectedServingSize var body: some View { @@ -207,7 +210,7 @@ struct ServingPickerView: View { } } .onChange(of: selectedServingSize) { newValue in - if newValue <= 0 { selectedServingSize = 1 } + if newValue < 0 { selectedServingSize = 0 } else if newValue > 100 { selectedServingSize = 100 } } } diff --git a/Nextcloud Cookbook iOS Client/Views/SettingsView.swift b/Nextcloud Cookbook iOS Client/Views/SettingsView.swift index cc49369..a7a396e 100644 --- a/Nextcloud Cookbook iOS Client/Views/SettingsView.swift +++ b/Nextcloud Cookbook iOS Client/Views/SettingsView.swift @@ -76,6 +76,20 @@ struct SettingsView: View { } } + Section { + HStack { + Text("Decimal number format") + Spacer() + Picker("Decimal Separator", selection: $userSettings.decimalNumberSeparator) { + Text("1.42 (Point)").tag(".") + Text("1,42 (Comma)").tag(",") + } + .pickerStyle(.menu) + } + } footer: { + Text("This setting will take effect after the app is restarted. It affects the adjustment of ingredient quantities.") + } + Section { Toggle(isOn: $userSettings.storeRecipes) { Text("Offline recipes") @@ -170,12 +184,6 @@ struct SettingsView: View { } message: { Text(viewModel.alertType.getMessage()) } - .onDisappear { - Task { - userSettings.lastUpdate = .distantPast - await appState.updateAllRecipeDetails() - } - } .task { await viewModel.getUserData() } @@ -239,3 +247,4 @@ extension SettingsView { +