24 lines
678 B
Swift
24 lines
678 B
Swift
|
import ExpoModulesCore
|
||
|
|
||
|
public class ExpoBlueskyDevicePrefsModule: Module {
|
||
|
func getDefaults(_ useAppGroup: Bool) -> UserDefaults? {
|
||
|
if useAppGroup {
|
||
|
return UserDefaults(suiteName: "group.app.bsky")
|
||
|
} else {
|
||
|
return UserDefaults.standard
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public func definition() -> ModuleDefinition {
|
||
|
Name("ExpoBlueskyDevicePrefs")
|
||
|
|
||
|
AsyncFunction("getStringValueAsync") { (key: String, useAppGroup: Bool) in
|
||
|
return self.getDefaults(useAppGroup)?.string(forKey: key)
|
||
|
}
|
||
|
|
||
|
AsyncFunction("setStringValueAsync") { (key: String, value: String?, useAppGroup: Bool) in
|
||
|
self.getDefaults(useAppGroup)?.setValue(value, forKey: key)
|
||
|
}
|
||
|
}
|
||
|
}
|