BlueWallet/ios/WalletInformationWidget/Widgets/Shared/WidgetDataStore.swift

40 lines
1.1 KiB
Swift
Raw Normal View History

2020-10-30 10:19:38 -04:00
//
// TodayDataStore.swift
// TodayExtension
//
// Created by Marcos Rodriguez on 11/3/19.
// Copyright © 2019 Facebook. All rights reserved.
//
import Foundation
2020-11-02 08:11:28 -05:00
struct WidgetDataStore {
2020-10-30 10:19:38 -04:00
let rate: String
let lastUpdate: String
2020-11-06 16:30:35 -05:00
let rateDouble: Double
2020-10-30 10:19:38 -04:00
var formattedRate: String? {
let numberFormatter = NumberFormatter()
2020-11-02 08:11:28 -05:00
numberFormatter.locale = Locale(identifier: WidgetAPI.getUserPreferredCurrencyLocale())
2020-10-30 10:19:38 -04:00
numberFormatter.numberStyle = .decimal
2020-11-02 08:11:28 -05:00
numberFormatter.maximumFractionDigits = 0
numberFormatter.minimumFractionDigits = 0
2020-10-30 10:19:38 -04:00
if let rateNumber = numberFormatter.number(from: rate) {
numberFormatter.numberStyle = .currency
return numberFormatter.string(from: rateNumber);
}
return rate
}
}
2020-11-02 08:11:28 -05:00
class WidgetData {
2020-10-30 10:19:38 -04:00
2020-11-02 08:11:28 -05:00
static let WidgetDataStoreKey = "WidgetDataStoreKey"
static let WidgetCachedDataStoreKey = "WidgetCachedDataStoreKey"
2020-10-30 10:19:38 -04:00
static func savePriceRateAndLastUpdate(rate: String, lastUpdate: String) {
2020-11-02 08:11:28 -05:00
UserDefaults.standard.setValue(["rate": rate, "lastUpdate": lastUpdate], forKey: WidgetDataStoreKey)
2020-10-30 10:19:38 -04:00
UserDefaults.standard.synchronize()
}
}