Cleanup un/follow menu action
This commit is contained in:
parent
7c9287543c
commit
40f5be28f6
|
@ -63,13 +63,15 @@ extension MenuPreviewProvider {
|
|||
let request = Client.getRelationships(accounts: [account.id])
|
||||
// talk about callback hell :/
|
||||
mastodonController.run(request) { [weak self] (response) in
|
||||
if let self = self,
|
||||
guard let self = self,
|
||||
case let .success(results, _) = response,
|
||||
let relationship = results.first {
|
||||
let relationship = results.first else {
|
||||
elementHandler([])
|
||||
return
|
||||
}
|
||||
let following = relationship.following
|
||||
DispatchQueue.main.async {
|
||||
elementHandler([
|
||||
self.createAction(identifier: "follow", title: following ? "Unfollow" : "Follow", systemImageName: following ? "person.badge.minus" : "person.badge.plus", handler: { (_) in
|
||||
let action = self.createAction(identifier: "follow", title: following ? "Unfollow" : "Follow", systemImageName: following ? "person.badge.minus" : "person.badge.plus", handler: { (_) in
|
||||
let request = (following ? Account.unfollow : Account.follow)(accountID)
|
||||
mastodonController.run(request) { (response) in
|
||||
switch response {
|
||||
|
@ -80,10 +82,11 @@ extension MenuPreviewProvider {
|
|||
}
|
||||
}
|
||||
})
|
||||
elementHandler([
|
||||
action
|
||||
])
|
||||
}
|
||||
}
|
||||
}
|
||||
}))
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue