@nevis-security/nevis-mobile-authentication-sdk-react
Version:
React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.
59 lines (57 loc) • 3.55 kB
JavaScript
"use strict";
/**
* Copyright © 2023-2024 Nevis Security AG. All rights reserved.
*/
import { OperationClockSkewTooBigError } from './OperationClockSkewTooBigError';
import { OperationDeviceProtectionError } from './OperationDeviceProtectionError';
import { OperationFidoError } from './OperationFidoError';
import { OperationNetworkError } from './OperationNetworkError';
import { OperationNoDeviceLockError } from './OperationNoDeviceLockError';
import { OperationNotSupportedByBackendError } from './OperationNotSupportedByBackendError';
import { OperationUnknownError } from './OperationUnknownError';
import { OperationUserAlreadyRegisteredInAnotherServerError } from './OperationUserAlreadyRegisteredInAnotherServerError';
import { OperationUserNotRegisteredInServerError } from './OperationUserNotRegisteredInServerError';
import { ErrorConverter } from '../ErrorConverter';
var OperationErrorType = /*#__PURE__*/function (OperationErrorType) {
OperationErrorType[OperationErrorType["ClockSkewTooBig"] = 0] = "ClockSkewTooBig";
OperationErrorType[OperationErrorType["DeviceProtectionError"] = 1] = "DeviceProtectionError";
OperationErrorType[OperationErrorType["FidoError"] = 2] = "FidoError";
OperationErrorType[OperationErrorType["NetworkError"] = 3] = "NetworkError";
OperationErrorType[OperationErrorType["NoDeviceLockError"] = 4] = "NoDeviceLockError";
OperationErrorType[OperationErrorType["OperationNotSupportedByBackend"] = 5] = "OperationNotSupportedByBackend";
OperationErrorType[OperationErrorType["Unknown"] = 6] = "Unknown";
OperationErrorType[OperationErrorType["UserAlreadyRegisteredInAnotherServer"] = 7] = "UserAlreadyRegisteredInAnotherServer";
OperationErrorType[OperationErrorType["UserNotRegisteredInServer"] = 8] = "UserNotRegisteredInServer";
return OperationErrorType;
}(OperationErrorType || {});
export class OperationErrorConverter extends ErrorConverter {
convert() {
const subtype = OperationErrorType[this.error.type];
switch (subtype) {
case OperationErrorType.ClockSkewTooBig:
return new OperationClockSkewTooBigError(this.error.description, this.error.cause);
case OperationErrorType.DeviceProtectionError:
return new OperationDeviceProtectionError(this.error.description, this.error.cause);
case OperationErrorType.FidoError:
{
if (this.error.errorCode) {
return new OperationFidoError(this.error.errorCode, this.error.description, this.error.cause);
}
return new OperationUnknownError(this.error.description, this.error.cause);
}
case OperationErrorType.NetworkError:
return new OperationNetworkError(this.error.description, this.error.cause);
case OperationErrorType.NoDeviceLockError:
return new OperationNoDeviceLockError(this.error.description, this.error.cause);
case OperationErrorType.OperationNotSupportedByBackend:
return new OperationNotSupportedByBackendError(this.error.description, this.error.cause);
case OperationErrorType.Unknown:
return new OperationUnknownError(this.error.description, this.error.cause);
case OperationErrorType.UserAlreadyRegisteredInAnotherServer:
return new OperationUserAlreadyRegisteredInAnotherServerError(this.error.description, this.error.cause);
case OperationErrorType.UserNotRegisteredInServer:
return new OperationUserNotRegisteredInServerError(this.error.description, this.error.cause);
}
}
}
//# sourceMappingURL=OperationErrorConverter.js.map