diff --git a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimeline.kt b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimeline.kt index 4d76bda5..737cfabf 100644 --- a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimeline.kt +++ b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimeline.kt @@ -8,6 +8,4 @@ class MastodonReadTimeline( val localOnly: Boolean, val remoteOnly: Boolean, val page: Page -) { - -} +) diff --git a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimelineApplicationService.kt b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimelineApplicationService.kt index be0319c8..2390c841 100644 --- a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimelineApplicationService.kt +++ b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/application/timeline/MastodonReadTimelineApplicationService.kt @@ -38,75 +38,79 @@ class MastodonReadTimelineApplicationService( val readTimeline = timelineStore.readTimeline(timeline, readTimelineOption, command.page, principal) - return PaginationList(readTimeline.map { - Status( - it.postId.id.toString(), - it.post.url.toString(), - it.post.createdAt.toString(), - account = Account( - id = it.postActor.id.id.toString(), - username = it.postActor.name.name, - acct = Acct(it.postActor.name.name, it.postActor.domain.domain).toString(), - url = it.postActor.url.toString(), - displayName = it.postActor.screenName.screenName, - note = it.postActor.description.description, - avatar = it.postActorIconMedia?.url.toString(), - avatarStatic = it.postActorIconMedia?.thumbnailUrl.toString(), - header = "", - headerStatic = "", - locked = false, - fields = emptyList(), + return PaginationList( + readTimeline.map { + Status( + it.postId.id.toString(), + it.post.url.toString(), + it.post.createdAt.toString(), + account = Account( + id = it.postActor.id.id.toString(), + username = it.postActor.name.name, + acct = Acct(it.postActor.name.name, it.postActor.domain.domain).toString(), + url = it.postActor.url.toString(), + displayName = it.postActor.screenName.screenName, + note = it.postActor.description.description, + avatar = it.postActorIconMedia?.url.toString(), + avatarStatic = it.postActorIconMedia?.thumbnailUrl.toString(), + header = "", + headerStatic = "", + locked = false, + fields = emptyList(), + emojis = emptyList(), + bot = false, + group = false, + discoverable = true, + createdAt = it.postActor.createdAt.toString(), + statusesCount = it.postActor.postsCount.postsCount, + noindex = true, + moved = it.postActor.moveTo != null, + suspended = it.postActor.suspend, + limited = false, + lastStatusAt = it.postActor.lastPostAt?.toString(), + followersCount = it.postActor.followersCount?.relationshipCount, + followingCount = it.postActor.followingCount?.relationshipCount, + ), + content = it.post.content.content, + visibility = when (it.post.visibility) { + PUBLIC -> Status.Visibility.public + UNLISTED -> Status.Visibility.unlisted + FOLLOWERS -> Status.Visibility.private + DIRECT -> Status.Visibility.direct + }, + sensitive = it.post.sensitive, + spoilerText = it.post.overview?.overview.orEmpty(), + mediaAttachments = it.postMedias.map { MediaAttachment(it.id.id.toString()) }, + mentions = emptyList(), + tags = emptyList(), emojis = emptyList(), - bot = false, - group = false, - discoverable = true, - createdAt = it.postActor.createdAt.toString(), - statusesCount = it.postActor.postsCount.postsCount, - noindex = true, - moved = it.postActor.moveTo != null, - suspended = it.postActor.suspend, - limited = false, - lastStatusAt = it.postActor.lastPostAt?.toString(), - followersCount = it.postActor.followersCount?.relationshipCount, - followingCount = it.postActor.followingCount?.relationshipCount, - ), - content = it.post.content.content, - visibility = when (it.post.visibility) { - PUBLIC -> Status.Visibility.public - UNLISTED -> Status.Visibility.unlisted - FOLLOWERS -> Status.Visibility.private - DIRECT -> Status.Visibility.direct - }, - sensitive = it.post.sensitive, - spoilerText = it.post.overview?.overview.orEmpty(), - mediaAttachments = it.postMedias.map { MediaAttachment(it.id.id.toString()) }, - mentions = emptyList(), - tags = emptyList(), - emojis = emptyList(), - reblogsCount = 0, - favouritesCount = it.reactionsList.sumOf { it.count }, - repliesCount = 0, - url = it.post.url.toString(), - text = it.post.content.text, - application = null, - inReplyToId = it.replyPost?.id?.toString(), - inReplyToAccountId = it.replyPostActor?.id?.toString(), - reblog = null, - poll = null, - card = null, - language = null, - editedAt = null, - favourited = it.favourited, - reblogged = false, - muted = false, - bookmarked = false, - pinned = false, - filtered = emptyList(), - ) - }, readTimeline.next?.id, readTimeline.prev?.id) + reblogsCount = 0, + favouritesCount = it.reactionsList.sumOf { it.count }, + repliesCount = 0, + url = it.post.url.toString(), + text = it.post.content.text, + application = null, + inReplyToId = it.replyPost?.id?.toString(), + inReplyToAccountId = it.replyPostActor?.id?.toString(), + reblog = null, + poll = null, + card = null, + language = null, + editedAt = null, + favourited = it.favourited, + reblogged = false, + muted = false, + bookmarked = false, + pinned = false, + filtered = emptyList(), + ) + }, + readTimeline.next?.id, + readTimeline.prev?.id + ) } companion object { private val logger = LoggerFactory.getLogger(MastodonReadTimelineApplicationService::class.java) } -} \ No newline at end of file +} diff --git a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/SpringTimelineApi.kt b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/SpringTimelineApi.kt index 9f259736..511b3605 100644 --- a/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/SpringTimelineApi.kt +++ b/hideout-mastodon/src/main/kotlin/dev/usbharu/hideout/mastodon/interfaces/api/SpringTimelineApi.kt @@ -67,7 +67,8 @@ class SpringTimelineApi( minId?.toLongOrNull(), limit ) - ), principal + ), + principal ).asFlow() ) }