react-native-credentials-manager 0.4.1 → 0.5.1
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 +21 -319
- package/android/generated/java/com/credentialsmanager/NativeCredentialsManagerSpec.java +3 -2
- package/android/generated/jni/RNCredentialsManagerSpec-generated.cpp +6 -6
- package/android/generated/jni/react/renderer/components/RNCredentialsManagerSpec/RNCredentialsManagerSpecJSI-generated.cpp +8 -7
- package/android/generated/jni/react/renderer/components/RNCredentialsManagerSpec/RNCredentialsManagerSpecJSI.h +65 -10
- package/android/src/main/java/com/credentialsmanager/handlers/CredentialHandler.kt +48 -5
- package/android/src/newarch/java/com/credentialsmanager/CredentialsManagerModule.kt +20 -15
- package/android/src/oldarch/java/com/credentialsmanager/CredentialsManagerModule.kt +29 -14
- package/ios/generated/RNCredentialsManagerSpec/RNCredentialsManagerSpec-generated.mm +17 -11
- package/ios/generated/RNCredentialsManagerSpec/RNCredentialsManagerSpec.h +38 -11
- package/ios/generated/RNCredentialsManagerSpecJSI-generated.cpp +8 -7
- package/ios/generated/RNCredentialsManagerSpecJSI.h +65 -10
- package/lib/commonjs/NativeCredentialsManager.js.map +1 -1
- package/lib/commonjs/index.js +13 -6
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/NativeCredentialsManager.js.map +1 -1
- package/lib/module/index.js +11 -4
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/commonjs/src/NativeCredentialsManager.d.ts +12 -7
- package/lib/typescript/commonjs/src/NativeCredentialsManager.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +12 -7
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/NativeCredentialsManager.d.ts +12 -7
- package/lib/typescript/module/src/NativeCredentialsManager.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +12 -7
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/NativeCredentialsManager.ts +20 -7
- package/src/index.tsx +29 -10
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
package com.credentialsmanager
|
|
2
2
|
import android.util.Log
|
|
3
|
+
import androidx.credentials.exceptions.ClearCredentialException
|
|
3
4
|
import androidx.credentials.exceptions.CreateCredentialException
|
|
4
5
|
import androidx.credentials.exceptions.GetCredentialException
|
|
5
6
|
import androidx.credentials.exceptions.NoCredentialException
|
|
@@ -7,11 +8,11 @@ import com.credentialsmanager.handlers.CredentialHandler
|
|
|
7
8
|
import com.credentialsmanager.handlers.ErrorHandler
|
|
8
9
|
import com.facebook.react.bridge.Promise
|
|
9
10
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
11
|
+
import com.facebook.react.bridge.ReadableArray
|
|
10
12
|
import com.facebook.react.bridge.ReadableMap
|
|
11
13
|
import kotlinx.coroutines.CoroutineScope
|
|
12
14
|
import kotlinx.coroutines.Dispatchers
|
|
13
15
|
import kotlinx.coroutines.launch
|
|
14
|
-
import androidx.credentials.exceptions.ClearCredentialException
|
|
15
16
|
|
|
16
17
|
class CredentialsManagerModule(
|
|
17
18
|
reactContext: ReactApplicationContext,
|
|
@@ -60,32 +61,36 @@ class CredentialsManagerModule(
|
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
|
|
63
|
-
override fun
|
|
64
|
-
|
|
64
|
+
override fun signIn(
|
|
65
|
+
options: ReadableArray,
|
|
66
|
+
params: ReadableMap,
|
|
65
67
|
promise: Promise,
|
|
66
68
|
) {
|
|
67
|
-
val jsonString = requestJson.toString()
|
|
68
69
|
coroutineScope.launch {
|
|
69
|
-
|
|
70
|
-
|
|
70
|
+
try {
|
|
71
|
+
val data = credentialHandler.signIn(options = options, params = params)
|
|
72
|
+
promise.resolve(data)
|
|
73
|
+
} catch (e: GetCredentialException) {
|
|
74
|
+
Log.e("CredentialManager", "Error during sign out", e)
|
|
75
|
+
promise.reject("ERROR", e.message.toString())
|
|
76
|
+
}
|
|
71
77
|
}
|
|
72
78
|
}
|
|
73
79
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
) {
|
|
80
|
+
|
|
81
|
+
override fun signOut(promise: Promise) {
|
|
77
82
|
coroutineScope.launch {
|
|
78
83
|
try {
|
|
79
84
|
credentialHandler.signOut()
|
|
80
|
-
promise.resolve(null)
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
+
promise.resolve(null)
|
|
86
|
+
} catch (e: ClearCredentialException) {
|
|
87
|
+
Log.e("CredentialManager", "Error during sign out", e)
|
|
88
|
+
promise.reject("ERROR", e.message.toString())
|
|
85
89
|
}
|
|
90
|
+
}
|
|
86
91
|
}
|
|
87
92
|
|
|
88
|
-
override fun
|
|
93
|
+
override fun signUpWithGoogle(
|
|
89
94
|
requestObject: ReadableMap,
|
|
90
95
|
promise: Promise,
|
|
91
96
|
) {
|
|
@@ -62,35 +62,50 @@ class CredentialsManagerModule(
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
@ReactMethod
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
fun signIn(
|
|
66
|
+
options: ReadableArray,
|
|
67
|
+
params: ReadableMap,
|
|
67
68
|
promise: Promise,
|
|
68
69
|
) {
|
|
69
|
-
val jsonString = requestJson.toString()
|
|
70
70
|
coroutineScope.launch {
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
try {
|
|
72
|
+
val data = credentialHandler.signIn(options = options, params = params)
|
|
73
|
+
promise.resolve(data)
|
|
74
|
+
} catch (e: GetCredentialException) {
|
|
75
|
+
Log.e("CredentialManager", "Error during sign out", e)
|
|
76
|
+
promise.reject("ERROR", e.message.toString())
|
|
77
|
+
}
|
|
73
78
|
}
|
|
74
79
|
}
|
|
75
80
|
|
|
76
81
|
|
|
82
|
+
// @ReactMethod
|
|
83
|
+
// fun signInWithSavedCredentials(
|
|
84
|
+
// requestJson: ReadableMap,
|
|
85
|
+
// promise: Promise,
|
|
86
|
+
// ) {
|
|
87
|
+
// val jsonString = requestJson.toString()
|
|
88
|
+
// coroutineScope.launch {
|
|
89
|
+
// val data = credentialHandler.getSavedCredentials(jsonString)
|
|
90
|
+
// promise.resolve(data)
|
|
91
|
+
// }
|
|
92
|
+
// }
|
|
93
|
+
|
|
77
94
|
@ReactMethod
|
|
78
|
-
fun signOut(
|
|
79
|
-
promise: Promise,
|
|
80
|
-
) {
|
|
95
|
+
fun signOut(promise: Promise) {
|
|
81
96
|
coroutineScope.launch {
|
|
82
97
|
try {
|
|
83
98
|
credentialHandler.signOut()
|
|
84
|
-
promise.resolve(null)
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
}
|
|
99
|
+
promise.resolve(null)
|
|
100
|
+
} catch (e: ClearCredentialException) {
|
|
101
|
+
Log.e("CredentialManager", "Error during sign out", e)
|
|
102
|
+
promise.reject("ERROR", e.message.toString())
|
|
89
103
|
}
|
|
104
|
+
}
|
|
90
105
|
}
|
|
91
106
|
|
|
92
107
|
@ReactMethod
|
|
93
|
-
fun
|
|
108
|
+
fun signUpWithGoogle(
|
|
94
109
|
requestObject: ReadableMap,
|
|
95
110
|
promise: Promise,
|
|
96
111
|
) {
|
|
@@ -29,10 +29,16 @@
|
|
|
29
29
|
return facebook::react::managedPointer<JS::NativeCredentialsManager::CredObject>(json);
|
|
30
30
|
}
|
|
31
31
|
@end
|
|
32
|
-
@implementation RCTCxxConvert (
|
|
33
|
-
+ (RCTManagedPointer *)
|
|
32
|
+
@implementation RCTCxxConvert (NativeCredentialsManager_GoogleSignInParams)
|
|
33
|
+
+ (RCTManagedPointer *)JS_NativeCredentialsManager_GoogleSignInParams:(id)json
|
|
34
34
|
{
|
|
35
|
-
return facebook::react::managedPointer<JS::NativeCredentialsManager::
|
|
35
|
+
return facebook::react::managedPointer<JS::NativeCredentialsManager::GoogleSignInParams>(json);
|
|
36
|
+
}
|
|
37
|
+
@end
|
|
38
|
+
@implementation RCTCxxConvert (NativeCredentialsManager_SpecSignInParams)
|
|
39
|
+
+ (RCTManagedPointer *)JS_NativeCredentialsManager_SpecSignInParams:(id)json
|
|
40
|
+
{
|
|
41
|
+
return facebook::react::managedPointer<JS::NativeCredentialsManager::SpecSignInParams>(json);
|
|
36
42
|
}
|
|
37
43
|
@end
|
|
38
44
|
namespace facebook::react {
|
|
@@ -45,12 +51,12 @@ namespace facebook::react {
|
|
|
45
51
|
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "signUpWithPassword", @selector(signUpWithPassword:), args, count);
|
|
46
52
|
}
|
|
47
53
|
|
|
48
|
-
static facebook::jsi::Value
|
|
49
|
-
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "
|
|
54
|
+
static facebook::jsi::Value __hostFunction_NativeCredentialsManagerSpecJSI_signIn(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
55
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "signIn", @selector(signIn:params:resolve:reject:), args, count);
|
|
50
56
|
}
|
|
51
57
|
|
|
52
|
-
static facebook::jsi::Value
|
|
53
|
-
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "
|
|
58
|
+
static facebook::jsi::Value __hostFunction_NativeCredentialsManagerSpecJSI_signUpWithGoogle(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
59
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "signUpWithGoogle", @selector(signUpWithGoogle:resolve:reject:), args, count);
|
|
54
60
|
}
|
|
55
61
|
|
|
56
62
|
static facebook::jsi::Value __hostFunction_NativeCredentialsManagerSpecJSI_signOut(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
@@ -66,11 +72,11 @@ namespace facebook::react {
|
|
|
66
72
|
methodMap_["signUpWithPassword"] = MethodMetadata {1, __hostFunction_NativeCredentialsManagerSpecJSI_signUpWithPassword};
|
|
67
73
|
setMethodArgConversionSelector(@"signUpWithPassword", 0, @"JS_NativeCredentialsManager_CredObject:");
|
|
68
74
|
|
|
69
|
-
methodMap_["
|
|
70
|
-
|
|
75
|
+
methodMap_["signIn"] = MethodMetadata {2, __hostFunction_NativeCredentialsManagerSpecJSI_signIn};
|
|
76
|
+
setMethodArgConversionSelector(@"signIn", 1, @"JS_NativeCredentialsManager_SpecSignInParams:");
|
|
71
77
|
|
|
72
|
-
methodMap_["
|
|
73
|
-
setMethodArgConversionSelector(@"
|
|
78
|
+
methodMap_["signUpWithGoogle"] = MethodMetadata {1, __hostFunction_NativeCredentialsManagerSpecJSI_signUpWithGoogle};
|
|
79
|
+
setMethodArgConversionSelector(@"signUpWithGoogle", 0, @"JS_NativeCredentialsManager_GoogleSignInParams:");
|
|
74
80
|
|
|
75
81
|
methodMap_["signOut"] = MethodMetadata {0, __hostFunction_NativeCredentialsManagerSpecJSI_signOut};
|
|
76
82
|
|
|
@@ -50,20 +50,36 @@ namespace JS {
|
|
|
50
50
|
@end
|
|
51
51
|
namespace JS {
|
|
52
52
|
namespace NativeCredentialsManager {
|
|
53
|
-
struct
|
|
53
|
+
struct GoogleSignInParams {
|
|
54
54
|
NSString *nonce() const;
|
|
55
55
|
NSString *serverClientId() const;
|
|
56
56
|
bool autoSelectEnabled() const;
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
GoogleSignInParams(NSDictionary *const v) : _v(v) {}
|
|
59
59
|
private:
|
|
60
60
|
NSDictionary *_v;
|
|
61
61
|
};
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
@interface RCTCxxConvert (
|
|
66
|
-
+ (RCTManagedPointer *)
|
|
65
|
+
@interface RCTCxxConvert (NativeCredentialsManager_GoogleSignInParams)
|
|
66
|
+
+ (RCTManagedPointer *)JS_NativeCredentialsManager_GoogleSignInParams:(id)json;
|
|
67
|
+
@end
|
|
68
|
+
namespace JS {
|
|
69
|
+
namespace NativeCredentialsManager {
|
|
70
|
+
struct SpecSignInParams {
|
|
71
|
+
id<NSObject> _Nullable passkeys() const;
|
|
72
|
+
std::optional<JS::NativeCredentialsManager::GoogleSignInParams> googleSignIn() const;
|
|
73
|
+
|
|
74
|
+
SpecSignInParams(NSDictionary *const v) : _v(v) {}
|
|
75
|
+
private:
|
|
76
|
+
NSDictionary *_v;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@interface RCTCxxConvert (NativeCredentialsManager_SpecSignInParams)
|
|
82
|
+
+ (RCTManagedPointer *)JS_NativeCredentialsManager_SpecSignInParams:(id)json;
|
|
67
83
|
@end
|
|
68
84
|
@protocol NativeCredentialsManagerSpec <RCTBridgeModule, RCTTurboModule>
|
|
69
85
|
|
|
@@ -72,10 +88,11 @@ preferImmediatelyAvailableCredentials:(BOOL)preferImmediatelyAvailableCredential
|
|
|
72
88
|
resolve:(RCTPromiseResolveBlock)resolve
|
|
73
89
|
reject:(RCTPromiseRejectBlock)reject;
|
|
74
90
|
- (void)signUpWithPassword:(JS::NativeCredentialsManager::CredObject &)credObject;
|
|
75
|
-
- (void)
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
91
|
+
- (void)signIn:(NSArray *)options
|
|
92
|
+
params:(JS::NativeCredentialsManager::SpecSignInParams &)params
|
|
93
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
94
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
95
|
+
- (void)signUpWithGoogle:(JS::NativeCredentialsManager::GoogleSignInParams &)params
|
|
79
96
|
resolve:(RCTPromiseResolveBlock)resolve
|
|
80
97
|
reject:(RCTPromiseRejectBlock)reject;
|
|
81
98
|
- (void)signOut:(RCTPromiseResolveBlock)resolve
|
|
@@ -111,20 +128,30 @@ inline NSString *JS::NativeCredentialsManager::CredObject::password() const
|
|
|
111
128
|
id const p = _v[@"password"];
|
|
112
129
|
return RCTBridgingToString(p);
|
|
113
130
|
}
|
|
114
|
-
inline NSString *JS::NativeCredentialsManager::
|
|
131
|
+
inline NSString *JS::NativeCredentialsManager::GoogleSignInParams::nonce() const
|
|
115
132
|
{
|
|
116
133
|
id const p = _v[@"nonce"];
|
|
117
134
|
return RCTBridgingToString(p);
|
|
118
135
|
}
|
|
119
|
-
inline NSString *JS::NativeCredentialsManager::
|
|
136
|
+
inline NSString *JS::NativeCredentialsManager::GoogleSignInParams::serverClientId() const
|
|
120
137
|
{
|
|
121
138
|
id const p = _v[@"serverClientId"];
|
|
122
139
|
return RCTBridgingToString(p);
|
|
123
140
|
}
|
|
124
|
-
inline bool JS::NativeCredentialsManager::
|
|
141
|
+
inline bool JS::NativeCredentialsManager::GoogleSignInParams::autoSelectEnabled() const
|
|
125
142
|
{
|
|
126
143
|
id const p = _v[@"autoSelectEnabled"];
|
|
127
144
|
return RCTBridgingToBool(p);
|
|
128
145
|
}
|
|
146
|
+
inline id<NSObject> _Nullable JS::NativeCredentialsManager::SpecSignInParams::passkeys() const
|
|
147
|
+
{
|
|
148
|
+
id const p = _v[@"passkeys"];
|
|
149
|
+
return p;
|
|
150
|
+
}
|
|
151
|
+
inline std::optional<JS::NativeCredentialsManager::GoogleSignInParams> JS::NativeCredentialsManager::SpecSignInParams::googleSignIn() const
|
|
152
|
+
{
|
|
153
|
+
id const p = _v[@"googleSignIn"];
|
|
154
|
+
return (p == nil ? std::nullopt : std::make_optional(JS::NativeCredentialsManager::GoogleSignInParams(p)));
|
|
155
|
+
}
|
|
129
156
|
NS_ASSUME_NONNULL_END
|
|
130
157
|
#endif // RNCredentialsManagerSpec_H
|
|
@@ -25,14 +25,15 @@ static jsi::Value __hostFunction_NativeCredentialsManagerCxxSpecJSI_signUpWithPa
|
|
|
25
25
|
);
|
|
26
26
|
return jsi::Value::undefined();
|
|
27
27
|
}
|
|
28
|
-
static jsi::Value
|
|
29
|
-
return static_cast<NativeCredentialsManagerCxxSpecJSI *>(&turboModule)->
|
|
28
|
+
static jsi::Value __hostFunction_NativeCredentialsManagerCxxSpecJSI_signIn(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
29
|
+
return static_cast<NativeCredentialsManagerCxxSpecJSI *>(&turboModule)->signIn(
|
|
30
30
|
rt,
|
|
31
|
-
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asObject(rt)
|
|
31
|
+
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asObject(rt).asArray(rt),
|
|
32
|
+
count <= 1 ? throw jsi::JSError(rt, "Expected argument in position 1 to be passed") : args[1].asObject(rt)
|
|
32
33
|
);
|
|
33
34
|
}
|
|
34
|
-
static jsi::Value
|
|
35
|
-
return static_cast<NativeCredentialsManagerCxxSpecJSI *>(&turboModule)->
|
|
35
|
+
static jsi::Value __hostFunction_NativeCredentialsManagerCxxSpecJSI_signUpWithGoogle(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
36
|
+
return static_cast<NativeCredentialsManagerCxxSpecJSI *>(&turboModule)->signUpWithGoogle(
|
|
36
37
|
rt,
|
|
37
38
|
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asObject(rt)
|
|
38
39
|
);
|
|
@@ -47,8 +48,8 @@ NativeCredentialsManagerCxxSpecJSI::NativeCredentialsManagerCxxSpecJSI(std::shar
|
|
|
47
48
|
: TurboModule("CredentialsManager", jsInvoker) {
|
|
48
49
|
methodMap_["signUpWithPasskeys"] = MethodMetadata {2, __hostFunction_NativeCredentialsManagerCxxSpecJSI_signUpWithPasskeys};
|
|
49
50
|
methodMap_["signUpWithPassword"] = MethodMetadata {1, __hostFunction_NativeCredentialsManagerCxxSpecJSI_signUpWithPassword};
|
|
50
|
-
methodMap_["
|
|
51
|
-
methodMap_["
|
|
51
|
+
methodMap_["signIn"] = MethodMetadata {2, __hostFunction_NativeCredentialsManagerCxxSpecJSI_signIn};
|
|
52
|
+
methodMap_["signUpWithGoogle"] = MethodMetadata {1, __hostFunction_NativeCredentialsManagerCxxSpecJSI_signUpWithGoogle};
|
|
52
53
|
methodMap_["signOut"] = MethodMetadata {0, __hostFunction_NativeCredentialsManagerCxxSpecJSI_signOut};
|
|
53
54
|
}
|
|
54
55
|
|
|
@@ -162,6 +162,61 @@ struct NativeCredentialsManagerGoogleCredentialBridging {
|
|
|
162
162
|
}
|
|
163
163
|
};
|
|
164
164
|
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
#pragma mark - NativeCredentialsManagerGoogleSignInParams
|
|
168
|
+
|
|
169
|
+
template <typename P0, typename P1, typename P2>
|
|
170
|
+
struct NativeCredentialsManagerGoogleSignInParams {
|
|
171
|
+
P0 nonce;
|
|
172
|
+
P1 serverClientId;
|
|
173
|
+
P2 autoSelectEnabled;
|
|
174
|
+
bool operator==(const NativeCredentialsManagerGoogleSignInParams &other) const {
|
|
175
|
+
return nonce == other.nonce && serverClientId == other.serverClientId && autoSelectEnabled == other.autoSelectEnabled;
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
template <typename T>
|
|
180
|
+
struct NativeCredentialsManagerGoogleSignInParamsBridging {
|
|
181
|
+
static T types;
|
|
182
|
+
|
|
183
|
+
static T fromJs(
|
|
184
|
+
jsi::Runtime &rt,
|
|
185
|
+
const jsi::Object &value,
|
|
186
|
+
const std::shared_ptr<CallInvoker> &jsInvoker) {
|
|
187
|
+
T result{
|
|
188
|
+
bridging::fromJs<decltype(types.nonce)>(rt, value.getProperty(rt, "nonce"), jsInvoker),
|
|
189
|
+
bridging::fromJs<decltype(types.serverClientId)>(rt, value.getProperty(rt, "serverClientId"), jsInvoker),
|
|
190
|
+
bridging::fromJs<decltype(types.autoSelectEnabled)>(rt, value.getProperty(rt, "autoSelectEnabled"), jsInvoker)};
|
|
191
|
+
return result;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
#ifdef DEBUG
|
|
195
|
+
static jsi::String nonceToJs(jsi::Runtime &rt, decltype(types.nonce) value) {
|
|
196
|
+
return bridging::toJs(rt, value);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
static jsi::String serverClientIdToJs(jsi::Runtime &rt, decltype(types.serverClientId) value) {
|
|
200
|
+
return bridging::toJs(rt, value);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
static bool autoSelectEnabledToJs(jsi::Runtime &rt, decltype(types.autoSelectEnabled) value) {
|
|
204
|
+
return bridging::toJs(rt, value);
|
|
205
|
+
}
|
|
206
|
+
#endif
|
|
207
|
+
|
|
208
|
+
static jsi::Object toJs(
|
|
209
|
+
jsi::Runtime &rt,
|
|
210
|
+
const T &value,
|
|
211
|
+
const std::shared_ptr<CallInvoker> &jsInvoker) {
|
|
212
|
+
auto result = facebook::jsi::Object(rt);
|
|
213
|
+
result.setProperty(rt, "nonce", bridging::toJs(rt, value.nonce, jsInvoker));
|
|
214
|
+
result.setProperty(rt, "serverClientId", bridging::toJs(rt, value.serverClientId, jsInvoker));
|
|
215
|
+
result.setProperty(rt, "autoSelectEnabled", bridging::toJs(rt, value.autoSelectEnabled, jsInvoker));
|
|
216
|
+
return result;
|
|
217
|
+
}
|
|
218
|
+
};
|
|
219
|
+
|
|
165
220
|
class JSI_EXPORT NativeCredentialsManagerCxxSpecJSI : public TurboModule {
|
|
166
221
|
protected:
|
|
167
222
|
NativeCredentialsManagerCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker);
|
|
@@ -169,8 +224,8 @@ protected:
|
|
|
169
224
|
public:
|
|
170
225
|
virtual jsi::Value signUpWithPasskeys(jsi::Runtime &rt, jsi::Object requestJson, bool preferImmediatelyAvailableCredentials) = 0;
|
|
171
226
|
virtual void signUpWithPassword(jsi::Runtime &rt, jsi::Object credObject) = 0;
|
|
172
|
-
virtual jsi::Value
|
|
173
|
-
virtual jsi::Value
|
|
227
|
+
virtual jsi::Value signIn(jsi::Runtime &rt, jsi::Array options, jsi::Object params) = 0;
|
|
228
|
+
virtual jsi::Value signUpWithGoogle(jsi::Runtime &rt, jsi::Object params) = 0;
|
|
174
229
|
virtual jsi::Value signOut(jsi::Runtime &rt) = 0;
|
|
175
230
|
|
|
176
231
|
};
|
|
@@ -218,21 +273,21 @@ private:
|
|
|
218
273
|
return bridging::callFromJs<void>(
|
|
219
274
|
rt, &T::signUpWithPassword, jsInvoker_, instance_, std::move(credObject));
|
|
220
275
|
}
|
|
221
|
-
jsi::Value
|
|
276
|
+
jsi::Value signIn(jsi::Runtime &rt, jsi::Array options, jsi::Object params) override {
|
|
222
277
|
static_assert(
|
|
223
|
-
bridging::getParameterCount(&T::
|
|
224
|
-
"Expected
|
|
278
|
+
bridging::getParameterCount(&T::signIn) == 3,
|
|
279
|
+
"Expected signIn(...) to have 3 parameters");
|
|
225
280
|
|
|
226
281
|
return bridging::callFromJs<jsi::Value>(
|
|
227
|
-
rt, &T::
|
|
282
|
+
rt, &T::signIn, jsInvoker_, instance_, std::move(options), std::move(params));
|
|
228
283
|
}
|
|
229
|
-
jsi::Value
|
|
284
|
+
jsi::Value signUpWithGoogle(jsi::Runtime &rt, jsi::Object params) override {
|
|
230
285
|
static_assert(
|
|
231
|
-
bridging::getParameterCount(&T::
|
|
232
|
-
"Expected
|
|
286
|
+
bridging::getParameterCount(&T::signUpWithGoogle) == 2,
|
|
287
|
+
"Expected signUpWithGoogle(...) to have 2 parameters");
|
|
233
288
|
|
|
234
289
|
return bridging::callFromJs<jsi::Value>(
|
|
235
|
-
rt, &T::
|
|
290
|
+
rt, &T::signUpWithGoogle, jsInvoker_, instance_, std::move(params));
|
|
236
291
|
}
|
|
237
292
|
jsi::Value signOut(jsi::Runtime &rt) override {
|
|
238
293
|
static_assert(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeCredentialsManager.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeCredentialsManager.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GA4DpCC,gCAAmB,CAACC,YAAY,CAAO,oBAAoB,CAAC","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
7
|
-
exports.signInWithSavedCredentials = signInWithSavedCredentials;
|
|
6
|
+
exports.signIn = signIn;
|
|
8
7
|
exports.signOut = signOut;
|
|
8
|
+
exports.signUpWithGoogle = signUpWithGoogle;
|
|
9
9
|
exports.signUpWithPasskeys = signUpWithPasskeys;
|
|
10
10
|
exports.signUpWithPassword = signUpWithPassword;
|
|
11
11
|
var _NativeCredentialsManager = _interopRequireDefault(require("./NativeCredentialsManager.js"));
|
|
@@ -22,11 +22,18 @@ function signUpWithPassword({
|
|
|
22
22
|
username
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
|
-
function
|
|
26
|
-
return _NativeCredentialsManager.default.
|
|
25
|
+
function signIn(options, params) {
|
|
26
|
+
return _NativeCredentialsManager.default.signIn(options, {
|
|
27
|
+
...params,
|
|
28
|
+
googleSignIn: {
|
|
29
|
+
serverClientId: params?.googleSignIn?.serverClientId ?? '',
|
|
30
|
+
nonce: params?.googleSignIn?.nonce ?? '',
|
|
31
|
+
autoSelectEnabled: params?.googleSignIn?.autoSelectEnabled ?? true
|
|
32
|
+
}
|
|
33
|
+
});
|
|
27
34
|
}
|
|
28
|
-
function
|
|
29
|
-
return _NativeCredentialsManager.default.
|
|
35
|
+
function signUpWithGoogle(params) {
|
|
36
|
+
return _NativeCredentialsManager.default.signUpWithGoogle({
|
|
30
37
|
...params,
|
|
31
38
|
nonce: params.nonce ?? '',
|
|
32
39
|
autoSelectEnabled: params.autoSelectEnabled ?? true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_NativeCredentialsManager","_interopRequireDefault","require","e","__esModule","default","signUpWithPasskeys","requestJson","preferImmediatelyAvailableCredentials","CredentialsManager","signUpWithPassword","username","password","
|
|
1
|
+
{"version":3,"names":["_NativeCredentialsManager","_interopRequireDefault","require","e","__esModule","default","signUpWithPasskeys","requestJson","preferImmediatelyAvailableCredentials","CredentialsManager","signUpWithPassword","username","password","signIn","options","params","googleSignIn","serverClientId","nonce","autoSelectEnabled","signUpWithGoogle","signOut"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;AAAA,IAAAA,yBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA4D,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAarD,SAASG,kBAAkBA,CAChCC,WAAmB,EACnBC,qCAA8C,GAAG,KAAK,EACrC;EACjB,OAAOC,iCAAkB,CAACH,kBAAkB,CAC1CC,WAAW,EACXC,qCACF,CAAC;AACH;AAEO,SAASE,kBAAkBA,CAAC;EACjCC,QAAQ;EACRC;AAIF,CAAC,EAAE;EACDH,iCAAkB,CAACC,kBAAkB,CAAC;IAAEE,QAAQ;IAAED;EAAS,CAAC,CAAC;AAC/D;AAEO,SAASE,MAAMA,CACpBC,OAAuB,EACvBC,MAGC,EACoB;EACrB,OAAON,iCAAkB,CAACI,MAAM,CAACC,OAAO,EAAE;IACxC,GAAGC,MAAM;IACTC,YAAY,EAAE;MACZC,cAAc,EAAEF,MAAM,EAAEC,YAAY,EAAEC,cAAc,IAAI,EAAE;MAC1DC,KAAK,EAAEH,MAAM,EAAEC,YAAY,EAAEE,KAAK,IAAI,EAAE;MACxCC,iBAAiB,EAAEJ,MAAM,EAAEC,YAAY,EAAEG,iBAAiB,IAAI;IAChE;EACF,CAAC,CAAC;AACJ;AAEO,SAASC,gBAAgBA,CAC9BL,MAA0B,EACC;EAC3B,OAAON,iCAAkB,CAACW,gBAAgB,CAAC;IACzC,GAAGL,MAAM;IACTG,KAAK,EAAEH,MAAM,CAACG,KAAK,IAAI,EAAE;IACzBC,iBAAiB,EAAEJ,MAAM,CAACI,iBAAiB,IAAI;EACjD,CAAC,CAAC;AACJ;AAEO,SAASE,OAAOA,CAAA,EAAkB;EACvC,OAAOZ,iCAAkB,CAACY,OAAO,CAAC,CAAC;AACrC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeCredentialsManager.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeCredentialsManager.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AA4DlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,oBAAoB,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -13,11 +13,18 @@ export function signUpWithPassword({
|
|
|
13
13
|
username
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
|
-
export function
|
|
17
|
-
return CredentialsManager.
|
|
16
|
+
export function signIn(options, params) {
|
|
17
|
+
return CredentialsManager.signIn(options, {
|
|
18
|
+
...params,
|
|
19
|
+
googleSignIn: {
|
|
20
|
+
serverClientId: params?.googleSignIn?.serverClientId ?? '',
|
|
21
|
+
nonce: params?.googleSignIn?.nonce ?? '',
|
|
22
|
+
autoSelectEnabled: params?.googleSignIn?.autoSelectEnabled ?? true
|
|
23
|
+
}
|
|
24
|
+
});
|
|
18
25
|
}
|
|
19
|
-
export function
|
|
20
|
-
return CredentialsManager.
|
|
26
|
+
export function signUpWithGoogle(params) {
|
|
27
|
+
return CredentialsManager.signUpWithGoogle({
|
|
21
28
|
...params,
|
|
22
29
|
nonce: params.nonce ?? '',
|
|
23
30
|
autoSelectEnabled: params.autoSelectEnabled ?? true
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CredentialsManager","signUpWithPasskeys","requestJson","preferImmediatelyAvailableCredentials","signUpWithPassword","username","password","
|
|
1
|
+
{"version":3,"names":["CredentialsManager","signUpWithPasskeys","requestJson","preferImmediatelyAvailableCredentials","signUpWithPassword","username","password","signIn","options","params","googleSignIn","serverClientId","nonce","autoSelectEnabled","signUpWithGoogle","signOut"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,kBAAkB,MAAM,+BAA4B;AAa3D,OAAO,SAASC,kBAAkBA,CAChCC,WAAmB,EACnBC,qCAA8C,GAAG,KAAK,EACrC;EACjB,OAAOH,kBAAkB,CAACC,kBAAkB,CAC1CC,WAAW,EACXC,qCACF,CAAC;AACH;AAEA,OAAO,SAASC,kBAAkBA,CAAC;EACjCC,QAAQ;EACRC;AAIF,CAAC,EAAE;EACDN,kBAAkB,CAACI,kBAAkB,CAAC;IAAEE,QAAQ;IAAED;EAAS,CAAC,CAAC;AAC/D;AAEA,OAAO,SAASE,MAAMA,CACpBC,OAAuB,EACvBC,MAGC,EACoB;EACrB,OAAOT,kBAAkB,CAACO,MAAM,CAACC,OAAO,EAAE;IACxC,GAAGC,MAAM;IACTC,YAAY,EAAE;MACZC,cAAc,EAAEF,MAAM,EAAEC,YAAY,EAAEC,cAAc,IAAI,EAAE;MAC1DC,KAAK,EAAEH,MAAM,EAAEC,YAAY,EAAEE,KAAK,IAAI,EAAE;MACxCC,iBAAiB,EAAEJ,MAAM,EAAEC,YAAY,EAAEG,iBAAiB,IAAI;IAChE;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,gBAAgBA,CAC9BL,MAA0B,EACC;EAC3B,OAAOT,kBAAkB,CAACc,gBAAgB,CAAC;IACzC,GAAGL,MAAM;IACTG,KAAK,EAAEH,MAAM,CAACG,KAAK,IAAI,EAAE;IACzBC,iBAAiB,EAAEJ,MAAM,CAACI,iBAAiB,IAAI;EACjD,CAAC,CAAC;AACJ;AAEA,OAAO,SAASE,OAAOA,CAAA,EAAkB;EACvC,OAAOf,kBAAkB,CAACe,OAAO,CAAC,CAAC;AACrC","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { TurboModule } from 'react-native';
|
|
2
|
+
export type SignInOption = 'passkeys' | 'password' | 'google-signin';
|
|
2
3
|
type CredObject = {
|
|
3
4
|
username: string;
|
|
4
5
|
password: string;
|
|
@@ -7,6 +8,11 @@ type PasskeyCredential = {
|
|
|
7
8
|
type: 'passkey';
|
|
8
9
|
authenticationResponseJson: string;
|
|
9
10
|
};
|
|
11
|
+
type GoogleSignInParams = {
|
|
12
|
+
nonce: string;
|
|
13
|
+
serverClientId: string;
|
|
14
|
+
autoSelectEnabled: boolean;
|
|
15
|
+
};
|
|
10
16
|
export type GoogleCredential = {
|
|
11
17
|
type: 'google-signin';
|
|
12
18
|
id: string;
|
|
@@ -22,16 +28,15 @@ type PasswordCredential = {
|
|
|
22
28
|
username: string;
|
|
23
29
|
password: string;
|
|
24
30
|
};
|
|
25
|
-
export type Credential = PasskeyCredential | PasswordCredential;
|
|
31
|
+
export type Credential = PasskeyCredential | PasswordCredential | GoogleCredential;
|
|
26
32
|
export interface Spec extends TurboModule {
|
|
27
33
|
signUpWithPasskeys(requestJson: Object, preferImmediatelyAvailableCredentials: boolean): Promise<Object>;
|
|
28
34
|
signUpWithPassword(credObject: CredObject): void;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}): Promise<GoogleCredential>;
|
|
35
|
+
signIn(options: SignInOption[], params: {
|
|
36
|
+
passkeys?: Object;
|
|
37
|
+
googleSignIn?: GoogleSignInParams;
|
|
38
|
+
}): Promise<Credential>;
|
|
39
|
+
signUpWithGoogle(params: GoogleSignInParams): Promise<GoogleCredential>;
|
|
35
40
|
signOut(): Promise<null>;
|
|
36
41
|
}
|
|
37
42
|
declare const _default: Spec;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeCredentialsManager.d.ts","sourceRoot":"","sources":["../../../../src/NativeCredentialsManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,KAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,0BAA0B,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"NativeCredentialsManager.d.ts","sourceRoot":"","sources":["../../../../src/NativeCredentialsManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,UAAU,GAAG,eAAe,CAAC;AAErE,KAAK,UAAU,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,0BAA0B,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,eAAe,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,CAAC;AAErB,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,kBAAkB,CAChB,WAAW,EAAE,MAAM,EACnB,qCAAqC,EAAE,OAAO,GAC7C,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAEjD,MAAM,CACJ,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE;QACN,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,kBAAkB,CAAC;KACnC,GACA,OAAO,CAAC,UAAU,CAAC,CAAC;IACvB,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;;AAED,wBAA4E"}
|
|
@@ -1,14 +1,19 @@
|
|
|
1
|
-
import type { Credential, GoogleCredential } from './NativeCredentialsManager';
|
|
1
|
+
import type { Credential, GoogleCredential, SignInOption } from './NativeCredentialsManager';
|
|
2
|
+
type GoogleSignInParams = {
|
|
3
|
+
nonce?: string;
|
|
4
|
+
serverClientId: string;
|
|
5
|
+
autoSelectEnabled?: boolean;
|
|
6
|
+
};
|
|
2
7
|
export declare function signUpWithPasskeys(requestJson: Object, preferImmediatelyAvailableCredentials?: boolean): Promise<Object>;
|
|
3
8
|
export declare function signUpWithPassword({ username, password, }: {
|
|
4
9
|
username: string;
|
|
5
10
|
password: string;
|
|
6
11
|
}): void;
|
|
7
|
-
export declare function
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}): Promise<GoogleCredential>;
|
|
12
|
+
export declare function signIn(options: SignInOption[], params: {
|
|
13
|
+
passkeys?: Object;
|
|
14
|
+
googleSignIn?: GoogleSignInParams;
|
|
15
|
+
}): Promise<Credential>;
|
|
16
|
+
export declare function signUpWithGoogle(params: GoogleSignInParams): Promise<GoogleCredential>;
|
|
13
17
|
export declare function signOut(): Promise<null>;
|
|
18
|
+
export {};
|
|
14
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,4BAA4B,CAAC;AAEpC,KAAK,kBAAkB,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,qCAAqC,GAAE,OAAe,GACrD,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,QAEA;AAED,wBAAgB,MAAM,CACpB,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE;IACN,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,GACA,OAAO,CAAC,UAAU,CAAC,CASrB;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAM3B;AAED,wBAAgB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { TurboModule } from 'react-native';
|
|
2
|
+
export type SignInOption = 'passkeys' | 'password' | 'google-signin';
|
|
2
3
|
type CredObject = {
|
|
3
4
|
username: string;
|
|
4
5
|
password: string;
|
|
@@ -7,6 +8,11 @@ type PasskeyCredential = {
|
|
|
7
8
|
type: 'passkey';
|
|
8
9
|
authenticationResponseJson: string;
|
|
9
10
|
};
|
|
11
|
+
type GoogleSignInParams = {
|
|
12
|
+
nonce: string;
|
|
13
|
+
serverClientId: string;
|
|
14
|
+
autoSelectEnabled: boolean;
|
|
15
|
+
};
|
|
10
16
|
export type GoogleCredential = {
|
|
11
17
|
type: 'google-signin';
|
|
12
18
|
id: string;
|
|
@@ -22,16 +28,15 @@ type PasswordCredential = {
|
|
|
22
28
|
username: string;
|
|
23
29
|
password: string;
|
|
24
30
|
};
|
|
25
|
-
export type Credential = PasskeyCredential | PasswordCredential;
|
|
31
|
+
export type Credential = PasskeyCredential | PasswordCredential | GoogleCredential;
|
|
26
32
|
export interface Spec extends TurboModule {
|
|
27
33
|
signUpWithPasskeys(requestJson: Object, preferImmediatelyAvailableCredentials: boolean): Promise<Object>;
|
|
28
34
|
signUpWithPassword(credObject: CredObject): void;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}): Promise<GoogleCredential>;
|
|
35
|
+
signIn(options: SignInOption[], params: {
|
|
36
|
+
passkeys?: Object;
|
|
37
|
+
googleSignIn?: GoogleSignInParams;
|
|
38
|
+
}): Promise<Credential>;
|
|
39
|
+
signUpWithGoogle(params: GoogleSignInParams): Promise<GoogleCredential>;
|
|
35
40
|
signOut(): Promise<null>;
|
|
36
41
|
}
|
|
37
42
|
declare const _default: Spec;
|