@zerodev/wallet-core 0.0.1-alpha.19 → 0.0.1-alpha.21

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 (116) hide show
  1. package/README.md +1 -1
  2. package/dist/_cjs/actions/auth/authenticateWithOAuth.js +2 -2
  3. package/dist/_cjs/actions/auth/authenticateWithOAuth.js.map +1 -1
  4. package/dist/_cjs/client/index.js.map +1 -1
  5. package/dist/_cjs/client/transports/createTransport.js +1 -0
  6. package/dist/_cjs/client/transports/createTransport.js.map +1 -1
  7. package/dist/_cjs/client/transports/rest.js +2 -2
  8. package/dist/_cjs/client/transports/rest.js.map +1 -1
  9. package/dist/_cjs/core/{createZeroDevWallet.js → createZeroDevWalletCore.js} +8 -10
  10. package/dist/_cjs/core/createZeroDevWalletCore.js.map +1 -0
  11. package/dist/_cjs/index.js +9 -7
  12. package/dist/_cjs/index.js.map +1 -1
  13. package/dist/_cjs/index.native.js +39 -0
  14. package/dist/_cjs/index.native.js.map +1 -0
  15. package/dist/_cjs/native/stampers/passkey.js +30 -0
  16. package/dist/_cjs/native/stampers/passkey.js.map +1 -0
  17. package/dist/_cjs/native/stampers/secureStore.js +112 -0
  18. package/dist/_cjs/native/stampers/secureStore.js.map +1 -0
  19. package/dist/_cjs/native/storage/asyncStorage.js +11 -0
  20. package/dist/_cjs/native/storage/asyncStorage.js.map +1 -0
  21. package/dist/_cjs/stampers/indexedDbStamper.js +3 -0
  22. package/dist/_cjs/stampers/indexedDbStamper.js.map +1 -1
  23. package/dist/_cjs/stubs/native-on-web.js +3 -0
  24. package/dist/_cjs/stubs/native-on-web.js.map +1 -0
  25. package/dist/_cjs/utils/platform.js +19 -0
  26. package/dist/_cjs/utils/platform.js.map +1 -0
  27. package/dist/_cjs/web/createZeroDevWallet.js +21 -0
  28. package/dist/_cjs/web/createZeroDevWallet.js.map +1 -0
  29. package/dist/_esm/actions/auth/authenticateWithOAuth.js +3 -2
  30. package/dist/_esm/actions/auth/authenticateWithOAuth.js.map +1 -1
  31. package/dist/_esm/client/index.js +1 -1
  32. package/dist/_esm/client/index.js.map +1 -1
  33. package/dist/_esm/client/transports/createTransport.js +1 -0
  34. package/dist/_esm/client/transports/createTransport.js.map +1 -1
  35. package/dist/_esm/client/transports/rest.js +2 -2
  36. package/dist/_esm/client/transports/rest.js.map +1 -1
  37. package/dist/_esm/core/{createZeroDevWallet.js → createZeroDevWalletCore.js} +7 -9
  38. package/dist/_esm/core/createZeroDevWalletCore.js.map +1 -0
  39. package/dist/_esm/index.js +11 -3
  40. package/dist/_esm/index.js.map +1 -1
  41. package/dist/_esm/index.native.js +18 -0
  42. package/dist/_esm/index.native.js.map +1 -0
  43. package/dist/_esm/native/stampers/passkey.js +27 -0
  44. package/dist/_esm/native/stampers/passkey.js.map +1 -0
  45. package/dist/_esm/native/stampers/secureStore.js +120 -0
  46. package/dist/_esm/native/stampers/secureStore.js.map +1 -0
  47. package/dist/_esm/native/storage/asyncStorage.js +13 -0
  48. package/dist/_esm/native/storage/asyncStorage.js.map +1 -0
  49. package/dist/_esm/stampers/indexedDbStamper.js +3 -0
  50. package/dist/_esm/stampers/indexedDbStamper.js.map +1 -1
  51. package/dist/_esm/stubs/native-on-web.js +3 -0
  52. package/dist/_esm/stubs/native-on-web.js.map +1 -0
  53. package/dist/_esm/utils/platform.js +16 -0
  54. package/dist/_esm/utils/platform.js.map +1 -0
  55. package/dist/_esm/web/createZeroDevWallet.js +18 -0
  56. package/dist/_esm/web/createZeroDevWallet.js.map +1 -0
  57. package/dist/_types/actions/auth/authenticateWithOAuth.d.ts +3 -0
  58. package/dist/_types/actions/auth/authenticateWithOAuth.d.ts.map +1 -1
  59. package/dist/_types/client/index.d.ts +1 -1
  60. package/dist/_types/client/index.d.ts.map +1 -1
  61. package/dist/_types/client/transports/createTransport.d.ts +2 -0
  62. package/dist/_types/client/transports/createTransport.d.ts.map +1 -1
  63. package/dist/_types/core/{createZeroDevWallet.d.ts → createZeroDevWalletCore.d.ts} +9 -8
  64. package/dist/_types/core/createZeroDevWalletCore.d.ts.map +1 -0
  65. package/dist/_types/index.d.ts +4 -4
  66. package/dist/_types/index.d.ts.map +1 -1
  67. package/dist/_types/index.native.d.ts +19 -0
  68. package/dist/_types/index.native.d.ts.map +1 -0
  69. package/dist/_types/native/stampers/passkey.d.ts +5 -0
  70. package/dist/_types/native/stampers/passkey.d.ts.map +1 -0
  71. package/dist/_types/native/stampers/secureStore.d.ts +3 -0
  72. package/dist/_types/native/stampers/secureStore.d.ts.map +1 -0
  73. package/dist/_types/native/storage/asyncStorage.d.ts +3 -0
  74. package/dist/_types/native/storage/asyncStorage.d.ts.map +1 -0
  75. package/dist/_types/stampers/indexedDbStamper.d.ts.map +1 -1
  76. package/dist/_types/stampers/types.d.ts +5 -0
  77. package/dist/_types/stampers/types.d.ts.map +1 -1
  78. package/dist/_types/stubs/native-on-web.d.ts +2 -0
  79. package/dist/_types/stubs/native-on-web.d.ts.map +1 -0
  80. package/dist/_types/utils/exportPrivateKey.d.ts +1 -1
  81. package/dist/_types/utils/exportPrivateKey.d.ts.map +1 -1
  82. package/dist/_types/utils/exportWallet.d.ts +1 -1
  83. package/dist/_types/utils/exportWallet.d.ts.map +1 -1
  84. package/dist/_types/utils/platform.d.ts +2 -0
  85. package/dist/_types/utils/platform.d.ts.map +1 -0
  86. package/dist/_types/web/createZeroDevWallet.d.ts +18 -0
  87. package/dist/_types/web/createZeroDevWallet.d.ts.map +1 -0
  88. package/dist/tsconfig.build.tsbuildinfo +1 -1
  89. package/package.json +92 -11
  90. package/src/actions/auth/authenticateWithOAuth.ts +5 -2
  91. package/src/client/index.ts +4 -1
  92. package/src/client/transports/createTransport.ts +3 -0
  93. package/src/client/transports/rest.ts +2 -2
  94. package/src/core/{createZeroDevWallet.ts → createZeroDevWalletCore.ts} +16 -19
  95. package/src/index.native.ts +102 -0
  96. package/src/index.ts +25 -10
  97. package/src/native/stampers/passkey.ts +39 -0
  98. package/src/native/stampers/secureStore.ts +139 -0
  99. package/src/native/storage/asyncStorage.ts +18 -0
  100. package/src/stampers/indexedDbStamper.ts +3 -0
  101. package/src/stampers/types.ts +5 -0
  102. package/src/stubs/native-on-web.ts +3 -0
  103. package/src/utils/exportPrivateKey.ts +1 -1
  104. package/src/utils/exportWallet.ts +1 -1
  105. package/src/utils/platform.ts +21 -0
  106. package/src/web/createZeroDevWallet.ts +45 -0
  107. package/dist/_cjs/core/createZeroDevWallet.js.map +0 -1
  108. package/dist/_cjs/stampers/index.js +0 -10
  109. package/dist/_cjs/stampers/index.js.map +0 -1
  110. package/dist/_esm/core/createZeroDevWallet.js.map +0 -1
  111. package/dist/_esm/stampers/index.js +0 -4
  112. package/dist/_esm/stampers/index.js.map +0 -1
  113. package/dist/_types/core/createZeroDevWallet.d.ts.map +0 -1
  114. package/dist/_types/stampers/index.d.ts +0 -5
  115. package/dist/_types/stampers/index.d.ts.map +0 -1
  116. package/src/stampers/index.ts +0 -8
@@ -1,24 +1,20 @@
1
1
  import { toViemAccount } from '../adapters/viem.js';
2
2
  import { createAuthProxyClient, createClient, zeroDevWalletTransport, } from '../client/index.js';
3
3
  import { DEFAULT_ORGANIZATION_ID, DEFAULT_SESSION_EXPIRATION_IN_SECONDS, KMS_SERVER_URL, } from '../constants.js';
4
- import { createIndexedDbStamper } from '../stampers/indexedDbStamper.js';
5
- import { createWebauthnStamper } from '../stampers/webauthnStamper.js';
6
- import { createWebStorageAdapter } from '../storage/adapters.js';
7
4
  import { createStorageManager, } from '../storage/manager.js';
8
5
  import { SessionType } from '../types/session.js';
9
6
  import { buildClientSignature } from '../utils/buildClientSignature.js';
10
7
  import { encryptOtpAttempt } from '../utils/encryptOtpAttempt.js';
11
8
  import { humanReadableDateTime, parseSession } from '../utils/utils.js';
12
- export async function createZeroDevWallet(config) {
13
- const { projectId, sessionStorage, rpId = window.location.hostname, organizationId = DEFAULT_ORGANIZATION_ID, } = config;
14
- const sessionStorageManager = createStorageManager(sessionStorage || createWebStorageAdapter());
15
- const apiKeyStamper = config.apiKeyStamper ?? (await createIndexedDbStamper());
16
- const passkeyStamper = config.passkeyStamper ?? (await createWebauthnStamper({ rpId }));
9
+ export async function createZeroDevWalletCore(config) {
10
+ const { projectId, sessionStorage, rpId, apiKeyStamper, passkeyStamper, organizationId = DEFAULT_ORGANIZATION_ID, } = config;
11
+ const sessionStorageManager = createStorageManager(sessionStorage);
17
12
  const client = createClient({
18
13
  apiKeyStamper,
19
14
  passkeyStamper,
20
15
  transport: zeroDevWalletTransport({
21
16
  baseUrl: config.proxyBaseUrl || `${KMS_SERVER_URL}/api/v1`,
17
+ ...(config.fetchOptions && { fetchOptions: config.fetchOptions }),
22
18
  }),
23
19
  });
24
20
  let cachedAuthProxyConfigId;
@@ -88,10 +84,12 @@ export async function createZeroDevWallet(config) {
88
84
  async auth(params) {
89
85
  switch (params.type) {
90
86
  case 'oauth': {
87
+ const popSignature = await client.apiKeyStamper.sign(params.sessionId);
91
88
  const data = await client.authenticateWithOAuth({
92
89
  provider: params.provider,
93
90
  projectId,
94
91
  sessionId: params.sessionId,
92
+ popSignature,
95
93
  });
96
94
  if (data.session) {
97
95
  // Parse the JWT to get session data
@@ -311,4 +309,4 @@ export async function createZeroDevWallet(config) {
311
309
  },
312
310
  };
313
311
  }
314
- //# sourceMappingURL=createZeroDevWallet.js.map
312
+ //# sourceMappingURL=createZeroDevWalletCore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createZeroDevWalletCore.js","sourceRoot":"","sources":["../../../src/core/createZeroDevWalletCore.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,8 @@
1
+ import { isReactNative } from './utils/platform.js';
2
+ if (isReactNative()) {
3
+ // biome-ignore lint/suspicious/noConsole: Warning users if they try to use the web entry on React Native.
4
+ console.warn('@zerodev/wallet-core: the web entry was loaded in a React Native runtime. Check that your metro.config.js has `unstable_enablePackageExports: true` and `"react-native"` in `unstable_conditionNames`.');
5
+ }
1
6
  // Actions
2
7
  export {
3
8
  // Auth actions
@@ -12,12 +17,15 @@ export { zeroDevWalletActions } from './client/decorators/client.js';
12
17
  export { createBaseClient, createClient, zeroDevWalletTransport, } from './client/index.js';
13
18
  // Constants
14
19
  export { KMS_SERVER_URL } from './constants.js';
15
- // Core
16
- export { createZeroDevWallet } from './core/createZeroDevWallet.js';
17
20
  // Stampers
18
- export { createIframeStamper, createIndexedDbStamper, createWebauthnStamper, } from './stampers/index.js';
21
+ export { createIframeStamper } from './stampers/iframeStamper.js';
19
22
  export { exportPrivateKey } from './utils/exportPrivateKey.js';
20
23
  export { exportWallet } from './utils/exportWallet.js';
21
24
  // Utils
22
25
  export { normalizeTimestamp } from './utils/utils.js';
26
+ // Core — bare specifier resolves web defaults (IndexedDB, WebAuthn, session
27
+ // storage, hostname-derived rpId) before forwarding to the shared factory.
28
+ // RN consumers go through `@zerodev/wallet-core/react-native`, which exposes
29
+ // the strict `ZeroDevWalletConfig` (= core's required-fields shape) directly.
30
+ export { createZeroDevWallet, } from './web/createZeroDevWallet.js';
23
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAmCA,UAAU;AACV,OAAO;AACL,eAAe;AACf,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB;AACjB,iBAAiB;AACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAE3B,WAAW;AACX,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,oBAAoB;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAEpE,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,YAAY,EAEZ,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAC1B,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAM/C,OAAO;AACP,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACnE,WAAW;AACX,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAc5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,QAAQ;AACR,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,IAAI,aAAa,EAAE,EAAE,CAAC;IACpB,0GAA0G;IAC1G,OAAO,CAAC,IAAI,CACV,wMAAwM,CACzM,CAAA;AACH,CAAC;AAqCD,UAAU;AACV,OAAO;AACL,eAAe;AACf,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB;AACjB,iBAAiB;AACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAE3B,WAAW;AACX,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,oBAAoB;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAOpE,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,YAAY,EAEZ,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAC1B,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAK/C,WAAW;AACX,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAcjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,QAAQ;AACR,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,4EAA4E;AAC5E,2EAA2E;AAC3E,6EAA6E;AAC7E,8EAA8E;AAC9E,OAAO,EACL,mBAAmB,GAEpB,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { isReactNative } from './utils/platform.js';
2
+ if (!isReactNative()) {
3
+ // biome-ignore lint/suspicious/noConsole: Warning users if they try to use the web entry on React Native.
4
+ console.warn('@zerodev/wallet-core/react-native: the React Native entry was loaded outside a React Native runtime. If this is a non-RN context, import `@zerodev/wallet-core` (the bare specifier) instead.');
5
+ }
6
+ export { authenticateWithEmail, authenticateWithOAuth, getAuthenticators, getUserWallet, getWhoami, loginWithOTP, registerWithOTP, sign7702Authorization, signMessage, signTransaction, signTypedDataV4, signUserOperation, } from './actions/index.js';
7
+ export { toViemAccount } from './adapters/viem.js';
8
+ export { zeroDevWalletActions } from './client/decorators/client.js';
9
+ export { createBaseClient, createClient, zeroDevWalletTransport, } from './client/index.js';
10
+ export { KMS_SERVER_URL } from './constants.js';
11
+ // RN entry re-exports core directly. `ZeroDevWalletConfigCore` already has
12
+ // all four adapter fields required, so RN consumers get compile-time enforcement
13
+ // without a separate type wrapper.
14
+ export { createZeroDevWalletCore as createZeroDevWallet, } from './core/createZeroDevWalletCore.js';
15
+ export { exportPrivateKey } from './utils/exportPrivateKey.js';
16
+ export { exportWallet } from './utils/exportWallet.js';
17
+ export { normalizeTimestamp } from './utils/utils.js';
18
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.native.js","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;IACrB,0GAA0G;IAC1G,OAAO,CAAC,IAAI,CACV,+LAA+L,CAChM,CAAA;AACH,CAAC;AAuCD,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAOpE,OAAO,EACL,gBAAgB,EAChB,YAAY,EAEZ,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAK/C,2EAA2E;AAC3E,iFAAiF;AACjF,mCAAmC;AACnC,OAAO,EACL,uBAAuB,IAAI,mBAAmB,GAE/C,MAAM,mCAAmC,CAAA;AAY1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { createPasskey, PasskeyStamper as TurnkeyPasskeyStamper, } from '@turnkey/react-native-passkey-stamper';
2
+ import { v4 as uuidv4 } from 'uuid';
3
+ export async function createReactNativePasskeyStamper({ rpId, }) {
4
+ const inner = new TurnkeyPasskeyStamper({ rpId });
5
+ return {
6
+ async stamp(payload) {
7
+ return await inner.stamp(payload);
8
+ },
9
+ async clear() { },
10
+ async register({ rp, userName }) {
11
+ const { attestation, challenge: encodedChallenge } = await createPasskey({
12
+ rp: {
13
+ id: rp.id,
14
+ name: rp.name ?? 'Turnkey',
15
+ },
16
+ user: {
17
+ id: uuidv4(),
18
+ name: userName,
19
+ displayName: userName,
20
+ },
21
+ authenticatorName: userName ?? 'End-User Passkey',
22
+ });
23
+ return { attestation, encodedChallenge };
24
+ },
25
+ };
26
+ }
27
+ //# sourceMappingURL=passkey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkey.js","sourceRoot":"","sources":["../../../../src/native/stampers/passkey.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,IAAI,qBAAqB,GACxC,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAMnC,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,EACpD,IAAI,GAGL;IACC,MAAM,KAAK,GAAG,IAAI,qBAAqB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAEjD,OAAO;QACL,KAAK,CAAC,KAAK,CAAC,OAAe;YACzB,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,KAAK,CAAC,KAAK,KAAI,CAAC;QAChB,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAA8B;YACzD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,MAAM,aAAa,CAAC;gBACvE,EAAE,EAAE;oBACF,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,SAAS;iBAC3B;gBACD,IAAI,EAAE;oBACJ,EAAE,EAAE,MAAM,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,QAAQ;iBACtB;gBACD,iBAAiB,EAAE,QAAQ,IAAI,kBAAkB;aAClD,CAAC,CAAA;YACF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAA;QAC1C,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,120 @@
1
+ import { ApiKeyStamper, SignatureFormat } from '@turnkey/api-key-stamper';
2
+ import { generateP256KeyPair } from '@turnkey/crypto';
3
+ import * as SecureStore from 'expo-secure-store';
4
+ const PUBLIC_KEY = 'zerodev.publicKey';
5
+ const PRIVATE_KEY = 'zerodev.privateKey';
6
+ class SecureStoreStamperInner {
7
+ constructor() {
8
+ Object.defineProperty(this, "publicKeyHex", {
9
+ enumerable: true,
10
+ configurable: true,
11
+ writable: true,
12
+ value: null
13
+ });
14
+ }
15
+ async init() {
16
+ const publicKey = await SecureStore.getItemAsync(PUBLIC_KEY);
17
+ const privateKey = await SecureStore.getItemAsync(PRIVATE_KEY);
18
+ if (publicKey && privateKey) {
19
+ this.publicKeyHex = publicKey;
20
+ }
21
+ else {
22
+ await this.resetKeyPair();
23
+ }
24
+ }
25
+ async getPublicKey() {
26
+ return this.publicKeyHex;
27
+ }
28
+ async resetKeyPair(externalKeyPair) {
29
+ await this.clear();
30
+ const pair = externalKeyPair ?? generateP256KeyPair();
31
+ await SecureStore.setItemAsync(PUBLIC_KEY, pair.publicKey);
32
+ await SecureStore.setItemAsync(PRIVATE_KEY, pair.privateKey);
33
+ this.publicKeyHex = pair.publicKey;
34
+ }
35
+ async getTurnkeyApiKeyStamper() {
36
+ if (!this.publicKeyHex) {
37
+ throw new Error('Key not initialized. Call init() or resetKeyPair() first.');
38
+ }
39
+ const privateKey = await SecureStore.getItemAsync(PRIVATE_KEY);
40
+ if (!privateKey) {
41
+ throw new Error('No private key found in secure store.');
42
+ }
43
+ return new ApiKeyStamper({
44
+ apiPublicKey: this.publicKeyHex,
45
+ apiPrivateKey: privateKey,
46
+ });
47
+ }
48
+ async stamp(payload) {
49
+ const stamper = await this.getTurnkeyApiKeyStamper();
50
+ const { stampHeaderName, stampHeaderValue } = await stamper.stamp(payload);
51
+ return { stampHeaderName, stampHeaderValue };
52
+ }
53
+ async sign(payload) {
54
+ const stamper = await this.getTurnkeyApiKeyStamper();
55
+ return stamper.sign(payload, SignatureFormat.Der);
56
+ }
57
+ async clear() {
58
+ await SecureStore.deleteItemAsync(PUBLIC_KEY);
59
+ await SecureStore.deleteItemAsync(PRIVATE_KEY);
60
+ this.publicKeyHex = null;
61
+ }
62
+ }
63
+ async function warmApiKeyStamperForMetroDev(inner) {
64
+ // `__DEV__` is a global set by React Native's Metro; read it via globalThis
65
+ // so this file needs no ambient `.d.ts` (which would conflict with RN's own
66
+ // typings when both happen to be in scope, e.g. in the editor).
67
+ if (!globalThis.__DEV__)
68
+ return;
69
+ // In Expo dev, Turnkey's API key stamper loads its React Native signer with a
70
+ // dynamic import the first time `stamp()` runs. OTP verification is usually
71
+ // the first code path that stamps a payload, and if the app was backgrounded
72
+ // while the user copied the code, Metro can serve that lazy module after
73
+ // foregrounding and trigger a full JS reload. Warming the stamper during dev
74
+ // startup makes Metro load the signer while the app is foregrounded; production
75
+ // builds do not use Metro and skip this block via `__DEV__`.
76
+ try {
77
+ await inner.stamp('{"purpose":"metro-dev-warmup"}');
78
+ }
79
+ catch (error) {
80
+ // biome-ignore lint/suspicious/noConsole: This only runs in dev mode
81
+ console.warn('Failed to warm API key stamper in dev:', error);
82
+ }
83
+ }
84
+ export async function createSecureStoreStamper() {
85
+ const inner = new SecureStoreStamperInner();
86
+ await inner.init();
87
+ await warmApiKeyStamperForMetroDev(inner);
88
+ let pendingKeyPair = null;
89
+ return {
90
+ async getPublicKey() {
91
+ return inner.getPublicKey();
92
+ },
93
+ async stamp(payload) {
94
+ return inner.stamp(payload);
95
+ },
96
+ async sign(payload) {
97
+ return inner.sign(payload);
98
+ },
99
+ async clear() {
100
+ await inner.clear();
101
+ },
102
+ async resetKeyPair() {
103
+ pendingKeyPair = null;
104
+ await inner.resetKeyPair();
105
+ },
106
+ async prepareKeyRotation() {
107
+ const keyPair = generateP256KeyPair();
108
+ pendingKeyPair = keyPair;
109
+ return keyPair.publicKey;
110
+ },
111
+ async commitKeyRotation() {
112
+ if (!pendingKeyPair) {
113
+ throw new Error('No pending key rotation to commit');
114
+ }
115
+ await inner.resetKeyPair(pendingKeyPair);
116
+ pendingKeyPair = null;
117
+ },
118
+ };
119
+ }
120
+ //# sourceMappingURL=secureStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secureStore.js","sourceRoot":"","sources":["../../../../src/native/stampers/secureStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import * as AsyncStorageNS from '@react-native-async-storage/async-storage';
2
+ // CJS package whose `.d.ts` declares `export default AsyncStorage`. Our tsconfig
3
+ // keeps `esModuleInterop: false` (and `verbatimModuleSyntax: true`), so a plain
4
+ // `import AsyncStorage from '...'` types as the module namespace instead of
5
+ // the default. Unwrap explicitly. At runtime Metro returns the default object
6
+ // either way; this only affects the static type.
7
+ const AsyncStorage = AsyncStorageNS.default;
8
+ export const asyncStorageAdapter = {
9
+ getItem: (key) => AsyncStorage.getItem(key),
10
+ setItem: (key, value) => AsyncStorage.setItem(key, value),
11
+ removeItem: (key) => AsyncStorage.removeItem(key),
12
+ };
13
+ //# sourceMappingURL=asyncStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncStorage.js","sourceRoot":"","sources":["../../../../src/native/storage/asyncStorage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,cAAc,MAAM,2CAA2C,CAAA;AAG3E,iFAAiF;AACjF,gFAAgF;AAChF,4EAA4E;AAC5E,8EAA8E;AAC9E,iDAAiD;AACjD,MAAM,YAAY,GAChB,cACD,CAAC,OAAO,CAAA;AAET,MAAM,CAAC,MAAM,mBAAmB,GAAmB;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC;IAC3C,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC;IACzD,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;CAClD,CAAA"}
@@ -11,6 +11,9 @@ export async function createIndexedDbStamper() {
11
11
  async stamp(payload) {
12
12
  return await inner.stamp(payload);
13
13
  },
14
+ async sign(payload) {
15
+ return await inner.sign(payload);
16
+ },
14
17
  async clear() {
15
18
  await inner.clear();
16
19
  },
@@ -1 +1 @@
1
- {"version":3,"file":"indexedDbStamper.js","sourceRoot":"","sources":["../../../src/stampers/indexedDbStamper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACzF,OAAO,EAAE,sCAAsC,EAAE,MAAM,mBAAmB,CAAA;AAG1E,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,MAAM,KAAK,GAAG,IAAI,uBAAuB,EAAE,CAAA;IAC3C,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;IAElB,IAAI,cAAc,GAAyB,IAAI,CAAA;IAE/C,OAAO;QACL,KAAK,CAAC,YAAY;YAChB,OAAO,MAAM,KAAK,CAAC,YAAY,EAAE,CAAA;QACnC,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,OAAe;YACzB,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,KAAK,CAAC,KAAK;YACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;QACD,KAAK,CAAC,YAAY;YAChB,cAAc,GAAG,IAAI,CAAA;YACrB,MAAM,KAAK,CAAC,YAAY,EAAE,CAAA;QAC5B,CAAC;QACD,KAAK,CAAC,kBAAkB;YACtB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAC7C,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EACtC,KAAK,EACL,CAAC,MAAM,EAAE,QAAQ,CAAC,CACnB,CAAA;YACD,cAAc,GAAG,OAAO,CAAA;YACxB,OAAO,MAAM,sCAAsC,CAAC,OAAO,CAAC,CAAA;QAC9D,CAAC;QACD,KAAK,CAAC,iBAAiB;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;YACtD,CAAC;YACD,MAAM,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YACxC,cAAc,GAAG,IAAI,CAAA;QACvB,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"indexedDbStamper.js","sourceRoot":"","sources":["../../../src/stampers/indexedDbStamper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACzF,OAAO,EAAE,sCAAsC,EAAE,MAAM,mBAAmB,CAAA;AAG1E,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,MAAM,KAAK,GAAG,IAAI,uBAAuB,EAAE,CAAA;IAC3C,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;IAElB,IAAI,cAAc,GAAyB,IAAI,CAAA;IAE/C,OAAO;QACL,KAAK,CAAC,YAAY;YAChB,OAAO,MAAM,KAAK,CAAC,YAAY,EAAE,CAAA;QACnC,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,OAAe;YACzB,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,OAAe;YACxB,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC;QACD,KAAK,CAAC,KAAK;YACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;QACD,KAAK,CAAC,YAAY;YAChB,cAAc,GAAG,IAAI,CAAA;YACrB,MAAM,KAAK,CAAC,YAAY,EAAE,CAAA;QAC5B,CAAC;QACD,KAAK,CAAC,kBAAkB;YACtB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAC7C,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EACtC,KAAK,EACL,CAAC,MAAM,EAAE,QAAQ,CAAC,CACnB,CAAA;YACD,cAAc,GAAG,OAAO,CAAA;YACxB,OAAO,MAAM,sCAAsC,CAAC,OAAO,CAAC,CAAA;QAC9D,CAAC;QACD,KAAK,CAAC,iBAAiB;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;YACtD,CAAC;YACD,MAAM,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YACxC,cAAc,GAAG,IAAI,CAAA;QACvB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ throw new Error('@zerodev/wallet-core react-native subpaths cannot be imported in a web environment. Use the bare specifier (`import { ... } from "@zerodev/wallet-core"`) instead.');
2
+ export {};
3
+ //# sourceMappingURL=native-on-web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-on-web.js","sourceRoot":"","sources":["../../../src/stubs/native-on-web.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,KAAK,CACb,oKAAoK,CACrK,CAAA"}
@@ -0,0 +1,16 @@
1
+ export function isReactNative() {
2
+ if (typeof navigator !== 'undefined' &&
3
+ navigator.product === 'ReactNative') {
4
+ return true;
5
+ }
6
+ if (typeof window !== 'undefined' &&
7
+ Object.hasOwn(window, 'ReactNativeWebView')) {
8
+ return true;
9
+ }
10
+ if (typeof globalThis !== 'undefined' &&
11
+ Object.hasOwn(globalThis, 'HermesEngine')) {
12
+ return true;
13
+ }
14
+ return false;
15
+ }
16
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/utils/platform.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa;IAC3B,IACE,OAAO,SAAS,KAAK,WAAW;QAC/B,SAAkC,CAAC,OAAO,KAAK,aAAa,EAC7D,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IACE,OAAO,MAAM,KAAK,WAAW;QAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAC3C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IACE,OAAO,UAAU,KAAK,WAAW;QACjC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,EACzC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { createZeroDevWalletCore, } from '../core/createZeroDevWalletCore.js';
2
+ import { createIndexedDbStamper } from '../stampers/indexedDbStamper.js';
3
+ import { createWebauthnStamper } from '../stampers/webauthnStamper.js';
4
+ import { createWebStorageAdapter } from '../storage/adapters.js';
5
+ export async function createZeroDevWallet(config) {
6
+ const rpId = config.rpId ?? window.location.hostname;
7
+ const apiKeyStamper = config.apiKeyStamper ?? (await createIndexedDbStamper());
8
+ const passkeyStamper = config.passkeyStamper ?? (await createWebauthnStamper({ rpId }));
9
+ const sessionStorage = config.sessionStorage ?? createWebStorageAdapter();
10
+ return createZeroDevWalletCore({
11
+ ...config,
12
+ rpId,
13
+ apiKeyStamper,
14
+ passkeyStamper,
15
+ sessionStorage,
16
+ });
17
+ }
18
+ //# sourceMappingURL=createZeroDevWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createZeroDevWallet.js","sourceRoot":"","sources":["../../../src/web/createZeroDevWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,GAGxB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAoBhE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAA2B;IAE3B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAA;IACpD,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,sBAAsB,EAAE,CAAC,CAAA;IAC9E,MAAM,cAAc,GAClB,MAAM,CAAC,cAAc,IAAI,CAAC,MAAM,qBAAqB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAClE,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,uBAAuB,EAAE,CAAA;IAEzE,OAAO,uBAAuB,CAAC;QAC7B,GAAG,MAAM;QACT,IAAI;QACJ,aAAa;QACb,cAAc;QACd,cAAc;KACf,CAAC,CAAA;AACJ,CAAC"}
@@ -6,6 +6,8 @@ export type AuthenticateWithOAuthParameters = {
6
6
  projectId: string;
7
7
  /** The session ID from the OAuth callback URL */
8
8
  sessionId: string;
9
+ /** Proof-of-possession signature for `sessionId`. */
10
+ popSignature: string;
9
11
  };
10
12
  export type AuthenticateWithOAuthReturnType = {
11
13
  /** The user ID */
@@ -34,6 +36,7 @@ export type AuthenticateWithOAuthReturnType = {
34
36
  * provider: 'google',
35
37
  * projectId: 'proj_456',
36
38
  * sessionId: 'abc123',
39
+ * popSignature: '3045022100...',
37
40
  * });
38
41
  * ```
39
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"authenticateWithOAuth.d.ts","sourceRoot":"","sources":["../../../../src/actions/auth/authenticateWithOAuth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAEnD,MAAM,MAAM,+BAA+B,GAAG;IAC5C,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,+BAA+B,CAAC,CAQ1C"}
1
+ {"version":3,"file":"authenticateWithOAuth.d.ts","sourceRoot":"","sources":["../../../../src/actions/auth/authenticateWithOAuth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAEnD,MAAM,MAAM,+BAA+B,GAAG;IAC5C,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAA;IACjB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG;IAC5C,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,+BAA+B,CAAC,CAQ1C"}
@@ -1,5 +1,5 @@
1
1
  export { type AuthProxyClient, type AuthProxyClientConfig, type AuthProxyVerifyOtpRequest, type AuthProxyVerifyOtpResponse, createAuthProxyClient, } from './authProxy.js';
2
2
  export { createBaseClient, createClient, type ZeroDevWalletClient, } from './createClient.js';
3
- export { zeroDevWalletTransport } from './transports/createTransport.js';
3
+ export { type CreateTransportOptions, zeroDevWalletTransport, } from './transports/createTransport.js';
4
4
  export type { Client, ClientConfig, Transport, TransportConfig, } from './types.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AACxE,YAAY,EACV,MAAM,EACN,YAAY,EACZ,SAAS,EACT,eAAe,GAChB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,KAAK,sBAAsB,EAC3B,sBAAsB,GACvB,MAAM,iCAAiC,CAAA;AACxC,YAAY,EACV,MAAM,EACN,YAAY,EACZ,SAAS,EACT,eAAe,GAChB,MAAM,YAAY,CAAA"}
@@ -8,6 +8,8 @@ export type CreateTransportOptions = {
8
8
  key?: string;
9
9
  /** Transport name */
10
10
  name?: string;
11
+ /** Extra options merged into every fetch() call */
12
+ fetchOptions?: Omit<RequestInit, 'body' | 'method' | 'signal'>;
11
13
  };
12
14
  /**
13
15
  * Creates a transport for the ZeroDev Wallet client.
@@ -1 +1 @@
1
- {"version":3,"file":"createTransport.d.ts","sourceRoot":"","sources":["../../../../src/client/transports/createTransport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAG5C,MAAM,MAAM,sBAAsB,GAAG;IACnC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,sBAAsB,GAC9B,SAAS,CAiCX"}
1
+ {"version":3,"file":"createTransport.d.ts","sourceRoot":"","sources":["../../../../src/client/transports/createTransport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAG5C,MAAM,MAAM,sBAAsB,GAAG;IACnC,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+BAA+B;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mDAAmD;IACnD,YAAY,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAA;CAC/D,CAAA;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,sBAAsB,GAC9B,SAAS,CAkCX"}
@@ -1,17 +1,18 @@
1
1
  import type { LocalAccount } from 'viem/accounts';
2
2
  import type { EmailCustomization, OtpCodeCustomization } from '../actions/auth/index.js';
3
- import { type ZeroDevWalletClient } from '../client/index.js';
3
+ import { type CreateTransportOptions, type ZeroDevWalletClient } from '../client/index.js';
4
4
  import type { ApiKeyStamper, PasskeyStamper } from '../stampers/types.js';
5
5
  import { type StorageAdapter } from '../storage/manager.js';
6
6
  import { type ZeroDevWalletSession } from '../types/session.js';
7
- export interface ZeroDevWalletConfig {
7
+ export interface ZeroDevWalletConfigCore {
8
8
  organizationId?: string;
9
9
  proxyBaseUrl?: string;
10
10
  projectId: string;
11
- sessionStorage?: StorageAdapter;
12
- rpId?: string;
13
- apiKeyStamper?: ApiKeyStamper;
14
- passkeyStamper?: PasskeyStamper;
11
+ sessionStorage: StorageAdapter;
12
+ rpId: string;
13
+ apiKeyStamper: ApiKeyStamper;
14
+ passkeyStamper: PasskeyStamper;
15
+ fetchOptions?: CreateTransportOptions['fetchOptions'];
15
16
  }
16
17
  export type { EmailCustomization } from '../actions/auth/index.js';
17
18
  export type { StorageAdapter, StorageManager } from '../storage/manager.js';
@@ -73,5 +74,5 @@ export interface ZeroDevWalletSDK {
73
74
  logout: () => Promise<boolean>;
74
75
  toAccount: () => Promise<LocalAccount>;
75
76
  }
76
- export declare function createZeroDevWallet(config: ZeroDevWalletConfig): Promise<ZeroDevWalletSDK>;
77
- //# sourceMappingURL=createZeroDevWallet.d.ts.map
77
+ export declare function createZeroDevWalletCore(config: ZeroDevWalletConfigCore): Promise<ZeroDevWalletSDK>;
78
+ //# sourceMappingURL=createZeroDevWalletCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createZeroDevWalletCore.d.ts","sourceRoot":"","sources":["../../../src/core/createZeroDevWalletCore.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,11 @@ export type { ToViemAccountParams } from './adapters/viem.js';
4
4
  export { toViemAccount } from './adapters/viem.js';
5
5
  export type { ZeroDevWalletActions } from './client/decorators/client.js';
6
6
  export { zeroDevWalletActions } from './client/decorators/client.js';
7
- export type { Client, ClientConfig, Transport } from './client/index.js';
7
+ export type { Client, ClientConfig, CreateTransportOptions, Transport, } from './client/index.js';
8
8
  export { createBaseClient, createClient, type ZeroDevWalletClient, zeroDevWalletTransport, } from './client/index.js';
9
9
  export { KMS_SERVER_URL } from './constants.js';
10
- export type { AuthParams, ZeroDevWalletConfig, ZeroDevWalletSDK, } from './core/createZeroDevWallet.js';
11
- export { createZeroDevWallet } from './core/createZeroDevWallet.js';
12
- export { createIframeStamper, createIndexedDbStamper, createWebauthnStamper, } from './stampers/index.js';
10
+ export type { AuthParams, ZeroDevWalletSDK, } from './core/createZeroDevWalletCore.js';
11
+ export { createIframeStamper } from './stampers/iframeStamper.js';
13
12
  export type { ApiKeyStamper, Attestation, IframeStamper, PasskeyRegistrationOptions, PasskeyRegistrationResult, PasskeyStamper, } from './stampers/types.js';
14
13
  export type { StorageAdapter, StorageManager } from './storage/manager.js';
15
14
  export type { StamperType, ZeroDevWalletSession } from './types/session.js';
@@ -17,4 +16,5 @@ export type { KeyFormat } from './utils/exportPrivateKey.js';
17
16
  export { exportPrivateKey } from './utils/exportPrivateKey.js';
18
17
  export { exportWallet } from './utils/exportWallet.js';
19
18
  export { normalizeTimestamp } from './utils/utils.js';
19
+ export { createZeroDevWallet, type ZeroDevWalletConfig, } from './web/createZeroDevWallet.js';
20
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAEV,mBAAmB,EACnB,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,YAAY,EACZ,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAE3B,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,+BAA+B,EAC/B,+BAA+B,EAC/B,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAEL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EAEjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,YAAY,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAEzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAExE,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,EACxB,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,YAAY,EACV,UAAU,EACV,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EAEV,mBAAmB,EACnB,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,YAAY,EACZ,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAE3B,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,+BAA+B,EAC/B,+BAA+B,EAC/B,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAEL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EAEjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,YAAY,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AAEzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,YAAY,EACV,MAAM,EACN,YAAY,EACZ,sBAAsB,EACtB,SAAS,GACV,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,EACxB,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,YAAY,EACV,UAAU,EACV,gBAAgB,GACjB,MAAM,mCAAmC,CAAA;AAE1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,YAAY,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAKrD,OAAO,EACL,mBAAmB,EACnB,KAAK,mBAAmB,GACzB,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,19 @@
1
+ export type { ApiKeyAuthenticator, AuthenticateWithEmailParameters, AuthenticateWithEmailReturnType, AuthenticateWithOAuthParameters, AuthenticateWithOAuthReturnType, EmailContact, EmailCustomization, GetAuthenticatorsParameters, GetAuthenticatorsReturnType, GetUserWalletParameters, GetUserWalletReturnType, GetWhoamiParameters, GetWhoamiReturnType, LoginWithOTPParameters, LoginWithOTPReturnType, OAuthAuthenticator, OtpContact, PasskeyAuthenticator, RegisterWithOTPParameters, RegisterWithOTPReturnType, Sign7702AuthorizationParameters, Sign7702AuthorizationReturnType, SignMessageParameters, SignMessageReturnType, SignTransactionParameters, SignTransactionReturnType, SignTypedDataV4Parameters, SignTypedDataV4ReturnType, SignUserOperationParameters, SignUserOperationReturnType, } from './actions/index.js';
2
+ export { authenticateWithEmail, authenticateWithOAuth, getAuthenticators, getUserWallet, getWhoami, loginWithOTP, registerWithOTP, sign7702Authorization, signMessage, signTransaction, signTypedDataV4, signUserOperation, } from './actions/index.js';
3
+ export type { ToViemAccountParams } from './adapters/viem.js';
4
+ export { toViemAccount } from './adapters/viem.js';
5
+ export type { ZeroDevWalletActions } from './client/decorators/client.js';
6
+ export { zeroDevWalletActions } from './client/decorators/client.js';
7
+ export type { Client, ClientConfig, CreateTransportOptions, Transport, } from './client/index.js';
8
+ export { createBaseClient, createClient, type ZeroDevWalletClient, zeroDevWalletTransport, } from './client/index.js';
9
+ export { KMS_SERVER_URL } from './constants.js';
10
+ export type { AuthParams, ZeroDevWalletSDK, } from './core/createZeroDevWalletCore.js';
11
+ export { createZeroDevWalletCore as createZeroDevWallet, type ZeroDevWalletConfigCore as ZeroDevWalletConfig, } from './core/createZeroDevWalletCore.js';
12
+ export type { ApiKeyStamper, Attestation, IframeStamper, PasskeyRegistrationOptions, PasskeyRegistrationResult, PasskeyStamper, } from './stampers/types.js';
13
+ export type { StorageAdapter, StorageManager } from './storage/manager.js';
14
+ export type { StamperType, ZeroDevWalletSession } from './types/session.js';
15
+ export type { KeyFormat } from './utils/exportPrivateKey.js';
16
+ export { exportPrivateKey } from './utils/exportPrivateKey.js';
17
+ export { exportWallet } from './utils/exportWallet.js';
18
+ export { normalizeTimestamp } from './utils/utils.js';
19
+ //# sourceMappingURL=index.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":"AAcA,YAAY,EACV,mBAAmB,EACnB,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,YAAY,EACZ,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,+BAA+B,EAC/B,+BAA+B,EAC/B,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,YAAY,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,YAAY,EACV,MAAM,EACN,YAAY,EACZ,sBAAsB,EACtB,SAAS,GACV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,EACxB,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,YAAY,EACV,UAAU,EACV,gBAAgB,GACjB,MAAM,mCAAmC,CAAA;AAI1C,OAAO,EACL,uBAAuB,IAAI,mBAAmB,EAC9C,KAAK,uBAAuB,IAAI,mBAAmB,GACpD,MAAM,mCAAmC,CAAA;AAC1C,YAAY,EACV,aAAa,EACb,WAAW,EACX,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1E,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { PasskeyStamper } from '../../stampers/types.js';
2
+ export declare function createReactNativePasskeyStamper({ rpId, }: {
3
+ rpId: string;
4
+ }): Promise<PasskeyStamper>;
5
+ //# sourceMappingURL=passkey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../../../src/native/stampers/passkey.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,yBAAyB,CAAA;AAEhC,wBAAsB,+BAA+B,CAAC,EACpD,IAAI,GACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,OAAO,CAAC,cAAc,CAAC,CAwB1B"}
@@ -0,0 +1,3 @@
1
+ import type { ApiKeyStamper as ZDApiKeyStamper } from '../../stampers/types.js';
2
+ export declare function createSecureStoreStamper(): Promise<ZDApiKeyStamper>;
3
+ //# sourceMappingURL=secureStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secureStore.d.ts","sourceRoot":"","sources":["../../../../src/native/stampers/secureStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,IAAI,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAkG/E,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC,CAqCzE"}
@@ -0,0 +1,3 @@
1
+ import type { StorageAdapter } from '../../storage/manager.js';
2
+ export declare const asyncStorageAdapter: StorageAdapter;
3
+ //# sourceMappingURL=asyncStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncStorage.d.ts","sourceRoot":"","sources":["../../../../src/native/storage/asyncStorage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAW9D,eAAO,MAAM,mBAAmB,EAAE,cAIjC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"indexedDbStamper.d.ts","sourceRoot":"","sources":["../../../src/stampers/indexedDbStamper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,aAAa,CAAC,CAqCrE"}
1
+ {"version":3,"file":"indexedDbStamper.d.ts","sourceRoot":"","sources":["../../../src/stampers/indexedDbStamper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,aAAa,CAAC,CAwCrE"}
@@ -30,6 +30,11 @@ export type ApiKeyStamper = Stamper & {
30
30
  prepareKeyRotation: () => Promise<string>;
31
31
  /** Promote the pending key to active. Call after the server accepts the new key. */
32
32
  commitKeyRotation: () => Promise<void>;
33
+ /**
34
+ * Sign `payload` with the currently active key. Returns a hex-encoded
35
+ * ECDSA-P256 / SHA-256 signature in ASN.1 DER form.
36
+ */
37
+ sign: (payload: string) => Promise<string>;
33
38
  };
34
39
  export type Attestation = {
35
40
  attestationObject: string;