Merge tag '2023.12.0-beta.6' into merge-upstream
This commit is contained in:
@@ -195,11 +195,11 @@ export class ActivityPubServerService {
|
||||
//#region Check ff visibility
|
||||
const profile = await this.userProfilesRepository.findOneByOrFail({ userId: user.id });
|
||||
|
||||
if (profile.ffVisibility === 'private') {
|
||||
if (profile.followersVisibility === 'private') {
|
||||
reply.code(403);
|
||||
reply.header('Cache-Control', 'public, max-age=30');
|
||||
return;
|
||||
} else if (profile.ffVisibility === 'followers') {
|
||||
} else if (profile.followersVisibility === 'followers') {
|
||||
reply.code(403);
|
||||
reply.header('Cache-Control', 'public, max-age=30');
|
||||
return;
|
||||
@@ -287,11 +287,11 @@ export class ActivityPubServerService {
|
||||
//#region Check ff visibility
|
||||
const profile = await this.userProfilesRepository.findOneByOrFail({ userId: user.id });
|
||||
|
||||
if (profile.ffVisibility === 'private') {
|
||||
if (profile.followingVisibility === 'private') {
|
||||
reply.code(403);
|
||||
reply.header('Cache-Control', 'public, max-age=30');
|
||||
return;
|
||||
} else if (profile.ffVisibility === 'followers') {
|
||||
} else if (profile.followingVisibility === 'followers') {
|
||||
reply.code(403);
|
||||
reply.header('Cache-Control', 'public, max-age=30');
|
||||
return;
|
||||
|
@@ -13,6 +13,8 @@ import { AbuseUserReportEntityService } from '@/core/entities/AbuseUserReportEnt
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -15,6 +15,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
res: {
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
|
@@ -14,6 +14,8 @@ import { UserEntityService } from '@/core/entities/UserEntityService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '@/server/api/error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { AnnouncementService } from '@/core/AnnouncementService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { IdService } from '@/core/IdService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { AvatarDecorationService } from '@/core/AvatarDecorationService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageAvatarDecorations',
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageAvatarDecorations',
|
||||
errors: {
|
||||
|
@@ -15,6 +15,8 @@ import { AvatarDecorationService } from '@/core/AvatarDecorationService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageAvatarDecorations',
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageAvatarDecorations',
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import { QueueService } from '@/core/QueueService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { DriveFileEntityService } from '@/core/entities/DriveFileEntityService.j
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -14,6 +14,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -14,6 +14,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -16,6 +16,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -8,7 +8,7 @@ import { Endpoint } from '@/server/api/endpoint-base.js';
|
||||
import { QueueService } from '@/core/QueueService.js';
|
||||
|
||||
export const meta = {
|
||||
secure: true,
|
||||
kind: 'write:admin',
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -15,6 +15,8 @@ import { sqlLikeEscape } from '@/misc/sql-like-escape.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -15,6 +15,8 @@ import { EmojiEntityService } from '@/core/entities/EmojiEntityService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import { CustomEmojiService } from '@/core/CustomEmojiService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireRolePolicy: 'canManageCustomEmojis',
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { QueueService } from '@/core/QueueService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -14,6 +14,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ export const meta = {
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
tags: ['admin'],
|
||||
} as const;
|
||||
|
||||
|
@@ -12,6 +12,8 @@ export const meta = {
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
tags: ['admin'],
|
||||
|
||||
res: {
|
||||
|
@@ -12,6 +12,8 @@ import { IdService } from '@/core/IdService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -16,6 +16,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { DEFAULT_POLICIES } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['meta'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -11,6 +11,8 @@ import { QueueService } from '@/core/QueueService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { ApiLoggerService } from '@/server/api/ApiLoggerService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { ApiLoggerService } from '@/server/api/ApiLoggerService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -11,6 +11,8 @@ import { QueueService } from '@/core/QueueService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -10,6 +10,8 @@ import type { DbQueue, DeliverQueue, EndedPollNotificationQueue, InboxQueue, Obj
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { RelayService } from '@/core/RelayService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { RelayService } from '@/core/RelayService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -14,6 +14,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -15,6 +15,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { RoleService } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -11,6 +11,8 @@ import { RoleService } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { RoleService } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import { RoleEntityService } from '@/core/entities/RoleEntityService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { RoleEntityService } from '@/core/entities/RoleEntityService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -13,6 +13,8 @@ import { RoleService } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
|
@@ -11,6 +11,8 @@ import { MetaService } from '@/core/MetaService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
} as const;
|
||||
|
@@ -14,6 +14,8 @@ import { RoleService } from '@/core/RoleService.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -16,6 +16,8 @@ import { ApiError } from '../../../error.js';
|
||||
export const meta = {
|
||||
tags: ['admin', 'role', 'users'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
requireCredential: false,
|
||||
requireAdmin: true,
|
||||
|
||||
|
@@ -10,6 +10,8 @@ import { EmailService } from '@/core/EmailService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -17,6 +17,8 @@ export const meta = {
|
||||
|
||||
tags: ['admin', 'meta'],
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
res: {
|
||||
type: 'object',
|
||||
optional: false, nullable: false,
|
||||
|
@@ -16,6 +16,8 @@ export const meta = {
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
res: {
|
||||
type: 'array',
|
||||
optional: false, nullable: false,
|
||||
|
@@ -17,6 +17,8 @@ export const meta = {
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
res: {
|
||||
type: 'object',
|
||||
nullable: false, optional: false,
|
||||
|
@@ -17,6 +17,8 @@ export const meta = {
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
|
||||
kind: 'read:admin',
|
||||
|
||||
res: {
|
||||
type: 'array',
|
||||
nullable: false, optional: false,
|
||||
|
@@ -19,6 +19,8 @@ import { QueueService } from '@/core/QueueService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -13,6 +13,8 @@ import { DI } from '@/di-symbols.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { MetaService } from '@/core/MetaService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireAdmin: true,
|
||||
} as const;
|
||||
|
@@ -12,6 +12,8 @@ import { ModerationLogService } from '@/core/ModerationLogService.js';
|
||||
export const meta = {
|
||||
tags: ['admin'],
|
||||
|
||||
kind: 'write:admin',
|
||||
|
||||
requireCredential: true,
|
||||
requireModerator: true,
|
||||
} as const;
|
||||
|
@@ -171,7 +171,8 @@ export const paramDef = {
|
||||
receiveAnnouncementEmail: { type: 'boolean' },
|
||||
alwaysMarkNsfw: { type: 'boolean' },
|
||||
autoSensitive: { type: 'boolean' },
|
||||
ffVisibility: { type: 'string', enum: ['public', 'followers', 'private'] },
|
||||
followingVisibility: { type: 'string', enum: ['public', 'followers', 'private'] },
|
||||
followersVisibility: { type: 'string', enum: ['public', 'followers', 'private'] },
|
||||
pinnedPageId: { type: 'string', format: 'misskey:id', nullable: true },
|
||||
mutedWords: { type: 'array', items: {
|
||||
oneOf: [
|
||||
@@ -240,7 +241,8 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||
if (ps.lang !== undefined) profileUpdates.lang = ps.lang;
|
||||
if (ps.location !== undefined) profileUpdates.location = ps.location;
|
||||
if (ps.birthday !== undefined) profileUpdates.birthday = ps.birthday;
|
||||
if (ps.ffVisibility !== undefined) profileUpdates.ffVisibility = ps.ffVisibility;
|
||||
if (ps.followingVisibility !== undefined) profileUpdates.followingVisibility = ps.followingVisibility;
|
||||
if (ps.followersVisibility !== undefined) profileUpdates.followersVisibility = ps.followersVisibility;
|
||||
if (ps.mutedWords !== undefined) {
|
||||
const length = ps.mutedWords.length;
|
||||
if (length > (await this.roleService.getUserPolicies(user.id)).wordMuteLimit) {
|
||||
|
@@ -93,11 +93,11 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||
|
||||
const profile = await this.userProfilesRepository.findOneByOrFail({ userId: user.id });
|
||||
|
||||
if (profile.ffVisibility === 'private') {
|
||||
if (profile.followersVisibility === 'private') {
|
||||
if (me == null || (me.id !== user.id)) {
|
||||
throw new ApiError(meta.errors.forbidden);
|
||||
}
|
||||
} else if (profile.ffVisibility === 'followers') {
|
||||
} else if (profile.followersVisibility === 'followers') {
|
||||
if (me == null) {
|
||||
throw new ApiError(meta.errors.forbidden);
|
||||
} else if (me.id !== user.id) {
|
||||
|
@@ -101,11 +101,11 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||
|
||||
const profile = await this.userProfilesRepository.findOneByOrFail({ userId: user.id });
|
||||
|
||||
if (profile.ffVisibility === 'private') {
|
||||
if (profile.followingVisibility === 'private') {
|
||||
if (me == null || (me.id !== user.id)) {
|
||||
throw new ApiError(meta.errors.forbidden);
|
||||
}
|
||||
} else if (profile.ffVisibility === 'followers') {
|
||||
} else if (profile.followingVisibility === 'followers') {
|
||||
if (me == null) {
|
||||
throw new ApiError(meta.errors.forbidden);
|
||||
} else if (me.id !== user.id) {
|
||||
|
@@ -60,7 +60,7 @@ export class FeedService {
|
||||
title: `${author.name} (@${user.username}@${this.config.host})`,
|
||||
updated: notes.length !== 0 ? this.idService.parse(notes[0].id).date : undefined,
|
||||
generator: 'Misskey',
|
||||
description: `${user.notesCount} Notes, ${profile.ffVisibility === 'public' ? user.followingCount : '?'} Following, ${profile.ffVisibility === 'public' ? user.followersCount : '?'} Followers${profile.description ? ` · ${profile.description}` : ''}`,
|
||||
description: `${user.notesCount} Notes, ${profile.followingVisibility === 'public' ? user.followingCount : '?'} Following, ${profile.followersVisibility === 'public' ? user.followersCount : '?'} Followers${profile.description ? ` · ${profile.description}` : ''}`,
|
||||
link: author.link,
|
||||
image: user.avatarUrl ?? this.userEntityService.getIdenticonUrl(user),
|
||||
feedLinks: {
|
||||
|
Reference in New Issue
Block a user