@zerodev/wallet-core 0.0.1-alpha.6 → 0.0.1-alpha.8

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 (134) hide show
  1. package/README.md +5 -8
  2. package/dist/_cjs/actions/auth/authenticateWithOAuth.js +3 -7
  3. package/dist/_cjs/actions/auth/authenticateWithOAuth.js.map +1 -1
  4. package/dist/_cjs/actions/auth/getUserEmail.js +16 -0
  5. package/dist/_cjs/actions/auth/getUserEmail.js.map +1 -0
  6. package/dist/_cjs/actions/auth/index.js +3 -1
  7. package/dist/_cjs/actions/auth/index.js.map +1 -1
  8. package/dist/_cjs/actions/auth/loginWithOTP.js +3 -5
  9. package/dist/_cjs/actions/auth/loginWithOTP.js.map +1 -1
  10. package/dist/_cjs/actions/auth/loginWithStamp.js +4 -3
  11. package/dist/_cjs/actions/auth/loginWithStamp.js.map +1 -1
  12. package/dist/_cjs/actions/auth/registerWithOTP.js +1 -2
  13. package/dist/_cjs/actions/auth/registerWithOTP.js.map +1 -1
  14. package/dist/_cjs/actions/index.js +2 -1
  15. package/dist/_cjs/actions/index.js.map +1 -1
  16. package/dist/_cjs/actions/wallet/signRawPayload.js +13 -12
  17. package/dist/_cjs/actions/wallet/signRawPayload.js.map +1 -1
  18. package/dist/_cjs/actions/wallet/signTransaction.js +12 -11
  19. package/dist/_cjs/actions/wallet/signTransaction.js.map +1 -1
  20. package/dist/_cjs/adapters/viem.js +2 -0
  21. package/dist/_cjs/adapters/viem.js.map +1 -1
  22. package/dist/_cjs/client/authProxy.js +31 -0
  23. package/dist/_cjs/client/authProxy.js.map +1 -0
  24. package/dist/_cjs/client/decorators/client.js +1 -0
  25. package/dist/_cjs/client/decorators/client.js.map +1 -1
  26. package/dist/_cjs/client/index.js +3 -1
  27. package/dist/_cjs/client/index.js.map +1 -1
  28. package/dist/_cjs/client/transports/rest.js +3 -1
  29. package/dist/_cjs/client/transports/rest.js.map +1 -1
  30. package/dist/_cjs/constants.js +2 -1
  31. package/dist/_cjs/constants.js.map +1 -1
  32. package/dist/_cjs/core/createZeroDevWallet.js +22 -16
  33. package/dist/_cjs/core/createZeroDevWallet.js.map +1 -1
  34. package/dist/_cjs/index.js +3 -1
  35. package/dist/_cjs/index.js.map +1 -1
  36. package/dist/_cjs/utils/buildClientSignature.js +39 -0
  37. package/dist/_cjs/utils/buildClientSignature.js.map +1 -0
  38. package/dist/_cjs/utils/derToRawSignature.js +63 -0
  39. package/dist/_cjs/utils/derToRawSignature.js.map +1 -0
  40. package/dist/_esm/actions/auth/authenticateWithOAuth.js +8 -10
  41. package/dist/_esm/actions/auth/authenticateWithOAuth.js.map +1 -1
  42. package/dist/_esm/actions/auth/getUserEmail.js +29 -0
  43. package/dist/_esm/actions/auth/getUserEmail.js.map +1 -0
  44. package/dist/_esm/actions/auth/index.js +1 -0
  45. package/dist/_esm/actions/auth/index.js.map +1 -1
  46. package/dist/_esm/actions/auth/loginWithOTP.js +14 -12
  47. package/dist/_esm/actions/auth/loginWithOTP.js.map +1 -1
  48. package/dist/_esm/actions/auth/loginWithStamp.js +4 -3
  49. package/dist/_esm/actions/auth/loginWithStamp.js.map +1 -1
  50. package/dist/_esm/actions/auth/registerWithOTP.js +5 -6
  51. package/dist/_esm/actions/auth/registerWithOTP.js.map +1 -1
  52. package/dist/_esm/actions/index.js +1 -1
  53. package/dist/_esm/actions/index.js.map +1 -1
  54. package/dist/_esm/actions/wallet/signRawPayload.js +13 -12
  55. package/dist/_esm/actions/wallet/signRawPayload.js.map +1 -1
  56. package/dist/_esm/actions/wallet/signTransaction.js +12 -11
  57. package/dist/_esm/actions/wallet/signTransaction.js.map +1 -1
  58. package/dist/_esm/adapters/viem.js +2 -0
  59. package/dist/_esm/adapters/viem.js.map +1 -1
  60. package/dist/_esm/client/authProxy.js +41 -0
  61. package/dist/_esm/client/authProxy.js.map +1 -0
  62. package/dist/_esm/client/decorators/client.js +2 -1
  63. package/dist/_esm/client/decorators/client.js.map +1 -1
  64. package/dist/_esm/client/index.js +1 -0
  65. package/dist/_esm/client/index.js.map +1 -1
  66. package/dist/_esm/client/transports/rest.js +3 -1
  67. package/dist/_esm/client/transports/rest.js.map +1 -1
  68. package/dist/_esm/constants.js +1 -0
  69. package/dist/_esm/constants.js.map +1 -1
  70. package/dist/_esm/core/createZeroDevWallet.js +30 -18
  71. package/dist/_esm/core/createZeroDevWallet.js.map +1 -1
  72. package/dist/_esm/index.js +2 -0
  73. package/dist/_esm/index.js.map +1 -1
  74. package/dist/_esm/utils/buildClientSignature.js +64 -0
  75. package/dist/_esm/utils/buildClientSignature.js.map +1 -0
  76. package/dist/_esm/utils/derToRawSignature.js +89 -0
  77. package/dist/_esm/utils/derToRawSignature.js.map +1 -0
  78. package/dist/_types/actions/auth/authenticateWithOAuth.d.ts +6 -8
  79. package/dist/_types/actions/auth/authenticateWithOAuth.d.ts.map +1 -1
  80. package/dist/_types/actions/auth/getUserEmail.d.ts +29 -0
  81. package/dist/_types/actions/auth/getUserEmail.d.ts.map +1 -0
  82. package/dist/_types/actions/auth/index.d.ts +1 -0
  83. package/dist/_types/actions/auth/index.d.ts.map +1 -1
  84. package/dist/_types/actions/auth/loginWithOTP.d.ts +15 -15
  85. package/dist/_types/actions/auth/loginWithOTP.d.ts.map +1 -1
  86. package/dist/_types/actions/auth/loginWithStamp.d.ts.map +1 -1
  87. package/dist/_types/actions/auth/registerWithOTP.d.ts +5 -11
  88. package/dist/_types/actions/auth/registerWithOTP.d.ts.map +1 -1
  89. package/dist/_types/actions/index.d.ts +1 -1
  90. package/dist/_types/actions/index.d.ts.map +1 -1
  91. package/dist/_types/actions/wallet/signRawPayload.d.ts +2 -0
  92. package/dist/_types/actions/wallet/signRawPayload.d.ts.map +1 -1
  93. package/dist/_types/actions/wallet/signTransaction.d.ts +2 -0
  94. package/dist/_types/actions/wallet/signTransaction.d.ts.map +1 -1
  95. package/dist/_types/adapters/viem.d.ts.map +1 -1
  96. package/dist/_types/client/authProxy.d.ts +36 -0
  97. package/dist/_types/client/authProxy.d.ts.map +1 -0
  98. package/dist/_types/client/decorators/client.d.ts +5 -1
  99. package/dist/_types/client/decorators/client.d.ts.map +1 -1
  100. package/dist/_types/client/index.d.ts +1 -0
  101. package/dist/_types/client/index.d.ts.map +1 -1
  102. package/dist/_types/client/transports/rest.d.ts +2 -0
  103. package/dist/_types/client/transports/rest.d.ts.map +1 -1
  104. package/dist/_types/constants.d.ts +1 -0
  105. package/dist/_types/constants.d.ts.map +1 -1
  106. package/dist/_types/core/createZeroDevWallet.d.ts +0 -3
  107. package/dist/_types/core/createZeroDevWallet.d.ts.map +1 -1
  108. package/dist/_types/index.d.ts +1 -0
  109. package/dist/_types/index.d.ts.map +1 -1
  110. package/dist/_types/utils/buildClientSignature.d.ts +25 -0
  111. package/dist/_types/utils/buildClientSignature.d.ts.map +1 -0
  112. package/dist/_types/utils/derToRawSignature.d.ts +11 -0
  113. package/dist/_types/utils/derToRawSignature.d.ts.map +1 -0
  114. package/dist/tsconfig.build.tsbuildinfo +1 -1
  115. package/package.json +3 -2
  116. package/src/actions/auth/authenticateWithOAuth.ts +9 -15
  117. package/src/actions/auth/getUserEmail.ts +46 -0
  118. package/src/actions/auth/index.ts +5 -2
  119. package/src/actions/auth/loginWithOTP.ts +18 -21
  120. package/src/actions/auth/loginWithStamp.ts +4 -3
  121. package/src/actions/auth/registerWithOTP.ts +6 -13
  122. package/src/actions/index.ts +3 -0
  123. package/src/actions/wallet/signRawPayload.ts +15 -11
  124. package/src/actions/wallet/signTransaction.ts +15 -11
  125. package/src/adapters/viem.ts +2 -0
  126. package/src/client/authProxy.ts +78 -0
  127. package/src/client/decorators/client.ts +11 -0
  128. package/src/client/index.ts +7 -0
  129. package/src/client/transports/rest.ts +5 -1
  130. package/src/constants.ts +2 -0
  131. package/src/core/createZeroDevWallet.ts +34 -21
  132. package/src/index.ts +2 -0
  133. package/src/utils/buildClientSignature.ts +86 -0
  134. package/src/utils/derToRawSignature.ts +103 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.normalizeTimestamp = exports.exportWallet = exports.exportPrivateKey = exports.createWebauthnStamper = exports.createIndexedDbStamper = exports.createIframeStamper = exports.createZeroDevWallet = exports.zeroDevWalletTransport = exports.createClient = exports.createBaseClient = exports.zeroDevWalletActions = exports.toViemAccount = exports.signTransaction = exports.signRawPayload = exports.registerWithOTP = exports.loginWithOTP = exports.getWhoami = exports.getUserWallet = exports.authenticateWithOAuth = exports.authenticateWithEmail = void 0;
3
+ exports.normalizeTimestamp = exports.exportWallet = exports.exportPrivateKey = exports.createWebauthnStamper = exports.createIndexedDbStamper = exports.createIframeStamper = exports.createZeroDevWallet = exports.KMS_SERVER_URL = exports.zeroDevWalletTransport = exports.createClient = exports.createBaseClient = exports.zeroDevWalletActions = exports.toViemAccount = exports.signTransaction = exports.signRawPayload = exports.registerWithOTP = exports.loginWithOTP = exports.getWhoami = exports.getUserWallet = exports.authenticateWithOAuth = exports.authenticateWithEmail = void 0;
4
4
  var index_js_1 = require("./actions/index.js");
5
5
  Object.defineProperty(exports, "authenticateWithEmail", { enumerable: true, get: function () { return index_js_1.authenticateWithEmail; } });
6
6
  Object.defineProperty(exports, "authenticateWithOAuth", { enumerable: true, get: function () { return index_js_1.authenticateWithOAuth; } });
@@ -18,6 +18,8 @@ var index_js_2 = require("./client/index.js");
18
18
  Object.defineProperty(exports, "createBaseClient", { enumerable: true, get: function () { return index_js_2.createBaseClient; } });
19
19
  Object.defineProperty(exports, "createClient", { enumerable: true, get: function () { return index_js_2.createClient; } });
20
20
  Object.defineProperty(exports, "zeroDevWalletTransport", { enumerable: true, get: function () { return index_js_2.zeroDevWalletTransport; } });
21
+ var constants_js_1 = require("./constants.js");
22
+ Object.defineProperty(exports, "KMS_SERVER_URL", { enumerable: true, get: function () { return constants_js_1.KMS_SERVER_URL; } });
21
23
  var createZeroDevWallet_js_1 = require("./core/createZeroDevWallet.js");
22
24
  Object.defineProperty(exports, "createZeroDevWallet", { enumerable: true, get: function () { return createZeroDevWallet_js_1.createZeroDevWallet; } });
23
25
  var index_js_3 = require("./stampers/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAwBA,+CAW2B;AATzB,iHAAA,qBAAqB,OAAA;AACrB,iHAAA,qBAAqB,OAAA;AAErB,yGAAA,aAAa,OAAA;AACb,qGAAA,SAAS,OAAA;AACT,wGAAA,YAAY,OAAA;AACZ,2GAAA,eAAe,OAAA;AACf,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AAIjB,8CAAkD;AAAzC,wGAAA,aAAa,OAAA;AAGtB,2DAAoE;AAA3D,iHAAA,oBAAoB,OAAA;AAG7B,8CAK0B;AAJxB,4GAAA,gBAAgB,OAAA;AAChB,wGAAA,YAAY,OAAA;AAEZ,kHAAA,sBAAsB,OAAA;AAQxB,wEAAmE;AAA1D,6HAAA,mBAAmB,OAAA;AAE5B,gDAI4B;AAH1B,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,iHAAA,qBAAqB,OAAA;AAYvB,mEAA8D;AAArD,uHAAA,gBAAgB,OAAA;AACzB,2DAAsD;AAA7C,+GAAA,YAAY,OAAA;AAErB,6CAAqD;AAA5C,8GAAA,kBAAkB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAwBA,+CAW2B;AATzB,iHAAA,qBAAqB,OAAA;AACrB,iHAAA,qBAAqB,OAAA;AAErB,yGAAA,aAAa,OAAA;AACb,qGAAA,SAAS,OAAA;AACT,wGAAA,YAAY,OAAA;AACZ,2GAAA,eAAe,OAAA;AACf,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AAIjB,8CAAkD;AAAzC,wGAAA,aAAa,OAAA;AAGtB,2DAAoE;AAA3D,iHAAA,oBAAoB,OAAA;AAG7B,8CAK0B;AAJxB,4GAAA,gBAAgB,OAAA;AAChB,wGAAA,YAAY,OAAA;AAEZ,kHAAA,sBAAsB,OAAA;AAGxB,+CAA+C;AAAtC,8GAAA,cAAc,OAAA;AAOvB,wEAAmE;AAA1D,6HAAA,mBAAmB,OAAA;AAE5B,gDAI4B;AAH1B,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,iHAAA,qBAAqB,OAAA;AAYvB,mEAA8D;AAArD,uHAAA,gBAAgB,OAAA;AACzB,2DAAsD;AAA7C,+GAAA,YAAY,OAAA;AAErB,6CAAqD;AAA5C,8GAAA,kBAAkB,OAAA"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildClientSignature = buildClientSignature;
4
+ const derToRawSignature_js_1 = require("./derToRawSignature.js");
5
+ async function buildClientSignature(params) {
6
+ const { verificationToken, publicKey, stamper } = params;
7
+ const tokenId = extractTokenIdFromJwt(verificationToken);
8
+ const signaturePayload = {
9
+ login: { publicKey },
10
+ tokenId,
11
+ type: 'USAGE_TYPE_LOGIN',
12
+ };
13
+ const message = JSON.stringify(signaturePayload);
14
+ const stamp = await stamper.stamp(message);
15
+ const stampData = JSON.parse(base64UrlDecode(stamp.stampHeaderValue));
16
+ const derSignatureHex = stampData.signature;
17
+ const rawSignature = (0, derToRawSignature_js_1.derToRawSignature)(derSignatureHex);
18
+ return rawSignature;
19
+ }
20
+ function extractTokenIdFromJwt(jwt) {
21
+ const parts = jwt.split('.');
22
+ if (parts.length !== 3) {
23
+ throw new Error('Invalid JWT format');
24
+ }
25
+ const payload = JSON.parse(base64UrlDecode(parts[1]));
26
+ if (!payload.id) {
27
+ throw new Error('JWT payload missing id field');
28
+ }
29
+ return payload.id;
30
+ }
31
+ function base64UrlDecode(str) {
32
+ let base64 = str.replace(/-/g, '+').replace(/_/g, '/');
33
+ const padding = base64.length % 4;
34
+ if (padding) {
35
+ base64 += '='.repeat(4 - padding);
36
+ }
37
+ return atob(base64);
38
+ }
39
+ //# sourceMappingURL=buildClientSignature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildClientSignature.js","sourceRoot":"","sources":["../../../src/utils/buildClientSignature.ts"],"names":[],"mappings":";;AA0BA,oDA6BC;AAtDD,iEAA0D;AAyBnD,KAAK,UAAU,oBAAoB,CACxC,MAAkC;IAElC,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;IAGxD,MAAM,OAAO,GAAG,qBAAqB,CAAC,iBAAiB,CAAC,CAAA;IAGxD,MAAM,gBAAgB,GAAG;QACvB,KAAK,EAAE,EAAE,SAAS,EAAE;QACpB,OAAO;QACP,IAAI,EAAE,kBAAkB;KACzB,CAAA;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAA;IAGhD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAI1C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACrE,MAAM,eAAe,GAAW,SAAS,CAAC,SAAS,CAAA;IAGnD,MAAM,YAAY,GAAG,IAAA,wCAAiB,EAAC,eAAe,CAAC,CAAA;IAGvD,OAAO,YAAY,CAAA;AACrB,CAAC;AAKD,SAAS,qBAAqB,CAAC,GAAW;IACxC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAA;IACtD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACjD,CAAC;IAED,OAAO,OAAO,CAAC,EAAE,CAAA;AACnB,CAAC;AAKD,SAAS,eAAe,CAAC,GAAW;IAElC,IAAI,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IACjC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAA;IACnC,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAA;AACrB,CAAC"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.derToRawSignature = derToRawSignature;
4
+ function derToRawSignature(derHex) {
5
+ const der = hexToBytes(derHex);
6
+ if (der[0] !== 0x30) {
7
+ throw new Error('Invalid DER signature: expected SEQUENCE tag (0x30)');
8
+ }
9
+ let offset = 2;
10
+ if (der[offset] !== 0x02) {
11
+ throw new Error('Invalid DER signature: expected INTEGER tag (0x02) for r');
12
+ }
13
+ offset++;
14
+ const rLength = der[offset];
15
+ offset++;
16
+ const rBytes = der.slice(offset, offset + rLength);
17
+ offset += rLength;
18
+ if (der[offset] !== 0x02) {
19
+ throw new Error('Invalid DER signature: expected INTEGER tag (0x02) for s');
20
+ }
21
+ offset++;
22
+ const sLength = der[offset];
23
+ offset++;
24
+ const sBytes = der.slice(offset, offset + sLength);
25
+ const r = padTo32Bytes(stripLeadingZeros(rBytes));
26
+ const s = padTo32Bytes(stripLeadingZeros(sBytes));
27
+ const raw = new Uint8Array(64);
28
+ raw.set(r, 0);
29
+ raw.set(s, 32);
30
+ return bytesToHex(raw);
31
+ }
32
+ function hexToBytes(hex) {
33
+ const cleanHex = hex.startsWith('0x') ? hex.slice(2) : hex;
34
+ const bytes = new Uint8Array(cleanHex.length / 2);
35
+ for (let i = 0; i < bytes.length; i++) {
36
+ bytes[i] = parseInt(cleanHex.slice(i * 2, i * 2 + 2), 16);
37
+ }
38
+ return bytes;
39
+ }
40
+ function bytesToHex(bytes) {
41
+ return Array.from(bytes)
42
+ .map((b) => b.toString(16).padStart(2, '0'))
43
+ .join('');
44
+ }
45
+ function stripLeadingZeros(bytes) {
46
+ let start = 0;
47
+ while (start < bytes.length - 1 && bytes[start] === 0) {
48
+ start++;
49
+ }
50
+ return bytes.slice(start);
51
+ }
52
+ function padTo32Bytes(bytes) {
53
+ if (bytes.length === 32) {
54
+ return bytes;
55
+ }
56
+ if (bytes.length > 32) {
57
+ return bytes.slice(bytes.length - 32);
58
+ }
59
+ const padded = new Uint8Array(32);
60
+ padded.set(bytes, 32 - bytes.length);
61
+ return padded;
62
+ }
63
+ //# sourceMappingURL=derToRawSignature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derToRawSignature.js","sourceRoot":"","sources":["../../../src/utils/derToRawSignature.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,9 @@
1
1
  /**
2
- * Authenticates a user with OAuth credentials
2
+ * Authenticates a user with OAuth using cookie-based backend flow
3
+ *
4
+ * The backend reads the OAuth session from a cookie set during the OAuth flow.
5
+ * This requires the OAuth popup flow to complete first via the backend's
6
+ * /oauth/google/login endpoint.
3
7
  *
4
8
  * @param client - The ZeroDev Wallet client
5
9
  * @param params - The parameters for OAuth authentication
@@ -8,24 +12,18 @@
8
12
  * @example
9
13
  * ```ts
10
14
  * const result = await authenticateWithOAuth(client, {
11
- * oidcToken: 'oauth_token_here',
12
15
  * provider: 'google',
13
16
  * projectId: 'proj_456',
14
- * targetPublicKey: '0x...'
15
17
  * });
16
18
  * ```
17
19
  */
18
20
  export async function authenticateWithOAuth(client, params) {
19
- const { oidcToken, provider, projectId, targetPublicKey } = params;
21
+ const { projectId } = params;
20
22
  return await client.request({
21
23
  path: `${projectId}/auth/oauth`,
22
24
  method: 'POST',
23
- body: {
24
- oidcToken,
25
- provider,
26
- targetPublicKey,
27
- projectId,
28
- },
25
+ body: null,
26
+ credentials: 'include',
29
27
  });
30
28
  }
31
29
  //# sourceMappingURL=authenticateWithOAuth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"authenticateWithOAuth.js","sourceRoot":"","sources":["../../../../src/actions/auth/authenticateWithOAuth.ts"],"names":[],"mappings":"AAwBA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAc,EACd,MAAuC;IAEvC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,CAAA;IAElE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,aAAa;QAC/B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,SAAS;YACT,QAAQ;YACR,eAAe;YACf,SAAS;SACV;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"authenticateWithOAuth.js","sourceRoot":"","sources":["../../../../src/actions/auth/authenticateWithOAuth.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAc,EACd,MAAuC;IAEvC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAE5B,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,aAAa;QAC/B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,SAAS;KACvB,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Gets the user's email address
3
+ *
4
+ * @param client - The ZeroDev Wallet client
5
+ * @param params - The parameters for the user email request
6
+ * @returns The user's email address
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const userEmail = await getUserEmail(client, {
11
+ * organizationId: 'org_123',
12
+ * projectId: 'proj_456'
13
+ * });
14
+ * console.log(userEmail.email); // 'user@example.com'
15
+ * ```
16
+ */
17
+ export async function getUserEmail(client, params) {
18
+ const { organizationId, projectId } = params;
19
+ return await client.request({
20
+ path: `${projectId}/user-email`,
21
+ method: 'POST',
22
+ body: {
23
+ organizationId,
24
+ },
25
+ stamp: true,
26
+ stampPostion: 'headers',
27
+ });
28
+ }
29
+ //# sourceMappingURL=getUserEmail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserEmail.js","sourceRoot":"","sources":["../../../../src/actions/auth/getUserEmail.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,MAA8B;IAE9B,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAE5C,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,aAAa;QAC/B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,cAAc;SACf;QACD,KAAK,EAAE,IAAI;QACX,YAAY,EAAE,SAAS;KACxB,CAAC,CAAA;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export { authenticateWithEmail, } from './authenticateWithEmail.js';
2
2
  export { authenticateWithOAuth, } from './authenticateWithOAuth.js';
3
+ export { getUserEmail, } from './getUserEmail.js';
3
4
  export { getWhoami, } from './getWhoami.js';
4
5
  export { loginWithOTP, } from './loginWithOTP.js';
5
6
  export { loginWithStamp, } from './loginWithStamp.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/actions/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAGL,qBAAqB,GACtB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAGL,SAAS,GACV,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAGL,YAAY,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAIL,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAGL,mBAAmB,GACpB,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/actions/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAGL,qBAAqB,GACtB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAGL,YAAY,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,SAAS,GACV,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAGL,YAAY,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,cAAc,GACf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAIL,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAGL,mBAAmB,GACpB,MAAM,0BAA0B,CAAA"}
@@ -1,6 +1,12 @@
1
1
  /**
2
- * Logs in a user with OTP (One-Time Password) authentication
3
- * This verifies the OTP code and returns a session token
2
+ * Logs in a user with OTP (One-Time Password) authentication via the backend.
3
+ *
4
+ * The backend handles:
5
+ * 1. Parsing the verificationToken JWT to extract email and publicKey
6
+ * 2. Creating/retrieving sub-organization for (projectId, email)
7
+ * 3. Reconstructing the message for signature verification
8
+ * 4. Calling Turnkey.OtpLogin with the appropriate parameters
9
+ * 5. Returning the session to the SDK
4
10
  *
5
11
  * @param client - The ZeroDev Wallet client
6
12
  * @param params - The parameters for OTP login
@@ -8,12 +14,10 @@
8
14
  *
9
15
  * @example
10
16
  * ```ts
11
- * // After receiving OTP code via email
17
+ * // After verifying OTP via Auth Proxy and building client signature
12
18
  * const result = await loginWithOTP(client, {
13
- * otpId: 'otp_123456',
14
- * otpCode: '123456',
15
- * subOrganizationId: 'org_abc',
16
- * encodedPublicKey: '0x...',
19
+ * verificationToken: '<jwt-from-auth-proxy>',
20
+ * clientSignature: '<raw-signature-hex>',
17
21
  * projectId: 'proj_456'
18
22
  * });
19
23
  *
@@ -21,15 +25,13 @@
21
25
  * ```
22
26
  */
23
27
  export async function loginWithOTP(client, params) {
24
- const { otpId, otpCode, subOrganizationId, encodedPublicKey, projectId } = params;
28
+ const { verificationToken, clientSignature, projectId } = params;
25
29
  return await client.request({
26
30
  path: `${projectId}/auth/login/otp`,
27
31
  method: 'POST',
28
32
  body: {
29
- otpId,
30
- otpCode,
31
- subOrganizationId,
32
- encodedPublicKey,
33
+ verificationToken,
34
+ clientSignature,
33
35
  },
34
36
  });
35
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loginWithOTP.js","sourceRoot":"","sources":["../../../../src/actions/auth/loginWithOTP.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,MAA8B;IAE9B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,GACtE,MAAM,CAAA;IAER,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,iBAAiB;QACnC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,KAAK;YACL,OAAO;YACP,iBAAiB;YACjB,gBAAgB;SACjB;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"loginWithOTP.js","sourceRoot":"","sources":["../../../../src/actions/auth/loginWithOTP.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,MAA8B;IAE9B,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAEhE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,iBAAiB;QACnC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,iBAAiB;YACjB,eAAe;SAChB;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { canonicalizeEx } from 'json-canonicalize';
1
2
  /**
2
3
  * Logs in a user with a stamp
3
4
  *
@@ -19,14 +20,14 @@ export async function loginWithStamp(client, params) {
19
20
  const timestampMs = Date.now();
20
21
  const timestampMsString = timestampMs.toString();
21
22
  const timestampIso = new Date(timestampMs).toISOString();
22
- const stampPayload = `${JSON.stringify({
23
+ const stampPayload = canonicalizeEx({
23
24
  organizationId,
24
25
  parameters: {
25
26
  publicKey: targetPublicKey,
26
27
  },
27
28
  timestampMs: timestampMsString,
28
29
  type: 'ACTIVITY_TYPE_STAMP_LOGIN',
29
- })}\n`;
30
+ });
30
31
  let stamp;
31
32
  if (stampWith === 'indexedDb') {
32
33
  stamp = await client.indexedDbStamper.stamp(stampPayload);
@@ -38,7 +39,7 @@ export async function loginWithStamp(client, params) {
38
39
  stamp = await client.indexedDbStamper.stamp(stampPayload);
39
40
  }
40
41
  return client.request({
41
- path: `${projectId}/auth/login/passkey`,
42
+ path: `${projectId}/auth/login/stamp`,
42
43
  method: 'POST',
43
44
  body: {
44
45
  subOrganizationId: organizationId,
@@ -1 +1 @@
1
- {"version":3,"file":"loginWithStamp.js","sourceRoot":"","sources":["../../../../src/actions/auth/loginWithStamp.ts"],"names":[],"mappings":"AAwBA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,MAAgC;IAEhC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAExE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC9B,MAAM,iBAAiB,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAA;IAChD,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;IAExD,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,cAAc;QACd,UAAU,EAAE;YACV,SAAS,EAAE,eAAe;SAC3B;QACD,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,2BAA2B;KAClC,CAAC,IAAI,CAAA;IACN,IAAI,KAAY,CAAA;IAChB,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC3D,CAAC;SAAM,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QACpC,KAAK,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC1D,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,GAAG,SAAS,qBAAqB;QACvC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,iBAAiB,EAAE,cAAc;YACjC,eAAe;YACf,SAAS,EAAE,YAAY;YACvB,KAAK;SACN;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"loginWithStamp.js","sourceRoot":"","sources":["../../../../src/actions/auth/loginWithStamp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAyBlD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,MAAgC;IAEhC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAExE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC9B,MAAM,iBAAiB,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAA;IAChD,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAA;IAExD,MAAM,YAAY,GAAG,cAAc,CAAC;QAClC,cAAc;QACd,UAAU,EAAE;YACV,SAAS,EAAE,eAAe;SAC3B;QACD,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,2BAA2B;KAClC,CAAC,CAAA;IACF,IAAI,KAAY,CAAA;IAChB,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC9B,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC3D,CAAC;SAAM,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QACpC,KAAK,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC1D,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,GAAG,SAAS,mBAAmB;QACrC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,iBAAiB,EAAE,cAAc;YACjC,eAAe;YACf,SAAS,EAAE,YAAY;YACvB,KAAK;SACN;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Registers a user with OTP (One-Time Password) authentication
2
+ * Initiates OTP (One-Time Password) authentication
3
3
  * This will send an OTP code to the specified contact method
4
4
  *
5
5
  * @param client - The ZeroDev Wallet client
6
- * @param params - The parameters for OTP registration
7
- * @returns The registration result including otpId needed for login
6
+ * @param params - The parameters for OTP initiation
7
+ * @returns The result including otpId needed for verification
8
8
  *
9
9
  * @example
10
10
  * ```ts
@@ -17,18 +17,17 @@
17
17
  * projectId: 'proj_456'
18
18
  * });
19
19
  *
20
- * // Use result.otpId for the login step
20
+ * // Use result.otpId for the verification step
21
21
  * ```
22
22
  */
23
23
  export async function registerWithOTP(client, params) {
24
24
  const { email, contact, projectId, emailCustomization } = params;
25
25
  return await client.request({
26
- path: `${projectId}/auth/register/otp`,
26
+ path: `${projectId}/auth/init/otp`,
27
27
  method: 'POST',
28
28
  body: {
29
29
  email,
30
30
  contact,
31
- projectId,
32
31
  emailCustomization,
33
32
  },
34
33
  });
@@ -1 +1 @@
1
- {"version":3,"file":"registerWithOTP.js","sourceRoot":"","sources":["../../../../src/actions/auth/registerWithOTP.ts"],"names":[],"mappings":"AAgCA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,MAAiC;IAEjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAA;IAEhE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,oBAAoB;QACtC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,KAAK;YACL,OAAO;YACP,SAAS;YACT,kBAAkB;SACnB;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"registerWithOTP.js","sourceRoot":"","sources":["../../../../src/actions/auth/registerWithOTP.ts"],"names":[],"mappings":"AA0BA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,MAAiC;IAEjC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAA;IAEhE,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;QAC1B,IAAI,EAAE,GAAG,SAAS,gBAAgB;QAClC,MAAM,EAAE,MAAM;QACd,IAAI,EAAE;YACJ,KAAK;YACL,OAAO;YACP,kBAAkB;SACnB;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  // Auth actions
2
- export { authenticateWithEmail, authenticateWithOAuth, getWhoami, loginWithOTP, registerWithOTP, registerWithPasskey, } from './auth/index.js';
2
+ export { authenticateWithEmail, authenticateWithOAuth, getUserEmail, getWhoami, loginWithOTP, registerWithOTP, registerWithPasskey, } from './auth/index.js';
3
3
  // Wallet actions
4
4
  export { getUserWallet, signRawPayload, signTransaction, } from './wallet/index.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAKL,qBAAqB,EACrB,qBAAqB,EAIrB,SAAS,EAGT,YAAY,EAMZ,eAAe,EACf,mBAAmB,GACpB,MAAM,iBAAiB,CAAA;AAExB,iBAAiB;AACjB,OAAO,EAGL,aAAa,EAKb,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,OAAO,EAKL,qBAAqB,EACrB,qBAAqB,EAMrB,YAAY,EACZ,SAAS,EAGT,YAAY,EAMZ,eAAe,EACf,mBAAmB,GACpB,MAAM,iBAAiB,CAAA;AAExB,iBAAiB;AACjB,OAAO,EAGL,aAAa,EAKb,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAA"}
@@ -17,24 +17,25 @@
17
17
  * ```
18
18
  */
19
19
  export async function signRawPayload(client, params) {
20
- const { organizationId, projectId, address, payload, encoding = 'PAYLOAD_ENCODING_HEXADECIMAL', hashFunction = 'HASH_FUNCTION_NO_OP', } = params;
20
+ const { organizationId, projectId, token, address, payload, encoding = 'PAYLOAD_ENCODING_HEXADECIMAL', hashFunction = 'HASH_FUNCTION_NO_OP', } = params;
21
21
  const { signature } = await client.request({
22
22
  path: `${projectId}/sign/raw-payload`,
23
23
  body: {
24
- body: {
25
- type: 'ACTIVITY_TYPE_SIGN_RAW_PAYLOAD_V2',
26
- timestampMs: Date.now().toString(),
27
- organizationId,
28
- parameters: {
29
- signWith: address,
30
- payload,
31
- encoding,
32
- hashFunction,
33
- },
24
+ type: 'ACTIVITY_TYPE_SIGN_RAW_PAYLOAD_V2',
25
+ timestampMs: Date.now().toString(),
26
+ organizationId,
27
+ parameters: {
28
+ signWith: address,
29
+ payload,
30
+ encoding,
31
+ hashFunction,
34
32
  },
35
- apiUrl: 'https://api.turnkey.com/public/v1/submit/sign_raw_payload',
33
+ },
34
+ headers: {
35
+ Authorization: `Bearer ${token}`,
36
36
  },
37
37
  stamp: true,
38
+ stampPostion: 'headers',
38
39
  });
39
40
  return signature;
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signRawPayload.js","sourceRoot":"","sources":["../../../../src/actions/wallet/signRawPayload.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,MAAgC;IAEhC,MAAM,EACJ,cAAc,EACd,SAAS,EACT,OAAO,EACP,OAAO,EACP,QAAQ,GAAG,8BAA8B,EACzC,YAAY,GAAG,qBAAqB,GACrC,GAAG,MAAM,CAAA;IAEV,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,EAAE,GAAG,SAAS,mBAAmB;QACrC,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,IAAI,EAAE,mCAAmC;gBACzC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAClC,cAAc;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,OAAO;oBACjB,OAAO;oBACP,QAAQ;oBACR,YAAY;iBACb;aACF;YACD,MAAM,EAAE,2DAA2D;SACpE;QACD,KAAK,EAAE,IAAI;KACZ,CAAC,CAAA;IACF,OAAO,SAAgB,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"signRawPayload.js","sourceRoot":"","sources":["../../../../src/actions/wallet/signRawPayload.ts"],"names":[],"mappings":"AAsBA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,MAAgC;IAEhC,MAAM,EACJ,cAAc,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,GAAG,8BAA8B,EACzC,YAAY,GAAG,qBAAqB,GACrC,GAAG,MAAM,CAAA;IAEV,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,EAAE,GAAG,SAAS,mBAAmB;QACrC,IAAI,EAAE;YACJ,IAAI,EAAE,mCAAmC;YACzC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;YAClC,cAAc;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE,OAAO;gBACjB,OAAO;gBACP,QAAQ;gBACR,YAAY;aACb;SACF;QACD,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,KAAK,EAAE;SACjC;QACD,KAAK,EAAE,IAAI;QACX,YAAY,EAAE,SAAS;KACxB,CAAC,CAAA;IACF,OAAO,SAAgB,CAAA;AACzB,CAAC"}
@@ -17,23 +17,24 @@
17
17
  * ```
18
18
  */
19
19
  export async function signTransaction(client, params) {
20
- const { organizationId, projectId, address, unsignedTransaction } = params;
20
+ const { organizationId, projectId, token, address, unsignedTransaction } = params;
21
21
  const { signature } = await client.request({
22
22
  path: `${projectId}/sign/transaction`,
23
23
  body: {
24
- body: {
25
- type: 'ACTIVITY_TYPE_SIGN_TRANSACTION_V2',
26
- timestampMs: Date.now().toString(),
27
- organizationId,
28
- parameters: {
29
- signWith: address,
30
- type: 'TRANSACTION_TYPE_ETHEREUM',
31
- unsignedTransaction,
32
- },
24
+ type: 'ACTIVITY_TYPE_SIGN_TRANSACTION_V2',
25
+ timestampMs: Date.now().toString(),
26
+ organizationId,
27
+ parameters: {
28
+ signWith: address,
29
+ type: 'TRANSACTION_TYPE_ETHEREUM',
30
+ unsignedTransaction,
33
31
  },
34
- apiUrl: 'https://api.turnkey.com/public/v1/submit/sign_transaction',
32
+ },
33
+ headers: {
34
+ Authorization: `Bearer ${token}`,
35
35
  },
36
36
  stamp: true,
37
+ stampPostion: 'headers',
37
38
  });
38
39
  return `0x${signature}`;
39
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signTransaction.js","sourceRoot":"","sources":["../../../../src/actions/wallet/signTransaction.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,MAAiC;IAEjC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAA;IAE1E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,EAAE,GAAG,SAAS,mBAAmB;QACrC,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,IAAI,EAAE,mCAAmC;gBACzC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAClC,cAAc;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,2BAA2B;oBACjC,mBAAmB;iBACpB;aACF;YACD,MAAM,EAAE,2DAA2D;SACpE;QACD,KAAK,EAAE,IAAI;KACZ,CAAC,CAAA;IAEF,OAAO,KAAK,SAAS,EAAS,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"signTransaction.js","sourceRoot":"","sources":["../../../../src/actions/wallet/signTransaction.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,MAAiC;IAEjC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,GACtE,MAAM,CAAA;IAER,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QACzC,IAAI,EAAE,GAAG,SAAS,mBAAmB;QACrC,IAAI,EAAE;YACJ,IAAI,EAAE,mCAAmC;YACzC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;YAClC,cAAc;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,2BAA2B;gBACjC,mBAAmB;aACpB;SACF;QACD,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,KAAK,EAAE;SACjC;QACD,KAAK,EAAE,IAAI;QACX,YAAY,EAAE,SAAS;KACxB,CAAC,CAAA;IAEF,OAAO,KAAK,SAAS,EAAS,CAAA;AAChC,CAAC"}
@@ -19,6 +19,7 @@ export async function toViemAccount(params) {
19
19
  return await client.signRawPayload({
20
20
  organizationId,
21
21
  projectId,
22
+ token,
22
23
  address,
23
24
  payload,
24
25
  encoding,
@@ -36,6 +37,7 @@ export async function toViemAccount(params) {
36
37
  const signature = await client.signTransaction({
37
38
  organizationId,
38
39
  projectId,
40
+ token,
39
41
  address,
40
42
  unsignedTransaction: nonHexPrefixedSerializedTx,
41
43
  });
@@ -1 +1 @@
1
- {"version":3,"file":"viem.js","sourceRoot":"","sources":["../../../src/adapters/viem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viem.js","sourceRoot":"","sources":["../../../src/adapters/viem.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAEX,cAAc,EACd,gBAAgB,EAGhB,oBAAoB,EACpB,kBAAkB,EAElB,WAAW,GACZ,MAAM,MAAM,CAAA;AAKb,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAW9C,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B;IAE3B,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAE3D,IAAI,OAAO,GAAQ,WAAW,CAAA;IAE9B,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC;YAChD,cAAc;YACd,SAAS;YACT,KAAK;SACN,CAAC,CAAA;QACF,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,WAAW,CAAA;IACvB,CAAC;IACD,MAAM,sBAAsB,GAAG,KAAK,EAClC,OAAe,EACf,WAEmB,8BAA8B,EACjD,EAAE;QACF,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC;YACjC,cAAc;YACd,SAAS;YACT,KAAK;YACL,OAAO;YACP,OAAO;YACP,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC,CAAA;IAED,gIAAgI;IAChI,MAAM,uBAAuB,GAAG,KAAK,EAGnC,WAAqC,EACrC,UAA4D,EAC9C,EAAE;QAChB,4LAA4L;QAC5L,qIAAqI;QACrI,MAAM,mBAAmB,GACvB,WAAW,CAAC,IAAI,KAAK,SAAS;YAC5B,CAAC,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE;YACrC,CAAC,CAAC,WAAW,CAAA;QAEjB,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,mBAAmB,CAAC,CAAA;QAC1D,MAAM,0BAA0B,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;YAC7C,cAAc;YACd,SAAS;YACT,KAAK;YACL,OAAO;YACP,mBAAmB,EAAE,0BAA0B;SAChD,CAAC,CAAA;QAEF,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACnC,mCAAmC;YACnC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAA;YAE/C,0CAA0C;YAC1C,OAAO,oBAAoB,CAAC,WAAW,EAAE;gBACvC,CAAC,EAAE,CAAE;gBACL,CAAC,EAAE,CAAE;gBACL,CAAC,EAAE,CAAE;aACN,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IAED,OAAO,SAAS,CAAC;QACf,OAAO;QAEP,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAgC;YACzD,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;YAC1C,OAAO,sBAAsB,CAAC,aAAa,CAAC,CAAA;QAC9C,CAAC;QAED,eAAe,EAAE,KAAK,EAGpB,WAAqC,EACrC,OAIC,EACD,EAAE;YACF,MAAM,UAAU,GACd,OAAO,EAAE,UAAU;gBAClB,oBAAyE,CAAA;YAC5E,OAAO,uBAAuB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;QACzD,CAAC;QACD,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YACjC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;YACzD,OAAO,sBAAsB,CAC3B,mBAAmB,EACnB,yBAAyB,CAC1B,CAAA;QACH,CAAC;QAED,KAAK,CAAC,iBAAiB,CACrB,UAA2D;YAE3D,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,UAAU,CAAA;YACrC,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,IAAI,UAAU,CAAC,OAAO,CAAA;YAEpE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;YACvE,CAAC;YAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;gBAC5C,OAAO,EAAE,WAAW;gBACpB,OAAO;gBACP,KAAK;aACN,CAAC,CAAA;YAEF,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,mBAAmB,CAAC,CAAA;YAEnE,MAAM,eAAe,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;YAEjD,OAAO;gBACL,OAAO,EAAE,WAAW;gBACpB,OAAO;gBACP,KAAK;gBACL,GAAG,eAAe;gBAClB,OAAO,EAAE,eAAe,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACnB,CAAA;QAClC,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,41 @@
1
+ const AUTH_PROXY_BASE_URL = 'https://authproxy.turnkey.com';
2
+ /**
3
+ * Creates an Auth Proxy client for making requests to Turnkey's Auth Proxy
4
+ *
5
+ * Note: This client only handles OTP verification. The actual OTP login
6
+ * is handled by the backend (/auth/login/otp) which manages sub-organization
7
+ * creation and session handling.
8
+ */
9
+ export function createAuthProxyClient(config) {
10
+ const { authProxyConfigId, baseUrl = AUTH_PROXY_BASE_URL } = config;
11
+ async function request(path, body, method = 'POST') {
12
+ const fetchOptions = {
13
+ method,
14
+ headers: {
15
+ 'Content-Type': 'application/json',
16
+ 'X-Auth-Proxy-Config-Id': authProxyConfigId,
17
+ },
18
+ };
19
+ if (method !== 'GET') {
20
+ fetchOptions.body = JSON.stringify(body);
21
+ }
22
+ const response = await fetch(`${baseUrl}${path}`, fetchOptions);
23
+ if (!response.ok) {
24
+ const errorText = await response.text();
25
+ throw new Error(`Auth Proxy request failed: ${response.status} ${response.statusText} - ${errorText}`);
26
+ }
27
+ return response.json();
28
+ }
29
+ return {
30
+ /**
31
+ * Verifies an OTP code with Turnkey's Auth Proxy
32
+ *
33
+ * Returns a verificationToken that should be passed to the backend's
34
+ * /auth/login/otp endpoint along with a client signature.
35
+ */
36
+ async verifyOtp(params) {
37
+ return request('/v1/otp_verify', params);
38
+ },
39
+ };
40
+ }
41
+ //# sourceMappingURL=authProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authProxy.js","sourceRoot":"","sources":["../../../src/client/authProxy.ts"],"names":[],"mappings":"AAAA,MAAM,mBAAmB,GAAG,+BAA+B,CAAA;AAuB3D;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA6B;IACjE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,mBAAmB,EAAE,GAAG,MAAM,CAAA;IAEnE,KAAK,UAAU,OAAO,CACpB,IAAY,EACZ,IAAa,EACb,SAAyB,MAAM;QAE/B,MAAM,YAAY,GAAgB;YAChC,MAAM;YACN,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,wBAAwB,EAAE,iBAAiB;aAC5C;SACF,CAAA;QAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE,YAAY,CAAC,CAAA;QAE/D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YACvC,MAAM,IAAI,KAAK,CACb,8BAA8B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,SAAS,EAAE,CACtF,CAAA;QACH,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;IAED,OAAO;QACL;;;;;WAKG;QACH,KAAK,CAAC,SAAS,CACb,MAAiC;YAEjC,OAAO,OAAO,CAA6B,gBAAgB,EAAE,MAAM,CAAC,CAAA;QACtE,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { loginWithStamp, } from '../../actions/auth/loginWithStamp.js';
2
- import { authenticateWithEmail, authenticateWithOAuth, getUserWallet, getWhoami, loginWithOTP, registerWithOTP, registerWithPasskey, signRawPayload, } from '../../actions/index.js';
2
+ import { authenticateWithEmail, authenticateWithOAuth, getUserEmail, getUserWallet, getWhoami, loginWithOTP, registerWithOTP, registerWithPasskey, signRawPayload, } from '../../actions/index.js';
3
3
  import { signTransaction, } from '../../actions/wallet/signTransaction.js';
4
4
  /**
5
5
  * Decorator function that adds ZeroDev Wallet client actions to a client
@@ -29,6 +29,7 @@ export function zeroDevWalletActions(client) {
29
29
  authenticateWithEmail: (params) => authenticateWithEmail(client, params),
30
30
  authenticateWithOAuth: (params) => authenticateWithOAuth(client, params),
31
31
  getWhoami: (params) => getWhoami(client, params),
32
+ getUserEmail: (params) => getUserEmail(client, params),
32
33
  // Wallet actions
33
34
  getUserWallet: (params) => getUserWallet(client, params),
34
35
  signRawPayload: (params) => signRawPayload(client, params),
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/client/decorators/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,GACf,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAKL,qBAAqB,EACrB,qBAAqB,EAKrB,aAAa,EACb,SAAS,EAGT,YAAY,EAKZ,eAAe,EACf,mBAAmB,EAGnB,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGL,eAAe,GAChB,MAAM,yCAAyC,CAAA;AA8EhD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO;QACL,eAAe;QACf,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC;QACxE,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC;QACxE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;QAEhD,iBAAiB;QACjB,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC;QACxD,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1D,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;QAC5D,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;QACpE,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1D,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;QAC5D,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;KACvD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/client/decorators/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,GACf,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAKL,qBAAqB,EACrB,qBAAqB,EAOrB,YAAY,EACZ,aAAa,EACb,SAAS,EAGT,YAAY,EAKZ,eAAe,EACf,mBAAmB,EAGnB,cAAc,GACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGL,eAAe,GAChB,MAAM,yCAAyC,CAAA;AAqFhD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO;QACL,eAAe;QACf,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC;QACxE,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC;QACxE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;QAChD,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;QAEtD,iBAAiB;QACjB,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC;QACxD,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1D,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;QAC5D,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;QACpE,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC1D,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;QAC5D,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;KACvD,CAAA;AACH,CAAC"}
@@ -1,3 +1,4 @@
1
+ export { createAuthProxyClient, } from './authProxy.js';
1
2
  export { createBaseClient, createClient, } from './createClient.js';
2
3
  export { zeroDevWalletTransport } from './transports/createTransport.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,YAAY,GAEb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,qBAAqB,GACtB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,gBAAgB,EAChB,YAAY,GAEb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { canonicalizeEx } from 'json-canonicalize';
1
2
  import { RestRequestError, RestTimeoutError } from '../../errors/request.js';
2
3
  export function rest(url, cfg) {
3
4
  const timeoutMs = cfg.timeoutMs ?? 10_000;
@@ -27,7 +28,7 @@ export function rest(url, cfg) {
27
28
  stamper = cfg.indexedDbStamper;
28
29
  }
29
30
  const { body, apiUrl } = args.body;
30
- const bodyString = `${JSON.stringify(body ?? args.body)}\n`;
31
+ const bodyString = canonicalizeEx(body ?? args.body);
31
32
  const stamp = await stamper.stamp(bodyString);
32
33
  // Restructure request body to match backend expectation
33
34
  if (args.stampPostion === 'headers') {
@@ -62,6 +63,7 @@ export function rest(url, cfg) {
62
63
  headers: requestHeaders,
63
64
  body: requestBody != null ? JSON.stringify(requestBody) : null,
64
65
  signal: controller.signal,
66
+ ...(args.credentials && { credentials: args.credentials }),
65
67
  };
66
68
  const finalInit = (await cfg.onRequest?.(fullUrl, init)) ?? init;
67
69
  const res = await fetch(fullUrl, finalInit);