summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyuilo <4439005+syuilo@users.noreply.github.com>2025-03-28 10:48:03 +0900
committersyuilo <4439005+syuilo@users.noreply.github.com>2025-03-28 10:48:03 +0900
commitdec3e86e5e5ccc739bed6e5e326a65a107df7425 (patch)
treeb58ea81c4ab168e41fe3c837b64f18be356e79b3
parentenhance(frontend): チャットが開放されていない場合のUIを改善 (diff)
downloadsharkey-dec3e86e5e5ccc739bed6e5e326a65a107df7425.tar.gz
sharkey-dec3e86e5e5ccc739bed6e5e326a65a107df7425.tar.bz2
sharkey-dec3e86e5e5ccc739bed6e5e326a65a107df7425.zip
enhance(backend): アカウントでチャットが有効になっているかどうかをユーザーのレスポンスに含めるように
-rw-r--r--packages/backend/src/core/entities/UserEntityService.ts1
-rw-r--r--packages/backend/src/models/json-schema/user.ts4
-rw-r--r--packages/misskey-js/src/autogen/types.ts1
3 files changed, 6 insertions, 0 deletions
diff --git a/packages/backend/src/core/entities/UserEntityService.ts b/packages/backend/src/core/entities/UserEntityService.ts
index 92a684dc1a..ad8052711c 100644
--- a/packages/backend/src/core/entities/UserEntityService.ts
+++ b/packages/backend/src/core/entities/UserEntityService.ts
@@ -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,
diff --git a/packages/backend/src/models/json-schema/user.ts b/packages/backend/src/models/json-schema/user.ts
index 0094f25e34..e475296702 100644
--- a/packages/backend/src/models/json-schema/user.ts
+++ b/packages/backend/src/models/json-schema/user.ts
@@ -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,
diff --git a/packages/misskey-js/src/autogen/types.ts b/packages/misskey-js/src/autogen/types.ts
index c91fedf2fa..57c4824424 100644
--- a/packages/misskey-js/src/autogen/types.ts
+++ b/packages/misskey-js/src/autogen/types.ts
@@ -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;