mirror of
https://github.com/ichmagmaus111/ghostgram.git
synced 2026-08-17 19:37:13 +02:00
Update Ghostgram features
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
load("@build_bazel_rules_swift//swift:swift.bzl", "swift_library")
|
||||
|
||||
swift_library(
|
||||
name = "SGDeviceToken",
|
||||
module_name = "SGDeviceToken",
|
||||
srcs = glob([
|
||||
"Sources/**/*.swift",
|
||||
]),
|
||||
copts = [
|
||||
"-warnings-as-errors",
|
||||
],
|
||||
deps = [
|
||||
"//submodules/SSignalKit/SwiftSignalKit:SwiftSignalKit",
|
||||
],
|
||||
visibility = [
|
||||
"//visibility:public",
|
||||
],
|
||||
)
|
||||
@@ -0,0 +1,31 @@
|
||||
import SwiftSignalKit
|
||||
import DeviceCheck
|
||||
|
||||
public enum SGDeviceTokenError {
|
||||
case unsupportedDevice
|
||||
case generic(String)
|
||||
}
|
||||
|
||||
public func getDeviceToken() -> Signal<String, SGDeviceTokenError> {
|
||||
return Signal { subscriber in
|
||||
let currentDevice = DCDevice.current
|
||||
if currentDevice.isSupported {
|
||||
currentDevice.generateToken { (data, error) in
|
||||
guard error == nil else {
|
||||
subscriber.putError(.generic(error!.localizedDescription))
|
||||
return
|
||||
}
|
||||
if let tokenData = data {
|
||||
subscriber.putNext(tokenData.base64EncodedString())
|
||||
subscriber.putCompletion()
|
||||
} else {
|
||||
subscriber.putError(.generic("Empty Token"))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
subscriber.putError(.unsupportedDevice)
|
||||
}
|
||||
return ActionDisposable {
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user