comparison Simoleon/Settings.swift @ 150:6eac99e99b96

Add error handling to read json function
author Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
date Thu, 19 Aug 2021 19:12:56 +0100
parents 87f02d4f9c26
children 2584fd74235a
comparison
equal deleted inserted replaced
149:07b5d7386e6e 150:6eac99e99b96
18 @State private var alertTitle = "" 18 @State private var alertTitle = ""
19 @State private var alertMessage = "" 19 @State private var alertMessage = ""
20 @State private var showingAlert = false 20 @State private var showingAlert = false
21 @State private var searchCurrency = "" 21 @State private var searchCurrency = ""
22 22
23 let currencyPairs: [CurrencyPairModel] = parseJson("CurrencyPairs.json")
24
25 /* 23 /*
26 If searched currency string is empty: 24 If searched currency string is empty:
27 * Show all currencies 25 * Show all currencies
28 else: 26 else:
29 * Show filtered list of currencies containing searched currency string 27 * Show filtered list of currencies containing searched currency string
30 */ 28 */
31 var searchResults: [CurrencyPairModel] { 29 var searchResults: [CurrencyPairModel] {
30 let currencyPairs: [CurrencyPairModel] = try! read(json: "CurrencyPairs.json")
32 if searchCurrency.isEmpty { 31 if searchCurrency.isEmpty {
33 return currencyPairs.sorted { $0.name < $1.name } 32 return currencyPairs.sorted { $0.name < $1.name }
34 } else { 33 } else {
35 return currencyPairs.filter { $0.name.contains(searchCurrency.uppercased()) } 34 return currencyPairs.filter { $0.name.contains(searchCurrency.uppercased()) }
36 } 35 }