123 lines
2.9 KiB
TypeScript
123 lines
2.9 KiB
TypeScript
import { IsString } from 'class-validator';
|
|
import { ForbiddenError, NotAcceptableError, NotFoundError, UnauthorizedError } from 'routing-controllers';
|
|
|
|
/**
|
|
* Error to throw when a jwt is expired.
|
|
*/
|
|
export class ExpiredJWTError extends UnauthorizedError {
|
|
@IsString()
|
|
name = "ExpiredJWTError"
|
|
|
|
@IsString()
|
|
message = "your provided jwt is expired"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when a jwt could not be parsed.
|
|
*/
|
|
export class IllegalJWTError extends UnauthorizedError {
|
|
@IsString()
|
|
name = "IllegalJWTError"
|
|
|
|
@IsString()
|
|
message = "your provided jwt could not be parsed"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when user is nonexistant or refreshtoken is invalid.
|
|
*/
|
|
export class UserNonexistantOrRefreshtokenInvalidError extends UnauthorizedError {
|
|
@IsString()
|
|
name = "UserNonexistantOrRefreshtokenInvalidError"
|
|
|
|
@IsString()
|
|
message = "user is nonexistant or refreshtoken is invalid"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when provided credentials are invalid.
|
|
*/
|
|
export class InvalidCredentialsError extends UnauthorizedError {
|
|
@IsString()
|
|
name = "InvalidCredentialsError"
|
|
|
|
@IsString()
|
|
message = "your provided credentials are invalid"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when a jwt does not have permission for this route/action.
|
|
*/
|
|
export class NoPermissionError extends ForbiddenError {
|
|
@IsString()
|
|
name = "NoPermissionError"
|
|
|
|
@IsString()
|
|
message = "your provided jwt does not have permission for this route/ action"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when no username and no email is set.
|
|
*/
|
|
export class UsernameOrEmailNeededError extends NotAcceptableError {
|
|
@IsString()
|
|
name = "UsernameOrEmailNeededError"
|
|
|
|
@IsString()
|
|
message = "Auth needs to have email or username set! \n You provided neither."
|
|
}
|
|
|
|
/**
|
|
* Error to throw when no password is provided.
|
|
*/
|
|
export class PasswordNeededError extends NotAcceptableError {
|
|
@IsString()
|
|
name = "PasswordNeededError"
|
|
|
|
@IsString()
|
|
message = "no password is provided - you need to provide it"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when no user could be found mating the provided credential.
|
|
*/
|
|
export class UserNotFoundError extends NotFoundError {
|
|
@IsString()
|
|
name = "UserNotFoundError"
|
|
|
|
@IsString()
|
|
message = "no user could be found for provided credential"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when no jwt token was provided (but one had to be).
|
|
*/
|
|
export class JwtNotProvidedError extends NotAcceptableError {
|
|
@IsString()
|
|
name = "JwtNotProvidedError"
|
|
|
|
@IsString()
|
|
message = "no jwt token was provided"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when user was not found or refresh token count was invalid.
|
|
*/
|
|
export class UserNotFoundOrRefreshTokenCountInvalidError extends NotAcceptableError {
|
|
@IsString()
|
|
name = "UserNotFoundOrRefreshTokenCountInvalidError"
|
|
|
|
@IsString()
|
|
message = "user was not found or refresh token count was invalid"
|
|
}
|
|
|
|
/**
|
|
* Error to throw when refresh token count was invalid
|
|
*/
|
|
export class RefreshTokenCountInvalidError extends NotAcceptableError {
|
|
@IsString()
|
|
name = "RefreshTokenCountInvalidError"
|
|
|
|
@IsString()
|
|
message = "refresh token count was invalid"
|
|
} |