enhance(backend): アカウントでチャットが有効になっているかどうかをユーザーのレスポンスに含めるように

This commit is contained in:
syuilo 2025-03-28 10:48:03 +09:00
parent 0c14250678
commit dec3e86e5e
3 changed files with 6 additions and 0 deletions

View File

@ -557,6 +557,7 @@ export class UserEntityService implements OnModuleInit {
followersVisibility: profile!.followersVisibility,
followingVisibility: profile!.followingVisibility,
chatScope: user.chatScope,
canChat: this.roleService.getUserPolicies(user.id).then(r => r.canChat),
roles: this.roleService.getUserRoles(user.id).then(roles => roles.filter(role => role.isPublic).sort((a, b) => b.displayOrder - a.displayOrder).map(role => ({
id: role.id,
name: role.name,

View File

@ -363,6 +363,10 @@ export const packedUserDetailedNotMeOnlySchema = {
nullable: false, optional: false,
enum: ['everyone', 'following', 'followers', 'mutual', 'none'],
},
canChat: {
type: 'boolean',
nullable: false, optional: false,
},
roles: {
type: 'array',
nullable: false, optional: false,

View File

@ -4057,6 +4057,7 @@ export type components = {
followersVisibility: 'public' | 'followers' | 'private';
/** @enum {string} */
chatScope: 'everyone' | 'following' | 'followers' | 'mutual' | 'none';
canChat: boolean;
roles: components['schemas']['RoleLite'][];
followedMessage?: string | null;
memo: string | null;