@turnkey/sdk-browser 4.3.0 → 5.1.0

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 (54) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/README.md +47 -1
  3. package/dist/__clients__/browser-clients.d.ts +32 -43
  4. package/dist/__clients__/browser-clients.d.ts.map +1 -1
  5. package/dist/__clients__/browser-clients.js +77 -193
  6. package/dist/__clients__/browser-clients.js.map +1 -1
  7. package/dist/__clients__/browser-clients.mjs +69 -186
  8. package/dist/__clients__/browser-clients.mjs.map +1 -1
  9. package/dist/__generated__/sdk-client-base.d.ts +10 -0
  10. package/dist/__generated__/sdk-client-base.d.ts.map +1 -1
  11. package/dist/__generated__/sdk-client-base.js +367 -79
  12. package/dist/__generated__/sdk-client-base.js.map +1 -1
  13. package/dist/__generated__/sdk-client-base.mjs +367 -79
  14. package/dist/__generated__/sdk-client-base.mjs.map +1 -1
  15. package/dist/__generated__/sdk_api_types.d.ts +25 -0
  16. package/dist/__generated__/sdk_api_types.d.ts.map +1 -1
  17. package/dist/__generated__/version.d.ts +1 -1
  18. package/dist/__generated__/version.js +1 -1
  19. package/dist/__generated__/version.mjs +1 -1
  20. package/dist/__inputs__/public_api.types.d.ts +257 -9
  21. package/dist/__inputs__/public_api.types.d.ts.map +1 -1
  22. package/dist/__polyfills__/window.js.map +1 -1
  23. package/dist/__polyfills__/window.mjs.map +1 -1
  24. package/dist/__types__/base.d.ts +8 -77
  25. package/dist/__types__/base.d.ts.map +1 -1
  26. package/dist/__types__/base.js +1 -5
  27. package/dist/__types__/base.js.map +1 -1
  28. package/dist/__types__/base.mjs +2 -6
  29. package/dist/__types__/base.mjs.map +1 -1
  30. package/dist/index.d.ts +3 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +3 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/index.mjs +3 -2
  35. package/dist/index.mjs.map +1 -1
  36. package/dist/sdk-client.d.ts +9 -26
  37. package/dist/sdk-client.d.ts.map +1 -1
  38. package/dist/sdk-client.js +34 -92
  39. package/dist/sdk-client.js.map +1 -1
  40. package/dist/sdk-client.mjs +37 -95
  41. package/dist/sdk-client.mjs.map +1 -1
  42. package/dist/storage.d.ts +4 -20
  43. package/dist/storage.d.ts.map +1 -1
  44. package/dist/storage.js +0 -49
  45. package/dist/storage.js.map +1 -1
  46. package/dist/storage.mjs +1 -49
  47. package/dist/storage.mjs.map +1 -1
  48. package/dist/utils.d.ts +2 -0
  49. package/dist/utils.d.ts.map +1 -1
  50. package/dist/utils.js +27 -51
  51. package/dist/utils.js.map +1 -1
  52. package/dist/utils.mjs +27 -51
  53. package/dist/utils.mjs.map +1 -1
  54. package/package.json +12 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,46 @@
1
1
  # @turnkey/sdk-browser
2
2
 
3
+ ## 5.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#650](https://github.com/tkhq/sdk/pull/650) [`27fe590`](https://github.com/tkhq/sdk/commit/27fe590cdc3eb6a8cde093eeefda2ee1cdc79412) Author [@turnekybc](https://github.com/turnekybc) - Update @turnkey/sdk-types readme and install dependency in packages with common types
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [[`27fe590`](https://github.com/tkhq/sdk/commit/27fe590cdc3eb6a8cde093eeefda2ee1cdc79412)]:
12
+ - @turnkey/sdk-types@0.1.0
13
+
14
+ ## 5.0.0
15
+
16
+ ### Major Changes
17
+
18
+ - [#601](https://github.com/tkhq/sdk/pull/601) [`07dfd33`](https://github.com/tkhq/sdk/commit/07dfd3397472687092e1c73b1d68714f421b9ca0) Author [@moe-dev](https://github.com/moe-dev)
19
+
20
+ This release introduces the new `indexedDbClient`, leveraging the `indexedDbStamper` to securely store cryptographic keys directly in IndexedDB. It provides persistent, secure, non-extractable authentication, replacing legacy iframe-based flows for OTP, passkey, external wallet, and OAuth authentications.
21
+
22
+ ### Key Changes:
23
+
24
+ - **IndexedDB Client (`indexedDbClient`)**:
25
+
26
+ - Offers persistent, tamper-resistant authentication using P-256 keys stored securely in IndexedDB.
27
+ - Eliminates the need for credential injection via iframes, significantly improving the DevEx and UX of session management.
28
+ - Provides human-readable sessions through `getSession()`.
29
+
30
+ - **Deprecation Notice**:
31
+ - Authentication via the `iframeClient` (e.g., `auth.turnkey.com`) is deprecated. Developers should migrate authentication flows to the new IndexedDB-based client.
32
+ - Existing iframe-based wallet flows (Email Recovery, Import, and Export) remain supported.
33
+
34
+ These enhancements simplify integrations, improve UX, and deliver a more robust client-side experience.
35
+
36
+ ### Patch Changes
37
+
38
+ - Updated dependencies [[`07dfd33`](https://github.com/tkhq/sdk/commit/07dfd3397472687092e1c73b1d68714f421b9ca0)]:
39
+ - @turnkey/indexed-db-stamper@1.0.0
40
+ - @turnkey/http@3.4.0
41
+ - @turnkey/crypto@2.3.1
42
+ - @turnkey/wallet-stamper@1.0.3
43
+
3
44
  ## 4.3.0
4
45
 
5
46
  ### Minor Changes
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @turnkey/sdk-browser
2
2
 
3
- [![npm](https://img.shields.io/npm/v/@turnkey/http?color=%234C48FF)](https://www.npmjs.com/package/@turnkey/sdk-browser)
3
+ [![npm](https://img.shields.io/npm/v/@turnkey/sdk-browser?color=%234C48FF)](https://www.npmjs.com/package/@turnkey/sdk-browser)
4
4
 
5
5
  A SDK client with browser-specific abstractions for interacting with [Turnkey](https://turnkey.com) API. Also includes [@turnkey/http](https://www.npmjs.com/package/@turnkey/http), a lower-level, fully typed HTTP client.
6
6
 
@@ -104,3 +104,49 @@ const walletsResponse = await walletClient.getWallets();
104
104
  ## Helpers
105
105
 
106
106
  `@turnkey/sdk-browser` provides `TurnkeySDKBrowserClient`, which offers wrappers around commonly used Turnkey activities, such as creating new wallets and wallet accounts.
107
+
108
+ ### IndexedDB Sessions (Recommended)
109
+
110
+ Turnkey now supports persistent, **secure, non-extractable authentication** using P-256 passkeys stored in **IndexedDB**. This replaces legacy iframe-based flows for otp, passkey, and OAuth authentication.
111
+
112
+ The [`TurnkeyIndexedDbClient`](https://github.com/tkhq/sdk/blob/main/packages/sdk-browser/src/__clients__/browser-clients.ts) provides a long-lived session mechanism where the private key never leaves the browser and is scoped per sub-organization. This client handles login, session persistence, and API request signing entirely on the client side — without requiring iframes or sensitive credential injection.
113
+
114
+ ```ts
115
+ import { Turnkey } from "@turnkey/sdk-browser";
116
+
117
+ const turnkey = new Turnkey({
118
+ apiBaseUrl: "https://api.turnkey.com",
119
+ defaultOrganizationId: "<YOUR_PARENT_ORG_ID>",
120
+ rpId: "<YOUR_WEBAUTHN_RELYING_PARTY_ID>",
121
+ });
122
+
123
+ const client = turnkey.indexedDbClient();
124
+ const passkeyClient = turnkey.passkeyClient();
125
+ // Create authenticated session
126
+ const pubKey = await indexedDbClient!.getPublicKey();
127
+ await passkeyClient?.loginWithPasskey({
128
+ sessionType: SessionType.READ_WRITE,
129
+ publicKey: pubKey!,
130
+ expirationSeconds: "3600",
131
+ });
132
+
133
+ // Now the client is authenticated and ready to interact with Turnkey API
134
+ const wallets = await client.getWallets();
135
+ ```
136
+
137
+ > 💡 **Why IndexedDB?**
138
+ > Keys are stored using the [Web Crypto API](https://developer.mozilla.org/en-US/docs/Web/API/CryptoKey), marked as `nonExtractable`, and survive page reloads — offering persistent, tamper-resistant authentication without ever exposing the raw key material.
139
+
140
+ ---
141
+
142
+ ### ⚠️ Deprecated: iframeClient for Auth
143
+
144
+ Authentication via `iframeClient()` and injected credentials (e.g., from `https://auth.turnkey.com`) is now considered **deprecated** for new integrations. These flows required sensitive credential bundles to be delivered via email or OAuth and injected into a sandboxed iframe — a pattern with limited persistence and higher complexity.
145
+
146
+ Developers are encouraged to migrate to `indexedDbClient()` for:
147
+
148
+ - Seamless passkey authentication
149
+ - Improved security model (no credential injection)
150
+ - Long-lived, resumable sessions
151
+
152
+ Existing iframe use cases like **Email Recovery**, **Wallet Import**, and **Wallet Export** are still supported but should be isolated from authentication logic.
@@ -2,7 +2,7 @@ import type { WalletInterface } from "@turnkey/wallet-stamper";
2
2
  import type { KeyFormat } from "@turnkey/iframe-stamper";
3
3
  import type * as SdkApiTypes from "../__generated__/sdk_api_types";
4
4
  import { TurnkeyBaseClient } from "../__clients__/base-client";
5
- import { Session, AuthClient, TurnkeySDKClientConfig, TurnkeyWalletClientConfig, ReadWriteSession, LoginWithBundleParams, LoginWithPasskeyParams, LoginWithWalletParams, RefreshSessionParams } from "@types";
5
+ import { AuthClient, TurnkeySDKClientConfig, TurnkeyWalletClientConfig, LoginWithBundleParams, LoginWithPasskeyParams, LoginWithWalletParams, RefreshSessionParams } from "@types";
6
6
  import type { Passkey } from "@models";
7
7
  export interface OauthProvider {
8
8
  providerName: string;
@@ -59,16 +59,29 @@ interface AddUserAuthParams {
59
59
  }
60
60
  export declare class TurnkeyBrowserClient extends TurnkeyBaseClient {
61
61
  constructor(config: TurnkeySDKClientConfig, authClient?: AuthClient);
62
+ /**
63
+ * @deprecated
64
+ * This method is deprecated and only creates a READ_ONLY session using an API key.
65
+ * Use one of the following methods instead, depending on your context:
66
+ *
67
+ * - `loginWithPasskey()` for WebAuthn-based sessions using IndexedDB
68
+ * - `loginWithWallet()` for EVM or Solana wallet-based sessions
69
+ * - `loginWithSession()` if the session string is already available (e.g. from server actions)
70
+ * - `loginWithBundle()` for iframe-based sessions (e.g. for email-auth non otp based login)
71
+ *
72
+ * @param config Optional configuration containing an organization ID
73
+ * @returns A Promise resolving to the created read-only session
74
+ */
62
75
  login: (config?: {
63
76
  organizationId?: string;
64
77
  }) => Promise<SdkApiTypes.TCreateReadOnlySessionResponse>;
65
78
  /**
66
79
  * Attempts to refresh an existing Session. This method infers the current user's organization ID and target userId.
67
- * This will use a passkeyStamper for `READ_ONLY` sessions or an `iframeStamper` for `READ_WRITE` sessions.
80
+ * This will use a passkeyStamper for `READ_ONLY` sessions or an `indexedDbStamper` for `READ_WRITE` sessions.
68
81
  *
69
82
  * @param RefreshSessionParams
70
83
  * @param params.sessionType - The type of session that is being refreshed
71
- * @param params.targetPublicKey - The public key of the target client
84
+ * @param params.publicKey - The public key of the indexedDb client
72
85
  * @param params.expirationSeconds - Specify how long to extend the session. Defaults to 900 seconds or 15 minutes.
73
86
  * @returns {Promise<void>}
74
87
  */
@@ -84,21 +97,20 @@ export declare class TurnkeyBrowserClient extends TurnkeyBaseClient {
84
97
  */
85
98
  loginWithBundle: (params: LoginWithBundleParams) => Promise<void>;
86
99
  /**
87
- * Log in with a session object. This method uses a session object from server actions and stores it and the active client in local storage
88
- * To be used in conjunction with an `iframeStamper`.
100
+ * Log in with a session returns from Turnkey. This method uses a session from server actions and stores it and the active client in local storage
101
+ * To be used in conjunction with an `indexeDbStamper`.
89
102
  *
90
103
  * @param session
91
104
  * @returns {Promise<void>}
92
105
  */
93
- loginWithSession: (session: Session) => Promise<void>;
106
+ loginWithSession: (session: string) => Promise<void>;
94
107
  /**
95
108
  * Log in with a passkey.
96
109
  * To be used in conjunction with a `passkeyStamper`
97
110
  *
98
111
  * @param LoginWithPasskeyParams
99
112
  * @param params.sessionType - The type of session to create
100
- * @param params.iframeClient - The iframe client to use to inject the credential bundle
101
- * @param params.targetPublicKey - The public key of the target client
113
+ * @param params.publicKey - The public key of indexedDb
102
114
  * @param params.expirationSeconds - Expiration time for the session in seconds. Defaults to 900 seconds or 15 minutes.
103
115
  * @returns {Promise<void>}
104
116
  */
@@ -108,31 +120,11 @@ export declare class TurnkeyBrowserClient extends TurnkeyBaseClient {
108
120
  *
109
121
  * @param LoginWithWalletParams
110
122
  * @param params.sessionType - The type of session to create
111
- * @param params.iframeClient - The iframe client to use to inject the credential bundle
112
- * @param params.targetPublicKey - The public key of the target iframe
123
+ * @param params.publicKey - The public key of indexedDb
113
124
  * @param params.expirationSeconds - The expiration time for the session in seconds
114
125
  * @returns {Promise<void>}
115
126
  */
116
127
  loginWithWallet: (params: LoginWithWalletParams) => Promise<void>;
117
- /**
118
- * Creates a read-write session. This method infers the current user's organization ID and target userId.
119
- * To be used in conjunction with an `iframeStamper`: the resulting session's credential bundle can be
120
- * injected into an iframeStamper to create a session that enables both read and write requests.
121
- *
122
- * @param targetEmbeddedKey
123
- * @param expirationSeconds
124
- * @param userId
125
- * @returns {Promise<SdkApiTypes.TCreateReadWriteSessionResponse>}
126
- */
127
- loginWithReadWriteSession: (targetEmbeddedKey: string, expirationSeconds?: string, userId?: string) => Promise<SdkApiTypes.TCreateReadWriteSessionResponse>;
128
- /**
129
- * Logs in with an existing auth bundle. this bundle enables both read and write requests.
130
- *
131
- * @param credentialBundle
132
- * @param expirationSeconds
133
- * @returns {Promise<boolean>}
134
- */
135
- loginWithAuthBundle: (credentialBundle: string, expirationSeconds?: string) => Promise<boolean>;
136
128
  /**
137
129
  * Removes authentication factors from an end user.
138
130
  *
@@ -210,20 +202,6 @@ export declare class TurnkeyPasskeyClient extends TurnkeyBrowserClient {
210
202
  * @returns {Promise<Passkey>}
211
203
  */
212
204
  createUserPasskey: (config?: Record<any, any>) => Promise<Passkey>;
213
- /**
214
- * Uses passkey authentication to create a read-write session, via an embedded API key,
215
- * and stores + returns the resulting auth bundle that contains the encrypted API key.
216
- * This auth bundle (also referred to as a credential bundle) can be injected into an `iframeStamper`,
217
- * resulting in a touch-free authenticator. Unlike `loginWithReadWriteSession`, this method
218
- * assumes the end-user's organization ID (i.e. the sub-organization ID) is already known.
219
- *
220
- * @param userId
221
- * @param targetEmbeddedKey
222
- * @param expirationSeconds
223
- * @param curveType
224
- * @returns {Promise<ReadWriteSession>}
225
- */
226
- createPasskeySession: (userId: string, targetEmbeddedKey: string, expirationSeconds?: string, organizationId?: string) => Promise<ReadWriteSession>;
227
205
  }
228
206
  /**
229
207
  * TurnkeyIframeClient is a client that uses an iframe to interact with the Turnkey API.
@@ -250,5 +228,16 @@ export declare class TurnkeyWalletClient extends TurnkeyBrowserClient {
250
228
  getPublicKey(): Promise<string>;
251
229
  getWalletInterface(): WalletInterface;
252
230
  }
231
+ /**
232
+ * TurnkeyIndexedDbClient is a client that uses IndexedDb to interact with the Turnkey API.
233
+ * @extends TurnkeyBrowserClient
234
+ */
235
+ export declare class TurnkeyIndexedDbClient extends TurnkeyBrowserClient {
236
+ constructor(config: TurnkeySDKClientConfig);
237
+ clear: () => Promise<void>;
238
+ getPublicKey: () => Promise<string | null>;
239
+ init: () => Promise<void>;
240
+ resetKeyPair: () => Promise<void>;
241
+ }
253
242
  export {};
254
243
  //# sourceMappingURL=browser-clients.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-clients.d.ts","sourceRoot":"","sources":["../../src/__clients__/browser-clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-clients.d.ts","sourceRoot":"","sources":["../../src/__clients__/browser-clients.ts"],"names":[],"mappings":"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"}