@@ -4,34 +4,38 @@ import Auth0, {
44 Options ,
55} from 'react-native-auth0' ;
66import { Credentials , CredentialsHandlersInput , ErrorCases } from './types' ;
7- import { ErrorPublisher , getTimestamp } from './utils' ;
7+ import { ErrorPublisher } from './utils' ;
88
99export class Auth0Native extends Auth0 {
1010 private credentials : Credentials | null = null ;
1111
1212 private saveCredentials : CredentialsHandlersInput [ 'save' ] ;
13-
1413 private getCredentials : CredentialsHandlersInput [ 'get' ] ;
15-
1614 private clearCredentials : CredentialsHandlersInput [ 'clear' ] ;
15+ private validateToken : CredentialsHandlersInput [ 'validateToken' ] ;
1716
1817 private errors : Record < ErrorCases , ErrorPublisher > = {
1918 AUTHORIZATION : new ErrorPublisher ( ) ,
2019 CLEAR_SESSION : new ErrorPublisher ( ) ,
2120 REFRESH_TOKEN : new ErrorPublisher ( ) ,
21+ SAVE_CREDENTIALS : new ErrorPublisher ( ) ,
2222 } ;
2323
2424 constructor ( options : Options , credentialsHandlers : CredentialsHandlersInput ) {
2525 super ( options ) ;
2626 this . saveCredentials = credentialsHandlers . save ;
2727 this . getCredentials = credentialsHandlers . get ;
2828 this . clearCredentials = credentialsHandlers . clear ;
29+ this . validateToken = credentialsHandlers . validateToken ;
2930 }
3031
3132 async handleCredentials ( data : Auth0Credentials ) : Promise < Credentials > {
32- const credentials : Credentials = { ...data , issuedAt : getTimestamp ( ) } ;
33-
34- await this . saveCredentials ( credentials ) ;
33+ const credentials : Credentials = { ...data } ;
34+ try {
35+ await this . saveCredentials ( credentials ) ;
36+ } catch ( error ) {
37+ this . errors . SAVE_CREDENTIALS . notify ( error as Error ) ;
38+ }
3539
3640 this . credentials = credentials ;
3741
@@ -63,7 +67,8 @@ export class Auth0Native extends Auth0 {
6367 return this . handleCredentials ( result ) ;
6468 } catch ( error ) {
6569 this . errors . AUTHORIZATION . notify ( error as Error ) ;
66- return ;
70+
71+ throw error ;
6772 }
6873 }
6974
@@ -86,11 +91,7 @@ export class Auth0Native extends Auth0 {
8691 return false ;
8792 }
8893
89- const tokenTimestamp = credentials . expiresIn + credentials . issuedAt ;
90-
91- const validToken = tokenTimestamp > getTimestamp ( ) ;
92-
93- if ( validToken ) {
94+ if ( this . validateToken ( credentials ) ) {
9495 this . credentials = credentials ;
9596 return true ;
9697 }
0 commit comments