accounts 0.12.2 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +6 -5
  3. package/dist/cli/adapter.d.ts.map +1 -1
  4. package/dist/cli/adapter.js +76 -69
  5. package/dist/cli/adapter.js.map +1 -1
  6. package/dist/core/AccessKey.d.ts +89 -106
  7. package/dist/core/AccessKey.d.ts.map +1 -1
  8. package/dist/core/AccessKey.js +230 -210
  9. package/dist/core/AccessKey.js.map +1 -1
  10. package/dist/core/Account.d.ts +0 -9
  11. package/dist/core/Account.d.ts.map +1 -1
  12. package/dist/core/Account.js +1 -13
  13. package/dist/core/Account.js.map +1 -1
  14. package/dist/core/Adapter.d.ts +24 -4
  15. package/dist/core/Adapter.d.ts.map +1 -1
  16. package/dist/core/Client.d.ts +1 -1
  17. package/dist/core/Client.d.ts.map +1 -1
  18. package/dist/core/Client.js.map +1 -1
  19. package/dist/core/Provider.d.ts +6 -7
  20. package/dist/core/Provider.d.ts.map +1 -1
  21. package/dist/core/Provider.js +73 -77
  22. package/dist/core/Provider.js.map +1 -1
  23. package/dist/core/Remote.d.ts +2 -0
  24. package/dist/core/Remote.d.ts.map +1 -1
  25. package/dist/core/Remote.js +3 -1
  26. package/dist/core/Remote.js.map +1 -1
  27. package/dist/core/Schema.d.ts +17 -7
  28. package/dist/core/Schema.d.ts.map +1 -1
  29. package/dist/core/adapters/dialog.d.ts.map +1 -1
  30. package/dist/core/adapters/dialog.js +126 -131
  31. package/dist/core/adapters/dialog.js.map +1 -1
  32. package/dist/core/adapters/local.d.ts.map +1 -1
  33. package/dist/core/adapters/local.js +92 -105
  34. package/dist/core/adapters/local.js.map +1 -1
  35. package/dist/core/adapters/privy.d.ts +164 -0
  36. package/dist/core/adapters/privy.d.ts.map +1 -0
  37. package/dist/core/adapters/privy.js +578 -0
  38. package/dist/core/adapters/privy.js.map +1 -0
  39. package/dist/core/adapters/turnkey.d.ts.map +1 -1
  40. package/dist/core/adapters/turnkey.js +136 -133
  41. package/dist/core/adapters/turnkey.js.map +1 -1
  42. package/dist/core/internal/AccessKeyTransaction.d.ts +59 -0
  43. package/dist/core/internal/AccessKeyTransaction.d.ts.map +1 -0
  44. package/dist/core/internal/AccessKeyTransaction.js +155 -0
  45. package/dist/core/internal/AccessKeyTransaction.js.map +1 -0
  46. package/dist/core/zod/rpc.d.ts +71 -4
  47. package/dist/core/zod/rpc.d.ts.map +1 -1
  48. package/dist/core/zod/rpc.js +33 -4
  49. package/dist/core/zod/rpc.js.map +1 -1
  50. package/dist/index.d.ts +1 -1
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +1 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/react-native/adapter.d.ts.map +1 -1
  55. package/dist/react-native/adapter.js +86 -75
  56. package/dist/react-native/adapter.js.map +1 -1
  57. package/dist/server/CliAuth.d.ts +55 -0
  58. package/dist/server/CliAuth.d.ts.map +1 -1
  59. package/dist/server/CliAuth.js +18 -1
  60. package/dist/server/CliAuth.js.map +1 -1
  61. package/dist/server/Kv.d.ts +19 -9
  62. package/dist/server/Kv.d.ts.map +1 -1
  63. package/dist/server/Kv.js +32 -9
  64. package/dist/server/Kv.js.map +1 -1
  65. package/dist/server/internal/handlers/auth.d.ts.map +1 -1
  66. package/dist/server/internal/handlers/auth.js +3 -1
  67. package/dist/server/internal/handlers/auth.js.map +1 -1
  68. package/dist/server/internal/handlers/codeAuth.js +1 -1
  69. package/dist/server/internal/handlers/codeAuth.js.map +1 -1
  70. package/dist/server/internal/handlers/exchange.js +1 -1
  71. package/dist/server/internal/handlers/exchange.js.map +1 -1
  72. package/dist/server/internal/handlers/relay.d.ts +18 -12
  73. package/dist/server/internal/handlers/relay.d.ts.map +1 -1
  74. package/dist/server/internal/handlers/relay.js +116 -3
  75. package/dist/server/internal/handlers/relay.js.map +1 -1
  76. package/dist/server/internal/handlers/webAuthn.d.ts +6 -1
  77. package/dist/server/internal/handlers/webAuthn.d.ts.map +1 -1
  78. package/dist/server/internal/handlers/webAuthn.js +16 -9
  79. package/dist/server/internal/handlers/webAuthn.js.map +1 -1
  80. package/package.json +3 -3
  81. package/src/cli/{Provider.test.ts → Provider.localnet.test.ts} +49 -1
  82. package/src/cli/adapter.ts +95 -76
  83. package/src/core/AccessKey.test.ts +563 -560
  84. package/src/core/AccessKey.ts +327 -327
  85. package/src/core/Account.test.ts +6 -51
  86. package/src/core/Account.ts +1 -19
  87. package/src/core/Adapter.ts +22 -4
  88. package/src/core/Client.test.ts +1 -1
  89. package/src/core/Client.ts +1 -1
  90. package/src/core/Provider.connect.browser.test.ts +1 -1
  91. package/src/core/{Provider.test.ts → Provider.localnet.test.ts} +98 -32
  92. package/src/core/Provider.ts +118 -112
  93. package/src/core/Remote.test.ts +28 -0
  94. package/src/core/Remote.ts +4 -1
  95. package/src/core/Schema.test-d.ts +41 -0
  96. package/src/core/adapters/dialog.test.ts +335 -15
  97. package/src/core/adapters/dialog.ts +120 -127
  98. package/src/core/adapters/local.test.ts +1 -1
  99. package/src/core/adapters/local.ts +95 -119
  100. package/src/core/adapters/privy.test-d.ts +128 -0
  101. package/src/core/adapters/privy.test.ts +648 -0
  102. package/src/core/adapters/privy.ts +811 -0
  103. package/src/core/adapters/turnkey.test.ts +117 -13
  104. package/src/core/adapters/turnkey.ts +132 -149
  105. package/src/core/internal/AccessKeyTransaction.ts +243 -0
  106. package/src/core/{mppx.test.ts → mppx.localnet.test.ts} +32 -2
  107. package/src/core/zod/request.test.ts +36 -0
  108. package/src/core/zod/rpc.test.ts +139 -0
  109. package/src/core/zod/rpc.ts +44 -10
  110. package/src/index.ts +1 -1
  111. package/src/react-native/{Provider.test.ts → Provider.localnet.test.ts} +65 -0
  112. package/src/react-native/adapter.ts +107 -87
  113. package/src/server/CliAuth.test-d.ts +23 -0
  114. package/src/server/CliAuth.test.ts +47 -0
  115. package/src/server/CliAuth.ts +20 -1
  116. package/src/server/Handler.test-d.ts +1 -1
  117. package/src/server/Kv.test.ts +51 -0
  118. package/src/server/Kv.ts +43 -9
  119. package/src/server/internal/handlers/auth.test.ts +10 -5
  120. package/src/server/internal/handlers/auth.ts +4 -1
  121. package/src/server/internal/handlers/codeAuth.ts +1 -1
  122. package/src/server/internal/handlers/exchange.ts +1 -1
  123. package/src/server/internal/handlers/{relay.test.ts → relay.localnet.test.ts} +4 -1
  124. package/src/server/internal/handlers/relay.ts +139 -14
  125. package/src/server/internal/handlers/session.test.ts +1 -1
  126. package/src/server/internal/handlers/webAuthn.test.ts +20 -0
  127. package/src/server/internal/handlers/webAuthn.ts +24 -12
  128. /package/src/server/internal/handlers/{exchange.test.ts → exchange.localnet.test.ts} +0 -0
@@ -2,8 +2,8 @@ import { AbiEvent, Hex, RpcRequest, RpcResponse } from 'ox';
2
2
  import { Transaction as core_Transaction } from 'ox/tempo';
3
3
  import { createClient, decodeFunctionData, formatUnits, http, isAddress, parseEventLogs, zeroAddress, } from 'viem';
4
4
  import { simulateCalls } from 'viem/actions';
5
- import { tempo, tempoDevnet, tempoModerato } from 'viem/chains';
6
5
  import { Abis, Actions, Addresses, Capabilities, Transaction, VirtualAddress } from 'viem/tempo';
6
+ import { tempo, tempoDevnet, tempoModerato } from 'viem/tempo/chains';
7
7
  import * as ExecutionError from '../../../core/ExecutionError.js';
8
8
  import * as Schema from '../../../core/Schema.js';
9
9
  import { from } from '../../Handler.js';
@@ -53,7 +53,7 @@ const defaultCacheTtl = 10 * 60;
53
53
  * @returns Request handler.
54
54
  */
55
55
  export function relay(options = {}) {
56
- const { cacheTtl = defaultCacheTtl, chains = [tempo, tempoModerato, tempoDevnet], kv = Kv.memory(), onRequest, path = '/', resolveTokens, transports = {}, ...rest } = options;
56
+ const { cacheTtl = defaultCacheTtl, chains = [tempo, tempoModerato, tempoDevnet], internal_allowUnsafeUrls = false, kv = Kv.memory(), onRequest, path = '/', resolveTokens, transports = {}, ...rest } = options;
57
57
  const feePayerOptions = options.feePayer;
58
58
  // Resolves the verified tokenlist for `chainId`, sharing the KV cache with
59
59
  // `Handler.exchange` so a single `kv: Kv.cloudflare(env.KV)` covers both.
@@ -106,7 +106,11 @@ export function relay(options = {}) {
106
106
  try {
107
107
  const from = typeof parameters.from === 'string' ? parameters.from : undefined;
108
108
  const requestFeeToken = typeof parameters.feeToken === 'string' ? parameters.feeToken : undefined;
109
- const externalFeePayerUrl = typeof parameters.feePayer === 'string' ? parameters.feePayer : undefined;
109
+ const externalFeePayerUrl = typeof parameters.feePayer === 'string'
110
+ ? normalizeExternalFeePayerUrl(parameters.feePayer, {
111
+ allowUnsafe: internal_allowUnsafeUrls,
112
+ })
113
+ : undefined;
110
114
  const requestsSponsorship = (!!feePayerOptions || !!externalFeePayerUrl) && parameters.feePayer !== false;
111
115
  // Default to `true`. Dapps that don't render diffs can pass
112
116
  // `capabilities.balanceDiffs: false` to skip the post-fill
@@ -1079,6 +1083,115 @@ function mergeCallsFromRequest(resultTx, request) {
1079
1083
  ];
1080
1084
  return merged;
1081
1085
  }
1086
+ /** Normalizes external fee-payer relay URLs before forwarding fill payloads. */
1087
+ function normalizeExternalFeePayerUrl(value, options = {}) {
1088
+ let url;
1089
+ try {
1090
+ url = new URL(value);
1091
+ }
1092
+ catch {
1093
+ throw new RpcResponse.InvalidParamsError({ message: 'Invalid fee payer URL.' });
1094
+ }
1095
+ const allowUnsafe = options.allowUnsafe === true;
1096
+ if (url.protocol !== 'http:' && url.protocol !== 'https:')
1097
+ throw new RpcResponse.InvalidParamsError({ message: 'Invalid fee payer URL protocol.' });
1098
+ if (!allowUnsafe && url.protocol !== 'https:')
1099
+ throw new RpcResponse.InvalidParamsError({ message: 'Invalid fee payer URL protocol.' });
1100
+ if (!allowUnsafe && isUnsafeHostname(url.hostname))
1101
+ throw new RpcResponse.InvalidParamsError({ message: 'Invalid fee payer URL host.' });
1102
+ url.username = '';
1103
+ url.password = '';
1104
+ url.hash = '';
1105
+ return url.href;
1106
+ }
1107
+ function isUnsafeHostname(hostname) {
1108
+ const host = normalizeHostname(hostname);
1109
+ if (host === 'localhost' || host.endsWith('.localhost'))
1110
+ return true;
1111
+ const ipv4 = parseIpv4(host);
1112
+ if (ipv4)
1113
+ return isUnsafeIpv4(ipv4);
1114
+ if (!host.includes(':'))
1115
+ return false;
1116
+ const ipv6 = parseIpv6(host);
1117
+ if (!ipv6)
1118
+ return true;
1119
+ return isUnsafeIpv6(ipv6);
1120
+ }
1121
+ function normalizeHostname(hostname) {
1122
+ return hostname
1123
+ .toLowerCase()
1124
+ .replace(/^\[|\]$/g, '')
1125
+ .split('%')[0];
1126
+ }
1127
+ function parseIpv4(value) {
1128
+ const parts = value.split('.');
1129
+ if (parts.length !== 4 || parts.some((part) => !/^\d+$/.test(part)))
1130
+ return undefined;
1131
+ const numbers = parts.map((part) => Number(part));
1132
+ if (numbers.some((part) => !Number.isInteger(part) || part < 0 || part > 255))
1133
+ return undefined;
1134
+ return numbers;
1135
+ }
1136
+ function isUnsafeIpv4(parts) {
1137
+ const [a, b] = parts;
1138
+ if (a === 0 || a === 10 || a === 127)
1139
+ return true;
1140
+ if (a === 100 && b >= 64 && b <= 127)
1141
+ return true;
1142
+ if (a === 169 && b === 254)
1143
+ return true;
1144
+ if (a === 172 && b >= 16 && b <= 31)
1145
+ return true;
1146
+ if (a === 192 && b === 168)
1147
+ return true;
1148
+ if (a >= 224)
1149
+ return true;
1150
+ return false;
1151
+ }
1152
+ function parseIpv6(value) {
1153
+ const halves = value.split('::');
1154
+ if (halves.length > 2)
1155
+ return undefined;
1156
+ const left = halves[0] ? halves[0].split(':') : [];
1157
+ const right = halves[1] ? halves[1].split(':') : [];
1158
+ const missing = halves.length === 2 ? 8 - left.length - right.length : 0;
1159
+ if (missing < 0)
1160
+ return undefined;
1161
+ const parts = [...left, ...Array(missing).fill('0'), ...right];
1162
+ if (parts.length !== 8)
1163
+ return undefined;
1164
+ const numbers = parts.map((part) => /^[\da-f]{1,4}$/i.test(part) ? Number.parseInt(part, 16) : NaN);
1165
+ if (numbers.some((part) => !Number.isInteger(part) || part < 0 || part > 0xffff))
1166
+ return undefined;
1167
+ return numbers;
1168
+ }
1169
+ function isUnsafeIpv6(parts) {
1170
+ const [a] = parts;
1171
+ if (parts.every((part) => part === 0))
1172
+ return true;
1173
+ if (parts.slice(0, 7).every((part) => part === 0) && parts[7] === 1)
1174
+ return true;
1175
+ if ((a & 0xfe00) === 0xfc00)
1176
+ return true;
1177
+ if ((a & 0xffc0) === 0xfe80)
1178
+ return true;
1179
+ if ((a & 0xffc0) === 0xfec0)
1180
+ return true;
1181
+ if ((a & 0xff00) === 0xff00)
1182
+ return true;
1183
+ const ipv4 = ipv4FromIpv6(parts);
1184
+ if (ipv4)
1185
+ return isUnsafeIpv4(ipv4);
1186
+ return false;
1187
+ }
1188
+ function ipv4FromIpv6(parts) {
1189
+ const mapped = parts.slice(0, 5).every((part) => part === 0) && parts[5] === 0xffff;
1190
+ const compatible = parts.slice(0, 6).every((part) => part === 0);
1191
+ if (!mapped && !compatible)
1192
+ return undefined;
1193
+ return [parts[6] >> 8, parts[6] & 0xff, parts[7] >> 8, parts[7] & 0xff];
1194
+ }
1082
1195
  /**
1083
1196
  * Reconstructs a `swap` shape (matching the inner autoSwap branch's return
1084
1197
  * value) from an upstream relay's `capabilities.autoSwap`. Used so a wallet
@@ -1 +1 @@
1
- {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../../../src/server/internal/handlers/relay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../../../src/server/internal/handlers/relay.ts"],"names":[],"mappings":"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"}
@@ -74,7 +74,12 @@ export declare namespace webAuthn {
74
74
  cookie?: boolean | undefined;
75
75
  /** Cookie name for the session token. @default "accounts_webauthn" */
76
76
  cookieName?: string | undefined;
77
- /** Key-value store for challenges, credentials, and sessions. */
77
+ /**
78
+ * Key-value store for challenges, credentials, and sessions. When
79
+ * `create` is available, credential registration uses it to reject
80
+ * duplicates atomically. Otherwise, registration falls back to
81
+ * best-effort `get` then `set` storage.
82
+ */
78
83
  kv: Kv.Kv;
79
84
  /** Called after a successful registration. The returned response is merged onto the default JSON response. */
80
85
  onRegister?: (parameters: {
@@ -1 +1 @@
1
- {"version":3,"file":"webAuthn.d.ts","sourceRoot":"","sources":["../../../../src/server/internal/handlers/webAuthn.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAYvC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAA;IACpB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAA;IAChB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,UAAU,CAiTvE;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,4EAA4E;IAC5E,KAAK,UAAU,GAAG,OAAO,GAAG;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE,CAAA;IAEtD,4EAA4E;IAC5E,KAAK,UAAU,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAA;IAEtF,KAAK,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG;QAC5B;;;;;;;;;WASG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B,sEAAsE;QACtE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC/B,iEAAiE;QACjE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;QACT,8GAA8G;QAC9G,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,MAAM,CAAA;YACpB,sEAAsE;YACtE,IAAI,EAAE,MAAM,CAAA;YACZ,SAAS,EAAE,MAAM,CAAA;YACjB,OAAO,EAAE,OAAO,CAAA;YAChB,gEAAgE;YAChE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC5B,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzD;;;;;;;WAOG;QACH,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE;YAC5B,YAAY,EAAE,MAAM,CAAA;YACpB,SAAS,EAAE,MAAM,CAAA;YACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YAC3B,OAAO,EAAE,OAAO,CAAA;SACjB,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzD,iGAAiG;QACjG,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;QAClC,+EAA+E;QAC/E,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,+CAA+C;QAC/C,IAAI,EAAE,MAAM,CAAA;QACZ;;;;;;;;;;WAUG;QACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC7B,uBAAuB;QACvB,GAAG,CAAC,EACA;YACE,uCAAuC;YACvC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YAC9B,wCAAwC;YACxC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC7B,GACD,SAAS,CAAA;KACd,CAAA;CACF"}
1
+ {"version":3,"file":"webAuthn.d.ts","sourceRoot":"","sources":["../../../../src/server/internal/handlers/webAuthn.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAuBvC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAA;IACpB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAA;IAChB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,UAAU,CA6SvE;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,4EAA4E;IAC5E,KAAK,UAAU,GAAG,OAAO,GAAG;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE,CAAA;IAEtD,4EAA4E;IAC5E,KAAK,UAAU,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAA;IAEtF,KAAK,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG;QAC5B;;;;;;;;;WASG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC5B,sEAAsE;QACtE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC/B;;;;;WAKG;QACH,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;QACT,8GAA8G;QAC9G,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,MAAM,CAAA;YACpB,sEAAsE;YACtE,IAAI,EAAE,MAAM,CAAA;YACZ,SAAS,EAAE,MAAM,CAAA;YACjB,OAAO,EAAE,OAAO,CAAA;YAChB,gEAAgE;YAChE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC5B,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzD;;;;;;;WAOG;QACH,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE;YAC5B,YAAY,EAAE,MAAM,CAAA;YACpB,SAAS,EAAE,MAAM,CAAA;YACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YAC3B,OAAO,EAAE,OAAO,CAAA;SACjB,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzD,iGAAiG;QACjG,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;QAClC,+EAA+E;QAC/E,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,+CAA+C;QAC/C,IAAI,EAAE,MAAM,CAAA;QACZ;;;;;;;;;;WAUG;QACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC7B,uBAAuB;QACvB,GAAG,CAAC,EACA;YACE,uCAAuC;YACvC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YAC9B,wCAAwC;YACxC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC7B,GACD,SAAS,CAAA;KACd,CAAA;CACF"}
@@ -12,6 +12,14 @@ const defaults = {
12
12
  },
13
13
  };
14
14
  const sessionKey = (token) => `session:${token}`;
15
+ async function createCredential(kv, key, value) {
16
+ if (kv.create)
17
+ return await kv.create(key, value);
18
+ if (await kv.get(key))
19
+ return false;
20
+ await kv.set(key, value);
21
+ return true;
22
+ }
15
23
  /**
16
24
  * Instantiates a WebAuthn ceremony handler that manages registration and
17
25
  * authentication flows server-side.
@@ -88,8 +96,13 @@ export function webAuthn(options) {
88
96
  const userId = stored.userId
89
97
  ? Base64.fromBytes(Bytes.fromString(stored.userId), { pad: false, url: true })
90
98
  : undefined;
91
- const [, hook] = await Promise.all([
92
- kv.set(`credential:${credentialId}`, { publicKey, ...(userId ? { userId } : {}) }),
99
+ const created = await createCredential(kv, `credential:${credentialId}`, {
100
+ publicKey,
101
+ ...(userId ? { userId } : {}),
102
+ });
103
+ if (!created)
104
+ throw new Error('Credential already exists');
105
+ const [hook] = await Promise.all([
93
106
  onRegister?.({
94
107
  credentialId,
95
108
  name: stored.name,
@@ -174,15 +187,9 @@ export function webAuthn(options) {
174
187
  });
175
188
  if (!valid)
176
189
  throw new Error('Authentication failed');
177
- const rawResponse = response.raw?.response;
178
- const userHandle = rawResponse?.userHandle;
179
190
  const credentialId = response.id;
180
191
  const publicKey = credentialData.publicKey;
181
- // Surface the authenticator-emitted `userHandle` verbatim
182
- // (base64url-encoded user id). Fall back to the base64-encoded
183
- // userId we stashed during register, so callers see the same
184
- // identifier shape across register and login.
185
- const userId = userHandle && userHandle.length > 0 ? userHandle : (credentialData.userId ?? undefined);
192
+ const userId = credentialData.userId;
186
193
  // Hook for side effects (user provisioning, analytics, allow/deny).
187
194
  // The legacy contract — return a `Response` to merge fields onto
188
195
  // the JSON body — is preserved. Throwing now rejects the request
@@ -1 +1 @@
1
- {"version":3,"file":"webAuthn.js","sourceRoot":"","sources":["../../../../src/server/internal/handlers/webAuthn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webAuthn.js","sourceRoot":"","sources":["../../../../src/server/internal/handlers/webAuthn.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,12 +2,12 @@
2
2
  "name": "accounts",
3
3
  "description": "Tempo Accounts SDK",
4
4
  "type": "module",
5
- "version": "0.12.2",
5
+ "version": "0.14.0",
6
6
  "dependencies": {
7
7
  "hono": "^4.12.18",
8
8
  "idb-keyval": "^6.2.2",
9
9
  "mipd": "^0.0.7",
10
- "mppx": "^0.6.23",
10
+ "mppx": "^0.6.27",
11
11
  "ox": "~0.14.20",
12
12
  "webauthx": "~0.1.1",
13
13
  "zod": "^4.3.6",
@@ -19,7 +19,7 @@
19
19
  "expo-secure-store": "^55.0.12",
20
20
  "expo-web-browser": "^55.0.13",
21
21
  "react": ">=18",
22
- "viem": ">=2.43.3",
22
+ "viem": ">=2.50.4",
23
23
  "wagmi": ">=0.0.0"
24
24
  },
25
25
  "peerDependenciesMeta": {
@@ -56,9 +56,10 @@ function connectRequest(
56
56
  options: {
57
57
  accessKey?: typeof accessKey | undefined
58
58
  expiry?: number | undefined
59
+ showDeposit?: z.output<typeof CliAuth.createRequest>['showDeposit'] | undefined
59
60
  } = {},
60
61
  ) {
61
- const { accessKey: key = accessKey, expiry: expiry_ = expiry } = options
62
+ const { accessKey: key = accessKey, expiry: expiry_ = expiry, showDeposit } = options
62
63
 
63
64
  return {
64
65
  method: 'wallet_connect',
@@ -70,6 +71,7 @@ function connectRequest(
70
71
  keyType: key.keyType,
71
72
  publicKey: key.publicKey,
72
73
  },
74
+ ...(showDeposit !== undefined ? { method: 'register' as const, showDeposit } : {}),
73
75
  },
74
76
  },
75
77
  ],
@@ -211,6 +213,52 @@ describe('Provider.create', () => {
211
213
  }
212
214
  })
213
215
 
216
+ test('behavior: forwards showDeposit through registration device-code requests', async () => {
217
+ const handler = createHandler()
218
+ const server = await createServer(handler.listener)
219
+ const pendingShowDeposit: z.output<typeof CliAuth.pendingResponse>['showDeposit'][] = []
220
+
221
+ try {
222
+ const provider = Provider.create({
223
+ chains: [chain],
224
+ open: async (url) => {
225
+ const code = new URL(url).searchParams.get('code')!
226
+ const response = await fetch(`${server.url}/cli-auth/pending/${code}`)
227
+ const pending = z.decode(CliAuth.pendingResponse, (await response.json()) as never)
228
+ pendingShowDeposit.push(pending.showDeposit)
229
+ await fetch(`${server.url}/cli-auth`, {
230
+ body: JSON.stringify(await authorizePending(server.url, code)),
231
+ headers: { 'content-type': 'application/json' },
232
+ method: 'POST',
233
+ })
234
+ },
235
+ host: `${server.url}/cli-auth`,
236
+ })
237
+
238
+ await provider.request(
239
+ connectRequest({
240
+ showDeposit: {
241
+ amount: '50',
242
+ displayName: 'DoorDash',
243
+ token: 'USDC',
244
+ },
245
+ }),
246
+ )
247
+
248
+ expect(pendingShowDeposit).toMatchInlineSnapshot(`
249
+ [
250
+ {
251
+ "amount": "50",
252
+ "displayName": "DoorDash",
253
+ "token": "USDC",
254
+ },
255
+ ]
256
+ `)
257
+ } finally {
258
+ await server.closeAsync()
259
+ }
260
+ })
261
+
214
262
  test('behavior: browser-open failures surface the URL and code', async () => {
215
263
  const handler = createHandler()
216
264
  const server = await createServer(handler.listener)