start tweaks
This commit is contained in:
+1
@@ -10,6 +10,7 @@ Pod::Spec.new do |s|
|
|||||||
s.static_framework = true
|
s.static_framework = true
|
||||||
|
|
||||||
s.dependency 'ExpoModulesCore'
|
s.dependency 'ExpoModulesCore'
|
||||||
|
s.dependency 'ExpoBlueskySwissArmy'
|
||||||
|
|
||||||
# Swift/Objective-C compatibility
|
# Swift/Objective-C compatibility
|
||||||
s.pod_target_xcconfig = {
|
s.pod_target_xcconfig = {
|
||||||
|
|||||||
+5
-79
@@ -1,4 +1,5 @@
|
|||||||
import ExpoModulesCore
|
import ExpoModulesCore
|
||||||
|
import ExpoBlueskySwissArmy
|
||||||
|
|
||||||
let APP_GROUP = "group.app.bsky"
|
let APP_GROUP = "group.app.bsky"
|
||||||
|
|
||||||
@@ -24,6 +25,10 @@ let DEFAULTS: [String:Any] = [
|
|||||||
public class ExpoBackgroundNotificationHandlerModule: Module {
|
public class ExpoBackgroundNotificationHandlerModule: Module {
|
||||||
let userDefaults = UserDefaults(suiteName: APP_GROUP)
|
let userDefaults = UserDefaults(suiteName: APP_GROUP)
|
||||||
|
|
||||||
|
func test() {
|
||||||
|
SharedPrefs
|
||||||
|
}
|
||||||
|
|
||||||
public func definition() -> ModuleDefinition {
|
public func definition() -> ModuleDefinition {
|
||||||
Name("ExpoBackgroundNotificationHandler")
|
Name("ExpoBackgroundNotificationHandler")
|
||||||
|
|
||||||
@@ -35,85 +40,6 @@ public class ExpoBackgroundNotificationHandlerModule: Module {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AsyncFunction("getAllPrefsAsync") { () -> [String:Any]? in
|
|
||||||
var keys: [String] = []
|
|
||||||
DEFAULTS.forEach { p in
|
|
||||||
keys.append(p.key)
|
|
||||||
}
|
|
||||||
return userDefaults?.dictionaryWithValues(forKeys: keys)
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("getBoolAsync") { (forKey: String) -> Bool in
|
|
||||||
if let pref = userDefaults?.bool(forKey: forKey) {
|
|
||||||
return pref
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("getStringAsync") { (forKey: String) -> String? in
|
|
||||||
if let pref = userDefaults?.string(forKey: forKey) {
|
|
||||||
return pref
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("getStringArrayAsync") { (forKey: String) -> [String]? in
|
|
||||||
if let pref = userDefaults?.stringArray(forKey: forKey) {
|
|
||||||
return pref
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("setBoolAsync") { (forKey: String, value: Bool) -> Void in
|
|
||||||
userDefaults?.setValue(value, forKey: forKey)
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("setStringAsync") { (forKey: String, value: String) -> Void in
|
|
||||||
userDefaults?.setValue(value, forKey: forKey)
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("setStringArrayAsync") { (forKey: String, value: [String]) -> Void in
|
|
||||||
userDefaults?.setValue(value, forKey: forKey)
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("addToStringArrayAsync") { (forKey: String, string: String) in
|
|
||||||
if var curr = userDefaults?.stringArray(forKey: forKey),
|
|
||||||
!curr.contains(string)
|
|
||||||
{
|
|
||||||
curr.append(string)
|
|
||||||
userDefaults?.setValue(curr, forKey: forKey)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("removeFromStringArrayAsync") { (forKey: String, string: String) in
|
|
||||||
if var curr = userDefaults?.stringArray(forKey: forKey) {
|
|
||||||
curr.removeAll { s in
|
|
||||||
return s == string
|
|
||||||
}
|
|
||||||
userDefaults?.setValue(curr, forKey: forKey)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("addManyToStringArrayAsync") { (forKey: String, strings: [String]) in
|
|
||||||
if var curr = userDefaults?.stringArray(forKey: forKey) {
|
|
||||||
strings.forEach { s in
|
|
||||||
if !curr.contains(s) {
|
|
||||||
curr.append(s)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
userDefaults?.setValue(curr, forKey: forKey)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("removeManyFromStringArrayAsync") { (forKey: String, strings: [String]) in
|
|
||||||
if var curr = userDefaults?.stringArray(forKey: forKey) {
|
|
||||||
strings.forEach { s in
|
|
||||||
curr.removeAll(where: { $0 == s })
|
|
||||||
}
|
|
||||||
userDefaults?.setValue(curr, forKey: forKey)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AsyncFunction("setBadgeCountAsync") { (type: BadgeType, count: Int) in
|
AsyncFunction("setBadgeCountAsync") { (type: BadgeType, count: Int) in
|
||||||
userDefaults?.setValue(count, forKey: type.toKeyName())
|
userDefaults?.setValue(count, forKey: type.toKeyName())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user