diff --git a/src/models/actions/CreatePermission.ts b/src/models/actions/CreatePermission.ts index d7fe91a..7a49e03 100644 --- a/src/models/actions/CreatePermission.ts +++ b/src/models/actions/CreatePermission.ts @@ -1,4 +1,5 @@ import { + IsEnum, IsInt, IsNotEmpty } from "class-validator"; @@ -25,12 +26,14 @@ export class CreatePermission { * The permissions's target. */ @IsNotEmpty() + @IsEnum(PermissionTarget) target: PermissionTarget; /** * The permissions's action. */ @IsNotEmpty() + @IsEnum(PermissionAction) action: PermissionAction; /** diff --git a/src/models/entities/Permission.ts b/src/models/entities/Permission.ts index 5d93258..b95bb84 100644 --- a/src/models/entities/Permission.ts +++ b/src/models/entities/Permission.ts @@ -1,4 +1,5 @@ import { + IsEnum, IsInt, IsNotEmpty } from "class-validator"; @@ -29,12 +30,14 @@ export class Permission { */ @Column({ type: 'varchar' }) @IsNotEmpty() + @IsEnum(PermissionTarget) target: PermissionTarget; /** * The action type */ @Column({ type: 'varchar' }) + @IsEnum(PermissionAction) action: PermissionAction; /** diff --git a/src/models/enums/PermissionAction.ts b/src/models/enums/PermissionAction.ts index 8ea9e65..4535dfd 100644 --- a/src/models/enums/PermissionAction.ts +++ b/src/models/enums/PermissionAction.ts @@ -1,6 +1,6 @@ export enum PermissionAction { - READ = 'READ', - ADD = 'ADD', + GET = 'GET', + CREATE = 'CREATE', UPDATE = 'UPDATE', DELETE = 'DELETE' } \ No newline at end of file diff --git a/src/models/enums/PermissionTargets.ts b/src/models/enums/PermissionTargets.ts index 9a6f040..c12c988 100644 --- a/src/models/enums/PermissionTargets.ts +++ b/src/models/enums/PermissionTargets.ts @@ -4,5 +4,6 @@ export enum PermissionTarget { TEAM = 'RUNNERTEAM', TRACK = 'TRACK', USER = 'USER', - GROUP = 'USERGROUP' + GROUP = 'USERGROUP', + PERMISSION = 'PERMISSION' } \ No newline at end of file diff --git a/src/models/responses/ResponsePermission.ts b/src/models/responses/ResponsePermission.ts index 824e83b..23a3686 100644 --- a/src/models/responses/ResponsePermission.ts +++ b/src/models/responses/ResponsePermission.ts @@ -1,4 +1,5 @@ import { + IsEnum, IsInt, IsNotEmpty, IsObject @@ -29,12 +30,14 @@ export class ResponsePermission { * The permissions's target. */ @IsNotEmpty() + @IsEnum(PermissionTarget) target: PermissionTarget; /** * The permissions's action. */ @IsNotEmpty() + @IsEnum(PermissionAction) action: PermissionAction; public constructor(permission: Permission) {