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.
Files changed (29) hide show
  1. package/README.md +21 -319
  2. package/android/generated/java/com/credentialsmanager/NativeCredentialsManagerSpec.java +3 -2
  3. package/android/generated/jni/RNCredentialsManagerSpec-generated.cpp +6 -6
  4. package/android/generated/jni/react/renderer/components/RNCredentialsManagerSpec/RNCredentialsManagerSpecJSI-generated.cpp +8 -7
  5. package/android/generated/jni/react/renderer/components/RNCredentialsManagerSpec/RNCredentialsManagerSpecJSI.h +65 -10
  6. package/android/src/main/java/com/credentialsmanager/handlers/CredentialHandler.kt +48 -5
  7. package/android/src/newarch/java/com/credentialsmanager/CredentialsManagerModule.kt +20 -15
  8. package/android/src/oldarch/java/com/credentialsmanager/CredentialsManagerModule.kt +29 -14
  9. package/ios/generated/RNCredentialsManagerSpec/RNCredentialsManagerSpec-generated.mm +17 -11
  10. package/ios/generated/RNCredentialsManagerSpec/RNCredentialsManagerSpec.h +38 -11
  11. package/ios/generated/RNCredentialsManagerSpecJSI-generated.cpp +8 -7
  12. package/ios/generated/RNCredentialsManagerSpecJSI.h +65 -10
  13. package/lib/commonjs/NativeCredentialsManager.js.map +1 -1
  14. package/lib/commonjs/index.js +13 -6
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/module/NativeCredentialsManager.js.map +1 -1
  17. package/lib/module/index.js +11 -4
  18. package/lib/module/index.js.map +1 -1
  19. package/lib/typescript/commonjs/src/NativeCredentialsManager.d.ts +12 -7
  20. package/lib/typescript/commonjs/src/NativeCredentialsManager.d.ts.map +1 -1
  21. package/lib/typescript/commonjs/src/index.d.ts +12 -7
  22. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  23. package/lib/typescript/module/src/NativeCredentialsManager.d.ts +12 -7
  24. package/lib/typescript/module/src/NativeCredentialsManager.d.ts.map +1 -1
  25. package/lib/typescript/module/src/index.d.ts +12 -7
  26. package/lib/typescript/module/src/index.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/NativeCredentialsManager.ts +20 -7
  29. package/src/index.tsx +29 -10
@@ -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,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAEhE,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,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACrE,gBAAgB,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,OAAO,CAAC;KAC5B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;;AAED,wBAA4E"}
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 signInWithSavedCredentials(requestJson: Object): Promise<Credential>;
8
- export declare function signInWithGoogle(params: {
9
- nonce?: string;
10
- serverClientId: string;
11
- autoSelectEnabled?: boolean;
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,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE/E,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,0BAA0B,CACxC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,UAAU,CAAC,CAErB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAM5B;AAED,wBAAgB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvC"}
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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-credentials-manager",
3
- "version": "0.4.1",
3
+ "version": "0.5.1",
4
4
  "description": "A React Native library that implements the Credential Manager API for Android. This library allows you to manage passwords and passkeys in your React Native applications.",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",
@@ -1,6 +1,8 @@
1
1
  import type { TurboModule } from 'react-native';
2
2
  import { TurboModuleRegistry } from 'react-native';
3
3
 
4
+ export type SignInOption = 'passkeys' | 'password' | 'google-signin';
5
+
4
6
  type CredObject = {
5
7
  username: string;
6
8
  password: string;
@@ -11,6 +13,12 @@ type PasskeyCredential = {
11
13
  authenticationResponseJson: string;
12
14
  };
13
15
 
16
+ type GoogleSignInParams = {
17
+ nonce: string;
18
+ serverClientId: string;
19
+ autoSelectEnabled: boolean;
20
+ };
21
+
14
22
  export type GoogleCredential = {
15
23
  type: 'google-signin';
16
24
  id: string;
@@ -28,7 +36,10 @@ type PasswordCredential = {
28
36
  password: string;
29
37
  };
30
38
 
31
- export type Credential = PasskeyCredential | PasswordCredential;
39
+ export type Credential =
40
+ | PasskeyCredential
41
+ | PasswordCredential
42
+ | GoogleCredential;
32
43
 
33
44
  export interface Spec extends TurboModule {
34
45
  signUpWithPasskeys(
@@ -37,12 +48,14 @@ export interface Spec extends TurboModule {
37
48
  ): Promise<Object>;
38
49
  signUpWithPassword(credObject: CredObject): void;
39
50
 
40
- signInWithSavedCredentials(requestJson: Object): Promise<Credential>;
41
- signInWithGoogle(params: {
42
- nonce: string;
43
- serverClientId: string;
44
- autoSelectEnabled: boolean;
45
- }): Promise<GoogleCredential>;
51
+ signIn(
52
+ options: SignInOption[],
53
+ params: {
54
+ passkeys?: Object;
55
+ googleSignIn?: GoogleSignInParams;
56
+ }
57
+ ): Promise<Credential>;
58
+ signUpWithGoogle(params: GoogleSignInParams): Promise<GoogleCredential>;
46
59
  signOut(): Promise<null>;
47
60
  }
48
61
 
package/src/index.tsx CHANGED
@@ -1,5 +1,15 @@
1
1
  import CredentialsManager from './NativeCredentialsManager';
2
- import type { Credential, GoogleCredential } from './NativeCredentialsManager';
2
+ import type {
3
+ Credential,
4
+ GoogleCredential,
5
+ SignInOption,
6
+ } from './NativeCredentialsManager';
7
+
8
+ type GoogleSignInParams = {
9
+ nonce?: string;
10
+ serverClientId: string;
11
+ autoSelectEnabled?: boolean;
12
+ };
3
13
 
4
14
  export function signUpWithPasskeys(
5
15
  requestJson: Object,
@@ -21,18 +31,27 @@ export function signUpWithPassword({
21
31
  CredentialsManager.signUpWithPassword({ password, username });
22
32
  }
23
33
 
24
- export function signInWithSavedCredentials(
25
- requestJson: Object
34
+ export function signIn(
35
+ options: SignInOption[],
36
+ params: {
37
+ passkeys?: Object;
38
+ googleSignIn?: GoogleSignInParams;
39
+ }
26
40
  ): Promise<Credential> {
27
- return CredentialsManager.signInWithSavedCredentials(requestJson);
41
+ return CredentialsManager.signIn(options, {
42
+ ...params,
43
+ googleSignIn: {
44
+ serverClientId: params?.googleSignIn?.serverClientId ?? '',
45
+ nonce: params?.googleSignIn?.nonce ?? '',
46
+ autoSelectEnabled: params?.googleSignIn?.autoSelectEnabled ?? true,
47
+ },
48
+ });
28
49
  }
29
50
 
30
- export function signInWithGoogle(params: {
31
- nonce?: string;
32
- serverClientId: string;
33
- autoSelectEnabled?: boolean;
34
- }): Promise<GoogleCredential> {
35
- return CredentialsManager.signInWithGoogle({
51
+ export function signUpWithGoogle(
52
+ params: GoogleSignInParams
53
+ ): Promise<GoogleCredential> {
54
+ return CredentialsManager.signUpWithGoogle({
36
55
  ...params,
37
56
  nonce: params.nonce ?? '',
38
57
  autoSelectEnabled: params.autoSelectEnabled ?? true,