@across-protocol/sdk 4.3.20 → 4.3.22

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 (49) hide show
  1. package/dist/cjs/arch/svm/SpokeUtils.d.ts +3 -1
  2. package/dist/cjs/arch/svm/SpokeUtils.js +15 -4
  3. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/utils.js +6 -5
  5. package/dist/cjs/arch/svm/utils.js.map +1 -1
  6. package/dist/cjs/providers/utils.js +2 -0
  7. package/dist/cjs/providers/utils.js.map +1 -1
  8. package/dist/cjs/utils/BigNumberUtils.d.ts +2 -0
  9. package/dist/cjs/utils/BigNumberUtils.js +5 -1
  10. package/dist/cjs/utils/BigNumberUtils.js.map +1 -1
  11. package/dist/cjs/utils/DepositUtils.d.ts +2 -0
  12. package/dist/cjs/utils/DepositUtils.js +9 -1
  13. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  14. package/dist/cjs/utils/TokenUtils.d.ts +1 -1
  15. package/dist/cjs/utils/TokenUtils.js +1 -1
  16. package/dist/cjs/utils/TokenUtils.js.map +1 -1
  17. package/dist/esm/arch/svm/SpokeUtils.d.ts +3 -1
  18. package/dist/esm/arch/svm/SpokeUtils.js +13 -3
  19. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  20. package/dist/esm/arch/svm/utils.js +7 -6
  21. package/dist/esm/arch/svm/utils.js.map +1 -1
  22. package/dist/esm/providers/utils.js +4 -1
  23. package/dist/esm/providers/utils.js.map +1 -1
  24. package/dist/esm/utils/BigNumberUtils.d.ts +5 -0
  25. package/dist/esm/utils/BigNumberUtils.js +5 -0
  26. package/dist/esm/utils/BigNumberUtils.js.map +1 -1
  27. package/dist/esm/utils/DepositUtils.d.ts +16 -2
  28. package/dist/esm/utils/DepositUtils.js +20 -2
  29. package/dist/esm/utils/DepositUtils.js.map +1 -1
  30. package/dist/esm/utils/TokenUtils.d.ts +3 -23
  31. package/dist/esm/utils/TokenUtils.js +1 -1
  32. package/dist/esm/utils/TokenUtils.js.map +1 -1
  33. package/dist/types/arch/svm/SpokeUtils.d.ts +3 -1
  34. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  35. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  36. package/dist/types/providers/utils.d.ts.map +1 -1
  37. package/dist/types/utils/BigNumberUtils.d.ts +5 -0
  38. package/dist/types/utils/BigNumberUtils.d.ts.map +1 -1
  39. package/dist/types/utils/DepositUtils.d.ts +16 -2
  40. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  41. package/dist/types/utils/TokenUtils.d.ts +3 -23
  42. package/dist/types/utils/TokenUtils.d.ts.map +1 -1
  43. package/package.json +1 -1
  44. package/src/arch/svm/SpokeUtils.ts +14 -3
  45. package/src/arch/svm/utils.ts +4 -4
  46. package/src/providers/utils.ts +3 -0
  47. package/src/utils/BigNumberUtils.ts +6 -0
  48. package/src/utils/DepositUtils.ts +41 -2
  49. package/src/utils/TokenUtils.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"BigNumberUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/BigNumberUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG9C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,cAAc,0BAA0B,CAAC;AACzC,MAAM,MAAM,EAAE,GAAG,SAAS,CAAC;AAE3B,eAAO,MAAQ,WAAW,kCAAE,WAAW,kCAAE,UAAU,iCAAE,UAAU,+BAAgB,CAAC;AAChF,eAAO,MAAM,MAAM,WAAsB,CAAC;AAC1C,eAAO,MAAM,KAAK,WAAsB,CAAC;AACzC,eAAO,MAAM,WAAW,WAA+B,CAAC;AACxD,eAAO,MAAM,YAAY,WAAuF,CAAC;AAEjH;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,EAAE,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,EAAE,CAE5C;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,QAAS,YAAY,aAAY,OAAO,GAAG,OAAO,GAAG,MAAM,KAAa,EAgBxF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,QAAS,SAAS,OAAO,SAAS,cAEnD,CAAC"}
1
+ {"version":3,"file":"BigNumberUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/BigNumberUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG9C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,cAAc,0BAA0B,CAAC;AACzC,MAAM,MAAM,EAAE,GAAG,SAAS,CAAC;AAE3B,eAAO,MAAQ,WAAW,kCAAE,WAAW,kCAAE,UAAU,iCAAE,UAAU,+BAAgB,CAAC;AAChF,eAAO,MAAM,MAAM,WAAsB,CAAC;AAC1C,eAAO,MAAM,KAAK,WAAsB,CAAC;AACzC,eAAO,MAAM,WAAW,WAA+B,CAAC;AACxD,eAAO,MAAM,YAAY,WAAuF,CAAC;AAEjH;;GAEG;AACH,eAAO,MAAM,KAAK,MAAO,MAAM,KAAK,MAAM,WAAoB,CAAC;AAC/D,eAAO,MAAM,KAAK,MAAO,MAAM,KAAK,MAAM,WAAoB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,EAAE,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,EAAE,CAE5C;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,QAAS,YAAY,aAAY,OAAO,GAAG,OAAO,GAAG,MAAM,KAAa,EAgBxF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,QAAS,SAAS,OAAO,SAAS,cAEnD,CAAC"}
@@ -81,14 +81,28 @@ export declare function resolveDepositMessage(deposit: Deposit): string;
81
81
  * Converts a RelayData object with `Address` types as address fields to a `RelayData`-like object with
82
82
  * strings as address fields.
83
83
  * @param relayData RelayData type.
84
- * @returns a RelayData-like type which has strings as fields.
84
+ * @returns a RelayData-like type which has hex 32 byte strings as fields.
85
85
  */
86
86
  export declare function convertRelayDataParamsToBytes32(relayData: RelayData): ConvertedRelayData;
87
87
  /**
88
88
  * Converts a Fill object with `Address` types as address fields to a `RelayData`-like object with
89
89
  * strings as address fields.
90
90
  * @param relayData RelayData type.
91
- * @returns a RelayData-like type which has strings as fields.
91
+ * @returns a RelayData-like type which has hex 32 byte strings as fields.
92
92
  */
93
93
  export declare function convertFillParamsToBytes32(fill: Fill): ConvertedFill;
94
+ /**
95
+ * Converts a RelayData object with `Address` types as address fields to a `RelayData`-like object with
96
+ * strings as address fields.
97
+ * @param relayData RelayData type.
98
+ * @returns a RelayData-like type which has native address representation strings as fields.
99
+ */
100
+ export declare function convertRelayDataParamsToNative(relayData: RelayData): ConvertedRelayData;
101
+ /**
102
+ * Converts a Fill object with `Address` types as address fields to a `RelayData`-like object with
103
+ * strings as address fields.
104
+ * @param relayData RelayData type.
105
+ * @returns a RelayData-like type which has native address representation strings as fields.
106
+ */
107
+ export declare function convertFillParamsToNative(fill: Fill): ConvertedFill;
94
108
  //# sourceMappingURL=DepositUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DepositUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EACL,yBAAyB,EACzB,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,aAAa,EACd,MAAM,eAAe,CAAC;AAavB,oBAAY,WAAW;IACrB,gBAAgB,IAAI;IACpB,iBAAiB,IAAA;IACjB,YAAY,IAAA;IACZ,mBAAmB,IAAA;CACpB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC1C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD;;;;;;;;;;;GAWG;AAEH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,GAAG,eAAe,EAC5B,KAAK,CAAC,EAAE,yBAAyB,GAChC,OAAO,CAAC,mBAAmB,CAAC,CAkF9B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GACrF,MAAM,CAkBR;AAoBD,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,EAC3F,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,GAAG,aAAa,CAAC,GAC1E;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkBpD;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,SAAS,CAAC,GAAG,OAAO,CAE/F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,OAAO,CAGnF;AAED,wBAAgB,gCAAgC,CAC9C,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,aAAa,GAAG,aAAa,CAAC,GAC7D,OAAO,CAET;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAgB,GAAG,OAAO,CAE/D;AAED,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,SAAS,GAAG,kBAAkB,CASxF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,CAcpE"}
1
+ {"version":3,"file":"DepositUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EACL,yBAAyB,EACzB,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,aAAa,EACd,MAAM,eAAe,CAAC;AAavB,oBAAY,WAAW;IACrB,gBAAgB,IAAI;IACpB,iBAAiB,IAAA;IACjB,YAAY,IAAA;IACZ,mBAAmB,IAAA;CACpB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC1C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD;;;;;;;;;;;GAWG;AAEH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,GAAG,eAAe,EAC5B,KAAK,CAAC,EAAE,yBAAyB,GAChC,OAAO,CAAC,mBAAmB,CAAC,CAkF9B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GACrF,MAAM,CAkBR;AAoBD,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,EAC3F,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,GAAG,aAAa,CAAC,GAC1E;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkBpD;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,SAAS,CAAC,GAAG,OAAO,CAE/F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,OAAO,CAGnF;AAED,wBAAgB,gCAAgC,CAC9C,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,aAAa,GAAG,aAAa,CAAC,GAC7D,OAAO,CAET;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAgB,GAAG,OAAO,CAE/D;AAED,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,SAAS,GAAG,kBAAkB,CASxF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,CAcpE;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,SAAS,GAAG,kBAAkB,CASvF;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,CAcnE"}
@@ -23,7 +23,7 @@ export declare function resolveSymbolOnChain(chainId: number, symbol: string): T
23
23
  * @param tokenMapping A parameter to determine where to source token information. Defaults to the constants variant.
24
24
  * @returns The contract address for the given token symbol and chainId, or undefined if the token symbol is not supported.
25
25
  */
26
- export declare const resolveContractFromSymbol: (symbol: string, chainId: string, tokenMapping?: {
26
+ export declare const resolveContractFromSymbol: (symbol: string, chainId: number, tokenMapping?: {
27
27
  ACX: {
28
28
  name: string;
29
29
  symbol: string;
@@ -181,14 +181,6 @@ export declare const resolveContractFromSymbol: (symbol: string, chainId: string
181
181
  name: string;
182
182
  symbol: string;
183
183
  decimals: number;
184
- /**
185
- * Retrieves the ERC20 balance for a given address and token address.
186
- * @param address The address to retrieve the balance for.
187
- * @param tokenAddress The token address
188
- * @param signerOrProvider A valid ethers.js Signer or Provider object.
189
- * @param blockTag The block tag to retrieve the balance at.
190
- * @returns The balance of the given address for the given token address.
191
- */
192
184
  addresses: {
193
185
  [x: number]: string;
194
186
  };
@@ -332,9 +324,7 @@ export declare const resolveContractFromSymbol: (symbol: string, chainId: string
332
324
  [x: number]: string;
333
325
  };
334
326
  coingeckoId: string;
335
- }; /**
336
- * @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
337
- */
327
+ };
338
328
  WAZERO: {
339
329
  name: string;
340
330
  symbol: string;
@@ -606,14 +596,6 @@ export declare function getTokenInfo(l2Token: Address, chainId: number, tokenMap
606
596
  name: string;
607
597
  symbol: string;
608
598
  decimals: number;
609
- /**
610
- * Retrieves the ERC20 balance for a given address and token address.
611
- * @param address The address to retrieve the balance for.
612
- * @param tokenAddress The token address
613
- * @param signerOrProvider A valid ethers.js Signer or Provider object.
614
- * @param blockTag The block tag to retrieve the balance at.
615
- * @returns The balance of the given address for the given token address.
616
- */
617
599
  addresses: {
618
600
  [x: number]: string;
619
601
  };
@@ -757,9 +739,7 @@ export declare function getTokenInfo(l2Token: Address, chainId: number, tokenMap
757
739
  [x: number]: string;
758
740
  };
759
741
  coingeckoId: string;
760
- }; /**
761
- * @notice Returns the l1 token address matching the given l2TokenAddress and chainId.
762
- */
742
+ };
763
743
  WAZERO: {
764
744
  name: string;
765
745
  symbol: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TokenUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAY,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAiB,MAAM,gBAAgB,CAAC;AAGpE,KAAK,gBAAgB,GAAG,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC;AAEpD,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,CAI9G;AAED,eAAO,MAAM,mBAAmB,mBACd,MAAM;;aAMvB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAa/E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,WAC5B,MAAM,WACL,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAajB;;;;;;;WAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+DH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAnFA,MAAM,GAAG,SAIX,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGrF;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAI1D;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAIzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAvC5E;;;;;;;WAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+DH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAjC6F,GAAG,SAAS,CAe3G;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAMnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAetF"}
1
+ {"version":3,"file":"TokenUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@across-protocol/sdk",
3
3
  "author": "UMA Team",
4
- "version": "4.3.20",
4
+ "version": "4.3.22",
5
5
  "license": "AGPL-3.0",
6
6
  "homepage": "https://docs.across.to/reference/sdk",
7
7
  "files": [
@@ -5,14 +5,17 @@ import { intToU8Array32 } from "@across-protocol/contracts/dist/src/svm/web3-v1/
5
5
  import { SYSTEM_PROGRAM_ADDRESS } from "@solana-program/system";
6
6
  import {
7
7
  ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
8
+ Mint,
8
9
  TOKEN_PROGRAM_ADDRESS,
9
10
  fetchMint,
10
11
  getApproveCheckedInstruction,
11
12
  getCreateAssociatedTokenIdempotentInstruction,
12
13
  } from "@solana-program/token";
13
14
  import {
15
+ Account,
14
16
  AccountRole,
15
17
  Address,
18
+ FetchAccountConfig,
16
19
  IAccountMeta,
17
20
  KeyPairSigner,
18
21
  ReadonlyUint8Array,
@@ -555,7 +558,7 @@ export async function getFillRelayTx(
555
558
  ]);
556
559
 
557
560
  const mint = toAddress(outputToken);
558
- const mintInfo = await fetchMint(solanaClient, mint);
561
+ const mintInfo = await getMintInfo(solanaClient, mint);
559
562
 
560
563
  const [recipientAta, relayerAta, fillStatus, eventAuthority] = await Promise.all([
561
564
  getAssociatedTokenAddress(recipient, outputToken, mintInfo.programAddress),
@@ -618,7 +621,7 @@ export const createFillInstruction = async (
618
621
  tokenDecimals: number,
619
622
  createRecipientAtaIfNeeded: boolean = true
620
623
  ) => {
621
- const mintInfo = await fetchMint(solanaClient, fillInput.mint);
624
+ const mintInfo = await getMintInfo(solanaClient, fillInput.mint);
622
625
  const approveIx = getApproveCheckedInstruction(
623
626
  {
624
627
  source: fillInput.relayerTokenAccount,
@@ -679,7 +682,7 @@ export const createDepositInstruction = async (
679
682
  systemProgram: depositInput.systemProgram,
680
683
  tokenProgram: depositInput.tokenProgram,
681
684
  });
682
- const mintInfo = await fetchMint(solanaClient, depositInput.mint);
685
+ const mintInfo = await getMintInfo(solanaClient, depositInput.mint);
683
686
  const approveIx = getApproveCheckedInstruction(
684
687
  {
685
688
  source: depositInput.depositorTokenAccount,
@@ -1315,3 +1318,11 @@ export function finalizeCCTPV1Messages(
1315
1318
  return signature;
1316
1319
  });
1317
1320
  }
1321
+
1322
+ export async function getMintInfo(
1323
+ solanaClient: SVMProvider,
1324
+ mint: Address<string>,
1325
+ config?: FetchAccountConfig
1326
+ ): Promise<Account<Mint, string>> {
1327
+ return await fetchMint(solanaClient, mint, config);
1328
+ }
@@ -24,7 +24,7 @@ import {
24
24
  import bs58 from "bs58";
25
25
  import { ethers } from "ethers";
26
26
  import { FillType, RelayData } from "../../interfaces";
27
- import { BigNumber, Address as SdkAddress, getRelayDataHash, isDefined, isUint8Array } from "../../utils";
27
+ import { BigNumber, biMin, Address as SdkAddress, getRelayDataHash, isDefined, isUint8Array } from "../../utils";
28
28
  import { AttestedCCTPMessage, EventName, SVMEventNames, SVMProvider } from "./types";
29
29
  import { getTimestampForSlot } from "./SpokeUtils";
30
30
 
@@ -90,11 +90,11 @@ export async function getLatestFinalizedSlotWithBlock(
90
90
  maxSlot: bigint,
91
91
  maxLookback = 1000
92
92
  ): Promise<number> {
93
- const { slot: finalizedSlot } = await getNearestSlotTime(provider, { commitment: "finalized" });
94
- const endSlot = Math.min(Number(maxSlot), Number(finalizedSlot));
95
93
  const opts = { maxSupportedTransactionVersion: 0, transactionDetails: "none", rewards: false } as const;
94
+ const { slot: finalizedSlot } = await getNearestSlotTime(provider, { commitment: "finalized" });
95
+ const endSlot = biMin(maxSlot, finalizedSlot);
96
96
 
97
- let slot = BigInt(endSlot);
97
+ let slot = endSlot;
98
98
  do {
99
99
  const block = await provider.getBlock(slot, opts).send();
100
100
  if (isDefined(block) && [block.blockHeight, block.blockTime].every(isDefined)) {
@@ -96,14 +96,17 @@ const IGNORED_FIELDS = {
96
96
  // 2023-08-31 Added blockHash because of upstream zkSync provider disagreements. Consider removing later.
97
97
  // 2024-05-07 Added l1BatchNumber and logType due to Alchemy. Consider removing later.
98
98
  // 2024-07-11 Added blockTimestamp after zkSync rolled out a new node release.
99
+ // 2025-07-24 Added additional fields returned by Chainstack on (at least) Polygon.
99
100
  eth_getBlockByNumber: [
100
101
  "miner", // polygon (sometimes)
101
102
  "l1BatchNumber", // zkSync
102
103
  "l1BatchTimestamp", // zkSync
104
+ "requestsHash", // Chainstack (Polygon)
103
105
  "size", // Alchemy/Arbitrum (temporary)
104
106
  "totalDifficulty", // Quicknode/Alchemy (sometimes)
105
107
  "logsBloom", // zkSync (third-party providers return 0x0..0)
106
108
  "transactions", // Polygon yParity field in transactions[]
109
+ "withdrawals", // Chainstack (Polygon)
107
110
  ],
108
111
  eth_getLogs: ["blockTimestamp", "transactionLogIndex", "l1BatchNumber", "logType"],
109
112
  };
@@ -19,6 +19,12 @@ export const bnOne = BigNumber.from("1");
19
19
  export const bnUint32Max = BigNumber.from("0xffffffff");
20
20
  export const bnUint256Max = BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");
21
21
 
22
+ /**
23
+ * BigInt min/max helpers.
24
+ */
25
+ export const biMin = (a: bigint, b: bigint) => (a > b ? b : a);
26
+ export const biMax = (a: bigint, b: bigint) => (a > b ? a : b);
27
+
22
28
  /**
23
29
  * Converts a stringified number into a BigNumber with 18 decimal places.
24
30
  * @param num The number to parse.
@@ -265,7 +265,7 @@ export function resolveDepositMessage(deposit: Deposit): string {
265
265
  * Converts a RelayData object with `Address` types as address fields to a `RelayData`-like object with
266
266
  * strings as address fields.
267
267
  * @param relayData RelayData type.
268
- * @returns a RelayData-like type which has strings as fields.
268
+ * @returns a RelayData-like type which has hex 32 byte strings as fields.
269
269
  */
270
270
  export function convertRelayDataParamsToBytes32(relayData: RelayData): ConvertedRelayData {
271
271
  return {
@@ -282,7 +282,7 @@ export function convertRelayDataParamsToBytes32(relayData: RelayData): Converted
282
282
  * Converts a Fill object with `Address` types as address fields to a `RelayData`-like object with
283
283
  * strings as address fields.
284
284
  * @param relayData RelayData type.
285
- * @returns a RelayData-like type which has strings as fields.
285
+ * @returns a RelayData-like type which has hex 32 byte strings as fields.
286
286
  */
287
287
  export function convertFillParamsToBytes32(fill: Fill): ConvertedFill {
288
288
  return {
@@ -299,3 +299,42 @@ export function convertFillParamsToBytes32(fill: Fill): ConvertedFill {
299
299
  },
300
300
  };
301
301
  }
302
+
303
+ /**
304
+ * Converts a RelayData object with `Address` types as address fields to a `RelayData`-like object with
305
+ * strings as address fields.
306
+ * @param relayData RelayData type.
307
+ * @returns a RelayData-like type which has native address representation strings as fields.
308
+ */
309
+ export function convertRelayDataParamsToNative(relayData: RelayData): ConvertedRelayData {
310
+ return {
311
+ ...relayData,
312
+ depositor: relayData.depositor.toNative(),
313
+ recipient: relayData.recipient.toNative(),
314
+ inputToken: relayData.inputToken.toNative(),
315
+ outputToken: relayData.outputToken.toNative(),
316
+ exclusiveRelayer: relayData.exclusiveRelayer.toNative(),
317
+ };
318
+ }
319
+
320
+ /**
321
+ * Converts a Fill object with `Address` types as address fields to a `RelayData`-like object with
322
+ * strings as address fields.
323
+ * @param relayData RelayData type.
324
+ * @returns a RelayData-like type which has native address representation strings as fields.
325
+ */
326
+ export function convertFillParamsToNative(fill: Fill): ConvertedFill {
327
+ return {
328
+ ...fill,
329
+ depositor: fill.depositor.toNative(),
330
+ recipient: fill.recipient.toNative(),
331
+ inputToken: fill.inputToken.toNative(),
332
+ outputToken: fill.outputToken.toNative(),
333
+ exclusiveRelayer: fill.exclusiveRelayer.toNative(),
334
+ relayer: fill.relayer.toNative(),
335
+ relayExecutionInfo: {
336
+ ...fill.relayExecutionInfo,
337
+ updatedRecipient: fill.relayExecutionInfo.updatedRecipient.toNative(),
338
+ },
339
+ };
340
+ }
@@ -58,12 +58,12 @@ export function resolveSymbolOnChain(chainId: number, symbol: string): TokenInfo
58
58
  */
59
59
  export const resolveContractFromSymbol = (
60
60
  symbol: string,
61
- chainId: string,
61
+ chainId: number,
62
62
  tokenMapping = TOKEN_SYMBOLS_MAP
63
63
  ): string | undefined => {
64
64
  return Object.values(tokenMapping).find((details) => {
65
65
  return details.symbol.toLowerCase() === symbol.toLowerCase();
66
- })?.addresses[Number(chainId)];
66
+ })?.addresses[chainId];
67
67
  };
68
68
 
69
69
  export function getCoingeckoTokenIdByAddress(address: string, chainId: number): string {