feat(watch): add workout deletion sync and optimize delete operations
This commit is contained in:
@@ -166,6 +166,31 @@ public class WatchConnectivityModule: Module {
|
||||
}
|
||||
}
|
||||
|
||||
AsyncFunction("sendWorkoutDeleted") { (id: String, promise: Promise) in
|
||||
guard let session = self.session else {
|
||||
promise.reject("NO_SESSION", "WCSession not available")
|
||||
return
|
||||
}
|
||||
|
||||
func doSend() {
|
||||
let message: [String: Any] = ["type": "workoutDeleted", "id": id]
|
||||
|
||||
guard let cleaned = self.cleanForWCSession(message) as? [String: Any] else {
|
||||
promise.resolve(["status": "sent"])
|
||||
return
|
||||
}
|
||||
|
||||
session.transferUserInfo(cleaned)
|
||||
promise.resolve(["status": "sent"])
|
||||
}
|
||||
|
||||
if self.isActivated {
|
||||
doSend()
|
||||
} else {
|
||||
self.pendingPromises.append(doSend)
|
||||
}
|
||||
}
|
||||
|
||||
AsyncFunction("getApplicationContext") { () -> [String: Any]? in
|
||||
return self.session?.receivedApplicationContext as? [String: Any]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user