UNPKG

@airwallex/node-sdk

Version:

Airwallex Node.js SDK

76 lines 2.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RETRYABLE_ERRORS = exports.ServerError = exports.ValidationError = exports.RateLimitError = exports.NotFoundError = exports.AuthorizationError = exports.AuthenticationError = exports.TimeoutError = exports.NetworkError = exports.ApiError = void 0; exports.isRetryableError = isRetryableError; class ApiError extends Error { constructor(message, options = {}) { super(message); this.name = 'ApiError'; this.status = options.status; this.httpCode = options.httpCode; this.data = options.data; this.headers = options.headers; } } exports.ApiError = ApiError; class NetworkError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'NetworkError'; } } exports.NetworkError = NetworkError; class TimeoutError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'TimeoutError'; } } exports.TimeoutError = TimeoutError; class AuthenticationError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'AuthenticationError'; } } exports.AuthenticationError = AuthenticationError; class AuthorizationError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'AuthorizationError'; } } exports.AuthorizationError = AuthorizationError; class NotFoundError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'NotFoundError'; } } exports.NotFoundError = NotFoundError; class RateLimitError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'RateLimitError'; } } exports.RateLimitError = RateLimitError; class ValidationError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'ValidationError'; } } exports.ValidationError = ValidationError; class ServerError extends ApiError { constructor(message, options = {}) { super(message, options); this.name = 'ServerError'; } } exports.ServerError = ServerError; exports.RETRYABLE_ERRORS = [TimeoutError, NetworkError]; function isRetryableError(error) { return exports.RETRYABLE_ERRORS.some((retryableError) => error instanceof retryableError); } //# sourceMappingURL=errors.js.map