diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-03-31 11:30:27 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2023-03-31 11:30:27 +0900 |
| commit | 3cb0cc798914ff9057f4032a9b79e21402f72ec8 (patch) | |
| tree | 389f44457bbf6c8f74a84fd0444644c0ba81346f /packages/backend/src/core | |
| parent | lint fix (diff) | |
| download | misskey-3cb0cc798914ff9057f4032a9b79e21402f72ec8.tar.gz misskey-3cb0cc798914ff9057f4032a9b79e21402f72ec8.tar.bz2 misskey-3cb0cc798914ff9057f4032a9b79e21402f72ec8.zip | |
feat: チャンネルをお気に入りに登録できるように
Resolve #10097
Diffstat (limited to 'packages/backend/src/core')
| -rw-r--r-- | packages/backend/src/core/entities/ChannelEntityService.ts | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/packages/backend/src/core/entities/ChannelEntityService.ts b/packages/backend/src/core/entities/ChannelEntityService.ts index 6048492f09..97bf66095c 100644 --- a/packages/backend/src/core/entities/ChannelEntityService.ts +++ b/packages/backend/src/core/entities/ChannelEntityService.ts @@ -1,6 +1,6 @@ import { Inject, Injectable } from '@nestjs/common'; import { DI } from '@/di-symbols.js'; -import type { ChannelFollowingsRepository, ChannelsRepository, DriveFilesRepository, NoteUnreadsRepository } from '@/models/index.js'; +import type { ChannelFavoritesRepository, ChannelFollowingsRepository, ChannelsRepository, DriveFilesRepository, NoteUnreadsRepository } from '@/models/index.js'; import type { Packed } from '@/misc/json-schema.js'; import type { } from '@/models/entities/Blocking.js'; import type { User } from '@/models/entities/User.js'; @@ -18,6 +18,9 @@ export class ChannelEntityService { @Inject(DI.channelFollowingsRepository) private channelFollowingsRepository: ChannelFollowingsRepository, + @Inject(DI.channelFavoritesRepository) + private channelFavoritesRepository: ChannelFavoritesRepository, + @Inject(DI.noteUnreadsRepository) private noteUnreadsRepository: NoteUnreadsRepository, @@ -46,6 +49,11 @@ export class ChannelEntityService { followeeId: channel.id, }) : null; + const favorite = meId ? await this.channelFavoritesRepository.findOneBy({ + userId: meId, + channelId: channel.id, + }) : null; + return { id: channel.id, createdAt: channel.createdAt.toISOString(), @@ -59,6 +67,7 @@ export class ChannelEntityService { ...(me ? { isFollowing: following != null, + isFavorited: favorite != null, hasUnreadNote, } : {}), }; |