@nevis-security/nevis-mobile-authentication-sdk-react
Version:
React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.
42 lines (38 loc) • 1.51 kB
text/typescript
/**
* Copyright © 2025 Nevis Security AG. All rights reserved.
*/
import { ErrorConverter } from '../ErrorConverter';
import { FidoUafAttestationInformationCertificateError } from './FidoUafAttestationInformationCertificateError';
import { FidoUafAttestationInformationError } from './FidoUafAttestationInformationError';
import { FidoUafAttestationInformationFetchCrlError } from './FidoUafAttestationInformationFetchCrlError';
import { FidoUafAttestationInformationUnknownError } from './FidoUafAttestationInformationUnknownError';
enum FidoUafAttestationInformationErrorType {
CertificateError,
FetchCrlError,
Unknown,
}
export class FidoUafAttestationInformationErrorConverter extends ErrorConverter<FidoUafAttestationInformationError> {
convert(): FidoUafAttestationInformationError {
const subtype =
FidoUafAttestationInformationErrorType[
this.error.type as keyof typeof FidoUafAttestationInformationErrorType
];
switch (subtype) {
case FidoUafAttestationInformationErrorType.CertificateError:
return new FidoUafAttestationInformationCertificateError(
this.error.description,
this.error.cause
);
case FidoUafAttestationInformationErrorType.FetchCrlError:
return new FidoUafAttestationInformationFetchCrlError(
this.error.description,
this.error.cause
);
case FidoUafAttestationInformationErrorType.Unknown:
return new FidoUafAttestationInformationUnknownError(
this.error.description,
this.error.cause
);
}
}
}