Skip to content

Commit 120a6a1

Browse files
authored
New response models for signUp/signIn (#17)
* New response models for signUp/signIn * wip * Fix models namespace * wip
1 parent 60df3f4 commit 120a6a1

File tree

7 files changed

+55
-11
lines changed

7 files changed

+55
-11
lines changed

android/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@ dependencies {
129129

130130
implementation "androidx.browser:browser:1.2.0"
131131

132-
implementation("com.authsignal:authsignal-push-android:0.2.10")
133-
implementation("com.authsignal:authsignal-passkey-android:0.1.10")
132+
implementation("com.authsignal:authsignal-push-android:0.2.12")
133+
implementation("com.authsignal:authsignal-passkey-android:0.2.1")
134134
}
135135

136136
if (isNewArchitectureEnabled()) {

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

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@
66
import androidx.annotation.NonNull;
77

88
import com.authsignal.passkey.AuthsignalPasskey;
9+
import com.authsignal.passkey.models.*;
10+
import com.facebook.react.bridge.Arguments;
911
import com.facebook.react.bridge.Promise;
1012
import com.facebook.react.bridge.ReactApplicationContext;
1113
import com.facebook.react.bridge.ReactContextBaseJavaModule;
1214
import com.facebook.react.bridge.ReactMethod;
15+
import com.facebook.react.bridge.WritableMap;
1316

1417
import java.util.HashMap;
1518
import java.util.Map;
@@ -65,7 +68,10 @@ public void signUp(String token, String userName, String displayName, Promise pr
6568
if (response.getError() != null) {
6669
promise.reject("signUp error", response.getError());
6770
} else {
68-
promise.resolve(response.getData());
71+
SignUpResponse signUpResponse = response.getData();
72+
WritableMap map = Arguments.createMap();
73+
map.putString("token", signUpResponse.getToken());
74+
promise.resolve(map);
6975
}
7076
});
7177
} else {
@@ -84,7 +90,15 @@ public void signIn(String action, String token, Promise promise) {
8490
if (response.getError() != null) {
8591
promise.reject("signIn error", response.getError());
8692
} else {
87-
promise.resolve(response.getData());
93+
SignInResponse signInResponse = response.getData();
94+
WritableMap map = Arguments.createMap();
95+
map.putBoolean("isVerified", signInResponse.isVerified());
96+
map.putString("token", signInResponse.getToken());
97+
map.putString("userId", signInResponse.getUserId());
98+
map.putString("userAuthenticatorId", signInResponse.getUserAuthenticatorId());
99+
map.putString("userName", signInResponse.getUserName());
100+
map.putString("userDisplayName", signInResponse.getUserDisplayName());
101+
promise.resolve(map);
88102
}
89103
});
90104
} else {

ios/AuthsignalPasskeyModule.swift

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,11 @@ class AuthsignalPasskeyModule: NSObject {
4343
if (response.error != nil) {
4444
reject("signUp error", response.error, nil)
4545
} else {
46-
resolve(response.data)
46+
let signUpResponse: [String: String?] = [
47+
"token": response.data!.accessToken,
48+
]
49+
50+
resolve(signUpResponse)
4751
}
4852
}
4953
}
@@ -69,7 +73,16 @@ class AuthsignalPasskeyModule: NSObject {
6973
if (response.error != nil) {
7074
reject("signIn error", response.error, nil)
7175
} else {
72-
resolve(response.data)
76+
let signInResponse: [String: String?] = [
77+
"isVerified": response.data!.isVerified,
78+
"token": response.data!.accessToken,
79+
"userId": response.data!.userId,
80+
"userAuthenticatorId": response.data!.userAuthenticatorId,
81+
"userName": response.data!.username,
82+
"userDisplayName": response.data!.userDisplayName,
83+
]
84+
85+
resolve(signInResponse)
7386
}
7487
}
7588
}

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": "0.3.10",
3+
"version": "0.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', '0.2.5'
20+
s.dependency 'Authsignal', '0.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/passkey.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import { NativeModules, Platform } from 'react-native';
22
import { LINKING_ERROR } from './error';
3-
import type { AuthsignalResponse } from './types';
3+
import type {
4+
AuthsignalResponse,
5+
SignInResponse,
6+
SignUpResponse,
7+
} from './types';
48

59
interface ConstructorArgs {
610
tenantID: string;
@@ -49,7 +53,7 @@ export class AuthsignalPasskey {
4953
token,
5054
userName,
5155
displayName,
52-
}: PasskeySignUpInput): Promise<AuthsignalResponse<string>> {
56+
}: PasskeySignUpInput): Promise<AuthsignalResponse<SignUpResponse>> {
5357
await this.ensureModuleIsInitialized();
5458

5559
try {
@@ -77,7 +81,7 @@ export class AuthsignalPasskey {
7781
action,
7882
token,
7983
autofill = false,
80-
}: PasskeySignInInput = {}): Promise<AuthsignalResponse<string>> {
84+
}: PasskeySignInInput = {}): Promise<AuthsignalResponse<SignInResponse>> {
8185
await this.ensureModuleIsInitialized();
8286

8387
try {

src/types.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,16 @@ export interface TokenPayload {
1818
scope?: string;
1919
sub: string;
2020
}
21+
22+
export interface SignUpResponse {
23+
token: string;
24+
}
25+
26+
export interface SignInResponse {
27+
isVerified: boolean;
28+
token?: string;
29+
userId?: string;
30+
userAuthenticatorI?: string;
31+
userName?: string;
32+
userDisplayName?: string;
33+
}

0 commit comments

Comments
 (0)