UNPKG

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

Version:

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

56 lines (49 loc) 2.03 kB
/** * Copyright © 2024 Nevis Security AG. All rights reserved. */ import { UserVerificationContext } from './UserVerificationContext'; import { Authenticator } from '../../localData/Authenticator'; import { PasswordAuthenticatorProtectionStatus } from '../password/PasswordAuthenticatorProtectionStatus'; /** * The object providing information about the password user verification * (i.e. the user credential validation) operation to be done. * * This object contains the information required to ask the user to authenticate: * the authenticator to be used, whether there were previous errors authenticating, etc. * * @see {@link PasswordUserVerifier.verifyPassword} */ export abstract class PasswordUserVerificationContext extends UserVerificationContext { /** * The authenticator protection status. */ abstract authenticatorProtectionStatus: PasswordAuthenticatorProtectionStatus; /** * Alternate constructor that creates a {@link UserVerificationContext} from a json. * * @param json contains the source for instance creation. * @returns the created {@link PasswordUserVerificationContext} instance. */ static fromJson(json: any): PasswordUserVerificationContext { return PasswordUserVerificationContextImpl.fromJson(json); } } export class PasswordUserVerificationContextImpl extends PasswordUserVerificationContext { authenticator: Authenticator; authenticatorProtectionStatus: PasswordAuthenticatorProtectionStatus; constructor( authenticator: Authenticator, authenticatorProtectionStatus: PasswordAuthenticatorProtectionStatus ) { super(); this.authenticator = authenticator; this.authenticatorProtectionStatus = authenticatorProtectionStatus; } static fromJson(json: any): PasswordUserVerificationContextImpl { const authenticator = Authenticator.fromJson(json.authenticator); const status = PasswordAuthenticatorProtectionStatus.fromJson( json.authenticatorProtectionStatus ); return new PasswordUserVerificationContextImpl(authenticator, status); } }