add some more native code

This commit is contained in:
Hailey
2024-06-16 23:32:12 -07:00
parent fa004bc8df
commit 8785ef3b3c
14 changed files with 206 additions and 58 deletions
@@ -0,0 +1,21 @@
Pod::Spec.new do |s|
s.name = 'ExpoBlueskySwissArmy'
s.version = '1.0.0'
s.summary = 'A collection of native tools for Bluesky'
s.description = 'A collection of native tools for Bluesky'
s.author = ''
s.homepage = 'https://github.com/bluesky-social/social-app'
s.platforms = { :ios => '13.4', :tvos => '13.4' }
s.source = { git: '' }
s.static_framework = true
s.dependency 'ExpoModulesCore'
# Swift/Objective-C compatibility
s.pod_target_xcconfig = {
'DEFINES_MODULE' => 'YES',
'SWIFT_COMPILATION_MODE' => 'wholemodule'
}
s.source_files = "**/*.{h,m,mm,swift,hpp,cpp}"
end
@@ -0,0 +1,26 @@
import ExpoModulesCore
public class ExpoBlueskySwissArmyModule: Module {
func getDefaults(_ useAppGroup: Bool) -> UserDefaults? {
if useAppGroup {
return UserDefaults(suiteName: "group.app.bsky")
} else {
return UserDefaults.standard
}
}
public func definition() -> ModuleDefinition {
Name("ExpoBlueskySwissArmy")
AsyncFunction("getStringValueAsync") { (key: String, useAppGroup: Bool) in
let defaults = self.getDefaults(useAppGroup)
return defaults?.string(forKey: key)
}
AsyncFunction("setStringValueAsync") { (key: String, value: String?, useAppGroup: Bool) in
let defaults = self.getDefaults(useAppGroup)
defaults?.setValue(value, forKey: key)
}
}
}