All files / src/platform/permissions permission.module.ts

0% Statements 0/10
100% Branches 0/0
100% Functions 0/0
0% Lines 0/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45                                                                                         
import { Module, Global } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import {
  PermissionEvaluationService,
  QueryScopeService,
} from './permission.service';
import { PermissionController } from './permission.controller';
import { PermissionGuard } from './permission.guard';
import {
  PolicyDefinition,
  PolicyDefinitionSchema,
  PolicyAssignment,
  PolicyAssignmentSchema,
  FieldPolicy,
  FieldPolicySchema,
  PermissionEvaluationLog,
  PermissionEvaluationLogSchema,
} from './schemas/permission.schema';
import { User, UserSchema } from '../user/schemas/user.schema';
 
@Global()
@Module({
  imports: [
    MongooseModule.forFeature([
      { name: PolicyDefinition.name, schema: PolicyDefinitionSchema },
      { name: PolicyAssignment.name, schema: PolicyAssignmentSchema },
      { name: FieldPolicy.name, schema: FieldPolicySchema },
      {
        name: PermissionEvaluationLog.name,
        schema: PermissionEvaluationLogSchema,
      },
      { name: User.name, schema: UserSchema },
    ]),
  ],
  controllers: [PermissionController],
  providers: [PermissionEvaluationService, QueryScopeService, PermissionGuard],
  exports: [
    PermissionEvaluationService,
    QueryScopeService,
    PermissionGuard,
    MongooseModule,
  ],
})
export class PermissionModule {}