macOS widgets

This commit is contained in:
Hillel Coren 2023-06-29 17:20:10 +03:00
parent 0641983a4f
commit e5400cec81
2 changed files with 7 additions and 16 deletions

View File

@ -40,7 +40,7 @@ class WidgetData {
dateRanges = Map.fromIterable( dateRanges = Map.fromIterable(
DateRange.values.where((value) => value != DateRange.custom), DateRange.values.where((value) => value != DateRange.custom),
key: (dynamic item) => toSnakeCase('$item'), key: (dynamic item) => toSnakeCase('$item'),
value: (dynamic item) => localization.lookup('$item')); value: (dynamic item) => localization.lookup(toSnakeCase('$item')));
WidgetData.fromJson(Map<String, dynamic> json) WidgetData.fromJson(Map<String, dynamic> json)
: url = json['url'], : url = json['url'],

View File

@ -2,26 +2,17 @@ import Intents
class IntentHandler: INExtension, ConfigurationIntentHandling { class IntentHandler: INExtension, ConfigurationIntentHandling {
private func loadWidgetData() -> WidgetData { private func loadWidgetData() -> WidgetData {
let sharedDefaults = UserDefaults(suiteName: "group.com.invoiceninja.app")
var widgetData: WidgetData = WidgetData(url: "", var widgetData: WidgetData = WidgetData(url: "",
companyId: "", companyId: "",
companies: [:], companies: [:],
dateRanges: [:], dateRanges: [:],
dashboardFields: [:]) dashboardFields: [:])
if let sharedDefaults = sharedDefaults {
do { do {
if let shared = sharedDefaults.string(forKey: "widget_data") { widgetData = try getWidgetData()
//print("## Shared: \(shared)")
let decoder = JSONDecoder()
widgetData = try decoder.decode(WidgetData.self, from: shared.data(using: .utf8)!)
}
} catch { } catch {
print(error) print(error)
} }
}
return widgetData return widgetData
} }