From fd6dd698a9a0148783b9a523823c86a4f9e63715 Mon Sep 17 00:00:00 2001 From: yukineko <27853966+hideki0403@users.noreply.github.com> Date: Sun, 14 Jan 2024 16:03:06 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20RoleService=E3=81=8B=E3=82=89Pack?= =?UTF-8?q?=E3=82=92=E9=80=9A=E3=81=97=E3=81=A6=E5=9E=8BRolePolicies?= =?UTF-8?q?=E3=81=AB=E4=BE=9D=E5=AD=98=E3=81=95=E3=81=9B=E3=81=AA=E3=81=84?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/backend/src/core/RoleService.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/backend/src/core/RoleService.ts b/packages/backend/src/core/RoleService.ts index 905e3dba0fa9..c96bc8d042f7 100644 --- a/packages/backend/src/core/RoleService.ts +++ b/packages/backend/src/core/RoleService.ts @@ -26,14 +26,12 @@ import type { GlobalEvents } from '@/core/GlobalEventService.js'; import { GlobalEventService } from '@/core/GlobalEventService.js'; import { IdService } from '@/core/IdService.js'; import { ModerationLogService } from '@/core/ModerationLogService.js'; -import type { Packed, KeyOf } from '@/misc/json-schema.js'; +import type { Packed } from '@/misc/json-schema.js'; import { FanoutTimelineService } from '@/core/FanoutTimelineService.js'; import { NotificationService } from '@/core/NotificationService.js'; import type { OnApplicationShutdown, OnModuleInit } from '@nestjs/common'; -export type RolePolicies = Packed<'RolePolicies'>; - -export const DEFAULT_POLICIES: RolePolicies = { +export const DEFAULT_POLICIES = { gtlAvailable: true, ltlAvailable: true, canPublicNote: true, @@ -60,6 +58,8 @@ export const DEFAULT_POLICIES: RolePolicies = { avatarDecorationLimit: 1, }; +export type RolePolicies = typeof DEFAULT_POLICIES; + @Injectable() export class RoleService implements OnApplicationShutdown, OnModuleInit { private rolesCache: MemorySingleCache; @@ -280,7 +280,7 @@ export class RoleService implements OnApplicationShutdown, OnModuleInit { const roles = await this.getUserRoles(userId); - function calc>(name: T, aggregate: (values: RolePolicies[T][]) => RolePolicies[T]) { + function calc(name: T, aggregate: (values: RolePolicies[T][]) => RolePolicies[T]) { if (roles.length === 0) return basePolicies[name]; const policies = roles.map(role => role.policies[name] ?? { priority: 0, useDefault: true });