macOS widgets
This commit is contained in:
parent
0641983a4f
commit
e5400cec81
|
|
@ -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'],
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue