chore: rename reblog API

This commit is contained in:
CMK 2021-03-09 19:39:44 +08:00
parent 441a6aee9e
commit 51b6455c37
5 changed files with 12 additions and 13 deletions

View File

@ -160,15 +160,15 @@ extension StatusProviderFacade {
let responseFeedbackGenerator = UIImpactFeedbackGenerator(style: .medium) let responseFeedbackGenerator = UIImpactFeedbackGenerator(style: .medium)
toot toot
.compactMap { toot -> (NSManagedObjectID, Mastodon.API.Status.Reblog.BoostKind)? in .compactMap { toot -> (NSManagedObjectID, Mastodon.API.Reblog.BoostKind)? in
guard let toot = toot?.reblog ?? toot else { return nil } guard let toot = toot?.reblog ?? toot else { return nil }
let boostKind: Mastodon.API.Status.Reblog.BoostKind = { let boostKind: Mastodon.API.Reblog.BoostKind = {
let isBoosted = toot.rebloggedBy.flatMap { $0.contains(where: { $0.id == mastodonUserID }) } ?? false let isBoosted = toot.rebloggedBy.flatMap { $0.contains(where: { $0.id == mastodonUserID }) } ?? false
return isBoosted ? .undoBoost : .boost return isBoosted ? .undoBoost : .boost
}() }()
return (toot.objectID, boostKind) return (toot.objectID, boostKind)
} }
.map { tootObjectID, boostKind -> AnyPublisher<(Toot.ID, Mastodon.API.Status.Reblog.BoostKind), Error> in .map { tootObjectID, boostKind -> AnyPublisher<(Toot.ID, Mastodon.API.Reblog.BoostKind), Error> in
return context.apiService.boost( return context.apiService.boost(
tootObjectID: tootObjectID, tootObjectID: tootObjectID,
mastodonUserObjectID: mastodonUserObjectID, mastodonUserObjectID: mastodonUserObjectID,

View File

@ -18,7 +18,7 @@ extension APIService {
func boost( func boost(
tootObjectID: NSManagedObjectID, tootObjectID: NSManagedObjectID,
mastodonUserObjectID: NSManagedObjectID, mastodonUserObjectID: NSManagedObjectID,
boostKind: Mastodon.API.Status.Reblog.BoostKind boostKind: Mastodon.API.Reblog.BoostKind
) -> AnyPublisher<Toot.ID, Error> { ) -> AnyPublisher<Toot.ID, Error> {
var _targetTootID: Toot.ID? var _targetTootID: Toot.ID?
let managedObjectContext = backgroundManagedObjectContext let managedObjectContext = backgroundManagedObjectContext
@ -51,13 +51,13 @@ extension APIService {
// send boost request to remote // send boost request to remote
func boost( func boost(
statusID: Mastodon.Entity.Status.ID, statusID: Mastodon.Entity.Status.ID,
boostKind: Mastodon.API.Status.Reblog.BoostKind, boostKind: Mastodon.API.Reblog.BoostKind,
mastodonAuthenticationBox: AuthenticationService.MastodonAuthenticationBox mastodonAuthenticationBox: AuthenticationService.MastodonAuthenticationBox
) -> AnyPublisher<Mastodon.Response.Content<Mastodon.Entity.Status>, Error> { ) -> AnyPublisher<Mastodon.Response.Content<Mastodon.Entity.Status>, Error> {
let domain = mastodonAuthenticationBox.domain let domain = mastodonAuthenticationBox.domain
let authorization = mastodonAuthenticationBox.userAuthorization let authorization = mastodonAuthenticationBox.userAuthorization
let requestMastodonUserID = mastodonAuthenticationBox.userID let requestMastodonUserID = mastodonAuthenticationBox.userID
return Mastodon.API.Status.Reblog.boost( return Mastodon.API.Reblog.boost(
session: session, session: session,
domain: domain, domain: domain,
statusID: statusID, statusID: statusID,

View File

@ -8,7 +8,7 @@
import Foundation import Foundation
import Combine import Combine
extension Mastodon.API.Status.Reblog { extension Mastodon.API.Reblog {
static func boostedByEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL { static func boostedByEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL {
let pathComponent = "statuses/" + statusID + "/reblogged_by" let pathComponent = "statuses/" + statusID + "/reblogged_by"
@ -52,7 +52,7 @@ extension Mastodon.API.Status.Reblog {
} }
extension Mastodon.API.Status.Reblog { extension Mastodon.API.Reblog {
static func reblogEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL { static func reblogEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL {
let pathComponent = "statuses/" + statusID + "/reblog" let pathComponent = "statuses/" + statusID + "/reblog"
@ -107,7 +107,7 @@ extension Mastodon.API.Status.Reblog {
} }
extension Mastodon.API.Status.Reblog { extension Mastodon.API.Reblog {
static func unreblogEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL { static func unreblogEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL {
let pathComponent = "statuses/" + statusID + "/unreblog" let pathComponent = "statuses/" + statusID + "/unreblog"
@ -151,7 +151,7 @@ extension Mastodon.API.Status.Reblog {
} }
extension Mastodon.API.Status.Reblog { extension Mastodon.API.Reblog {
public enum BoostKind { public enum BoostKind {
case boost case boost

View File

@ -7,6 +7,4 @@
import Foundation import Foundation
extension Mastodon.API.Status { extension Mastodon.API.Status { }
public enum Reblog { }
}

View File

@ -95,6 +95,7 @@ extension Mastodon.API {
public enum OAuth { } public enum OAuth { }
public enum Onboarding { } public enum Onboarding { }
public enum Polls { } public enum Polls { }
public enum Reblog { }
public enum Status { } public enum Status { }
public enum Timeline { } public enum Timeline { }
public enum Favorites { } public enum Favorites { }