UNPKG

@nevis-security/nevis-mobile-authentication-sdk-react

Version:

React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.

52 lines (48 loc) 1.96 kB
/** * Copyright © 2024 Nevis Security AG. All rights reserved. */ import { PasswordChangeDeviceProtectionError } from './PasswordChangeDeviceProtectionError'; import { PasswordChangeError } from './PasswordChangeError'; import { PasswordChangeNoDeviceLockError } from './PasswordChangeNoDeviceLockError'; import { PasswordChangePasswordLocked } from './PasswordChangePasswordLocked'; import { PasswordChangePasswordNotEnrolled } from './PasswordChangePasswordNotEnrolled'; import { PasswordChangeUnknownError } from './PasswordChangeUnknownError'; import { PasswordChangeUserCanceled } from './PasswordChangeUserCanceled'; import { ErrorConverter } from '../../ErrorConverter'; enum PasswordChangeErrorType { DeviceProtectionError, NoDeviceLockError, PasswordLocked, PasswordNotEnrolled, Unknown, UserCanceled, } export class PasswordChangeErrorConverter extends ErrorConverter<PasswordChangeError> { convert(): PasswordChangeError { const subtype = PasswordChangeErrorType[this.error.type as keyof typeof PasswordChangeErrorType]; switch (subtype) { case PasswordChangeErrorType.DeviceProtectionError: return new PasswordChangeDeviceProtectionError( this.error.description, this.error.cause ); case PasswordChangeErrorType.NoDeviceLockError: return new PasswordChangeNoDeviceLockError( this.error.description, this.error.cause ); case PasswordChangeErrorType.PasswordLocked: return new PasswordChangePasswordLocked(this.error.description, this.error.cause); case PasswordChangeErrorType.PasswordNotEnrolled: return new PasswordChangePasswordNotEnrolled( this.error.description, this.error.cause ); case PasswordChangeErrorType.Unknown: return new PasswordChangeUnknownError(this.error.description, this.error.cause); case PasswordChangeErrorType.UserCanceled: return new PasswordChangeUserCanceled(this.error.description, this.error.cause); } } }