Skip to content

Commit 726f586

Browse files
authored
Allow passing custom device ID to client (#51)
* Allow passing custom device ID to client * wip
1 parent 21567ac commit 726f586

File tree

8 files changed

+26
-9
lines changed

8 files changed

+26
-9
lines changed

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,5 +77,5 @@ dependencies {
7777

7878
implementation "androidx.browser:browser:1.2.0"
7979

80-
implementation("com.authsignal:authsignal-android:2.2.12")
80+
implementation("com.authsignal:authsignal-android:2.3.1")
8181
}

android/src/main/java/com/authsignal/react/AuthsignalPasskeyModule.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ class AuthsignalPasskeyModule(private val reactContext: ReactApplicationContext)
2929
}
3030

3131
@ReactMethod
32-
fun initialize(tenantID: String, baseURL: String, promise: Promise) {
32+
fun initialize(tenantID: String, baseURL: String, deviceID: String?, promise: Promise) {
3333
val activity = reactContext.currentActivity
3434

3535
if (activity != null) {
36-
authsignal = AuthsignalPasskey(tenantID, baseURL, activity)
36+
authsignal = AuthsignalPasskey(tenantID, baseURL, activity, deviceID)
3737
}
3838

3939
promise.resolve(null)

ios/AuthsignalPasskeyModule.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ @interface RCT_EXTERN_MODULE(AuthsignalPasskeyModule, NSObject)
55

66
RCT_EXTERN_METHOD(initialize:(NSString)tenantID
77
withBaseURL:(NSString)baseURL
8+
withDeviceID:(NSString)deviceID
89
resolver:(RCTPromiseResolveBlock)resolve
910
rejecter:(RCTPromiseRejectBlock)reject)
1011

ios/AuthsignalPasskeyModule.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@ class AuthsignalPasskeyModule: NSObject {
1313
@objc func initialize(
1414
_ tenantID: NSString,
1515
withBaseURL baseURL: NSString,
16+
withDeviceID deviceID: NSString?,
1617
resolver resolve: @escaping RCTPromiseResolveBlock,
1718
rejecter reject: @escaping RCTPromiseRejectBlock
1819
) -> Void {
19-
self.authsignal = AuthsignalPasskey(tenantID: tenantID as String, baseURL: baseURL as String)
20+
self.authsignal = AuthsignalPasskey(tenantID: tenantID as String, baseURL: baseURL as String, deviceID: deviceID as String?)
2021

2122
resolve(nil)
2223
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-native-authsignal",
3-
"version": "1.3.8",
3+
"version": "1.4.0",
44
"description": "The official Authsignal React Native library.",
55
"main": "lib/commonjs/index",
66
"module": "lib/module/index",

react-native-authsignal.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
1717
s.source_files = "ios/**/*.{h,m,mm,swift}"
1818

1919
s.dependency "React-Core"
20-
s.dependency 'Authsignal', '1.2.7'
20+
s.dependency 'Authsignal', '1.3.0'
2121

2222
# Don't install the dependencies when we run `pod install` in the old architecture.
2323
if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then

src/index.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ const AuthsignalModule = NativeModules.AuthsignalModule
2424
interface ConstructorArgs {
2525
tenantID: string;
2626
baseURL?: string;
27+
deviceID?: string;
2728
enableLogging?: boolean;
2829
}
2930

@@ -42,14 +43,21 @@ export class Authsignal {
4243
constructor({
4344
tenantID,
4445
baseURL = 'https://api.authsignal.com/v1',
46+
deviceID,
4547
enableLogging = __DEV__,
4648
}: ConstructorArgs) {
4749
this.tenantID = tenantID;
4850
this.baseURL = baseURL;
4951
this.enableLogging = enableLogging;
5052

53+
this.passkey = new AuthsignalPasskey({
54+
tenantID,
55+
baseURL,
56+
deviceID,
57+
enableLogging,
58+
});
59+
5160
this.email = new AuthsignalEmail({ tenantID, baseURL, enableLogging });
52-
this.passkey = new AuthsignalPasskey({ tenantID, baseURL, enableLogging });
5361
this.push = new AuthsignalPush({ tenantID, baseURL, enableLogging });
5462
this.device = new AuthsignalDevice({ tenantID, baseURL, enableLogging });
5563
this.sms = new AuthsignalSms({ tenantID, baseURL, enableLogging });

src/passkey.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import type {
99
interface ConstructorArgs {
1010
tenantID: string;
1111
baseURL: string;
12+
deviceID?: string;
1213
enableLogging: boolean;
1314
}
1415

@@ -42,11 +43,13 @@ const AuthsignalPasskeyModule = NativeModules.AuthsignalPasskeyModule
4243
export class AuthsignalPasskey {
4344
tenantID: string;
4445
baseURL: string;
46+
deviceID?: string;
4547
enableLogging: boolean;
4648

47-
constructor({ tenantID, baseURL, enableLogging }: ConstructorArgs) {
49+
constructor({ tenantID, baseURL, deviceID, enableLogging }: ConstructorArgs) {
4850
this.tenantID = tenantID;
4951
this.baseURL = baseURL;
52+
this.deviceID = deviceID;
5053
this.enableLogging = enableLogging;
5154
}
5255

@@ -141,7 +144,11 @@ export class AuthsignalPasskey {
141144
return;
142145
}
143146

144-
await AuthsignalPasskeyModule.initialize(this.tenantID, this.baseURL);
147+
await AuthsignalPasskeyModule.initialize(
148+
this.tenantID,
149+
this.baseURL,
150+
this.deviceID
151+
);
145152

146153
initialized = true;
147154
}

0 commit comments

Comments
 (0)