@across-protocol/sdk 4.3.18-alpha.1 → 4.3.19-alpha.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.
Files changed (68) hide show
  1. package/dist/cjs/arch/svm/BlockUtils.js +4 -31
  2. package/dist/cjs/arch/svm/BlockUtils.js.map +1 -1
  3. package/dist/cjs/arch/svm/SpokeUtils.d.ts +8 -8
  4. package/dist/cjs/arch/svm/SpokeUtils.js +33 -36
  5. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  6. package/dist/cjs/arch/svm/utils.d.ts +11 -3
  7. package/dist/cjs/arch/svm/utils.js +40 -5
  8. package/dist/cjs/arch/svm/utils.js.map +1 -1
  9. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.d.ts +2 -5
  10. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +75 -110
  11. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  12. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +124 -124
  13. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +1 -1
  14. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +2 -3
  15. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  16. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +4 -1
  17. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  18. package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +3 -1
  19. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  20. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +1 -1
  21. package/dist/cjs/utils/EventUtils.js +0 -21
  22. package/dist/cjs/utils/EventUtils.js.map +1 -1
  23. package/dist/esm/arch/svm/BlockUtils.js +4 -31
  24. package/dist/esm/arch/svm/BlockUtils.js.map +1 -1
  25. package/dist/esm/arch/svm/SpokeUtils.d.ts +8 -8
  26. package/dist/esm/arch/svm/SpokeUtils.js +35 -36
  27. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  28. package/dist/esm/arch/svm/utils.d.ts +17 -4
  29. package/dist/esm/arch/svm/utils.js +44 -5
  30. package/dist/esm/arch/svm/utils.js.map +1 -1
  31. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.d.ts +2 -5
  32. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +125 -150
  33. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  34. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +124 -124
  35. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +1 -1
  36. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +2 -3
  37. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  38. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +4 -1
  39. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  40. package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +3 -1
  41. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  42. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +1 -1
  43. package/dist/esm/utils/EventUtils.js +1 -29
  44. package/dist/esm/utils/EventUtils.js.map +1 -1
  45. package/dist/types/arch/svm/BlockUtils.d.ts.map +1 -1
  46. package/dist/types/arch/svm/SpokeUtils.d.ts +8 -8
  47. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  48. package/dist/types/arch/svm/utils.d.ts +17 -4
  49. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  50. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts +2 -5
  51. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -1
  52. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +124 -124
  53. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +1 -1
  54. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts.map +1 -1
  55. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  56. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +3 -1
  57. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  58. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +1 -1
  59. package/dist/types/utils/EventUtils.d.ts.map +1 -1
  60. package/package.json +1 -1
  61. package/src/arch/svm/BlockUtils.ts +4 -12
  62. package/src/arch/svm/SpokeUtils.ts +24 -20
  63. package/src/arch/svm/utils.ts +29 -4
  64. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +6 -68
  65. package/src/clients/SpokePoolClient/SVMSpokePoolClient.ts +2 -7
  66. package/src/clients/SpokePoolClient/SpokePoolClient.ts +37 -14
  67. package/src/clients/mocks/MockSpokePoolClient.ts +1 -1
  68. package/src/utils/EventUtils.ts +1 -29
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import { Idl } from "@coral-xyz/anchor";
3
- import { Address, IInstruction, KeyPairSigner, type TransactionSigner } from "@solana/kit";
3
+ import { Address, type Commitment, IInstruction, KeyPairSigner, type TransactionSigner } from "@solana/kit";
4
4
  import { RelayData } from "../../interfaces";
5
5
  import { BigNumber, Address as SdkAddress } from "../../utils";
6
6
  import { AttestedCCTPMessage, EventName, SVMProvider } from "./types";
@@ -17,6 +17,20 @@ export declare function isDevnet(rpc: SVMProvider): Promise<boolean>;
17
17
  * Small utility to convert an Address to a Solana Kit branded type.
18
18
  */
19
19
  export declare function toAddress(address: SdkAddress): Address<string>;
20
+ /**
21
+ * For a given slot (or implicit head of chain), find the immediate preceding slot that contained a block.
22
+ * @param provider SVM Provider instance.
23
+ * @param opts An object containing a specific slot number, or a Solana commitment, defaulting to "confirmed".
24
+ * @returns An object containing the slot number and the relevant timestamp for the block.
25
+ */
26
+ export declare function getNearestSlotTime(provider: SVMProvider, opts?: {
27
+ slot: bigint;
28
+ } | {
29
+ commitment: Commitment;
30
+ }): Promise<{
31
+ slot: bigint;
32
+ timestamp: number;
33
+ }>;
20
34
  /**
21
35
  * Resolve the latest finalized slot, and then work backwards to find the nearest slot containing a block.
22
36
  * In most cases the first-resolved slot should also have a block. Avoid making arbitrary decisions about
@@ -74,10 +88,9 @@ export declare function getTransferLiabilityPda(programId: Address, originToken:
74
88
  /**
75
89
  * Returns the PDA for the SVM Spoke's root bundle account.
76
90
  * @param programId the address of the spoke pool.
77
- * @param statePda the spoke pool's state pda.
78
91
  * @param rootBundleId the associated root bundle ID.
79
92
  */
80
- export declare function getRootBundlePda(programId: Address, state: Address, rootBundleId: number): Promise<Address>;
93
+ export declare function getRootBundlePda(programId: Address, rootBundleId: number): Promise<Address>;
81
94
  /**
82
95
  * Returns the PDA for the SVM Spoke's instruction params account.
83
96
  * @param programId the address of the spoke pool.
@@ -112,7 +125,7 @@ export declare function getRandomSvmAddress(): Address<string>;
112
125
  * @returns The default transaction.
113
126
  */
114
127
  export declare const createDefaultTransaction: (rpcClient: SVMProvider, signer: TransactionSigner) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
115
- instructions: readonly IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
128
+ instructions: readonly IInstruction<string, readonly (import("@solana/kit").IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
116
129
  version: 0;
117
130
  }>, "feePayer">>;
118
131
  /**
@@ -1,4 +1,5 @@
1
1
  import { __awaiter, __generator } from "tslib";
2
+ import assert from "assert";
2
3
  import { MessageTransmitterClient, SvmSpokeClient } from "@across-protocol/contracts";
3
4
  import { BN, BorshEventCoder } from "@coral-xyz/anchor";
4
5
  import { address, appendTransactionMessageInstruction, createTransactionMessage, getAddressEncoder, getBase64EncodedWireTransaction, getProgramDerivedAddress, getU32Encoder, getU64Encoder, isAddress, pipe, setTransactionMessageFeePayerSigner, setTransactionMessageLifetimeUsingBlockhash, signTransactionMessageWithSigners, } from "@solana/kit";
@@ -7,6 +8,7 @@ import { ethers } from "ethers";
7
8
  import { FillType } from "../../interfaces";
8
9
  import { BigNumber, getRelayDataHash, isDefined, isUint8Array } from "../../utils";
9
10
  import { SVMEventNames } from "./types";
11
+ import { getTimestampForSlot } from "./SpokeUtils";
10
12
  export { isSolanaError } from "@solana/kit";
11
13
  /**
12
14
  * Basic void TransactionSigner type
@@ -46,6 +48,43 @@ export function isDevnet(rpc) {
46
48
  export function toAddress(address) {
47
49
  return address.toBase58();
48
50
  }
51
+ /**
52
+ * For a given slot (or implicit head of chain), find the immediate preceding slot that contained a block.
53
+ * @param provider SVM Provider instance.
54
+ * @param opts An object containing a specific slot number, or a Solana commitment, defaulting to "confirmed".
55
+ * @returns An object containing the slot number and the relevant timestamp for the block.
56
+ */
57
+ export function getNearestSlotTime(provider, opts) {
58
+ if (opts === void 0) { opts = { commitment: "confirmed" }; }
59
+ return __awaiter(this, void 0, void 0, function () {
60
+ var timestamp, slot, _a;
61
+ return __generator(this, function (_b) {
62
+ switch (_b.label) {
63
+ case 0:
64
+ if (!("slot" in opts)) return [3 /*break*/, 1];
65
+ _a = opts.slot;
66
+ return [3 /*break*/, 3];
67
+ case 1: return [4 /*yield*/, provider.getSlot(opts).send()];
68
+ case 2:
69
+ _a = _b.sent();
70
+ _b.label = 3;
71
+ case 3:
72
+ slot = _a;
73
+ _b.label = 4;
74
+ case 4: return [4 /*yield*/, getTimestampForSlot(provider, slot)];
75
+ case 5:
76
+ timestamp = _b.sent();
77
+ _b.label = 6;
78
+ case 6:
79
+ if (!isDefined(timestamp) && --slot) return [3 /*break*/, 4];
80
+ _b.label = 7;
81
+ case 7:
82
+ assert(isDefined(timestamp), "Unable to resolve block time for SVM slot ".concat(slot));
83
+ return [2 /*return*/, { slot: slot, timestamp: timestamp }];
84
+ }
85
+ });
86
+ });
87
+ }
49
88
  /**
50
89
  * Resolve the latest finalized slot, and then work backwards to find the nearest slot containing a block.
51
90
  * In most cases the first-resolved slot should also have a block. Avoid making arbitrary decisions about
@@ -306,20 +345,20 @@ export function getTransferLiabilityPda(programId, originToken) {
306
345
  /**
307
346
  * Returns the PDA for the SVM Spoke's root bundle account.
308
347
  * @param programId the address of the spoke pool.
309
- * @param statePda the spoke pool's state pda.
310
348
  * @param rootBundleId the associated root bundle ID.
311
349
  */
312
- export function getRootBundlePda(programId, state, rootBundleId) {
350
+ export function getRootBundlePda(programId, rootBundleId) {
313
351
  return __awaiter(this, void 0, void 0, function () {
314
- var intEncoder, addressEncoder, pda;
352
+ var seedEncoder, seed, intEncoder, pda;
315
353
  return __generator(this, function (_a) {
316
354
  switch (_a.label) {
317
355
  case 0:
356
+ seedEncoder = getU64Encoder();
357
+ seed = seedEncoder.encode(0);
318
358
  intEncoder = getU32Encoder();
319
- addressEncoder = getAddressEncoder();
320
359
  return [4 /*yield*/, getProgramDerivedAddress({
321
360
  programAddress: programId,
322
- seeds: ["root_bundle", addressEncoder.encode(state), intEncoder.encode(rootBundleId)],
361
+ seeds: ["root_bundle", seed, intEncoder.encode(rootBundleId)],
323
362
  })];
324
363
  case 1:
325
364
  pda = (_a.sent())[0];
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/arch/svm/utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,EAAE,EAAE,eAAe,EAAO,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAIL,OAAO,EACP,mCAAmC,EACnC,wBAAwB,EACxB,iBAAiB,EACjB,+BAA+B,EAC/B,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,SAAS,EACT,IAAI,EACJ,mCAAmC,EACnC,2CAA2C,EAC3C,iCAAiC,GAElC,MAAM,aAAa,CAAC;AACrB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAa,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAyB,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1G,OAAO,EAAkC,aAAa,EAAe,MAAM,SAAS,CAAC;AAErF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAA6D,UACxF,iBAAyB;IAEzB,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC;QACnC,uBAAuB,EAAE;;;4BAChB,qBAAM,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAA;4BAAhC,sBAAO,SAAyB,EAAC;;;aAClC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAgB,QAAQ,CAAC,GAAgB;;;;;wBACzB,qBAAM,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,EAAA;;oBAA/C,WAAW,GAAG,SAAiC;oBACrD,sBAAO,WAAW,KAAK,8CAA8C,EAAC;;;;CACvE;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,OAAmB;IAC3C,OAAO,OAAO,CAAC,QAAQ,EAAqB,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAgB,+BAA+B,CACnD,QAAqB,EACrB,OAAe,EACf,WAAkB;IAAlB,4BAAA,EAAA,kBAAkB;;;;;wBAEI,qBAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,EAAA;;oBAA1E,aAAa,GAAG,SAA0D;oBAC1E,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;oBAC3D,IAAI,GAAG,EAAE,8BAA8B,EAAE,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAW,CAAC;oBAEpG,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;;wBAEX,qBAAM,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAA;;oBAAlD,KAAK,GAAG,SAA0C;oBACxD,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;wBAC7E,wBAAM;qBACP;;;wBACM,EAAE,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;;;oBAExC,IAAI,WAAW,KAAK,CAAC,EAAE;wBACrB,MAAM,IAAI,KAAK,CAAC,qDAA8C,IAAI,eAAK,OAAO,MAAG,CAAC,CAAC;qBACpF;oBAED,sBAAO,MAAM,CAAC,IAAI,CAAC,EAAC;;;;CACrB;AAED;;GAEG;AACH,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAC,SAAc;IAC3C,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,OAAO,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KACtC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC9B,OAAO,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;KAClC;IAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QACjC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE;YAC9C,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACtC;QACD,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACtB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACrC;QAED,mFAAmF;QACnF,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAAM,OAAA,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;QAA1C,CAA0C,CAAC,CAC5F,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAQ,EAAE,QAAgB;IACpD,IAAM,KAAK,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,qCAA8B,GAAG,CAAC,OAAO,eAAK,QAAQ,CAAE,CAAC,CAAC;IACtF,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;KACjC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAtB,CAAsB,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC;QAAE,OAAO,OAAoB,CAAC;IACrG,MAAM,IAAI,KAAK,CAAC,8BAAuB,OAAO,CAAE,CAAC,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAa,EACb,sBAA+E,EAC/E,UAAmB;IADnB,uCAAA,EAAA,0BAAoC,WAAW,EAAE,cAAc,EAAE,aAAa,CAAC;IAG/E,wBAAwB;IACxB,IAAI,IAAI,IAAI,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IACD,gBAAgB;IAChB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,IAAM,kBAAkB,GAAG,CAAC,eAAe,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAClG,IAAI,UAAU,IAAI,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACzD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;SACrB;QACD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;IACD,oCAAoC;IACpC,IAAI,IAAI,YAAY,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE;QACpD,IAAM,KAAK,GAAG,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAgB,CAAC,CAAC;QACnF,IAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,UAAU,IAAI,sBAAsB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YAC7D,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC5B;QACD,OAAO,GAAG,CAAC;KACZ;IACD,0CAA0C;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,eAAe,CAAC,IAAI,EAAE,sBAAsB,CAAC,EAA7C,CAA6C,CAAC,CAAC;KAC1E;IACD,uCAAuC;IACvC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;QAC/C,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KAChD;IACD,iBAAiB;IACjB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,yEAAyE;QACzE,yCAAyC;QACzC,IAAI,UAAU,KAAK,UAAU,EAAE;YAC7B,IAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,QAAQ,QAAQ,EAAE;gBAChB,KAAK,UAAU;oBACb,OAAO,QAAQ,CAAC,QAAQ,CAAC;gBAC3B,KAAK,kBAAkB;oBACrB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;gBACnC,KAAK,UAAU;oBACb,OAAO,QAAQ,CAAC,QAAQ,CAAC;gBAC3B;oBACE,MAAM,IAAI,KAAK,CAAC,6BAAsB,QAAQ,CAAE,CAAC,CAAC;aACrD;SACF;QAED,iDAAiD;QACjD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC;SACb;QACD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAAM,OAAA;gBACpE,GAAG;gBACH,eAAe,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,CAAC;aACpD;QAHqE,CAGrE,CAAC,CACH,CAAC;KACH;IACD,0BAA0B;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAgB,WAAW,CAAC,SAAkB;;;;;;oBAC5C,UAAU,GAAG,aAAa,EAAE,CAAC;oBAC7B,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACf,qBAAM,wBAAwB,CAAC;4BAChD,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;yBACvB,CAAC,EAAA;;oBAHK,QAAQ,GAAI,CAAA,SAGjB,CAAA,GAHa;oBAIf,sBAAO,QAAQ,EAAC;;;;CACjB;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,gBAAgB,CACpC,SAAkB,EAClB,SAAoB,EACpB,kBAA0B;;;;;;oBAEpB,aAAa,GAAG,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;oBAChE,kBAAkB,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAC9D,qBAAM,wBAAwB,CAAC;4BACrD,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,OAAO,EAAE,kBAAkB,CAAC;yBACrC,CAAC,EAAA;;oBAHK,aAAa,GAAI,CAAA,SAGtB,CAAA,GAHkB;oBAIpB,sBAAO,aAAa,EAAC;;;;CACtB;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,WAAW,CAAC,WAAoB,EAAE,IAAY,EAAE,YAAoB;;;;;;oBAClF,UAAU,GAAG,aAAa,EAAE,CAAC;oBAC7B,cAAc,GAAG,iBAAiB,EAAE,CAAC;oBAC7B,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC,yBAAyB,CAAC;4BACjE,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;yBAC/G,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAIV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;;GAIG;AACH,MAAM,UAAgB,uBAAuB,CAAC,SAAkB,EAAE,WAAoB;;;;;;oBAC9E,cAAc,GAAG,iBAAiB,EAAE,CAAC;oBAC7B,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,oBAAoB,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;yBAClE,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAIV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;;;GAKG;AACH,MAAM,UAAgB,gBAAgB,CAAC,SAAkB,EAAE,KAAc,EAAE,YAAoB;;;;;;oBACvF,UAAU,GAAG,aAAa,EAAE,CAAC;oBAC7B,cAAc,GAAG,iBAAiB,EAAE,CAAC;oBAC7B,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;yBACtF,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAIV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;;GAIG;AACH,MAAM,UAAgB,uBAAuB,CAAC,SAAkB,EAAE,MAAe;;;;;;oBACzE,cAAc,GAAG,iBAAiB,EAAE,CAAC;oBAC7B,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,oBAAoB,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;yBAC7D,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAIV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;;;GAKG;AACH,MAAM,UAAgB,kBAAkB,CAAC,SAAkB,EAAE,IAAa,EAAE,UAAmB;;;;;;oBACvF,cAAc,GAAG,iBAAiB,EAAE,CAAC;oBAC7B,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;yBACzF,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAIV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;GAGG;AACH,MAAM,UAAgB,iBAAiB,CAAC,SAAkB;;;;;wBAC/B,qBAAM,wBAAwB,CAAC;wBACtD,cAAc,EAAE,SAAS;wBACzB,KAAK,EAAE,CAAC,mBAAmB,CAAC;qBAC7B,CAAC,EAAA;;oBAHK,cAAc,GAAI,CAAA,SAGvB,CAAA,GAHmB;oBAIrB,sBAAO,cAAc,EAAC;;;;CACvB;AAED;;;GAGG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG;;;;oBACN,qBAAM,wBAAwB,CAAC;oBACrD,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC,yBAAyB,CAAC;oBACjE,KAAK,EAAE,CAAC,gBAAgB,CAAC;iBAC1B,CAAC,EAAA;;gBAHK,aAAa,GAAI,CAAA,SAGtB,CAAA,GAHkB;gBAIpB,sBAAO,aAAa,EAAC;;;KACtB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3C,IAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAAG,UAAO,SAAsB,EAAE,MAAyB;;;;oBAC3D,qBAAM,SAAS,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAA;;gBAA/D,eAAe,GAAK,CAAA,SAA2C,CAAA,MAAhD;gBAC9B,sBAAO,IAAI,CACT,wBAAwB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EACxC,UAAC,EAAE,IAAK,OAAA,mCAAmC,CAAC,MAAM,EAAE,EAAE,CAAC,EAA/C,CAA+C,EACvD,UAAC,EAAE,IAAK,OAAA,2CAA2C,CAAC,eAAe,EAAE,EAAE,CAAC,EAAhE,CAAgE,CACzE,EAAC;;;KACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAC/B,YAAyB,EACzB,EAAgB,EAChB,MAAqB,EACrB,MAAS;;;;;;gBAEY,KAAA,mCAAmC,CAAA;sBAAC,EAAE;gBAAE,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;;gBAA3G,YAAY,GAAG,4BAAwC,SAAoD,GAAC;gBAEnF,KAAA,CAAA,KAAA,YAAY,CAAA;qBACxC,mBAAmB,CAAA;gBAAC,KAAA,+BAA+B,CAAA;gBAAC,qBAAM,iCAAiC,CAAC,YAAY,CAAC,EAAA;oBADnF,qBAAM,cACR,kBAAgC,SAAqD,EAAC,EAAE;wBAC3G,QAAQ,EAAE,QAAQ;qBACnB,EAAC;qBACD,IAAI,EAAE,EAAA;;gBAJH,gBAAgB,GAAG,SAIhB;gBAET,IAAI,CAAC,CAAA,MAAA,gBAAgB,CAAC,KAAK,CAAC,UAAU,0CAAE,IAAI,CAAC,CAAC,CAAC,CAAA,EAAE;oBAC/C,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;iBACnC;gBAED,sBAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAkB,EAAC;;;KAClG,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG,UAC7B,YAAyB,EACzB,MAAqB,EACrB,KAAa,EACb,YAAoB;;;;oBAEY,qBAAM,wBAAwB,CAAC;oBAC7D,cAAc,EAAE,wBAAwB,CAAC,mCAAmC;oBAC5E,KAAK,EAAE,CAAC,qBAAqB,CAAC;iBAC/B,CAAC,EAAA;;gBAHK,qBAAqB,GAAI,CAAA,SAG9B,CAAA,GAH0B;gBAIT,qBAAM,wBAAwB,CAAC,yBAAyB,CAAC;wBAC1E,kBAAkB,EAAE,qBAAqB;wBACzC,KAAK,OAAA;wBACL,YAAY,EAAE,YAAY;qBAC3B,CAAC,EAAA;;gBAJI,UAAU,GAAG,SAIjB;gBAEI,cAAc,GAAG,UAAC,GAAW;oBACjC,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE;wBACrB,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;qBAClC;oBACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACpC,CAAC,CAAC;gBAEK,qBAAM,iBAAiB,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,EAAA;oBAAhF,sBAAO,SAAyE,EAAC;;;KAClF,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAA0B;IAC9D,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE;QAC/D,MAAM,IAAI,UAAU,CAAC,4BAA4B,CAAC,CAAC;KACpD;IACD,IAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,EAAsB;IAC/C,OAAA,aAAa,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;AAAlE,CAAkE,CAAC;AAErE,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,CAAS,IAAK,OAAA,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAxB,CAAwB,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/arch/svm/utils.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- import { BundleDepositsV3, BundleExcessSlowFills, BundleFillsV3, BundleSlowFills, CombinedRefunds, ExpiredDepositsToRefundV3, SpokePoolClientsByChain } from "../../../interfaces";
1
+ import { BundleDepositsV3, BundleExcessSlowFills, BundleFillsV3, BundleSlowFills, CombinedRefunds, ExpiredDepositsToRefundV3 } from "../../../interfaces";
2
2
  import { AnyObject } from "../../../utils";
3
3
  import { PoolRebalanceRoot } from "./PoolRebalanceUtils";
4
4
  import { AcrossConfigStoreClient } from "../../AcrossConfigStoreClient";
5
5
  import { HubPoolClient } from "../../HubPoolClient";
6
- import { BundleDataClient } from "../../BundleDataClient";
7
6
  export declare function getRefundsFromBundle(bundleFillsV3: BundleFillsV3, expiredDepositsToRefundV3: ExpiredDepositsToRefundV3): CombinedRefunds;
8
7
  export declare function prettyPrintV3SpokePoolEvents(bundleDepositsV3: BundleDepositsV3, bundleFillsV3: BundleFillsV3, bundleSlowFillsV3: BundleSlowFills, expiredDepositsToRefundV3: ExpiredDepositsToRefundV3, unexecutableSlowFills: BundleExcessSlowFills): AnyObject;
9
8
  export declare function getEndBlockBuffers(chainIdListForBundleEvaluationBlockNumbers: number[], blockRangeEndBlockBuffer: {
@@ -12,6 +11,4 @@ export declare function getEndBlockBuffers(chainIdListForBundleEvaluationBlockNu
12
11
  export declare function _buildPoolRebalanceRoot(latestMainnetBlock: number, mainnetBundleEndBlock: number, bundleV3Deposits: BundleDepositsV3, bundleFillsV3: BundleFillsV3, bundleSlowFillsV3: BundleSlowFills, unexecutableSlowFills: BundleExcessSlowFills, expiredDepositsToRefundV3: ExpiredDepositsToRefundV3, clients: {
13
12
  hubPoolClient: HubPoolClient;
14
13
  configStoreClient: AcrossConfigStoreClient;
15
- bundleDataClient: BundleDataClient;
16
- spokePoolClients: SpokePoolClientsByChain;
17
- }, maxL1TokenCountOverride?: number): Promise<PoolRebalanceRoot>;
14
+ }, maxL1TokenCountOverride?: number): PoolRebalanceRoot;
@@ -1,7 +1,7 @@
1
- import { __assign, __awaiter, __generator } from "tslib";
1
+ import { __assign } from "tslib";
2
2
  // Create a combined `refunds` object containing refunds for V2 + V3 fills
3
3
  import assert from "assert";
4
- import { bnZero, fixedPointAdjustment, count2DDictionaryValues, count3DDictionaryValues, toAddressType, getImpliedBundleBlockRanges, EvmAddress, } from "../../../utils";
4
+ import { bnZero, fixedPointAdjustment, count2DDictionaryValues, count3DDictionaryValues, toAddressType, } from "../../../utils";
5
5
  import { addLastRunningBalance, constructPoolRebalanceLeaves, updateRunningBalance, updateRunningBalanceForDeposit, } from "./PoolRebalanceUtils";
6
6
  import { buildPoolRebalanceLeafTree } from "./MerkleTreeUtils";
7
7
  // and expired deposits.
@@ -74,156 +74,131 @@ export function getEndBlockBuffers(chainIdListForBundleEvaluationBlockNumbers, b
74
74
  return chainIdListForBundleEvaluationBlockNumbers.map(function (chainId) { var _a; return (_a = blockRangeEndBlockBuffer[chainId]) !== null && _a !== void 0 ? _a : 0; });
75
75
  }
76
76
  export function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
77
- var _a;
78
- return __awaiter(this, void 0, void 0, function () {
79
- var runningBalances, realizedLpFees, chainWithRefundsOnly, mostRecentProposedRootBundle, blockRangesForChains, prevRootBundleData, prevPoolRebalanceRoot, prevRunningBalances_1, leaves;
80
- return __generator(this, function (_b) {
81
- switch (_b.label) {
82
- case 0:
83
- runningBalances = {};
84
- realizedLpFees = {};
85
- chainWithRefundsOnly = new Set();
86
- /**
87
- * REFUNDS FOR FAST FILLS
88
- */
89
- // Add running balances and lp fees for v3 relayer refunds using BundleDataClient.bundleFillsV3. Refunds
90
- // should be equal to inputAmount - lpFees so that relayers get to keep the relayer fee. Add the refund amount
91
- // to the running balance for the repayment chain.
92
- Object.entries(bundleFillsV3).forEach(function (_a) {
93
- var _repaymentChainId = _a[0], fillsForChain = _a[1];
94
- var repaymentChainId = Number(_repaymentChainId);
95
- Object.entries(fillsForChain).forEach(function (_a) {
96
- var l2TokenAddress = _a[0], _b = _a[1], totalRealizedLpFee = _b.realizedLpFees, totalRefundAmount = _b.totalRefundAmount;
97
- // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
98
- // there are no relevant L1 running balances.
99
- if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock)) {
100
- chainWithRefundsOnly.add(repaymentChainId);
101
- return;
102
- }
103
- var l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
104
- var l1TokenAddr = l1Token.toNative();
105
- assert(l1Token.isEVM(), "Expected an EVM address: ".concat(l1TokenAddr));
106
- updateRunningBalance(runningBalances, repaymentChainId, l1TokenAddr, totalRefundAmount);
107
- updateRunningBalance(realizedLpFees, repaymentChainId, l1TokenAddr, totalRealizedLpFee);
108
- });
109
- });
110
- /**
111
- * PAYMENTS SLOW FILLS
112
- */
113
- // Add running balances and lp fees for v3 slow fills using BundleDataClient.bundleSlowFillsV3.
114
- // Slow fills should still increment bundleLpFees and updatedOutputAmount should be equal to inputAmount - lpFees.
115
- // Increment the updatedOutputAmount to the destination chain.
116
- Object.entries(bundleSlowFillsV3).forEach(function (_a) {
117
- var _destinationChainId = _a[0], depositsForChain = _a[1];
118
- var destinationChainId = Number(_destinationChainId);
119
- Object.entries(depositsForChain).forEach(function (_a) {
120
- var outputToken = _a[0], deposits = _a[1];
121
- deposits.forEach(function (deposit) {
122
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
123
- var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
124
- updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount.sub(lpFee));
125
- // Slow fill LP fees are accounted for when the slow fill executes and a V3FilledRelay is emitted. i.e. when
126
- // the slow fill execution is included in bundleFillsV3.
127
- });
128
- });
129
- });
130
- /**
131
- * EXCESSES FROM UNEXECUTABLE SLOW FILLS
132
- */
133
- // Subtract destination chain running balances for BundleDataClient.unexecutableSlowFills.
134
- // These are all slow fills that are impossible to execute and therefore the amount to return would be
135
- // the updatedOutputAmount = inputAmount - lpFees.
136
- Object.entries(unexecutableSlowFills).forEach(function (_a) {
137
- var _destinationChainId = _a[0], slowFilledDepositsForChain = _a[1];
138
- var destinationChainId = Number(_destinationChainId);
139
- Object.entries(slowFilledDepositsForChain).forEach(function (_a) {
140
- var outputToken = _a[0], slowFilledDeposits = _a[1];
141
- slowFilledDeposits.forEach(function (deposit) {
142
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
143
- var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
144
- updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), lpFee.sub(deposit.inputAmount));
145
- // Slow fills don't add to lpFees, only when the slow fill is executed and a V3FilledRelay is emitted, so
146
- // we don't need to subtract it here. Moreover, the HubPoole expects bundleLpFees to be > 0.
147
- });
148
- });
149
- });
150
- /**
151
- * DEPOSITS
152
- */
153
- // Handle v3Deposits. These decrement running balances from the origin chain equal to the inputAmount.
154
- // There should not be early deposits in v3.
155
- Object.entries(bundleV3Deposits).forEach(function (_a) {
156
- var depositsForChain = _a[1];
157
- Object.entries(depositsForChain).forEach(function (_a) {
158
- var deposits = _a[1];
159
- deposits.forEach(function (deposit) {
160
- // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
161
- // there are no relevant L1 running balances.
162
- if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
163
- return;
164
- }
165
- updateRunningBalanceForDeposit(runningBalances, clients.hubPoolClient, deposit, deposit.inputAmount.mul(-1), mainnetBundleEndBlock);
166
- });
167
- });
168
- });
169
- /**
170
- * REFUNDS FOR EXPIRED DEPOSITS
171
- */
172
- // Add origin chain running balance for expired v3 deposits. These should refund the inputAmount.
173
- Object.entries(expiredDepositsToRefundV3).forEach(function (_a) {
174
- var _originChainId = _a[0], depositsForChain = _a[1];
175
- var originChainId = Number(_originChainId);
176
- Object.entries(depositsForChain).forEach(function (_a) {
177
- var inputToken = _a[0], deposits = _a[1];
178
- deposits.forEach(function (deposit) {
179
- // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
180
- // there are no relevant L1 running balances.
181
- if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
182
- chainWithRefundsOnly.add(deposit.originChainId);
183
- return;
184
- }
185
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
186
- updateRunningBalance(runningBalances, originChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount);
187
- });
188
- });
189
- });
190
- if (!(((_a = clients.hubPoolClient.getPendingRootBundle()) === null || _a === void 0 ? void 0 : _a.bundleEvaluationBlockNumbers[0]) === mainnetBundleEndBlock ||
191
- !clients.hubPoolClient.hasPendingProposal() ||
192
- clients.hubPoolClient
193
- .getValidatedRootBundles()
194
- .some(function (bundle) { return bundle.bundleEvaluationBlockNumbers[0].toNumber() === mainnetBundleEndBlock; }))) return [3 /*break*/, 1];
195
- addLastRunningBalance(latestMainnetBlock, runningBalances, clients.hubPoolClient);
196
- return [3 /*break*/, 4];
197
- case 1:
198
- mostRecentProposedRootBundle = clients.hubPoolClient.getLatestProposedRootBundle();
199
- blockRangesForChains = getImpliedBundleBlockRanges(clients.hubPoolClient, clients.configStoreClient, mostRecentProposedRootBundle);
200
- return [4 /*yield*/, clients.bundleDataClient.loadData(blockRangesForChains, clients.spokePoolClients, true)];
201
- case 2:
202
- prevRootBundleData = _b.sent();
203
- return [4 /*yield*/, _buildPoolRebalanceRoot(latestMainnetBlock, blockRangesForChains[0][1], prevRootBundleData.bundleDepositsV3, prevRootBundleData.bundleFillsV3, prevRootBundleData.bundleSlowFillsV3, prevRootBundleData.unexecutableSlowFills, prevRootBundleData.expiredDepositsToRefundV3, clients, maxL1TokenCountOverride)];
204
- case 3:
205
- prevPoolRebalanceRoot = _b.sent();
206
- prevRunningBalances_1 = prevPoolRebalanceRoot.runningBalances;
207
- Object.keys(runningBalances).forEach(function (repaymentChainId) {
208
- Object.keys(runningBalances[Number(repaymentChainId)]).forEach(function (l1TokenAddress) {
209
- var _a;
210
- var updateRunningBalanceAmount = (_a = prevRunningBalances_1[Number(repaymentChainId)]) === null || _a === void 0 ? void 0 : _a[l1TokenAddress];
211
- // If the pending root bundle didn't have a running balance, fall back to the last running balance for that token and chain pair.
212
- var fallbackRunningBalance = clients.hubPoolClient.getRunningBalanceBeforeBlockForChain(latestMainnetBlock, Number(repaymentChainId), EvmAddress.from(l1TokenAddress)).runningBalance;
213
- updateRunningBalance(runningBalances, Number(repaymentChainId), l1TokenAddress, updateRunningBalanceAmount !== null && updateRunningBalanceAmount !== void 0 ? updateRunningBalanceAmount : fallbackRunningBalance);
214
- });
215
- });
216
- _b.label = 4;
217
- case 4:
218
- leaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter(function (chainId) { return !Object.keys(runningBalances).includes(chainId.toString()); }), clients.configStoreClient, maxL1TokenCountOverride);
219
- return [2 /*return*/, {
220
- runningBalances: runningBalances,
221
- realizedLpFees: realizedLpFees,
222
- leaves: leaves,
223
- tree: buildPoolRebalanceLeafTree(leaves),
224
- }];
77
+ // Running balances are the amount of tokens that we need to send to each SpokePool to pay for all instant and
78
+ // slow relay refunds. They are decreased by the amount of funds already held by the SpokePool. Balances are keyed
79
+ // by the SpokePool's network and L1 token equivalent of the L2 token to refund.
80
+ // Realized LP fees are keyed the same as running balances and represent the amount of LP fees that should be paid
81
+ // to LP's for each running balance.
82
+ // For each FilledV3Relay group, identified by { repaymentChainId, L1TokenAddress }, initialize a "running balance"
83
+ // to the total refund amount for that group.
84
+ var runningBalances = {};
85
+ var realizedLpFees = {};
86
+ // Keep track of any chains that we want to create a PoolRebalanceLeaf (and send a root bundle to) but don't have
87
+ // any running balances.
88
+ var chainWithRefundsOnly = new Set();
89
+ /**
90
+ * REFUNDS FOR FAST FILLS
91
+ */
92
+ // Add running balances and lp fees for v3 relayer refunds using BundleDataClient.bundleFillsV3. Refunds
93
+ // should be equal to inputAmount - lpFees so that relayers get to keep the relayer fee. Add the refund amount
94
+ // to the running balance for the repayment chain.
95
+ Object.entries(bundleFillsV3).forEach(function (_a) {
96
+ var _repaymentChainId = _a[0], fillsForChain = _a[1];
97
+ var repaymentChainId = Number(_repaymentChainId);
98
+ Object.entries(fillsForChain).forEach(function (_a) {
99
+ var l2TokenAddress = _a[0], _b = _a[1], totalRealizedLpFee = _b.realizedLpFees, totalRefundAmount = _b.totalRefundAmount;
100
+ // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
101
+ // there are no relevant L1 running balances.
102
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock)) {
103
+ chainWithRefundsOnly.add(repaymentChainId);
104
+ return;
225
105
  }
106
+ var l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
107
+ var l1TokenAddr = l1Token.toNative();
108
+ assert(l1Token.isEVM(), "Expected an EVM address: ".concat(l1TokenAddr));
109
+ updateRunningBalance(runningBalances, repaymentChainId, l1TokenAddr, totalRefundAmount);
110
+ updateRunningBalance(realizedLpFees, repaymentChainId, l1TokenAddr, totalRealizedLpFee);
111
+ });
112
+ });
113
+ /**
114
+ * PAYMENTS SLOW FILLS
115
+ */
116
+ // Add running balances and lp fees for v3 slow fills using BundleDataClient.bundleSlowFillsV3.
117
+ // Slow fills should still increment bundleLpFees and updatedOutputAmount should be equal to inputAmount - lpFees.
118
+ // Increment the updatedOutputAmount to the destination chain.
119
+ Object.entries(bundleSlowFillsV3).forEach(function (_a) {
120
+ var _destinationChainId = _a[0], depositsForChain = _a[1];
121
+ var destinationChainId = Number(_destinationChainId);
122
+ Object.entries(depositsForChain).forEach(function (_a) {
123
+ var outputToken = _a[0], deposits = _a[1];
124
+ deposits.forEach(function (deposit) {
125
+ var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
126
+ var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
127
+ updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount.sub(lpFee));
128
+ // Slow fill LP fees are accounted for when the slow fill executes and a V3FilledRelay is emitted. i.e. when
129
+ // the slow fill execution is included in bundleFillsV3.
130
+ });
131
+ });
132
+ });
133
+ /**
134
+ * EXCESSES FROM UNEXECUTABLE SLOW FILLS
135
+ */
136
+ // Subtract destination chain running balances for BundleDataClient.unexecutableSlowFills.
137
+ // These are all slow fills that are impossible to execute and therefore the amount to return would be
138
+ // the updatedOutputAmount = inputAmount - lpFees.
139
+ Object.entries(unexecutableSlowFills).forEach(function (_a) {
140
+ var _destinationChainId = _a[0], slowFilledDepositsForChain = _a[1];
141
+ var destinationChainId = Number(_destinationChainId);
142
+ Object.entries(slowFilledDepositsForChain).forEach(function (_a) {
143
+ var outputToken = _a[0], slowFilledDeposits = _a[1];
144
+ slowFilledDeposits.forEach(function (deposit) {
145
+ var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
146
+ var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
147
+ updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), lpFee.sub(deposit.inputAmount));
148
+ // Slow fills don't add to lpFees, only when the slow fill is executed and a V3FilledRelay is emitted, so
149
+ // we don't need to subtract it here. Moreover, the HubPoole expects bundleLpFees to be > 0.
150
+ });
151
+ });
152
+ });
153
+ /**
154
+ * DEPOSITS
155
+ */
156
+ // Handle v3Deposits. These decrement running balances from the origin chain equal to the inputAmount.
157
+ // There should not be early deposits in v3.
158
+ Object.entries(bundleV3Deposits).forEach(function (_a) {
159
+ var depositsForChain = _a[1];
160
+ Object.entries(depositsForChain).forEach(function (_a) {
161
+ var deposits = _a[1];
162
+ deposits.forEach(function (deposit) {
163
+ // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
164
+ // there are no relevant L1 running balances.
165
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
166
+ return;
167
+ }
168
+ updateRunningBalanceForDeposit(runningBalances, clients.hubPoolClient, deposit, deposit.inputAmount.mul(-1), mainnetBundleEndBlock);
169
+ });
226
170
  });
227
171
  });
172
+ /**
173
+ * REFUNDS FOR EXPIRED DEPOSITS
174
+ */
175
+ // Add origin chain running balance for expired v3 deposits. These should refund the inputAmount.
176
+ Object.entries(expiredDepositsToRefundV3).forEach(function (_a) {
177
+ var _originChainId = _a[0], depositsForChain = _a[1];
178
+ var originChainId = Number(_originChainId);
179
+ Object.entries(depositsForChain).forEach(function (_a) {
180
+ var inputToken = _a[0], deposits = _a[1];
181
+ deposits.forEach(function (deposit) {
182
+ // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
183
+ // there are no relevant L1 running balances.
184
+ if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
185
+ chainWithRefundsOnly.add(deposit.originChainId);
186
+ return;
187
+ }
188
+ var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
189
+ updateRunningBalance(runningBalances, originChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount);
190
+ });
191
+ });
192
+ });
193
+ // Add to the running balance value from the last valid root bundle proposal for {chainId, l1Token}
194
+ // combination if found.
195
+ addLastRunningBalance(latestMainnetBlock, runningBalances, clients.hubPoolClient);
196
+ var leaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter(function (chainId) { return !Object.keys(runningBalances).includes(chainId.toString()); }), clients.configStoreClient, maxL1TokenCountOverride);
197
+ return {
198
+ runningBalances: runningBalances,
199
+ realizedLpFees: realizedLpFees,
200
+ leaves: leaves,
201
+ tree: buildPoolRebalanceLeafTree(leaves),
202
+ };
228
203
  }
229
204
  //# sourceMappingURL=DataworkerUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":"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"}