accounts 0.19.0 → 0.19.1

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # accounts
2
2
 
3
+ ## 0.19.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 9cf6d39: Updated `mppx` to `0.12.0` and raised the `viem` peer dependency to `>=2.57.1`.
8
+ - f06dd91: Updated `wata` to `0.4.2`. This fixes device-code `/token` polls overwriting the user's approval on eventually-consistent stores like Cloudflare KV.
9
+ - bdf2170: Check fee AMM liquidity before automatically selecting a transaction fee token, falling back to another funded token when the preferred or highest-balance token cannot settle the fee.
10
+
3
11
  ## 0.19.0
4
12
 
5
13
  ### Minor Changes
@@ -0,0 +1,28 @@
1
+ import { type Address, type Client } from 'viem';
2
+ import type * as Kv from '../../Kv.js';
3
+ /**
4
+ * Checks whether the fee AMM can settle the fee for at least one recent block
5
+ * producer's preferred token. Mirrors the node's pool admission check, so a
6
+ * token is only rejected here when the node would reject it too.
7
+ */
8
+ export declare function has(client: Client, options: has.Options): Promise<boolean>;
9
+ /** Reads fee reserves ahead of filling and returns a reusable maximum-fee check. */
10
+ export declare function prepare(client: Client, options: prepare.Options): Promise<(_amount: bigint) => Promise<boolean>>;
11
+ /** Parameters for prefetching a token's fee reserves. */
12
+ export declare namespace prepare {
13
+ /** Fee token and producer-preference cache. */
14
+ type Options = Pick<has.Options, 'token' | 'kv'>;
15
+ }
16
+ /** Parameters for the fee-liquidity check. */
17
+ export declare namespace has {
18
+ /** Fee token and maximum fee, in TIP-20 base units. */
19
+ type Options = {
20
+ /** User's fee token. */
21
+ token: Address;
22
+ /** Maximum transaction fee, rounded up to microdollars. */
23
+ amount: bigint;
24
+ /** Caches the recent producers' fee tokens across fills. */
25
+ kv?: Kv.Kv | undefined;
26
+ };
27
+ }
28
+ //# sourceMappingURL=feeLiquidity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feeLiquidity.d.ts","sourceRoot":"","sources":["../../../../src/server/internal/handlers/feeLiquidity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,MAAM,EAA+B,MAAM,MAAM,CAAA;AAI7E,OAAO,KAAK,KAAK,EAAE,MAAM,aAAa,CAAA;AAMtC;;;;GAIG;AACH,wBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAGhF;AAED,oFAAoF;AACpF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,qBAI3C,MAAM,uBAoChC;AAED,yDAAyD;AACzD,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC,CAAA;CACjD;AAED,8CAA8C;AAC9C,MAAM,CAAC,OAAO,WAAW,GAAG,CAAC;IAC3B,uDAAuD;IACvD,KAAK,OAAO,GAAG;QACb,wBAAwB;QACxB,KAAK,EAAE,OAAO,CAAA;QACd,2DAA2D;QAC3D,MAAM,EAAE,MAAM,CAAA;QACd,4DAA4D;QAC5D,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,SAAS,CAAA;KACvB,CAAA;CACF"}
@@ -0,0 +1,80 @@
1
+ import { isAddressEqual, zeroAddress } from 'viem';
2
+ import { getBlock, readContract } from 'viem/actions';
3
+ import { Abis, Actions, Addresses, Hardfork } from 'viem/tempo';
4
+ import { cached } from '../kv.js';
5
+ /** Number of recent block producers the node's pool admission considers. */
6
+ const producerWindow = 10;
7
+ /**
8
+ * Checks whether the fee AMM can settle the fee for at least one recent block
9
+ * producer's preferred token. Mirrors the node's pool admission check, so a
10
+ * token is only rejected here when the node would reject it too.
11
+ */
12
+ export async function has(client, options) {
13
+ const check = await prepare(client, options);
14
+ return check(options.amount);
15
+ }
16
+ /** Reads fee reserves ahead of filling and returns a reusable maximum-fee check. */
17
+ export async function prepare(client, options) {
18
+ const { kv, token } = options;
19
+ const validatorTokens = await getValidatorTokens(client, { kv });
20
+ if (validatorTokens.some((validatorToken) => isAddressEqual(validatorToken, token)))
21
+ return async (_amount) => true;
22
+ const hardfork = client.chain?.hardfork;
23
+ const twoHop = !hardfork || !Hardfork.lt(hardfork, 't5');
24
+ const [direct, quote] = await Promise.all([
25
+ Promise.all(validatorTokens.map((validatorToken) => Actions.amm.getPool(client, { userToken: token, validatorToken }))),
26
+ twoHop
27
+ ? readContract(client, { address: token, abi: Abis.tip20, functionName: 'quoteToken' })
28
+ : undefined,
29
+ ]);
30
+ const targets = quote
31
+ ? validatorTokens.filter((validatorToken) => !isAddressEqual(validatorToken, quote))
32
+ : [];
33
+ const route = quote && quote !== zeroAddress && targets.length > 0
34
+ ? Promise.all([
35
+ Actions.amm.getPool(client, { userToken: token, validatorToken: quote }),
36
+ ...targets.map((validatorToken) => Actions.amm.getPool(client, { userToken: quote, validatorToken })),
37
+ ])
38
+ : undefined;
39
+ void route?.catch(() => { });
40
+ return async (amount) => {
41
+ const output = (amount * 9970n) / 10000n;
42
+ if (direct.some((pool) => pool.reserveValidatorToken >= output))
43
+ return true;
44
+ if (!route)
45
+ return false;
46
+ const [first, ...second] = await route;
47
+ if (first.reserveValidatorToken < output)
48
+ return false;
49
+ return second.some((pool) => pool.reserveValidatorToken >= (output * 9970n) / 10000n);
50
+ };
51
+ }
52
+ /** Resolves the unique fee tokens preferred by the producers of the latest blocks. */
53
+ async function getValidatorTokens(client, options) {
54
+ async function load() {
55
+ const latest = await getBlock(client);
56
+ const number = latest.number ?? 0n;
57
+ const previous = await Promise.all(Array.from({ length: producerWindow - 1 }, (_, index) => number - BigInt(index + 1))
58
+ .filter((blockNumber) => blockNumber >= 0n)
59
+ .map((blockNumber) => getBlock(client, { blockNumber })));
60
+ const validators = unique([latest, ...previous].map((block) => block.miner));
61
+ const tokens = await Promise.all(validators.map(async (validator) => {
62
+ const preference = await Actions.fee.getValidatorToken(client, { validator });
63
+ return preference?.address ?? Addresses.pathUsd;
64
+ }));
65
+ return unique(tokens);
66
+ }
67
+ // Producer preferences rarely change, and a stale entry only delays picking
68
+ // up a new producer's token until the cache expires.
69
+ const { kv } = options;
70
+ if (!kv)
71
+ return load();
72
+ return cached(kv, `fee.validatorTokens:${client.chain?.id ?? 0}`, load, { ttl: 60 });
73
+ }
74
+ function unique(addresses) {
75
+ const seen = new Map();
76
+ for (const address of addresses)
77
+ seen.set(address.toLowerCase(), address);
78
+ return [...seen.values()];
79
+ }
80
+ //# sourceMappingURL=feeLiquidity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feeLiquidity.js","sourceRoot":"","sources":["../../../../src/server/internal/handlers/feeLiquidity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../../../../src/server/internal/handlers/relay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAe,MAAM,IAAI,CAAA;AAE3D,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,KAAK,EASV,KAAK,SAAS,EAEf,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,EAA0C,WAAW,EAAkB,MAAM,YAAY,CAAA;AAKhG,OAAO,EAAE,KAAK,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjC,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAO5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,KAAK,CAAC,OAAO,GAAE,KAAK,CAAC,OAAY,GAAG,OAAO,CAghB1D;AAED,yBAAiB,KAAK,CAAC;IACrB,KAAY,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG;QACnC;;WAEG;QACH,QAAQ,CAAC,EACL,KAAK,GACL;YACE,yDAAyD;YACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC9B,GACD,SAAS,CAAA;QACb;;;WAGG;QACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC7B;;;;WAIG;QACH,MAAM,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,SAAS,CAAA;QACjD;;;WAGG;QACH,QAAQ,CAAC,EACL;YACE,uCAAuC;YACvC,OAAO,EAAE,YAAY,CAAA;YACrB,4DAA4D;YAC5D,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;YAC9B;;;eAGG;YACH,QAAQ,CAAC,EACL,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,GACzE,SAAS,CAAA;YACb,gEAAgE;YAChE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YACzB,uDAAuD;YACvD,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SACzB,GACD,SAAS,CAAA;QACb;;;;;;WAMG;QACH,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;QAC5B;;;;WAIG;QACH,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC9C;;;;;WAKG;QACH,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,SAAS,CAAA;QACtB,oDAAoD;QACpD,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;QAC3E,gDAAgD;QAChD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;;;;WAKG;QACH,aAAa,CAAC,EACV,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,SAAS,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,SAAS,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GACvF,SAAS,CAAA;QACb,yEAAyE;QACzE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,CAAA;KACnD,CAAA;CACF"}
1
+ {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../../../../src/server/internal/handlers/relay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAe,MAAM,IAAI,CAAA;AAE3D,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,KAAK,EASV,KAAK,SAAS,EAEf,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,EAA0C,WAAW,EAAkB,MAAM,YAAY,CAAA;AAKhG,OAAO,EAAE,KAAK,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjC,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAQ5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,KAAK,CAAC,OAAO,GAAE,KAAK,CAAC,OAAY,GAAG,OAAO,CAsjB1D;AAED,yBAAiB,KAAK,CAAC;IACrB,KAAY,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG;QACnC;;WAEG;QACH,QAAQ,CAAC,EACL,KAAK,GACL;YACE,yDAAyD;YACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC9B,GACD,SAAS,CAAA;QACb;;;WAGG;QACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC7B;;;;WAIG;QACH,MAAM,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,SAAS,CAAA;QACjD;;;WAGG;QACH,QAAQ,CAAC,EACL;YACE,uCAAuC;YACvC,OAAO,EAAE,YAAY,CAAA;YACrB,4DAA4D;YAC5D,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;YAC9B;;;eAGG;YACH,QAAQ,CAAC,EACL,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,GACzE,SAAS,CAAA;YACb,gEAAgE;YAChE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;YACzB,uDAAuD;YACvD,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SACzB,GACD,SAAS,CAAA;QACb;;;;;;WAMG;QACH,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;QAC5B;;;;WAIG;QACH,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC9C;;;;;WAKG;QACH,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,SAAS,CAAA;QACtB,oDAAoD;QACpD,SAAS,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAA;QAC3E,gDAAgD;QAChD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB;;;;;WAKG;QACH,aAAa,CAAC,EACV,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,SAAS,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,SAAS,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GACvF,SAAS,CAAA;QACb,yEAAyE;QACzE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,CAAA;KACnD,CAAA;CACF"}
@@ -10,6 +10,7 @@ import { from } from '../../Handler.js';
10
10
  import * as Kv from '../../Kv.js';
11
11
  import { cached } from '../kv.js';
12
12
  import * as Tokenlist from '../tokenlist.js';
13
+ import * as FeeLiquidity from './feeLiquidity.js';
13
14
  import * as Sponsorship from './sponsorship.js';
14
15
  import * as Utils from './utils.js';
15
16
  /** Default cache TTL in seconds (10 minutes) for the verified tokenlist. */
@@ -151,6 +152,67 @@ export function relay(options = {}) {
151
152
  ...configuredTokens,
152
153
  ...callTargetTokens(baseTx).filter((t) => !configuredTokens.some((rt) => rt.toLowerCase() === t.toLowerCase())),
153
154
  ];
155
+ async function fillUnsponsored() {
156
+ const excluded = new Set();
157
+ const balances = new Map();
158
+ const liquidity = new Map();
159
+ function prepareFeeToken(token) {
160
+ const key = token.toLowerCase();
161
+ let pending = liquidity.get(key);
162
+ if (!pending) {
163
+ pending = FeeLiquidity.prepare(client, { token, kv });
164
+ liquidity.set(key, pending);
165
+ void pending.catch(() => { });
166
+ }
167
+ return pending;
168
+ }
169
+ let liquidityError;
170
+ for (;;) {
171
+ const token = features.feeTokenResolution
172
+ ? await resolveFeeToken(client, {
173
+ account: from,
174
+ feeToken: requestFeeToken,
175
+ kv,
176
+ tokens: unsponsoredTokens,
177
+ excluded,
178
+ balances,
179
+ prepareFeeToken,
180
+ })
181
+ : requestFeeToken;
182
+ if (!token && liquidityError)
183
+ throw liquidityError;
184
+ try {
185
+ const result = await fill(client, {
186
+ autoSwap,
187
+ feeToken: token,
188
+ kv,
189
+ resolveFeeToken: resolveFeeTokenForSwap,
190
+ transaction: { ...normalized, chainId, ...(token ? { feeToken: token } : {}) },
191
+ });
192
+ // Estimation can succeed even when the fee AMM cannot settle
193
+ // the fee. Check the filled maximum fee before asking for a signature.
194
+ if (token && !requestFeeToken && features.feeTokenResolution) {
195
+ const { gas, maxFeePerGas } = result.transaction;
196
+ if (gas &&
197
+ maxFeePerGas &&
198
+ !(await (await prepareFeeToken(token))((gas * maxFeePerGas + 10n ** 12n - 1n) / 10n ** 12n)))
199
+ throw new Error('Insufficient liquidity in FeeAMM pool for transaction fee.');
200
+ }
201
+ return { result, token };
202
+ }
203
+ catch (error) {
204
+ // Never change an explicit fee-token choice or retry unrelated failures.
205
+ if (!token ||
206
+ requestFeeToken ||
207
+ !features.feeTokenResolution ||
208
+ !(error instanceof Error) ||
209
+ !/insufficient liquidity in FeeAMM pool/i.test(error.message))
210
+ throw error;
211
+ excluded.add(token.toLowerCase());
212
+ liquidityError = error;
213
+ }
214
+ }
215
+ }
154
216
  // When the app provides its own fee payer URL, route the fill
155
217
  // through that service so it can sign the transaction.
156
218
  const fillClient = externalFeePayerUrl
@@ -241,45 +303,17 @@ export function relay(options = {}) {
241
303
  }
242
304
  else {
243
305
  // Sponsor rejected — resolve fee token and fill unsponsored.
244
- const feeToken_unsponsored = features.feeTokenResolution
245
- ? await resolveFeeToken(client, {
246
- account: from,
247
- feeToken: requestFeeToken,
248
- kv,
249
- tokens: unsponsoredTokens,
250
- })
251
- : requestFeeToken;
252
- const tx_unsponsored = {
253
- ...baseTx,
254
- ...(feeToken_unsponsored ? { feeToken: feeToken_unsponsored } : {}),
255
- };
256
- filled = await fill(client, {
257
- ...options,
258
- feeToken: feeToken_unsponsored,
259
- transaction: tx_unsponsored,
260
- });
261
- feeToken = feeToken_unsponsored;
306
+ const { result, token } = await fillUnsponsored();
307
+ filled = result;
308
+ feeToken = token;
262
309
  }
263
310
  }
264
311
  }
265
312
  else {
266
313
  // Path C: no sponsorship configured — resolve fee token, fill once.
267
- feeToken = features.feeTokenResolution
268
- ? await resolveFeeToken(client, {
269
- account: from,
270
- feeToken: requestFeeToken,
271
- kv,
272
- tokens: unsponsoredTokens,
273
- })
274
- : requestFeeToken;
275
- const transaction = { ...baseTx, ...(feeToken ? { feeToken } : {}) };
276
- filled = await fill(client, {
277
- autoSwap,
278
- feeToken,
279
- kv,
280
- resolveFeeToken: resolveFeeTokenForSwap,
281
- transaction,
282
- });
314
+ const { result, token } = await fillUnsponsored();
315
+ filled = result;
316
+ feeToken = token;
283
317
  }
284
318
  const transaction_filled = filled.transaction;
285
319
  const swap = 'swap' in filled ? filled.swap : undefined;
@@ -649,6 +683,20 @@ async function resolveFeeToken(client, options) {
649
683
  return feeToken;
650
684
  if (!account)
651
685
  return undefined;
686
+ const sender = account;
687
+ function getBalance(token) {
688
+ options.prepareFeeToken?.(token);
689
+ const key = token.toLowerCase();
690
+ const pending = options.balances?.get(key);
691
+ if (pending)
692
+ return pending;
693
+ const balance = Actions.token
694
+ .getBalance(client, { account: sender, token })
695
+ .then(({ amount }) => amount)
696
+ .catch(() => 0n);
697
+ options.balances?.set(key, balance);
698
+ return balance;
699
+ }
652
700
  // Cache the user's preferred fee token for `userTokenCacheTtl` seconds.
653
701
  // The on-chain preference rarely changes; a short TTL avoids the
654
702
  // ~150-250ms `userTokens` multicall on every unsponsored fill while
@@ -667,26 +715,19 @@ async function resolveFeeToken(client, options) {
667
715
  tokens
668
716
  ? Promise.all(tokens.map(async (token) => ({
669
717
  address: token,
670
- balance: await Actions.token
671
- .getBalance(client, { account, token })
672
- .then(({ amount }) => amount)
673
- .catch(() => 0n),
718
+ balance: await getBalance(token),
674
719
  })))
675
720
  : [],
676
721
  ]);
677
722
  // If on-chain preference is set and user has balance, use it.
678
- if (userToken) {
723
+ if (userToken && !options.excluded?.has(userToken.address.toLowerCase())) {
679
724
  const match = balances.find((b) => b.address.toLowerCase() === userToken.address.toLowerCase() && b.balance > 0n);
680
725
  if (match)
681
726
  return userToken.address;
682
727
  // Token list may not include the preference — check on-chain directly.
683
728
  if (!match) {
684
729
  try {
685
- const balance = await Actions.token.getBalance(client, {
686
- account,
687
- token: userToken.address,
688
- });
689
- if (balance.amount > 0n)
730
+ if ((await getBalance(userToken.address)) > 0n)
690
731
  return userToken.address;
691
732
  }
692
733
  catch { }
@@ -697,6 +738,8 @@ async function resolveFeeToken(client, options) {
697
738
  for (const asset of balances) {
698
739
  if (asset.balance <= 0n)
699
740
  continue;
741
+ if (options.excluded?.has(asset.address.toLowerCase()))
742
+ continue;
700
743
  if (!best || asset.balance > best.balance)
701
744
  best = asset;
702
745
  }
@@ -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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"}
package/package.json CHANGED
@@ -2,15 +2,15 @@
2
2
  "name": "accounts",
3
3
  "description": "Tempo Accounts SDK",
4
4
  "type": "module",
5
- "version": "0.19.0",
5
+ "version": "0.19.1",
6
6
  "dependencies": {
7
- "hono": "^4.13.5",
7
+ "hono": "^4.13.7",
8
8
  "idb-keyval": "^6.2.2",
9
9
  "jose": "^6.2.3",
10
10
  "mipd": "^0.0.7",
11
- "mppx": "^0.11.0",
11
+ "mppx": "^0.12.0",
12
12
  "ox": "~0.14.45",
13
- "wata": "0.4.1",
13
+ "wata": "0.4.2",
14
14
  "webauthx": "~0.1.2",
15
15
  "zod": "^4.4.3",
16
16
  "zustand": "^5.0.12"
@@ -24,7 +24,7 @@
24
24
  "react": ">=18",
25
25
  "react-native-mmkv": "^4.3.1",
26
26
  "react-native-nitro-modules": "^0.35.9",
27
- "viem": ">=2.56.9",
27
+ "viem": ">=2.57.1",
28
28
  "wagmi": ">=0.0.0"
29
29
  },
30
30
  "peerDependenciesMeta": {
@@ -1080,7 +1080,7 @@ describe('getStatus', () => {
1080
1080
 
1081
1081
  Docs: https://viem.sh/docs/contract/readContract
1082
1082
  Details: RPC unavailable.
1083
- Version: viem@2.56.9]
1083
+ Version: viem@2.57.1]
1084
1084
  `)
1085
1085
  })
1086
1086
 
@@ -1390,7 +1390,7 @@ describe.each(adapters)('$name', ({ adapter, name }: (typeof adapters)[number])
1390
1390
  from: 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266
1391
1391
 
1392
1392
  Details: plain send failure
1393
- Version: viem@2.56.9]
1393
+ Version: viem@2.57.1]
1394
1394
  `)
1395
1395
  })
1396
1396
  })
@@ -402,7 +402,7 @@ describe('privy', () => {
402
402
 
403
403
  Docs: https://viem.sh/docs/contract/writeContract
404
404
  Details: execution reverted
405
- Version: viem@2.56.9]
405
+ Version: viem@2.57.1]
406
406
  `)
407
407
 
408
408
  expect(store.getState().accessKeys).toMatchInlineSnapshot(`