UNPKG

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

Version:

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

42 lines (38 loc) 1.56 kB
/** * Copyright © 2024 Nevis Security AG. All rights reserved. */ import { PasswordChangeRecoverableCustomValidationError } from './PasswordChangeRecoverableCustomValidationError'; import type { PasswordChangeRecoverableError } from './PasswordChangeRecoverableError'; import { PasswordChangeRecoverableInvalidPassword } from './PasswordChangeRecoverableInvalidPassword'; import { PasswordChangeRecoverableOldPasswordEqualsNewPassword } from './PasswordChangeRecoverableOldPasswordEqualsNewPassword'; import { ErrorConverter } from '../../ErrorConverter'; enum PasswordChangeRecoverableErrorType { CustomValidationError, InvalidPassword, OldPasswordEqualsNewPassword, } export class PasswordChangeRecoverableErrorConverter extends ErrorConverter<PasswordChangeRecoverableError> { convert(): PasswordChangeRecoverableError { const subtype = PasswordChangeRecoverableErrorType[ this.error.type as keyof typeof PasswordChangeRecoverableErrorType ]; switch (subtype) { case PasswordChangeRecoverableErrorType.CustomValidationError: return new PasswordChangeRecoverableCustomValidationError( this.error.description, this.error.cause ); case PasswordChangeRecoverableErrorType.InvalidPassword: return new PasswordChangeRecoverableInvalidPassword( this.error.description, this.error.cause ); case PasswordChangeRecoverableErrorType.OldPasswordEqualsNewPassword: return new PasswordChangeRecoverableOldPasswordEqualsNewPassword( this.error.description, this.error.cause ); } } }