react-native-authsignal 2.13.0 → 2.14.0

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 CHANGED
@@ -18,6 +18,8 @@ Then link the native iOS dependencies:
18
18
  npx pod-install ios
19
19
  ```
20
20
 
21
+ For Android apps, use compile SDK 35 and Android Gradle Plugin 8.6.0 or newer.
22
+
21
23
  ## Initialization
22
24
 
23
25
  Initialize the Authsignal client in your code:
@@ -66,7 +66,7 @@ dependencies {
66
66
 
67
67
  implementation "androidx.browser:browser:1.2.0"
68
68
 
69
- implementation("com.authsignal:authsignal-android:3.10.0")
69
+ implementation("com.authsignal:authsignal-android:3.11.0")
70
70
 
71
71
  implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3")
72
72
  }
@@ -1,6 +1,6 @@
1
1
  Authsignal_kotlinVersion=2.1.0
2
2
  Authsignal_minSdkVersion=24
3
3
  Authsignal_targetSdkVersion=34
4
- Authsignal_compileSdkVersion=34
4
+ Authsignal_compileSdkVersion=35
5
5
  Authsignal_ndkversion=26.1.10909125
6
6
  android.useAndroidX=true
@@ -32,9 +32,9 @@ class AuthsignalPasskeyModule(private val reactContext: ReactApplicationContext)
32
32
  }
33
33
 
34
34
  @ReactMethod
35
- override fun signUp(token: String?, username: String?, displayName: String?, ignorePasskeyAlreadyExistsError: Boolean, promise: Promise) {
35
+ override fun signUp(token: String?, username: String?, displayName: String?, ignorePasskeyAlreadyExistsError: Boolean, syncCredentials: Boolean, promise: Promise) {
36
36
  launch(promise) {
37
- val response = it.signUp(token, username, displayName, false, ignorePasskeyAlreadyExistsError)
37
+ val response = it.signUp(token, username, displayName, false, ignorePasskeyAlreadyExistsError, syncCredentials)
38
38
 
39
39
  if (response.error != null) {
40
40
  val errorCode = response.errorCode ?: defaultError
@@ -58,10 +58,11 @@ class AuthsignalPasskeyModule(private val reactContext: ReactApplicationContext)
58
58
  token: String?,
59
59
  _autofill: Boolean,
60
60
  preferImmediatelyAvailableCredentials: Boolean,
61
+ syncCredentials: Boolean,
61
62
  promise: Promise
62
63
  ) {
63
64
  launch(promise) {
64
- val response = it.signIn(action, token, preferImmediatelyAvailableCredentials)
65
+ val response = it.signIn(action, token, preferImmediatelyAvailableCredentials, syncCredentials)
65
66
 
66
67
  if (response.error != null) {
67
68
  val errorCode = response.errorCode ?: defaultError
@@ -83,7 +84,6 @@ class AuthsignalPasskeyModule(private val reactContext: ReactApplicationContext)
83
84
 
84
85
  @ReactMethod
85
86
  override fun cancel() {
86
- // No-op on Android; cancel is only applicable for iOS autofill
87
87
  }
88
88
 
89
89
  @ReactMethod
@@ -13,6 +13,7 @@ RCT_EXTERN_METHOD(signUp:(NSString)token
13
13
  withUsername:(NSString)username
14
14
  withDisplayName:(NSString)displayName
15
15
  withIgnorePasskeyAlreadyExistsError:(BOOL)ignorePasskeyAlreadyExistsError
16
+ withSyncCredentials:(BOOL)syncCredentials
16
17
  resolve:(RCTPromiseResolveBlock)resolve
17
18
  reject:(RCTPromiseRejectBlock)reject)
18
19
 
@@ -20,6 +21,7 @@ RCT_EXTERN_METHOD(signIn:(NSString)action
20
21
  withToken:(NSString)token
21
22
  withAutofill:(BOOL)autofill
22
23
  withPreferImmediatelyAvailableCredentials:(BOOL)preferImmediatelyAvailableCredentials
24
+ withSyncCredentials:(BOOL)syncCredentials
23
25
  resolve:(RCTPromiseResolveBlock)resolve
24
26
  reject:(RCTPromiseRejectBlock)reject)
25
27
 
@@ -29,6 +29,7 @@ class AuthsignalPasskeyModule: NSObject {
29
29
  withUsername username: NSString?,
30
30
  withDisplayName displayName: NSString?,
31
31
  withIgnorePasskeyAlreadyExistsError ignorePasskeyAlreadyExistsError: Bool,
32
+ withSyncCredentials syncCredentials: Bool,
32
33
  resolve: @escaping RCTPromiseResolveBlock,
33
34
  reject: @escaping RCTPromiseRejectBlock
34
35
  ) -> Void {
@@ -36,17 +37,18 @@ class AuthsignalPasskeyModule: NSObject {
36
37
  resolve(nil)
37
38
  return
38
39
  }
39
-
40
+
40
41
  let tokenStr = token as String?
41
42
  let usernameStr = username as String?
42
43
  let displayNameStr = displayName as String?
43
-
44
+
44
45
  Task.init {
45
46
  let response = await authsignal!.signUp(
46
47
  token: tokenStr,
47
48
  username: usernameStr,
48
49
  displayName: displayNameStr,
49
- ignorePasskeyAlreadyExistsError: ignorePasskeyAlreadyExistsError
50
+ ignorePasskeyAlreadyExistsError: ignorePasskeyAlreadyExistsError,
51
+ syncCredentials: syncCredentials
50
52
  )
51
53
 
52
54
  if (response.error != nil) {
@@ -66,6 +68,7 @@ class AuthsignalPasskeyModule: NSObject {
66
68
  withToken token: NSString?,
67
69
  withAutofill autofill: Bool,
68
70
  withPreferImmediatelyAvailableCredentials preferImmediatelyAvailableCredentials: Bool,
71
+ withSyncCredentials syncCredentials: Bool,
69
72
  resolve: @escaping RCTPromiseResolveBlock,
70
73
  reject: @escaping RCTPromiseRejectBlock
71
74
  ) -> Void {
@@ -73,16 +76,17 @@ class AuthsignalPasskeyModule: NSObject {
73
76
  resolve(nil)
74
77
  return
75
78
  }
76
-
79
+
77
80
  let actionStr = action as String?
78
81
  let tokenStr = token as String?
79
-
82
+
80
83
  Task.init {
81
84
  let response = await authsignal!.signIn(
82
85
  token: tokenStr,
83
86
  action: actionStr,
84
87
  autofill: autofill,
85
- preferImmediatelyAvailableCredentials: preferImmediatelyAvailableCredentials
88
+ preferImmediatelyAvailableCredentials: preferImmediatelyAvailableCredentials,
89
+ syncCredentials: syncCredentials
86
90
  )
87
91
 
88
92
  if (response.error != nil) {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalPasskeyModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAqE,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAyBtDC,gCAAmB,CAACC,GAAG,CAAO,yBAAyB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalPasskeyModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAqE,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GA2BtDC,gCAAmB,CAACC,GAAG,CAAO,yBAAyB,CAAC","ignoreList":[]}
@@ -28,11 +28,12 @@ class AuthsignalPasskey {
28
28
  token,
29
29
  username,
30
30
  displayName,
31
- ignorePasskeyAlreadyExistsError = false
31
+ ignorePasskeyAlreadyExistsError = false,
32
+ syncCredentials = false
32
33
  } = {}) {
33
34
  await this.ensureModuleIsInitialized();
34
35
  try {
35
- const data = await AuthsignalPasskeyModule.signUp(token ?? null, username ?? null, displayName ?? null, ignorePasskeyAlreadyExistsError);
36
+ const data = await AuthsignalPasskeyModule.signUp(token ?? null, username ?? null, displayName ?? null, ignorePasskeyAlreadyExistsError, syncCredentials);
36
37
  return {
37
38
  data
38
39
  };
@@ -47,7 +48,8 @@ class AuthsignalPasskey {
47
48
  action,
48
49
  token,
49
50
  autofill = false,
50
- preferImmediatelyAvailableCredentials = true
51
+ preferImmediatelyAvailableCredentials = true,
52
+ syncCredentials = false
51
53
  } = {}) {
52
54
  await this.ensureModuleIsInitialized();
53
55
  try {
@@ -58,7 +60,7 @@ class AuthsignalPasskey {
58
60
  this.autofillRequestPending = true;
59
61
  }
60
62
  }
61
- const data = await AuthsignalPasskeyModule.signIn(action ?? null, token ?? null, autofill, preferImmediatelyAvailableCredentials);
63
+ const data = await AuthsignalPasskeyModule.signIn(action ?? null, token ?? null, autofill, preferImmediatelyAvailableCredentials, syncCredentials);
62
64
  this.autofillRequestPending = false;
63
65
  return {
64
66
  data
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_error","_getNativeModule","_NativeAuthsignalPasskeyModule","_interopRequireDefault","e","__esModule","default","AuthsignalPasskeyModule","getNativeModule","NativeAuthsignalPasskeyModule","AuthsignalPasskey","initialized","autofillRequestPending","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","ensureModuleIsInitialized","data","ex","console","log","handleErrorCodes","signIn","action","autofill","preferImmediatelyAvailableCredentials","cancel","isSupported","Platform","OS","Version","parseInt","shouldPromptToCreatePasskey","isAvailableOnDevice","initialize","exports"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_error","_getNativeModule","_NativeAuthsignalPasskeyModule","_interopRequireDefault","e","__esModule","default","AuthsignalPasskeyModule","getNativeModule","NativeAuthsignalPasskeyModule","AuthsignalPasskey","initialized","autofillRequestPending","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","syncCredentials","ensureModuleIsInitialized","data","ex","console","log","handleErrorCodes","signIn","action","autofill","preferImmediatelyAvailableCredentials","cancel","isSupported","Platform","OS","Version","parseInt","shouldPromptToCreatePasskey","isAvailableOnDevice","initialize","exports"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"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","ignoreList":[]}
@@ -22,14 +22,16 @@ class AuthsignalPasskey {
22
22
  token,
23
23
  username,
24
24
  displayName,
25
- ignorePasskeyAlreadyExistsError = false
25
+ ignorePasskeyAlreadyExistsError = false,
26
+ syncCredentials = false
26
27
  } = {}) {
27
28
  try {
28
29
  const client = this.getClient();
29
30
  const result = await client.passkey.signUp({
30
31
  token,
31
32
  username,
32
- displayName
33
+ displayName,
34
+ syncCredentials
33
35
  });
34
36
  if (result.errorCode) {
35
37
  return {
@@ -52,14 +54,16 @@ class AuthsignalPasskey {
52
54
  async signIn({
53
55
  action,
54
56
  token,
55
- autofill = false
57
+ autofill = false,
58
+ syncCredentials = false
56
59
  } = {}) {
57
60
  try {
58
61
  const client = this.getClient();
59
62
  const result = await client.passkey.signIn({
60
63
  action,
61
64
  token,
62
- autofill
65
+ autofill,
66
+ syncCredentials
63
67
  });
64
68
  if (result.errorCode) {
65
69
  return {
@@ -82,8 +86,7 @@ class AuthsignalPasskey {
82
86
  }
83
87
  }
84
88
  cancel() {
85
- // On web, passkey operations are managed by the browser
86
- // and cannot be programmatically cancelled
89
+ return;
87
90
  }
88
91
  isSupported() {
89
92
  return typeof window !== 'undefined' && typeof window.PublicKeyCredential !== 'undefined';
@@ -1 +1 @@
1
- {"version":3,"names":["_webClient","require","_error","AuthsignalPasskey","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","client","getClient","result","passkey","errorCode","error","errorDescription","data","undefined","ex","name","handleWebAuthnError","signIn","action","autofill","isVerified","userId","userAuthenticatorId","cancel","isSupported","window","PublicKeyCredential","getOrCreateWebClient","console","log","message","handleErrorCodes","exports"],"sourceRoot":"../../src","sources":["passkey.web.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_webClient","require","_error","AuthsignalPasskey","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","syncCredentials","client","getClient","result","passkey","errorCode","error","errorDescription","data","undefined","ex","name","handleWebAuthnError","signIn","action","autofill","isVerified","userId","userAuthenticatorId","cancel","isSupported","window","PublicKeyCredential","getOrCreateWebClient","console","log","message","handleErrorCodes","exports"],"sourceRoot":"../../src","sources":["passkey.web.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalPasskeyModule.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAA0B,cAAc;AAyBpE,eAAeA,mBAAmB,CAACC,GAAG,CAAO,yBAAyB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalPasskeyModule.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAA0B,cAAc;AA2BpE,eAAeA,mBAAmB,CAACC,GAAG,CAAO,yBAAyB,CAAC","ignoreList":[]}
@@ -21,11 +21,12 @@ export class AuthsignalPasskey {
21
21
  token,
22
22
  username,
23
23
  displayName,
24
- ignorePasskeyAlreadyExistsError = false
24
+ ignorePasskeyAlreadyExistsError = false,
25
+ syncCredentials = false
25
26
  } = {}) {
26
27
  await this.ensureModuleIsInitialized();
27
28
  try {
28
- const data = await AuthsignalPasskeyModule.signUp(token ?? null, username ?? null, displayName ?? null, ignorePasskeyAlreadyExistsError);
29
+ const data = await AuthsignalPasskeyModule.signUp(token ?? null, username ?? null, displayName ?? null, ignorePasskeyAlreadyExistsError, syncCredentials);
29
30
  return {
30
31
  data
31
32
  };
@@ -40,7 +41,8 @@ export class AuthsignalPasskey {
40
41
  action,
41
42
  token,
42
43
  autofill = false,
43
- preferImmediatelyAvailableCredentials = true
44
+ preferImmediatelyAvailableCredentials = true,
45
+ syncCredentials = false
44
46
  } = {}) {
45
47
  await this.ensureModuleIsInitialized();
46
48
  try {
@@ -51,7 +53,7 @@ export class AuthsignalPasskey {
51
53
  this.autofillRequestPending = true;
52
54
  }
53
55
  }
54
- const data = await AuthsignalPasskeyModule.signIn(action ?? null, token ?? null, autofill, preferImmediatelyAvailableCredentials);
56
+ const data = await AuthsignalPasskeyModule.signIn(action ?? null, token ?? null, autofill, preferImmediatelyAvailableCredentials, syncCredentials);
55
57
  this.autofillRequestPending = false;
56
58
  return {
57
59
  data
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","handleErrorCodes","getNativeModule","NativeAuthsignalPasskeyModule","AuthsignalPasskeyModule","AuthsignalPasskey","initialized","autofillRequestPending","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","ensureModuleIsInitialized","data","ex","console","log","signIn","action","autofill","preferImmediatelyAvailableCredentials","cancel","isSupported","OS","Version","parseInt","shouldPromptToCreatePasskey","isAvailableOnDevice","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,gBAAgB,QAAQ,SAAS;AAC1C,SAASC,eAAe,QAAQ,mBAAmB;AACnD,OAAOC,6BAA6B,MAE7B,iCAAiC;AA4BxC,MAAMC,uBAAuB,GAAGF,eAAe,CAC7C,yBAAyB,EACzBC,6BACF,CAAC;AAED,OAAO,MAAME,iBAAiB,CAAC;EAKrBC,WAAW,GAAG,KAAK;EACnBC,sBAAsB,GAAG,KAAK;EAEtCC,WAAWA,CAAC;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,QAAQ;IAAEC;EAA+B,CAAC,EAAE;IAC3E,IAAI,CAACH,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,aAAa,GAAGA,aAAa;EACpC;EAEA,MAAMC,MAAMA,CAAC;IACXC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,+BAA+B,GAAG;EAChB,CAAC,GAAG,CAAC,CAAC,EAA+C;IACvE,MAAM,IAAI,CAACC,yBAAyB,CAAC,CAAC;IAEtC,IAAI;MACF,MAAMC,IAAI,GAAI,MAAMf,uBAAuB,CAACS,MAAM,CAChDC,KAAK,IAAI,IAAI,EACbC,QAAQ,IAAI,IAAI,EAChBC,WAAW,IAAI,IAAI,EACnBC,+BACF,CAAoB;MAEpB,OAAO;QAAEE;MAAK,CAAC;IACjB,CAAC,CAAC,OAAOC,EAAE,EAAE;MACX,IAAI,IAAI,CAACR,aAAa,EAAE;QACtBS,OAAO,CAACC,GAAG,CAACF,EAAE,CAAC;MACjB;MAEA,OAAOnB,gBAAgB,CAACmB,EAAE,CAAC;IAC7B;EACF;EAEA,MAAMG,MAAMA,CAAC;IACXC,MAAM;IACNV,KAAK;IACLW,QAAQ,GAAG,KAAK;IAChBC,qCAAqC,GAAG;EACtB,CAAC,GAAG,CAAC,CAAC,EAA+C;IACvE,MAAM,IAAI,CAACR,yBAAyB,CAAC,CAAC;IAEtC,IAAI;MACF,IAAIO,QAAQ,EAAE;QACZ,IAAI,IAAI,CAAClB,sBAAsB,EAAE;UAC/B,OAAO,CAAC,CAAC;QACX,CAAC,MAAM;UACL,IAAI,CAACA,sBAAsB,GAAG,IAAI;QACpC;MACF;MAEA,MAAMY,IAAI,GAAI,MAAMf,uBAAuB,CAACmB,MAAM,CAChDC,MAAM,IAAI,IAAI,EACdV,KAAK,IAAI,IAAI,EACbW,QAAQ,EACRC,qCACF,CAAoB;MAEpB,IAAI,CAACnB,sBAAsB,GAAG,KAAK;MAEnC,OAAO;QAAEY;MAAK,CAAC;IACjB,CAAC,CAAC,OAAOC,EAAE,EAAE;MACX,IAAI,IAAI,CAACR,aAAa,IAAI,CAACa,QAAQ,EAAE;QACnCJ,OAAO,CAACC,GAAG,CAACF,EAAE,CAAC;MACjB;MAEA,IAAI,CAACb,sBAAsB,GAAG,KAAK;MAEnC,OAAON,gBAAgB,CAACmB,EAAE,CAAC;IAC7B;EACF;EAEAO,MAAMA,CAAA,EAAG;IACP,IAAI,CAACpB,sBAAsB,GAAG,KAAK;IACnCH,uBAAuB,CAACuB,MAAM,CAAC,CAAC;EAClC;EAEAC,WAAWA,CAAA,EAAY;IACrB,IAAI5B,QAAQ,CAAC6B,EAAE,KAAK,SAAS,EAAE;MAC7B,OAAO7B,QAAQ,CAAC8B,OAAO,IAAI,EAAE;IAC/B,CAAC,MAAM,IAAI9B,QAAQ,CAAC6B,EAAE,KAAK,KAAK,EAAE;MAChC,OAAOE,QAAQ,CAAC/B,QAAQ,CAAC8B,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE;IAC7C,CAAC,MAAM;MACL,OAAO,KAAK;IACd;EACF;EAEA,MAAME,2BAA2BA,CAAC;IAChCjB;EACqB,CAAC,GAAG,CAAC,CAAC,EAAoB;IAC/C,MAAM,IAAI,CAACG,yBAAyB,CAAC,CAAC;IAEtC,OAAO,MAAMd,uBAAuB,CAAC4B,2BAA2B,CAC9DjB,QAAQ,IAAI,IACd,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMkB,mBAAmBA,CAAA,EAAqB;IAC5C,MAAM,IAAI,CAACf,yBAAyB,CAAC,CAAC;IAEtC,OAAO,MAAMd,uBAAuB,CAAC6B,mBAAmB,CAAC,CAAC;EAC5D;EAEA,MAAcf,yBAAyBA,CAAA,EAAG;IACxC,IAAI,IAAI,CAACZ,WAAW,EAAE;MACpB;IACF;IAEA,MAAMF,uBAAuB,CAAC8B,UAAU,CACtC,IAAI,CAACzB,QAAQ,EACb,IAAI,CAACC,OAAO,EACZ,IAAI,CAACC,QAAQ,IAAI,IACnB,CAAC;IAED,IAAI,CAACL,WAAW,GAAG,IAAI;EACzB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["Platform","handleErrorCodes","getNativeModule","NativeAuthsignalPasskeyModule","AuthsignalPasskeyModule","AuthsignalPasskey","initialized","autofillRequestPending","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","syncCredentials","ensureModuleIsInitialized","data","ex","console","log","signIn","action","autofill","preferImmediatelyAvailableCredentials","cancel","isSupported","OS","Version","parseInt","shouldPromptToCreatePasskey","isAvailableOnDevice","initialize"],"sourceRoot":"../../src","sources":["passkey.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,gBAAgB,QAAQ,SAAS;AAC1C,SAASC,eAAe,QAAQ,mBAAmB;AACnD,OAAOC,6BAA6B,MAE7B,iCAAiC;AA8BxC,MAAMC,uBAAuB,GAAGF,eAAe,CAC7C,yBAAyB,EACzBC,6BACF,CAAC;AAED,OAAO,MAAME,iBAAiB,CAAC;EAKrBC,WAAW,GAAG,KAAK;EACnBC,sBAAsB,GAAG,KAAK;EAEtCC,WAAWA,CAAC;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,QAAQ;IAAEC;EAA+B,CAAC,EAAE;IAC3E,IAAI,CAACH,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,aAAa,GAAGA,aAAa;EACpC;EAEA,MAAMC,MAAMA,CAAC;IACXC,KAAK;IACLC,QAAQ;IACRC,WAAW;IACXC,+BAA+B,GAAG,KAAK;IACvCC,eAAe,GAAG;EACA,CAAC,GAAG,CAAC,CAAC,EAA+C;IACvE,MAAM,IAAI,CAACC,yBAAyB,CAAC,CAAC;IAEtC,IAAI;MACF,MAAMC,IAAI,GAAI,MAAMhB,uBAAuB,CAACS,MAAM,CAChDC,KAAK,IAAI,IAAI,EACbC,QAAQ,IAAI,IAAI,EAChBC,WAAW,IAAI,IAAI,EACnBC,+BAA+B,EAC/BC,eACF,CAAoB;MAEpB,OAAO;QAAEE;MAAK,CAAC;IACjB,CAAC,CAAC,OAAOC,EAAE,EAAE;MACX,IAAI,IAAI,CAACT,aAAa,EAAE;QACtBU,OAAO,CAACC,GAAG,CAACF,EAAE,CAAC;MACjB;MAEA,OAAOpB,gBAAgB,CAACoB,EAAE,CAAC;IAC7B;EACF;EAEA,MAAMG,MAAMA,CAAC;IACXC,MAAM;IACNX,KAAK;IACLY,QAAQ,GAAG,KAAK;IAChBC,qCAAqC,GAAG,IAAI;IAC5CT,eAAe,GAAG;EACA,CAAC,GAAG,CAAC,CAAC,EAA+C;IACvE,MAAM,IAAI,CAACC,yBAAyB,CAAC,CAAC;IAEtC,IAAI;MACF,IAAIO,QAAQ,EAAE;QACZ,IAAI,IAAI,CAACnB,sBAAsB,EAAE;UAC/B,OAAO,CAAC,CAAC;QACX,CAAC,MAAM;UACL,IAAI,CAACA,sBAAsB,GAAG,IAAI;QACpC;MACF;MAEA,MAAMa,IAAI,GAAI,MAAMhB,uBAAuB,CAACoB,MAAM,CAChDC,MAAM,IAAI,IAAI,EACdX,KAAK,IAAI,IAAI,EACbY,QAAQ,EACRC,qCAAqC,EACrCT,eACF,CAAoB;MAEpB,IAAI,CAACX,sBAAsB,GAAG,KAAK;MAEnC,OAAO;QAAEa;MAAK,CAAC;IACjB,CAAC,CAAC,OAAOC,EAAE,EAAE;MACX,IAAI,IAAI,CAACT,aAAa,IAAI,CAACc,QAAQ,EAAE;QACnCJ,OAAO,CAACC,GAAG,CAACF,EAAE,CAAC;MACjB;MAEA,IAAI,CAACd,sBAAsB,GAAG,KAAK;MAEnC,OAAON,gBAAgB,CAACoB,EAAE,CAAC;IAC7B;EACF;EAEAO,MAAMA,CAAA,EAAG;IACP,IAAI,CAACrB,sBAAsB,GAAG,KAAK;IACnCH,uBAAuB,CAACwB,MAAM,CAAC,CAAC;EAClC;EAEAC,WAAWA,CAAA,EAAY;IACrB,IAAI7B,QAAQ,CAAC8B,EAAE,KAAK,SAAS,EAAE;MAC7B,OAAO9B,QAAQ,CAAC+B,OAAO,IAAI,EAAE;IAC/B,CAAC,MAAM,IAAI/B,QAAQ,CAAC8B,EAAE,KAAK,KAAK,EAAE;MAChC,OAAOE,QAAQ,CAAChC,QAAQ,CAAC+B,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE;IAC7C,CAAC,MAAM;MACL,OAAO,KAAK;IACd;EACF;EAEA,MAAME,2BAA2BA,CAAC;IAChClB;EACqB,CAAC,GAAG,CAAC,CAAC,EAAoB;IAC/C,MAAM,IAAI,CAACI,yBAAyB,CAAC,CAAC;IAEtC,OAAO,MAAMf,uBAAuB,CAAC6B,2BAA2B,CAC9DlB,QAAQ,IAAI,IACd,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMmB,mBAAmBA,CAAA,EAAqB;IAC5C,MAAM,IAAI,CAACf,yBAAyB,CAAC,CAAC;IAEtC,OAAO,MAAMf,uBAAuB,CAAC8B,mBAAmB,CAAC,CAAC;EAC5D;EAEA,MAAcf,yBAAyBA,CAAA,EAAG;IACxC,IAAI,IAAI,CAACb,WAAW,EAAE;MACpB;IACF;IAEA,MAAMF,uBAAuB,CAAC+B,UAAU,CACtC,IAAI,CAAC1B,QAAQ,EACb,IAAI,CAACC,OAAO,EACZ,IAAI,CAACC,QAAQ,IAAI,IACnB,CAAC;IAED,IAAI,CAACL,WAAW,GAAG,IAAI;EACzB;AACF","ignoreList":[]}
@@ -16,14 +16,16 @@ export class AuthsignalPasskey {
16
16
  token,
17
17
  username,
18
18
  displayName,
19
- ignorePasskeyAlreadyExistsError = false
19
+ ignorePasskeyAlreadyExistsError = false,
20
+ syncCredentials = false
20
21
  } = {}) {
21
22
  try {
22
23
  const client = this.getClient();
23
24
  const result = await client.passkey.signUp({
24
25
  token,
25
26
  username,
26
- displayName
27
+ displayName,
28
+ syncCredentials
27
29
  });
28
30
  if (result.errorCode) {
29
31
  return {
@@ -46,14 +48,16 @@ export class AuthsignalPasskey {
46
48
  async signIn({
47
49
  action,
48
50
  token,
49
- autofill = false
51
+ autofill = false,
52
+ syncCredentials = false
50
53
  } = {}) {
51
54
  try {
52
55
  const client = this.getClient();
53
56
  const result = await client.passkey.signIn({
54
57
  action,
55
58
  token,
56
- autofill
59
+ autofill,
60
+ syncCredentials
57
61
  });
58
62
  if (result.errorCode) {
59
63
  return {
@@ -76,8 +80,7 @@ export class AuthsignalPasskey {
76
80
  }
77
81
  }
78
82
  cancel() {
79
- // On web, passkey operations are managed by the browser
80
- // and cannot be programmatically cancelled
83
+ return;
81
84
  }
82
85
  isSupported() {
83
86
  return typeof window !== 'undefined' && typeof window.PublicKeyCredential !== 'undefined';
@@ -1 +1 @@
1
- {"version":3,"names":["getOrCreateWebClient","handleErrorCodes","AuthsignalPasskey","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","client","getClient","result","passkey","errorCode","error","errorDescription","data","undefined","ex","name","handleWebAuthnError","signIn","action","autofill","isVerified","userId","userAuthenticatorId","cancel","isSupported","window","PublicKeyCredential","console","log","message"],"sourceRoot":"../../src","sources":["passkey.web.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getOrCreateWebClient","handleErrorCodes","AuthsignalPasskey","constructor","tenantID","baseURL","deviceID","enableLogging","signUp","token","username","displayName","ignorePasskeyAlreadyExistsError","syncCredentials","client","getClient","result","passkey","errorCode","error","errorDescription","data","undefined","ex","name","handleWebAuthnError","signIn","action","autofill","isVerified","userId","userAuthenticatorId","cancel","isSupported","window","PublicKeyCredential","console","log","message"],"sourceRoot":"../../src","sources":["passkey.web.ts"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,8 @@
1
1
  import { type TurboModule } from 'react-native';
2
2
  export interface Spec extends TurboModule {
3
3
  initialize(tenantID: string, withBaseURL: string, withDeviceID: string | null): Promise<void>;
4
- signUp(token: string | null, withUsername: string | null, withDisplayName: string | null, withIgnorePasskeyAlreadyExistsError: boolean): Promise<Object | null>;
5
- signIn(action: string | null, withToken: string | null, withAutofill: boolean, withPreferImmediatelyAvailableCredentials: boolean): Promise<Object | null>;
4
+ signUp(token: string | null, withUsername: string | null, withDisplayName: string | null, withIgnorePasskeyAlreadyExistsError: boolean, withSyncCredentials: boolean): Promise<Object | null>;
5
+ signIn(action: string | null, withToken: string | null, withAutofill: boolean, withPreferImmediatelyAvailableCredentials: boolean, withSyncCredentials: boolean): Promise<Object | null>;
6
6
  shouldPromptToCreatePasskey(username: string | null): Promise<boolean>;
7
7
  isAvailableOnDevice(): Promise<boolean>;
8
8
  cancel(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeAuthsignalPasskeyModule.d.ts","sourceRoot":"","sources":["../../src/NativeAuthsignalPasskeyModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CACJ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,EAC9B,mCAAmC,EAAE,OAAO,GAC3C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1B,MAAM,CACJ,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,YAAY,EAAE,OAAO,EACrB,yCAAyC,EAAE,OAAO,GACjD,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1B,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvE,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,IAAI,IAAI,CAAC;CAChB;;AAED,wBAAwE"}
1
+ {"version":3,"file":"NativeAuthsignalPasskeyModule.d.ts","sourceRoot":"","sources":["../../src/NativeAuthsignalPasskeyModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CACR,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CACJ,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,EAC9B,mCAAmC,EAAE,OAAO,EAC5C,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1B,MAAM,CACJ,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,YAAY,EAAE,OAAO,EACrB,yCAAyC,EAAE,OAAO,EAClD,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1B,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvE,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,IAAI,IAAI,CAAC;CAChB;;AAED,wBAAwE"}
@@ -10,12 +10,14 @@ interface PasskeySignUpInput {
10
10
  username?: string;
11
11
  displayName?: string;
12
12
  ignorePasskeyAlreadyExistsError?: boolean;
13
+ syncCredentials?: boolean;
13
14
  }
14
15
  interface PasskeySignInInput {
15
16
  action?: string;
16
17
  token?: string;
17
18
  autofill?: boolean;
18
19
  preferImmediatelyAvailableCredentials?: boolean;
20
+ syncCredentials?: boolean;
19
21
  }
20
22
  export declare class AuthsignalPasskey {
21
23
  tenantID: string;
@@ -25,8 +27,8 @@ export declare class AuthsignalPasskey {
25
27
  private initialized;
26
28
  private autofillRequestPending;
27
29
  constructor({ tenantID, baseURL, deviceID, enableLogging }: ConstructorArgs);
28
- signUp({ token, username, displayName, ignorePasskeyAlreadyExistsError, }?: PasskeySignUpInput): Promise<AuthsignalResponse<SignUpResponse>>;
29
- signIn({ action, token, autofill, preferImmediatelyAvailableCredentials, }?: PasskeySignInInput): Promise<AuthsignalResponse<SignInResponse>>;
30
+ signUp({ token, username, displayName, ignorePasskeyAlreadyExistsError, syncCredentials, }?: PasskeySignUpInput): Promise<AuthsignalResponse<SignUpResponse>>;
31
+ signIn({ action, token, autofill, preferImmediatelyAvailableCredentials, syncCredentials, }?: PasskeySignInInput): Promise<AuthsignalResponse<SignInResponse>>;
30
32
  cancel(): void;
31
33
  isSupported(): boolean;
32
34
  shouldPromptToCreatePasskey({ username, }?: {
@@ -1 +1 @@
1
- {"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../src/passkey.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC,CAAC,EAAE,OAAO,CAAC;CACjD;AAOD,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,sBAAsB,CAAS;gBAE3B,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,eAAe;IAOrE,MAAM,CAAC,EACX,KAAK,EACL,QAAQ,EACR,WAAW,EACX,+BAAuC,GACxC,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAqBlE,MAAM,CAAC,EACX,MAAM,EACN,KAAK,EACL,QAAgB,EAChB,qCAA4C,GAC7C,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAiCxE,MAAM;IAKN,WAAW,IAAI,OAAO;IAUhB,2BAA2B,CAAC,EAChC,QAAQ,GACT,GAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQhD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;YAM/B,yBAAyB;CAaxC"}
1
+ {"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../src/passkey.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAOD,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,sBAAsB,CAAS;gBAE3B,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,eAAe;IAOrE,MAAM,CAAC,EACX,KAAK,EACL,QAAQ,EACR,WAAW,EACX,+BAAuC,EACvC,eAAuB,GACxB,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAsBlE,MAAM,CAAC,EACX,MAAM,EACN,KAAK,EACL,QAAgB,EAChB,qCAA4C,EAC5C,eAAuB,GACxB,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAkCxE,MAAM;IAKN,WAAW,IAAI,OAAO;IAUhB,2BAA2B,CAAC,EAChC,QAAQ,GACT,GAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQhD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC;YAM/B,yBAAyB;CAaxC"}
@@ -10,11 +10,13 @@ interface PasskeySignUpInput {
10
10
  username?: string;
11
11
  displayName?: string;
12
12
  ignorePasskeyAlreadyExistsError?: boolean;
13
+ syncCredentials?: boolean;
13
14
  }
14
15
  interface PasskeySignInInput {
15
16
  action?: string;
16
17
  token?: string;
17
18
  autofill?: boolean;
19
+ syncCredentials?: boolean;
18
20
  }
19
21
  export declare class AuthsignalPasskey {
20
22
  tenantID: string;
@@ -22,8 +24,8 @@ export declare class AuthsignalPasskey {
22
24
  deviceID?: string;
23
25
  enableLogging: boolean;
24
26
  constructor({ tenantID, baseURL, deviceID, enableLogging }: ConstructorArgs);
25
- signUp({ token, username, displayName, ignorePasskeyAlreadyExistsError, }?: PasskeySignUpInput): Promise<AuthsignalResponse<SignUpResponse>>;
26
- signIn({ action, token, autofill, }?: PasskeySignInInput): Promise<AuthsignalResponse<SignInResponse>>;
27
+ signUp({ token, username, displayName, ignorePasskeyAlreadyExistsError, syncCredentials, }?: PasskeySignUpInput): Promise<AuthsignalResponse<SignUpResponse>>;
28
+ signIn({ action, token, autofill, syncCredentials, }?: PasskeySignInInput): Promise<AuthsignalResponse<SignInResponse>>;
27
29
  cancel(): void;
28
30
  isSupported(): boolean;
29
31
  private getClient;
@@ -1 +1 @@
1
- {"version":3,"file":"passkey.web.d.ts","sourceRoot":"","sources":["../../src/passkey.web.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;gBAEX,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,eAAe;IAOrE,MAAM,CAAC,EACX,KAAK,EACL,QAAQ,EACR,WAAW,EACX,+BAAuC,GACxC,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IA4BlE,MAAM,CAAC,EACX,MAAM,EACN,KAAK,EACL,QAAgB,GACjB,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAiCxE,MAAM;IAKN,WAAW,IAAI,OAAO;IAOtB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,mBAAmB;CAqB5B"}
1
+ {"version":3,"file":"passkey.web.d.ts","sourceRoot":"","sources":["../../src/passkey.web.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;gBAEX,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,eAAe;IAOrE,MAAM,CAAC,EACX,KAAK,EACL,QAAQ,EACR,WAAW,EACX,+BAAuC,EACvC,eAAuB,GACxB,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IA6BlE,MAAM,CAAC,EACX,MAAM,EACN,KAAK,EACL,QAAgB,EAChB,eAAuB,GACxB,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAkCxE,MAAM;IAIN,WAAW,IAAI,OAAO;IAOtB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,mBAAmB;CAqB5B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-authsignal",
3
- "version": "2.13.0",
3
+ "version": "2.14.0",
4
4
  "description": "The official Authsignal React Native library.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -53,7 +53,7 @@
53
53
  "registry": "https://registry.npmjs.org/"
54
54
  },
55
55
  "devDependencies": {
56
- "@authsignal/browser": "^1.13.1",
56
+ "@authsignal/browser": "^1.17.0",
57
57
  "@react-native-community/eslint-config": "^3.0.2",
58
58
  "@types/react": "~17.0.21",
59
59
  "@types/react-native": "0.68.0",
@@ -18,7 +18,7 @@ Pod::Spec.new do |s|
18
18
  s.private_header_files = "ios/**/*.h"
19
19
 
20
20
  s.dependency "React-Core"
21
- s.dependency 'Authsignal', '~> 2.9.0'
21
+ s.dependency 'Authsignal', '~> 2.10.0'
22
22
 
23
23
  # Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
24
24
  # See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
@@ -10,13 +10,15 @@ export interface Spec extends TurboModule {
10
10
  token: string | null,
11
11
  withUsername: string | null,
12
12
  withDisplayName: string | null,
13
- withIgnorePasskeyAlreadyExistsError: boolean
13
+ withIgnorePasskeyAlreadyExistsError: boolean,
14
+ withSyncCredentials: boolean
14
15
  ): Promise<Object | null>;
15
16
  signIn(
16
17
  action: string | null,
17
18
  withToken: string | null,
18
19
  withAutofill: boolean,
19
- withPreferImmediatelyAvailableCredentials: boolean
20
+ withPreferImmediatelyAvailableCredentials: boolean,
21
+ withSyncCredentials: boolean
20
22
  ): Promise<Object | null>;
21
23
  shouldPromptToCreatePasskey(username: string | null): Promise<boolean>;
22
24
  isAvailableOnDevice(): Promise<boolean>;
package/src/passkey.ts CHANGED
@@ -22,6 +22,7 @@ interface PasskeySignUpInput {
22
22
  username?: string;
23
23
  displayName?: string;
24
24
  ignorePasskeyAlreadyExistsError?: boolean;
25
+ syncCredentials?: boolean;
25
26
  }
26
27
 
27
28
  interface PasskeySignInInput {
@@ -29,6 +30,7 @@ interface PasskeySignInInput {
29
30
  token?: string;
30
31
  autofill?: boolean;
31
32
  preferImmediatelyAvailableCredentials?: boolean;
33
+ syncCredentials?: boolean;
32
34
  }
33
35
 
34
36
  const AuthsignalPasskeyModule = getNativeModule<AuthsignalPasskeyModuleSpec>(
@@ -56,6 +58,7 @@ export class AuthsignalPasskey {
56
58
  username,
57
59
  displayName,
58
60
  ignorePasskeyAlreadyExistsError = false,
61
+ syncCredentials = false,
59
62
  }: PasskeySignUpInput = {}): Promise<AuthsignalResponse<SignUpResponse>> {
60
63
  await this.ensureModuleIsInitialized();
61
64
 
@@ -64,7 +67,8 @@ export class AuthsignalPasskey {
64
67
  token ?? null,
65
68
  username ?? null,
66
69
  displayName ?? null,
67
- ignorePasskeyAlreadyExistsError
70
+ ignorePasskeyAlreadyExistsError,
71
+ syncCredentials
68
72
  )) as SignUpResponse;
69
73
 
70
74
  return { data };
@@ -82,6 +86,7 @@ export class AuthsignalPasskey {
82
86
  token,
83
87
  autofill = false,
84
88
  preferImmediatelyAvailableCredentials = true,
89
+ syncCredentials = false,
85
90
  }: PasskeySignInInput = {}): Promise<AuthsignalResponse<SignInResponse>> {
86
91
  await this.ensureModuleIsInitialized();
87
92
 
@@ -98,7 +103,8 @@ export class AuthsignalPasskey {
98
103
  action ?? null,
99
104
  token ?? null,
100
105
  autofill,
101
- preferImmediatelyAvailableCredentials
106
+ preferImmediatelyAvailableCredentials,
107
+ syncCredentials
102
108
  )) as SignInResponse;
103
109
 
104
110
  this.autofillRequestPending = false;
@@ -18,12 +18,14 @@ interface PasskeySignUpInput {
18
18
  username?: string;
19
19
  displayName?: string;
20
20
  ignorePasskeyAlreadyExistsError?: boolean;
21
+ syncCredentials?: boolean;
21
22
  }
22
23
 
23
24
  interface PasskeySignInInput {
24
25
  action?: string;
25
26
  token?: string;
26
27
  autofill?: boolean;
28
+ syncCredentials?: boolean;
27
29
  }
28
30
 
29
31
  export class AuthsignalPasskey {
@@ -44,6 +46,7 @@ export class AuthsignalPasskey {
44
46
  username,
45
47
  displayName,
46
48
  ignorePasskeyAlreadyExistsError = false,
49
+ syncCredentials = false,
47
50
  }: PasskeySignUpInput = {}): Promise<AuthsignalResponse<SignUpResponse>> {
48
51
  try {
49
52
  const client = this.getClient();
@@ -51,6 +54,7 @@ export class AuthsignalPasskey {
51
54
  token,
52
55
  username,
53
56
  displayName,
57
+ syncCredentials,
54
58
  });
55
59
 
56
60
  if (result.errorCode) {
@@ -76,6 +80,7 @@ export class AuthsignalPasskey {
76
80
  action,
77
81
  token,
78
82
  autofill = false,
83
+ syncCredentials = false,
79
84
  }: PasskeySignInInput = {}): Promise<AuthsignalResponse<SignInResponse>> {
80
85
  try {
81
86
  const client = this.getClient();
@@ -83,6 +88,7 @@ export class AuthsignalPasskey {
83
88
  action,
84
89
  token,
85
90
  autofill,
91
+ syncCredentials,
86
92
  });
87
93
 
88
94
  if (result.errorCode) {
@@ -110,8 +116,7 @@ export class AuthsignalPasskey {
110
116
  }
111
117
 
112
118
  cancel() {
113
- // On web, passkey operations are managed by the browser
114
- // and cannot be programmatically cancelled
119
+ return;
115
120
  }
116
121
 
117
122
  isSupported(): boolean {