@nevis-security/nevis-mobile-authentication-sdk-react
Version:
React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.
26 lines (21 loc) • 819 B
text/typescript
/**
* Copyright © 2023 Nevis Security AG. All rights reserved.
*/
import { PinUserVerificationError } from './PinUserVerificationError';
import { PinUserVerificationInvalidPin } from './PinUserVerificationInvalidPin';
import { ErrorConverter } from '../ErrorConverter';
enum PinUserVerificationErrorType {
InvalidPin,
}
export class PinUserVerificationErrorConverter extends ErrorConverter<PinUserVerificationError> {
convert(): PinUserVerificationError {
const subtype =
PinUserVerificationErrorType[
this.error.type as keyof typeof PinUserVerificationErrorType
];
if (subtype !== PinUserVerificationErrorType.InvalidPin) {
throw new Error(`Unsupported PIN user verification error (${subtype})`);
}
return new PinUserVerificationInvalidPin(this.error.description, this.error.cause);
}
}