| |
| |
|
|
| export class OAuthError extends Error {
|
| constructor(message, errorUri) {
|
| super(message);
|
| this.errorUri = errorUri;
|
| this.name = this.constructor.name;
|
| }
|
| |
| |
|
|
| toResponseObject() {
|
| const response = {
|
| error: this.errorCode,
|
| error_description: this.message
|
| };
|
| if (this.errorUri) {
|
| response.error_uri = this.errorUri;
|
| }
|
| return response;
|
| }
|
| get errorCode() {
|
| return this.constructor.errorCode;
|
| }
|
| }
|
| |
| |
| |
| |
|
|
| export class InvalidRequestError extends OAuthError {
|
| }
|
| InvalidRequestError.errorCode = 'invalid_request';
|
| |
| |
| |
|
|
| export class InvalidClientError extends OAuthError {
|
| }
|
| InvalidClientError.errorCode = 'invalid_client';
|
| |
| |
| |
| |
|
|
| export class InvalidGrantError extends OAuthError {
|
| }
|
| InvalidGrantError.errorCode = 'invalid_grant';
|
| |
| |
| |
|
|
| export class UnauthorizedClientError extends OAuthError {
|
| }
|
| UnauthorizedClientError.errorCode = 'unauthorized_client';
|
| |
| |
| |
|
|
| export class UnsupportedGrantTypeError extends OAuthError {
|
| }
|
| UnsupportedGrantTypeError.errorCode = 'unsupported_grant_type';
|
| |
| |
| |
|
|
| export class InvalidScopeError extends OAuthError {
|
| }
|
| InvalidScopeError.errorCode = 'invalid_scope';
|
| |
| |
|
|
| export class AccessDeniedError extends OAuthError {
|
| }
|
| AccessDeniedError.errorCode = 'access_denied';
|
| |
| |
| |
|
|
| export class ServerError extends OAuthError {
|
| }
|
| ServerError.errorCode = 'server_error';
|
| |
| |
| |
|
|
| export class TemporarilyUnavailableError extends OAuthError {
|
| }
|
| TemporarilyUnavailableError.errorCode = 'temporarily_unavailable';
|
| |
| |
| |
|
|
| export class UnsupportedResponseTypeError extends OAuthError {
|
| }
|
| UnsupportedResponseTypeError.errorCode = 'unsupported_response_type';
|
| |
| |
| |
|
|
| export class UnsupportedTokenTypeError extends OAuthError {
|
| }
|
| UnsupportedTokenTypeError.errorCode = 'unsupported_token_type';
|
| |
| |
| |
|
|
| export class InvalidTokenError extends OAuthError {
|
| }
|
| InvalidTokenError.errorCode = 'invalid_token';
|
| |
| |
| |
|
|
| export class MethodNotAllowedError extends OAuthError {
|
| }
|
| MethodNotAllowedError.errorCode = 'method_not_allowed';
|
| |
| |
| |
|
|
| export class TooManyRequestsError extends OAuthError {
|
| }
|
| TooManyRequestsError.errorCode = 'too_many_requests';
|
| |
| |
| |
|
|
| export class InvalidClientMetadataError extends OAuthError {
|
| }
|
| InvalidClientMetadataError.errorCode = 'invalid_client_metadata';
|
| |
| |
|
|
| export class InsufficientScopeError extends OAuthError {
|
| }
|
| InsufficientScopeError.errorCode = 'insufficient_scope';
|
| |
| |
| |
|
|
| export class InvalidTargetError extends OAuthError {
|
| }
|
| InvalidTargetError.errorCode = 'invalid_target';
|
| |
| |
|
|
| export class CustomOAuthError extends OAuthError {
|
| constructor(customErrorCode, message, errorUri) {
|
| super(message, errorUri);
|
| this.customErrorCode = customErrorCode;
|
| }
|
| get errorCode() {
|
| return this.customErrorCode;
|
| }
|
| }
|
| |
| |
|
|
| export const OAUTH_ERRORS = {
|
| [InvalidRequestError.errorCode]: InvalidRequestError,
|
| [InvalidClientError.errorCode]: InvalidClientError,
|
| [InvalidGrantError.errorCode]: InvalidGrantError,
|
| [UnauthorizedClientError.errorCode]: UnauthorizedClientError,
|
| [UnsupportedGrantTypeError.errorCode]: UnsupportedGrantTypeError,
|
| [InvalidScopeError.errorCode]: InvalidScopeError,
|
| [AccessDeniedError.errorCode]: AccessDeniedError,
|
| [ServerError.errorCode]: ServerError,
|
| [TemporarilyUnavailableError.errorCode]: TemporarilyUnavailableError,
|
| [UnsupportedResponseTypeError.errorCode]: UnsupportedResponseTypeError,
|
| [UnsupportedTokenTypeError.errorCode]: UnsupportedTokenTypeError,
|
| [InvalidTokenError.errorCode]: InvalidTokenError,
|
| [MethodNotAllowedError.errorCode]: MethodNotAllowedError,
|
| [TooManyRequestsError.errorCode]: TooManyRequestsError,
|
| [InvalidClientMetadataError.errorCode]: InvalidClientMetadataError,
|
| [InsufficientScopeError.errorCode]: InsufficientScopeError,
|
| [InvalidTargetError.errorCode]: InvalidTargetError
|
| };
|
| |