permission
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
import type { EntityManager } from '@mikro-orm/core';
|
||||
import { Role } from '../modules/roles/entities/role.entity';
|
||||
import type { Permission } from '../common/enums/permission.enum';
|
||||
import type { Permission as PermissionEntity } from '../modules/roles/entities/permission.entity';
|
||||
import type { PermissionEnum } from '../common/enums/permission.enum';
|
||||
import type {Permission } from '../modules/roles/entities/permission.entity';
|
||||
import { rolesData } from './data/roles.data';
|
||||
|
||||
export class RolesSeeder {
|
||||
async run(em: EntityManager, permissions: PermissionEntity[]): Promise<Map<string, Role>> {
|
||||
async run(em: EntityManager, permissions: Permission[]): Promise<Map<string, Role>> {
|
||||
const rolesMap = new Map<string, Role>();
|
||||
|
||||
for (const roleConfig of rolesData) {
|
||||
@@ -13,7 +13,7 @@ export class RolesSeeder {
|
||||
if (!role) {
|
||||
role = em.create(Role, {
|
||||
name: roleConfig.name,
|
||||
title:'',
|
||||
title: '',
|
||||
isSystem: true,
|
||||
});
|
||||
|
||||
@@ -21,7 +21,7 @@ export class RolesSeeder {
|
||||
// TypeScript knows role is not null here because we just created it
|
||||
const newRole = role;
|
||||
// Use the permission filter for all roles
|
||||
const filteredPermissions = permissions.filter(p => roleConfig.permissionFilter(p.name as Permission));
|
||||
const filteredPermissions = permissions.filter(p => roleConfig.permissionFilter(p.name as PermissionEnum));
|
||||
filteredPermissions.forEach(p => newRole.permissions.add(p));
|
||||
|
||||
em.persist(newRole);
|
||||
|
||||
Reference in New Issue
Block a user