react-native-authsignal 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -0
- package/lib/commonjs/passkey.js +10 -0
- package/lib/commonjs/passkey.js.map +1 -1
- package/lib/module/passkey.js +10 -0
- package/lib/module/passkey.js.map +1 -1
- package/lib/typescript/passkey.d.ts.map +1 -1
- package/package.json +2 -1
- package/react-native-authsignal.podspec +1 -1
- package/src/passkey.ts +13 -0
package/README.md
CHANGED
|
@@ -1,3 +1,58 @@
|
|
|
1
1
|
# react-native-authsignal
|
|
2
2
|
|
|
3
3
|
Check out our [official React Native documentation](https://docs.authsignal.com/sdks/client/react-native).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
Install the Authsignal React Native SDK using npm or yarn:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install react-native-authsignal
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Then link the native iOS dependencies:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npx pod-install ios
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Initialization
|
|
20
|
+
|
|
21
|
+
Initialize the Authsignal client in your code:
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
import { Authsignal } from 'react-native-authsignal';
|
|
25
|
+
|
|
26
|
+
const authsignal = new Authsignal({
|
|
27
|
+
tenantId: 'YOUR_TENANT_ID',
|
|
28
|
+
baseUrl: 'YOUR_REGION_BASE_URL',
|
|
29
|
+
});
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
You can find your `tenantId` in the [Authsignal Portal](https://portal.authsignal.com/organisations/tenants/api).
|
|
33
|
+
|
|
34
|
+
You must specify the correct `baseUrl` for your tenant's region.
|
|
35
|
+
|
|
36
|
+
| Region | Base URL |
|
|
37
|
+
| ----------- | -------------------------------------- |
|
|
38
|
+
| US (Oregon) | https://challenge.authsignal.com/v1 |
|
|
39
|
+
| AU (Sydney) | https://au-challenge.authsignal.com/v1 |
|
|
40
|
+
| EU (Dublin) | https://eu-challenge.authsignal.com/v1 |
|
|
41
|
+
|
|
42
|
+
## Usage
|
|
43
|
+
|
|
44
|
+
### Passkeys
|
|
45
|
+
|
|
46
|
+
For more detailed info on how add passkeys to your app using Authsignal, check out our [official passkey documentation for React Native](https://docs.authsignal.com/sdks/client/react-native#passkeys).
|
|
47
|
+
|
|
48
|
+
### Push
|
|
49
|
+
|
|
50
|
+
To see how to add push authentication to your app using Authsignal, see our [official push documentation for React Native](https://docs.authsignal.com/sdks/client/react-native#push).
|
|
51
|
+
|
|
52
|
+
## Examples
|
|
53
|
+
|
|
54
|
+
### Passkeys
|
|
55
|
+
|
|
56
|
+
You can check out [this Github repo](https://github.com/authsignal/react-native-passkey-example) to see an example app which implements a sign-in with passkey flow using the Authsignal React Native SDK.
|
|
57
|
+
|
|
58
|
+
To see an example app which demonstrates integration with AWS Cognito + Amplify, take a look at this [this branch](https://github.com/authsignal/react-native-passkey-example/tree/with-aws-cognito).
|
package/lib/commonjs/passkey.js
CHANGED
|
@@ -8,6 +8,7 @@ var _reactNative = require("react-native");
|
|
|
8
8
|
var _error = require("./error");
|
|
9
9
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
10
|
let initialized = false;
|
|
11
|
+
let autofillRequestPending = false;
|
|
11
12
|
const AuthsignalPasskeyModule = _reactNative.NativeModules.AuthsignalPasskeyModule ? _reactNative.NativeModules.AuthsignalPasskeyModule : new Proxy({}, {
|
|
12
13
|
get() {
|
|
13
14
|
throw new Error(_error.LINKING_ERROR);
|
|
@@ -58,7 +59,15 @@ class AuthsignalPasskey {
|
|
|
58
59
|
await this.ensureModuleIsInitialized();
|
|
59
60
|
try {
|
|
60
61
|
if (_reactNative.Platform.OS === 'ios') {
|
|
62
|
+
if (autofill) {
|
|
63
|
+
if (autofillRequestPending) {
|
|
64
|
+
return {};
|
|
65
|
+
} else {
|
|
66
|
+
autofillRequestPending = true;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
61
69
|
const data = await AuthsignalPasskeyModule.signIn(token, autofill);
|
|
70
|
+
autofillRequestPending = false;
|
|
62
71
|
return {
|
|
63
72
|
data
|
|
64
73
|
};
|
|
@@ -74,6 +83,7 @@ class AuthsignalPasskey {
|
|
|
74
83
|
if (this.enableLogging && !autofill) {
|
|
75
84
|
console.log(ex);
|
|
76
85
|
}
|
|
86
|
+
autofillRequestPending = false;
|
|
77
87
|
if (ex instanceof Error) {
|
|
78
88
|
return {
|
|
79
89
|
error: ex.message
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["initialized","AuthsignalPasskeyModule","NativeModules","Proxy","get","Error","LINKING_ERROR","AuthsignalPasskey","constructor","tenantID","baseURL","enableLogging","signUp","token","userName","ensureModuleIsInitialized","data","ex","console","log","error","message","signIn","autofill","Platform","OS","cancel","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":";;;;;;AAAA;AACA;AAAwC;AAmBxC,IAAIA,WAAW,GAAG,KAAK;
|
|
1
|
+
{"version":3,"names":["initialized","autofillRequestPending","AuthsignalPasskeyModule","NativeModules","Proxy","get","Error","LINKING_ERROR","AuthsignalPasskey","constructor","tenantID","baseURL","enableLogging","signUp","token","userName","ensureModuleIsInitialized","data","ex","console","log","error","message","signIn","autofill","Platform","OS","cancel","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"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"}
|
package/lib/module/passkey.js
CHANGED
|
@@ -2,6 +2,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
2
2
|
import { NativeModules, Platform } from 'react-native';
|
|
3
3
|
import { LINKING_ERROR } from './error';
|
|
4
4
|
let initialized = false;
|
|
5
|
+
let autofillRequestPending = false;
|
|
5
6
|
const AuthsignalPasskeyModule = NativeModules.AuthsignalPasskeyModule ? NativeModules.AuthsignalPasskeyModule : new Proxy({}, {
|
|
6
7
|
get() {
|
|
7
8
|
throw new Error(LINKING_ERROR);
|
|
@@ -52,7 +53,15 @@ export class AuthsignalPasskey {
|
|
|
52
53
|
await this.ensureModuleIsInitialized();
|
|
53
54
|
try {
|
|
54
55
|
if (Platform.OS === 'ios') {
|
|
56
|
+
if (autofill) {
|
|
57
|
+
if (autofillRequestPending) {
|
|
58
|
+
return {};
|
|
59
|
+
} else {
|
|
60
|
+
autofillRequestPending = true;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
55
63
|
const data = await AuthsignalPasskeyModule.signIn(token, autofill);
|
|
64
|
+
autofillRequestPending = false;
|
|
56
65
|
return {
|
|
57
66
|
data
|
|
58
67
|
};
|
|
@@ -68,6 +77,7 @@ export class AuthsignalPasskey {
|
|
|
68
77
|
if (this.enableLogging && !autofill) {
|
|
69
78
|
console.log(ex);
|
|
70
79
|
}
|
|
80
|
+
autofillRequestPending = false;
|
|
71
81
|
if (ex instanceof Error) {
|
|
72
82
|
return {
|
|
73
83
|
error: ex.message
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","Platform","LINKING_ERROR","initialized","AuthsignalPasskeyModule","Proxy","get","Error","AuthsignalPasskey","constructor","tenantID","baseURL","enableLogging","signUp","token","userName","ensureModuleIsInitialized","data","ex","console","log","error","message","signIn","autofill","OS","cancel","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":";AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AACtD,SAASC,aAAa,QAAQ,SAAS;AAmBvC,IAAIC,WAAW,GAAG,KAAK;
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","LINKING_ERROR","initialized","autofillRequestPending","AuthsignalPasskeyModule","Proxy","get","Error","AuthsignalPasskey","constructor","tenantID","baseURL","enableLogging","signUp","token","userName","ensureModuleIsInitialized","data","ex","console","log","error","message","signIn","autofill","OS","cancel","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../src/passkey.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../src/passkey.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAgBD,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;gBAEX,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,eAAe;IAM3D,MAAM,CAAC,EACX,KAAK,EACL,QAAQ,GACT,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAoBrD,MAAM,CAAC,EACX,KAAK,EACL,QAAgB,GACjB,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAwC3D,MAAM;YAMQ,yBAAyB;CASxC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-authsignal",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "The official Authsignal React Native library.",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
"ios",
|
|
37
37
|
"android",
|
|
38
38
|
"passkeys",
|
|
39
|
+
"push",
|
|
39
40
|
"auth",
|
|
40
41
|
"authentication",
|
|
41
42
|
"mfa"
|
|
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
|
|
|
17
17
|
s.source_files = "ios/**/*.{h,m,mm,swift}"
|
|
18
18
|
|
|
19
19
|
s.dependency "React-Core"
|
|
20
|
-
s.dependency 'Authsignal', '0.1.
|
|
20
|
+
s.dependency 'Authsignal', '0.1.11'
|
|
21
21
|
|
|
22
22
|
# Don't install the dependencies when we run `pod install` in the old architecture.
|
|
23
23
|
if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
|
package/src/passkey.ts
CHANGED
|
@@ -19,6 +19,7 @@ interface PasskeySignInInput {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
let initialized = false;
|
|
22
|
+
let autofillRequestPending = false;
|
|
22
23
|
|
|
23
24
|
const AuthsignalPasskeyModule = NativeModules.AuthsignalPasskeyModule
|
|
24
25
|
? NativeModules.AuthsignalPasskeyModule
|
|
@@ -73,8 +74,18 @@ export class AuthsignalPasskey {
|
|
|
73
74
|
|
|
74
75
|
try {
|
|
75
76
|
if (Platform.OS === 'ios') {
|
|
77
|
+
if (autofill) {
|
|
78
|
+
if (autofillRequestPending) {
|
|
79
|
+
return {};
|
|
80
|
+
} else {
|
|
81
|
+
autofillRequestPending = true;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
76
85
|
const data = await AuthsignalPasskeyModule.signIn(token, autofill);
|
|
77
86
|
|
|
87
|
+
autofillRequestPending = false;
|
|
88
|
+
|
|
78
89
|
return { data };
|
|
79
90
|
} else if (!autofill) {
|
|
80
91
|
const data = await AuthsignalPasskeyModule.signIn(token);
|
|
@@ -88,6 +99,8 @@ export class AuthsignalPasskey {
|
|
|
88
99
|
console.log(ex);
|
|
89
100
|
}
|
|
90
101
|
|
|
102
|
+
autofillRequestPending = false;
|
|
103
|
+
|
|
91
104
|
if (ex instanceof Error) {
|
|
92
105
|
return { error: ex.message };
|
|
93
106
|
}
|