1.0.1 • Published 7 years ago

react-native-authenticate v1.0.1

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

react-native-authenticate

Authentication for Android and IOS

expanding on naoufal/react-native-touch-id and jariz/react-native-fingerprint-android comes a complete cross platform solution for both android and IOS.

This implements the android design guidelines

Installation

Install naoufal/react-native-touch-id and jariz/react-native-fingerprint-android separately Just run npm i --save react-native-authenticate and you are set!

Usage

The following will be a somewhat minimal implementation considering you can have full control. This renders a modal like view on android with the state.

import React, { Component } from 'react';
import Authenticate from 'react-native-authenticate';

export default SampleComponent extends Component {

  componentWillMount () {
     // Check if fingerprint auth is supported
     Authenticate.isSupported()
        .then(() => console.log('is supported))
        .catch(() => console.log('not supported))
  }

  render () {
     return (
        //whatever you want, and somewhere render <Authentication />
        <Authentication onCancel={onCancel} onFailure={} onUnsupported={} onAttempt={} />
     );
  }

}

Static Functions

isSupported

Manually cancel the authentication, this is required to follow the design principles in the design guidelines. When called this will trigger a rejection of the original authenticate promise.

The only one you need is the isSupported. But you have access to the rest if you want to implement your UI

authenticate(): Promise

Resolves if authentication is successful, rejects otherwise.

cancel(): Promise<boolean>

Used to cancel fingerprint authentication on android

Props

{
  onAuthentication: PropTypes.func.isRequired, // On authentication success
  onFailure: PropTypes.func.isRequired, // On authentication failure
  onCancel: PropTypes.func, // On cancel (optional, if none passed then onFailure is called)
  onUnsupported: PropTypes.func,  // in the case you forgot to run the isSupported
  onAttempt: PropTypes.func, // in the case you want to be notified of android attempts
  title: PropTypes.node, // custom title, note that it needs to be a node and not a string
  secondaryText: PropTypes.node, // custom secondary line
  fingerprintState: PropTypes.node, // If you want to override the authentication state, note that it also replaces the fingerPrint icon.
  primaryColor: PropTypes.string, // sets the color for success and action buttons
  render: PropTypes.func // If you want to render your own full blown component, you get all our state, props and cancel function.
}