diff options
| author | anatawa12 <anatawa12@icloud.com> | 2025-04-03 19:22:49 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-03 19:22:49 +0900 |
| commit | cab82452ecb9aa6f89da22a1177cbf0e01f0462b (patch) | |
| tree | e0cf3599ec319a2ffeb8cc7233bf834c387e304f /packages/backend/src/core/entities | |
| parent | refactor(frontend): refactor MkDateSeparatedList (diff) | |
| download | sharkey-cab82452ecb9aa6f89da22a1177cbf0e01f0462b.tar.gz sharkey-cab82452ecb9aa6f89da22a1177cbf0e01f0462b.tar.bz2 sharkey-cab82452ecb9aa6f89da22a1177cbf0e01f0462b.zip | |
Copy role on move (#15745)
* feat(backend): copyOnMoveAccount
* feat(endpoints): copyOnMoveAccount
* feat(frontend): copyOnMoveAccount
* docs(changelog): アカウントのマイグレーション時に古いアカウントからロールをコピーできるようになりました。
* fix: spdx header for migration
* Update locales/ja-JP.yml
* copyOnMoveAccount -> preserveAssignmentOnMoveAccount
* fix: check for preserveAssignmentOnMoveAccount
---------
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
Diffstat (limited to 'packages/backend/src/core/entities')
| -rw-r--r-- | packages/backend/src/core/entities/RoleEntityService.ts | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/packages/backend/src/core/entities/RoleEntityService.ts b/packages/backend/src/core/entities/RoleEntityService.ts index 2a7dc37bce..3fa38c9521 100644 --- a/packages/backend/src/core/entities/RoleEntityService.ts +++ b/packages/backend/src/core/entities/RoleEntityService.ts @@ -13,6 +13,7 @@ import type { MiRole } from '@/models/Role.js'; import { bindThis } from '@/decorators.js'; import { DEFAULT_POLICIES } from '@/core/RoleService.js'; import { IdService } from '@/core/IdService.js'; +import { Packed } from '@/misc/json-schema.js'; @Injectable() export class RoleEntityService { @@ -31,7 +32,7 @@ export class RoleEntityService { public async pack( src: MiRole['id'] | MiRole, me?: { id: MiUser['id'] } | null | undefined, - ) { + ): Promise<Packed<'Role'>> { const role = typeof src === 'object' ? src : await this.rolesRepository.findOneByOrFail({ id: src }); const assignedCount = await this.roleAssignmentsRepository.createQueryBuilder('assign') @@ -67,6 +68,7 @@ export class RoleEntityService { isModerator: role.isModerator, isExplorable: role.isExplorable, asBadge: role.asBadge, + preserveAssignmentOnMoveAccount: role.preserveAssignmentOnMoveAccount, canEditMembersByModerator: role.canEditMembersByModerator, displayOrder: role.displayOrder, policies: policies, |