Skip to main content

@turnkey/sdk-react-native

1.5.11

Patch Changes

1.5.10

Patch Changes

1.5.9

Patch Changes

1.5.8

Patch Changes

1.5.7

Patch Changes

  • #1027 6e25b17 Author @moeodeh3 - Expand peer dependency range to include newer versions of react-native-keychain

1.5.6

Patch Changes

1.5.5

Patch Changes

1.5.4

Patch Changes

1.5.3

Patch Changes

1.5.2

Patch Changes

1.5.1

Patch Changes

1.5.0

Minor Changes

1.5.0-beta.1

Patch Changes

1.5.0-beta.0

Minor Changes

  • SDK beta release @turnkey/react-wallet-kit @turnkey/core

Patch Changes

1.4.4

Patch Changes

1.4.3

Patch Changes

1.4.2-beta.4

Patch Changes

1.4.2-beta.3

Patch Changes

1.4.2-beta.2

Patch Changes

1.4.2-beta.1

Patch Changes

1.4.2-beta.0

Patch Changes

1.4.2

Patch Changes

1.4.1

Patch Changes

1.4.0

Minor Changes

Patch Changes

1.3.7

Patch Changes

1.3.6

Patch Changes

1.3.5

Patch Changes

1.3.4

Patch Changes

1.3.3

Patch Changes

1.3.2

Patch Changes

1.3.1

Patch Changes

1.3.0

Minor Changes

  • #622 59f8941 Author @moeodeh3 - Added support for React 19 Renamed sessionKey parameter to storageKey in createEmbeddedKey saveEmbeddedKey and getEmbeddedKey. Added optional embeddedStorageKey parameter to createSession. This allows for retrieval of the embedded key from a custom location in secure storage.

Patch Changes

1.2.3

Patch Changes

1.2.2

Patch Changes

  • ef399e1: - Eliminated a race condition in refreshSession that could throw: TurnkeyReactNativeError: Embedded key not found when refreshing the session
    • The embedded key is now generated entirely in memory using generateP256KeyPair
    • Removed the need to store and immediately retrieve the private key from secure storage
    • refreshSession now accepts a single optional parameter object
    • StorageKeys.RefreshEmbeddedKey is now deprecated and no longer used during session refresh
  • Updated dependencies [3f6e415]
  • Updated dependencies [4d1d775]

1.2.1

Patch Changes

1.2.0

Minor Changes

  • ab45d29: Added createSessionFromEmbeddedKey function. This allows creation of a session using a compressed embedded key stored by calling createEmbeddedKey. You may also optionally pass in an embedded key created seperately. Utilizing these two functions with a createSuborg api call allows for a ‘1 tap’ passkey sign up flow (example). Added optional isCompressed boolean field to the createEmbeddedKey function. This field is necessary for calling createSessionFromEmbeddedKey.

1.1.0

Minor Changes

  • e8bc05b: Introduces handleGoogleOAuth(): Adds a utility function to handle the Google OAuth authentication flow in React Native.
Usage Summary:
handleGoogleOAuth launches an InAppBrowser to initiate the OAuth flow using your client ID, nonce, and app scheme. After a successful login, it extracts the oidcToken from the redirect URL and calls your onSuccess callback with the token.
handleGoogleOAuth({
  clientId: string,           // Google OAuth client ID
  nonce: string,              // Random nonce
  scheme: string,             // App’s custom URL scheme (e.g., "myapp")
  originUri?: string,         // Optional custom origin URI - defaults to Turnkey proxies
  redirectUri?: string,       // Optional custom redirect URI - defaults to Turnkey proxies
  onSuccess: (oidcToken: string) => void, // Called with token on success
});

1.0.5

Patch Changes

  • 3b5b360: - Adds optional parameter for createEmbeddedKey():
    • You can now pass a sessionKey to createEmbeddedKey() to generate separate embedded keys for different sessions, which is helpful when running multiple authentication flows concurrently.
    • Introduces onSessionExpiryWarning():
      • You can now add a callback via the provider config that triggers 15 seconds before a session expires.
    • Introduces refreshSession():
      • You now can refresh an active session that is about to expire.

1.0.4

Patch Changes

1.0.3

Minor Changes

  • a7e7de0: Fixed compatibility issue with @turnkey/viem

1.0.2

Patch Changes

1.0.1

Patch Changes

1.0.0

Major Changes

  • fcf9503: This breaking change adds support for multiple sessions:
    • The concept of a selected session has been introduced:
      • Users can switch between sessions using setSelectedSession({ sessionKey: <key> }).
      • The selected session determines the active client, user, and session state.
      • API calls such as updateUser, createWallet, and signRawPayload now apply to the selected session.
    • A session limit of 15 active sessions has been enforced:
      • If the limit is reached, users must remove an existing session before creating a new one.
      • Expired or invalid sessions are automatically cleaned up.

0.1.1

Patch Changes