feat(watch): add workout deletion sync and optimize delete operations

This commit is contained in:
2026-08-12 13:52:23 +02:00
parent 2096489fd1
commit ca9259d5bd
6 changed files with 95 additions and 64 deletions
+25
View File
@@ -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]
}