@folks-finance/xchain-sdk 0.0.52 → 0.0.54

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 (43) hide show
  1. package/dist/chains/evm/common/constants/abi/arbitrum-node-interface-abi.d.ts +25 -0
  2. package/dist/chains/evm/common/constants/abi/arbitrum-node-interface-abi.js +18 -0
  3. package/dist/chains/evm/common/constants/abi/arbitrum-node-interface-abi.js.map +1 -0
  4. package/dist/chains/evm/common/constants/address.d.ts +1 -0
  5. package/dist/chains/evm/common/constants/address.js +2 -0
  6. package/dist/chains/evm/common/constants/address.js.map +1 -0
  7. package/dist/chains/evm/common/utils/message.js +38 -4
  8. package/dist/chains/evm/common/utils/message.js.map +1 -1
  9. package/dist/chains/evm/hub/constants/chain.js +4 -4
  10. package/dist/chains/evm/hub/constants/chain.js.map +1 -1
  11. package/dist/chains/evm/hub/modules/folks-hub-oracle.d.ts +2 -2
  12. package/dist/chains/evm/hub/modules/folks-hub-oracle.js +4 -3
  13. package/dist/chains/evm/hub/modules/folks-hub-oracle.js.map +1 -1
  14. package/dist/chains/evm/hub/modules/folks-hub-pool.d.ts +1 -1
  15. package/dist/chains/evm/hub/modules/folks-hub-pool.js +2 -1
  16. package/dist/chains/evm/hub/modules/folks-hub-pool.js.map +1 -1
  17. package/dist/common/constants/adapter.d.ts +1 -3
  18. package/dist/common/constants/adapter.js +1 -3
  19. package/dist/common/constants/adapter.js.map +1 -1
  20. package/dist/common/utils/adapter.d.ts +4 -3
  21. package/dist/common/utils/adapter.js +25 -17
  22. package/dist/common/utils/adapter.js.map +1 -1
  23. package/dist/utils/array.d.ts +1 -0
  24. package/dist/utils/array.js +2 -0
  25. package/dist/utils/array.js.map +1 -0
  26. package/dist/xchain/modules/folks-oracle.d.ts +2 -2
  27. package/dist/xchain/modules/folks-oracle.js +4 -4
  28. package/dist/xchain/modules/folks-oracle.js.map +1 -1
  29. package/dist/xchain/modules/folks-pool.d.ts +1 -1
  30. package/dist/xchain/modules/folks-pool.js +2 -2
  31. package/dist/xchain/modules/folks-pool.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/chains/evm/common/constants/abi/arbitrum-node-interface-abi.ts +17 -0
  34. package/src/chains/evm/common/constants/address.ts +1 -0
  35. package/src/chains/evm/common/utils/message.ts +82 -27
  36. package/src/chains/evm/hub/constants/chain.ts +4 -4
  37. package/src/chains/evm/hub/modules/folks-hub-oracle.ts +9 -2
  38. package/src/chains/evm/hub/modules/folks-hub-pool.ts +2 -0
  39. package/src/common/constants/adapter.ts +1 -3
  40. package/src/common/utils/adapter.ts +27 -15
  41. package/src/utils/array.ts +4 -0
  42. package/src/xchain/modules/folks-oracle.ts +4 -4
  43. package/src/xchain/modules/folks-pool.ts +7 -2
@@ -0,0 +1,25 @@
1
+ export declare const ArbitrumNodeInterfaceAbi: readonly [{
2
+ readonly name: "gasEstimateL1Component";
3
+ readonly type: "function";
4
+ readonly inputs: readonly [{
5
+ readonly name: "to";
6
+ readonly type: "address";
7
+ }, {
8
+ readonly name: "contractCreation";
9
+ readonly type: "bool";
10
+ }, {
11
+ readonly name: "data";
12
+ readonly type: "bytes";
13
+ }];
14
+ readonly outputs: readonly [{
15
+ readonly name: "gasEstimateForL1";
16
+ readonly type: "uint64";
17
+ }, {
18
+ readonly name: "baseFee";
19
+ readonly type: "uint256";
20
+ }, {
21
+ readonly name: "l1BaseFeeEstimate";
22
+ readonly type: "uint256";
23
+ }];
24
+ readonly stateMutability: "payable";
25
+ }];
@@ -0,0 +1,18 @@
1
+ export const ArbitrumNodeInterfaceAbi = [
2
+ {
3
+ name: "gasEstimateL1Component",
4
+ type: "function",
5
+ inputs: [
6
+ { name: "to", type: "address" },
7
+ { name: "contractCreation", type: "bool" },
8
+ { name: "data", type: "bytes" },
9
+ ],
10
+ outputs: [
11
+ { name: "gasEstimateForL1", type: "uint64" },
12
+ { name: "baseFee", type: "uint256" },
13
+ { name: "l1BaseFeeEstimate", type: "uint256" },
14
+ ],
15
+ stateMutability: "payable",
16
+ },
17
+ ];
18
+ //# sourceMappingURL=arbitrum-node-interface-abi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arbitrum-node-interface-abi.js","sourceRoot":"","sources":["../../../../../../src/chains/evm/common/constants/abi/arbitrum-node-interface-abi.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE;YAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;SAChC;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC5C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C;QACD,eAAe,EAAE,SAAS;KAC3B;CACO,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const ARBITRUM_NODE_INTERFACE = "0x00000000000000000000000000000000000000C8";
@@ -0,0 +1,2 @@
1
+ export const ARBITRUM_NODE_INTERFACE = "0x00000000000000000000000000000000000000C8";
2
+ //# sourceMappingURL=address.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../../../../src/chains/evm/common/constants/address.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,4CAA4C,CAAC"}
@@ -1,5 +1,6 @@
1
- import { concat, isHex } from "viem";
1
+ import { concat, encodeFunctionData, getContract, isHex } from "viem";
2
2
  import { BYTES32_LENGTH, UINT16_LENGTH, UINT256_LENGTH, UINT8_LENGTH } from "../../../../common/constants/bytes.js";
3
+ import { FOLKS_CHAIN_ID } from "../../../../common/constants/chain.js";
3
4
  import { FINALITY } from "../../../../common/constants/message.js";
4
5
  import { ChainType } from "../../../../common/types/chain.js";
5
6
  import { Action } from "../../../../common/types/message.js";
@@ -8,6 +9,8 @@ import { convertFromGenericAddress, isGenericAddress } from "../../../../common/
8
9
  import { convertBooleanToByte, convertNumberToBytes, getRandomBytes } from "../../../../common/utils/bytes.js";
9
10
  import { isAccountId } from "../../../../common/utils/lending.js";
10
11
  import { exhaustiveCheck } from "../../../../utils/exhaustive-check.js";
12
+ import { ArbitrumNodeInterfaceAbi } from "../constants/abi/arbitrum-node-interface-abi.js";
13
+ import { ARBITRUM_NODE_INTERFACE } from "../constants/address.js";
11
14
  import { getCCIPDataAdapterContract as getCcipDataAdapterContract, getWormholeDataAdapterContract, } from "./contract.js";
12
15
  import { encodeEvmPayloadWithMetadata } from "./gmp.js";
13
16
  import { getBalanceOfStateOverride } from "./tokens.js";
@@ -358,17 +361,24 @@ export function buildEvmMessageToSend(messageToSendBuilderParams, feeParams) {
358
361
  export async function estimateEvmWormholeDataGasLimit(provider, messageBuilderParams, receiverValue, returnGasLimit, sourceWormholeChainId, wormholeRelayer, wormholeDataAdapterAddress, sourceWormholeDataAdapterAddress, stateOverride) {
359
362
  const messageId = getRandomBytes(BYTES32_LENGTH);
360
363
  const wormholeDataAdapter = getWormholeDataAdapterContract(provider, wormholeDataAdapterAddress);
361
- return await wormholeDataAdapter.estimateGas.receiveWormholeMessages([
364
+ const args = [
362
365
  encodeEvmPayloadWithMetadata(messageBuilderParams.adapters.returnAdapterId, returnGasLimit, messageBuilderParams.sender, messageBuilderParams.handler, buildMessagePayload(messageBuilderParams.action, messageBuilderParams.accountId, messageBuilderParams.userAddress, buildEvmMessageData(messageBuilderParams))),
363
366
  [],
364
367
  sourceWormholeDataAdapterAddress,
365
368
  sourceWormholeChainId,
366
369
  messageId,
367
- ], {
370
+ ];
371
+ const gasLimit = await wormholeDataAdapter.estimateGas.receiveWormholeMessages(args, {
368
372
  value: receiverValue,
369
373
  account: wormholeRelayer,
370
374
  stateOverride: [{ address: wormholeRelayer, balance: receiverValue }, ...stateOverride],
371
375
  });
376
+ const gasToSubtract = await getGasToSubtract(provider, messageBuilderParams.destinationChainId, convertFromGenericAddress(wormholeDataAdapterAddress, ChainType.EVM), encodeFunctionData({
377
+ abi: wormholeDataAdapter.abi,
378
+ functionName: "receiveWormholeMessages",
379
+ args,
380
+ }));
381
+ return gasLimit - gasToSubtract;
372
382
  }
373
383
  export async function estimateEvmCcipDataGasLimit(provider, messageBuilderParams, returnGasLimit, sourceCcipChainId, ccipRouter, ccipDataAdapterAddress, sourceCcipDataAdapterAddress) {
374
384
  const messageId = getRandomBytes(BYTES32_LENGTH);
@@ -380,9 +390,15 @@ export async function estimateEvmCcipDataGasLimit(provider, messageBuilderParams
380
390
  destTokenAmounts: [],
381
391
  };
382
392
  const ccipDataAdapter = getCcipDataAdapterContract(provider, ccipDataAdapterAddress);
383
- return await ccipDataAdapter.estimateGas.ccipReceive([ccipMessage], {
393
+ const gasLimit = await ccipDataAdapter.estimateGas.ccipReceive([ccipMessage], {
384
394
  account: ccipRouter,
385
395
  });
396
+ const gasToSubtract = await getGasToSubtract(provider, messageBuilderParams.destinationChainId, convertFromGenericAddress(ccipDataAdapterAddress, ChainType.EVM), encodeFunctionData({
397
+ abi: ccipDataAdapter.abi,
398
+ functionName: "ccipReceive",
399
+ args: [ccipMessage],
400
+ }));
401
+ return gasLimit - gasToSubtract;
386
402
  }
387
403
  export function getSendTokenStateOverride(folksChainId, extraArgs) {
388
404
  const { folksTokenId, amount, address, token } = extraArgs;
@@ -405,4 +421,22 @@ export function getSendTokenStateOverride(folksChainId, extraArgs) {
405
421
  }
406
422
  return [];
407
423
  }
424
+ async function getGasToSubtract(provider, destinationChainId, to, data) {
425
+ switch (destinationChainId) {
426
+ case FOLKS_CHAIN_ID.ARBITRUM:
427
+ case FOLKS_CHAIN_ID.ARBITRUM_SEPOLIA:
428
+ return getArbitrumL1Estimation(provider, to, data);
429
+ default:
430
+ return 0n;
431
+ }
432
+ }
433
+ async function getArbitrumL1Estimation(provider, to, data) {
434
+ const nodeInterfaceContract = getContract({
435
+ abi: ArbitrumNodeInterfaceAbi,
436
+ address: ARBITRUM_NODE_INTERFACE,
437
+ client: provider,
438
+ });
439
+ const { result } = await nodeInterfaceContract.simulate.gasEstimateL1Component([to, false, data]);
440
+ return result[0];
441
+ }
408
442
  //# sourceMappingURL=message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/chains/evm/common/utils/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/chains/evm/common/utils/message.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export const HUB_CHAIN = {
25
25
  [MAINNET_FOLKS_TOKEN_ID.USDC]: {
26
26
  token: {
27
27
  type: TokenType.CROSS_CHAIN,
28
- adapters: [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
28
+ adapters: [AdapterType.HUB, AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
29
29
  address: convertToGenericAddress("0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E", ChainType.EVM),
30
30
  decimals: 6,
31
31
  },
@@ -167,7 +167,7 @@ export const HUB_CHAIN = {
167
167
  [MAINNET_FOLKS_TOKEN_ID.SolvBTC]: {
168
168
  token: {
169
169
  type: TokenType.CROSS_CHAIN,
170
- adapters: [AdapterType.CCIP_TOKEN],
170
+ adapters: [AdapterType.HUB, AdapterType.CCIP_TOKEN],
171
171
  address: convertToGenericAddress("0xbc78D84Ba0c46dFe32cf2895a19939c86b81a777", ChainType.EVM),
172
172
  decimals: 18,
173
173
  },
@@ -208,7 +208,7 @@ export const HUB_CHAIN = {
208
208
  [TESTNET_FOLKS_TOKEN_ID.USDC]: {
209
209
  token: {
210
210
  type: TokenType.CROSS_CHAIN,
211
- adapters: [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
211
+ adapters: [AdapterType.HUB, AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
212
212
  address: convertToGenericAddress("0x5425890298aed601595a70ab815c96711a31bc65", ChainType.EVM),
213
213
  decimals: 6,
214
214
  },
@@ -280,7 +280,7 @@ export const HUB_CHAIN = {
280
280
  [TESTNET_FOLKS_TOKEN_ID.CCIP_BnM]: {
281
281
  token: {
282
282
  type: TokenType.CROSS_CHAIN,
283
- adapters: [AdapterType.CCIP_TOKEN],
283
+ adapters: [AdapterType.HUB, AdapterType.CCIP_TOKEN],
284
284
  address: convertToGenericAddress("0xD21341536c5cF5EB1bcb58f6723cE26e8D8E90e4", ChainType.EVM),
285
285
  decimals: 18,
286
286
  },
@@ -1 +1 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/constants/chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/constants/chain.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,5 @@ import type { NetworkType } from "../../../../common/types/chain.js";
2
2
  import type { OraclePrice, OraclePrices } from "../types/oracle.js";
3
3
  import type { HubTokenData } from "../types/token.js";
4
4
  import type { Client } from "viem";
5
- export declare function getOraclePrice(provider: Client, network: NetworkType, poolId: number): Promise<OraclePrice>;
6
- export declare function getOraclePrices(provider: Client, network: NetworkType, tokens: Array<HubTokenData>): Promise<OraclePrices>;
5
+ export declare function getOraclePrice(provider: Client, network: NetworkType, poolId: number, blockNumber?: bigint): Promise<OraclePrice>;
6
+ export declare function getOraclePrices(provider: Client, network: NetworkType, tokens: Array<HubTokenData>, blockNumber?: bigint): Promise<OraclePrices>;
@@ -1,13 +1,13 @@
1
1
  import { multicall } from "viem/actions";
2
2
  import { getHubChain } from "../utils/chain.js";
3
3
  import { getOracleManagerContract } from "../utils/contract.js";
4
- export async function getOraclePrice(provider, network, poolId) {
4
+ export async function getOraclePrice(provider, network, poolId, blockNumber) {
5
5
  const hubChain = getHubChain(network);
6
6
  const oracleManager = getOracleManagerContract(provider, hubChain.oracleManagerAddress);
7
- const { price, decimals } = await oracleManager.read.processPriceFeed([poolId]);
7
+ const { price, decimals } = await oracleManager.read.processPriceFeed([poolId], { blockNumber });
8
8
  return { price: [price, 18], decimals };
9
9
  }
10
- export async function getOraclePrices(provider, network, tokens) {
10
+ export async function getOraclePrices(provider, network, tokens, blockNumber) {
11
11
  const hubChain = getHubChain(network);
12
12
  const oracleManager = getOracleManagerContract(provider, hubChain.oracleManagerAddress);
13
13
  const processPriceFeeds = tokens.map(({ poolId }) => ({
@@ -19,6 +19,7 @@ export async function getOraclePrices(provider, network, tokens) {
19
19
  const priceFeeds = (await multicall(provider, {
20
20
  contracts: processPriceFeeds,
21
21
  allowFailure: false,
22
+ blockNumber,
22
23
  }));
23
24
  const oraclePrices = {};
24
25
  for (const [i, { price, decimals }] of priceFeeds.entries()) {
@@ -1 +1 @@
1
- {"version":3,"file":"folks-hub-oracle.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAQhE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,OAAoB,EAAE,MAAc;IACzF,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAExF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAChF,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,OAAoB,EACpB,MAA2B;IAE3B,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAExF,MAAM,iBAAiB,GAAsC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvF,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,GAAG,EAAE,aAAa,CAAC,GAAG;QACtB,YAAY,EAAE,kBAAkB;QAChC,IAAI,EAAE,CAAC,MAAM,CAAC;KACf,CAAC,CAAC,CAAC;IAEJ,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS,CAAC,QAAQ,EAAE;QAC5C,SAAS,EAAE,iBAAiB;QAC5B,YAAY,EAAE,KAAK;KACpB,CAAC,CAA+E,CAAC;IAElF,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtE,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"folks-hub-oracle.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAQhE,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAgB,EAChB,OAAoB,EACpB,MAAc,EACd,WAAoB;IAEpB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAExF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IACjG,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,OAAoB,EACpB,MAA2B,EAC3B,WAAoB;IAEpB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAExF,MAAM,iBAAiB,GAAsC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvF,OAAO,EAAE,aAAa,CAAC,OAAO;QAC9B,GAAG,EAAE,aAAa,CAAC,GAAG;QACtB,YAAY,EAAE,kBAAkB;QAChC,IAAI,EAAE,CAAC,MAAM,CAAC;KACf,CAAC,CAAC,CAAC;IAEJ,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS,CAAC,QAAQ,EAAE;QAC5C,SAAS,EAAE,iBAAiB;QAC5B,YAAY,EAAE,KAAK;QACnB,WAAW;KACZ,CAAC,CAA+E,CAAC;IAElF,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtE,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -2,4 +2,4 @@ import type { NetworkType } from "../../../../common/types/chain.js";
2
2
  import type { FolksTokenId } from "../../../../common/types/token.js";
3
3
  import type { PoolInfo } from "../types/pool.js";
4
4
  import type { Client } from "viem";
5
- export declare function getPoolInfo(provider: Client, network: NetworkType, folksTokenId: FolksTokenId): Promise<PoolInfo>;
5
+ export declare function getPoolInfo(provider: Client, network: NetworkType, folksTokenId: FolksTokenId, blockNumber?: bigint): Promise<PoolInfo>;
@@ -3,7 +3,7 @@ import { calcBorrowInterestIndex, calcDepositInterestIndex, calcOverallBorrowInt
3
3
  import { compoundEveryHour, compoundEverySecond } from "../../../../common/utils/math-lib.js";
4
4
  import { getHubTokenData } from "../utils/chain.js";
5
5
  import { getHubPoolContract } from "../utils/contract.js";
6
- export async function getPoolInfo(provider, network, folksTokenId) {
6
+ export async function getPoolInfo(provider, network, folksTokenId, blockNumber) {
7
7
  const { poolAddress, token: { decimals: tokenDecimals }, } = getHubTokenData(folksTokenId, network);
8
8
  const hubPool = getHubPoolContract(provider, poolAddress);
9
9
  // get pool data
@@ -56,6 +56,7 @@ export async function getPoolInfo(provider, network, folksTokenId) {
56
56
  },
57
57
  ],
58
58
  allowFailure: false,
59
+ blockNumber,
59
60
  });
60
61
  const { flashLoanFee, retentionRate, fTokenFeeRecipient, tokenFeeClaimer, totalRetainedAmount: actualRetained, tokenFeeRecipient, } = feeData;
61
62
  const { optimalUtilisationRatio, totalAmount: depositTotalAmount, interestRate: depositInterestRate, interestIndex: oldDepositInterestIndex, } = depositData;
@@ -1 +1 @@
1
- {"version":3,"file":"folks-hub-pool.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"folks-hub-pool.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-pool.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,2 @@
1
1
  import { AdapterType } from "../types/message.js";
2
- export declare const TOKEN_ADAPTERS: readonly [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN];
3
- export declare const DATA_ADAPTERS: readonly [AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA];
4
- export declare const HUB_ADAPTERS: readonly [AdapterType.HUB];
2
+ export declare const DATA_ADAPTERS: readonly [AdapterType.HUB, AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA];
@@ -1,5 +1,3 @@
1
1
  import { AdapterType } from "../types/message.js";
2
- export const TOKEN_ADAPTERS = [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN];
3
- export const DATA_ADAPTERS = [AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA];
4
- export const HUB_ADAPTERS = [AdapterType.HUB];
2
+ export const DATA_ADAPTERS = [AdapterType.HUB, AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA];
5
3
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/common/constants/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,UAAU,CAAU,CAAC;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,SAAS,CAAU,CAAC;AACzF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,GAAG,CAAU,CAAC"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/common/constants/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,SAAS,CAAU,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { AdapterType } from "../types/message.js";
2
2
  import type { MessageAdapterParams } from "../types/adapter.js";
3
- import type { FolksChainId } from "../types/chain.js";
3
+ import type { FolksChainId, NetworkType } from "../types/chain.js";
4
4
  import type { CrossChainTokenType } from "../types/token.js";
5
+ export declare function getSpokeAdapterIds(folksChainId: FolksChainId, network: NetworkType): AdapterType[];
5
6
  export declare function doesAdapterSupportDataMessage(folksChainId: FolksChainId, adapterId: AdapterType): boolean;
6
7
  export declare function assertAdapterSupportsDataMessage(folksChainId: FolksChainId, adapterId: AdapterType): void;
7
8
  export declare function doesAdapterSupportTokenMessage(folksChainId: FolksChainId, adapterId: AdapterType): boolean;
@@ -12,6 +13,6 @@ export declare function assertAdapterSupportsCrossChainToken(folksChainId: Folks
12
13
  export declare function doesAdapterSupportReceiverValue(folksChainId: FolksChainId, adapterId: AdapterType): boolean;
13
14
  export declare function assertAdapterSupportsReceiverValue(folksChainId: FolksChainId, adapterId: AdapterType): void;
14
15
  export declare function getSupportedMessageAdapters(params: MessageAdapterParams): {
15
- adapterIds: AdapterType[] | readonly [AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA] | readonly [AdapterType.HUB];
16
- returnAdapterIds: AdapterType[] | readonly [AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA] | readonly [AdapterType.HUB];
16
+ adapterIds: AdapterType[];
17
+ returnAdapterIds: AdapterType[];
17
18
  };
@@ -1,10 +1,16 @@
1
1
  import { getHubTokenData, isHubChain } from "../../chains/evm/hub/utils/chain.js";
2
+ import { intersect } from "../../utils/array.js";
2
3
  import { exhaustiveCheck } from "../../utils/exhaustive-check.js";
3
4
  import { FolksCore } from "../../xchain/core/folks-core.js";
4
- import { DATA_ADAPTERS, HUB_ADAPTERS } from "../constants/adapter.js";
5
+ import { DATA_ADAPTERS } from "../constants/adapter.js";
5
6
  import { MessageAdapterParamsType } from "../types/adapter.js";
6
7
  import { AdapterType } from "../types/message.js";
7
8
  import { TokenType } from "../types/token.js";
9
+ import { getSpokeChain } from "./chain.js";
10
+ export function getSpokeAdapterIds(folksChainId, network) {
11
+ const spokeChain = getSpokeChain(folksChainId, network);
12
+ return Object.keys(spokeChain.adapters).map(parseInt);
13
+ }
8
14
  export function doesAdapterSupportDataMessage(folksChainId, adapterId) {
9
15
  const isHub = isHubChain(folksChainId, FolksCore.getSelectedNetwork());
10
16
  return ((isHub && adapterId === AdapterType.HUB) ||
@@ -50,35 +56,37 @@ function getSendTokenAdapterIds(folksTokenId, network) {
50
56
  return hubTokenData.token.adapters;
51
57
  return DATA_ADAPTERS;
52
58
  }
53
- function getAdapterIds(messageAdapterParams) {
54
- const { sourceFolksChainId, network, messageAdapterParamType } = messageAdapterParams;
55
- if (isHubChain(sourceFolksChainId, network))
56
- return HUB_ADAPTERS;
57
- if (messageAdapterParamType == MessageAdapterParamsType.SendToken)
59
+ function getMessageAdapterIds(messageAdapterParams) {
60
+ const { network, messageAdapterParamType } = messageAdapterParams;
61
+ if (messageAdapterParamType === MessageAdapterParamsType.SendToken)
58
62
  return getSendTokenAdapterIds(messageAdapterParams.folksTokenId, network);
59
63
  return DATA_ADAPTERS;
60
64
  }
61
- function getReturnAdapterIds({ folksTokenId, destFolksChainId, network }) {
62
- if (isHubChain(destFolksChainId, network))
63
- return HUB_ADAPTERS;
65
+ function getReturnMessageAdapterIds({ folksTokenId, network }) {
64
66
  return getSendTokenAdapterIds(folksTokenId, network);
65
67
  }
66
68
  export function getSupportedMessageAdapters(params) {
67
- const { messageAdapterParamType } = params;
69
+ const { messageAdapterParamType, sourceFolksChainId, network } = params;
70
+ const spokeAdapterIds = getSpokeAdapterIds(sourceFolksChainId, network);
71
+ const supportedAdapterIds = getMessageAdapterIds(params).filter(intersect(spokeAdapterIds));
68
72
  switch (messageAdapterParamType) {
69
- case MessageAdapterParamsType.SendToken:
73
+ case MessageAdapterParamsType.SendToken: {
70
74
  return {
71
- adapterIds: getAdapterIds(params),
72
- returnAdapterIds: getAdapterIds(params),
75
+ adapterIds: supportedAdapterIds,
76
+ returnAdapterIds: supportedAdapterIds,
73
77
  };
74
- case MessageAdapterParamsType.ReceiveToken:
78
+ }
79
+ case MessageAdapterParamsType.ReceiveToken: {
80
+ const destSpokeAdapterIds = getSpokeAdapterIds(params.destFolksChainId, network);
81
+ const supportedReturnAdapterIds = getReturnMessageAdapterIds(params).filter(intersect(destSpokeAdapterIds));
75
82
  return {
76
- adapterIds: getAdapterIds(params),
77
- returnAdapterIds: getReturnAdapterIds(params),
83
+ adapterIds: supportedAdapterIds,
84
+ returnAdapterIds: supportedReturnAdapterIds,
78
85
  };
86
+ }
79
87
  case MessageAdapterParamsType.Data:
80
88
  return {
81
- adapterIds: getAdapterIds(params),
89
+ adapterIds: supportedAdapterIds,
82
90
  returnAdapterIds: [AdapterType.HUB],
83
91
  };
84
92
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/common/utils/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/common/utils/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const intersect: <T>(arr: Array<T>) => (x: T) => boolean;
@@ -0,0 +1,2 @@
1
+ export const intersect = (arr) => (x) => arr.includes(x);
2
+ //# sourceMappingURL=array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../../src/utils/array.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GACpB,CAAI,GAAa,EAAE,EAAE,CACrB,CAAC,CAAI,EAAE,EAAE,CACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { OraclePrice, OraclePrices } from "../../chains/evm/hub/types/oracle.js";
2
2
  import type { FolksTokenId } from "../../common/types/token.js";
3
3
  export declare const read: {
4
- oraclePrice(folksTokenId: FolksTokenId): Promise<OraclePrice>;
5
- oraclePrices(folksTokenIds?: Array<FolksTokenId>): Promise<OraclePrices>;
4
+ oraclePrice(folksTokenId: FolksTokenId, blockNumber?: bigint): Promise<OraclePrice>;
5
+ oraclePrices(folksTokenIds?: Array<FolksTokenId>, blockNumber?: bigint): Promise<OraclePrices>;
6
6
  };
@@ -2,17 +2,17 @@ import { FolksHubOracle } from "../../chains/evm/hub/modules/index.js";
2
2
  import { getHubTokenData, getHubTokensData } from "../../chains/evm/hub/utils/chain.js";
3
3
  import { FolksCore } from "../core/folks-core.js";
4
4
  export const read = {
5
- async oraclePrice(folksTokenId) {
5
+ async oraclePrice(folksTokenId, blockNumber) {
6
6
  const network = FolksCore.getSelectedNetwork();
7
7
  const { poolId } = getHubTokenData(folksTokenId, network);
8
- return await FolksHubOracle.getOraclePrice(FolksCore.getHubProvider(), network, poolId);
8
+ return await FolksHubOracle.getOraclePrice(FolksCore.getHubProvider(), network, poolId, blockNumber);
9
9
  },
10
- async oraclePrices(folksTokenIds) {
10
+ async oraclePrices(folksTokenIds, blockNumber) {
11
11
  const network = FolksCore.getSelectedNetwork();
12
12
  const tokensData = folksTokenIds
13
13
  ? folksTokenIds.map((folksTokenId) => getHubTokenData(folksTokenId, network))
14
14
  : Object.values(getHubTokensData(network));
15
- return FolksHubOracle.getOraclePrices(FolksCore.getHubProvider(), network, tokensData);
15
+ return FolksHubOracle.getOraclePrices(FolksCore.getHubProvider(), network, tokensData, blockNumber);
16
16
  },
17
17
  };
18
18
  //# sourceMappingURL=folks-oracle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"folks-oracle.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAKlD,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,KAAK,CAAC,WAAW,CAAC,YAA0B;QAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAE/C,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAE1D,OAAO,MAAM,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,aAAmC;QACpD,MAAM,OAAO,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAE/C,MAAM,UAAU,GAAG,aAAa;YAC9B,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC7E,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE7C,OAAO,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACzF,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"folks-oracle.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAKlD,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,KAAK,CAAC,WAAW,CAAC,YAA0B,EAAE,WAAoB;QAChE,MAAM,OAAO,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAE/C,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAE1D,OAAO,MAAM,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACvG,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,aAAmC,EAAE,WAAoB;QAC1E,MAAM,OAAO,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAE/C,MAAM,UAAU,GAAG,aAAa;YAC9B,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC7E,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE7C,OAAO,cAAc,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACtG,CAAC;CACF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { PoolInfo } from "../../chains/evm/hub/types/pool.js";
2
2
  import type { FolksTokenId } from "../../common/types/token.js";
3
3
  export declare const read: {
4
- poolInfo(folksTokenId: FolksTokenId): Promise<PoolInfo>;
4
+ poolInfo(folksTokenId: FolksTokenId, blockNumber?: bigint): Promise<PoolInfo>;
5
5
  };
@@ -1,8 +1,8 @@
1
1
  import { FolksHubPool } from "../../chains/evm/hub/modules/index.js";
2
2
  import { FolksCore } from "../core/folks-core.js";
3
3
  export const read = {
4
- async poolInfo(folksTokenId) {
5
- return FolksHubPool.getPoolInfo(FolksCore.getHubProvider(), FolksCore.getSelectedNetwork(), folksTokenId);
4
+ async poolInfo(folksTokenId, blockNumber) {
5
+ return FolksHubPool.getPoolInfo(FolksCore.getHubProvider(), FolksCore.getSelectedNetwork(), folksTokenId, blockNumber);
6
6
  },
7
7
  };
8
8
  //# sourceMappingURL=folks-pool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"folks-pool.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAKlD,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,KAAK,CAAC,QAAQ,CAAC,YAA0B;QACvC,OAAO,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,CAAC,kBAAkB,EAAE,EAAE,YAAY,CAAC,CAAC;IAC5G,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"folks-pool.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAKlD,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,KAAK,CAAC,QAAQ,CAAC,YAA0B,EAAE,WAAoB;QAC7D,OAAO,YAAY,CAAC,WAAW,CAC7B,SAAS,CAAC,cAAc,EAAE,EAC1B,SAAS,CAAC,kBAAkB,EAAE,EAC9B,YAAY,EACZ,WAAW,CACZ,CAAC;IACJ,CAAC;CACF,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@folks-finance/xchain-sdk",
3
3
  "description": "The official JavaScript SDK for the Folks Finance Cross-Chain Lending Protocol",
4
- "version": "0.0.52",
4
+ "version": "0.0.54",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -0,0 +1,17 @@
1
+ export const ArbitrumNodeInterfaceAbi = [
2
+ {
3
+ name: "gasEstimateL1Component",
4
+ type: "function",
5
+ inputs: [
6
+ { name: "to", type: "address" },
7
+ { name: "contractCreation", type: "bool" },
8
+ { name: "data", type: "bytes" },
9
+ ],
10
+ outputs: [
11
+ { name: "gasEstimateForL1", type: "uint64" },
12
+ { name: "baseFee", type: "uint256" },
13
+ { name: "l1BaseFeeEstimate", type: "uint256" },
14
+ ],
15
+ stateMutability: "payable",
16
+ },
17
+ ] as const;
@@ -0,0 +1 @@
1
+ export const ARBITRUM_NODE_INTERFACE = "0x00000000000000000000000000000000000000C8";
@@ -1,6 +1,7 @@
1
- import { concat, isHex } from "viem";
1
+ import { concat, encodeFunctionData, getContract, isHex } from "viem";
2
2
 
3
3
  import { BYTES32_LENGTH, UINT16_LENGTH, UINT256_LENGTH, UINT8_LENGTH } from "../../../../common/constants/bytes.js";
4
+ import { FOLKS_CHAIN_ID } from "../../../../common/constants/chain.js";
4
5
  import { FINALITY } from "../../../../common/constants/message.js";
5
6
  import { ChainType } from "../../../../common/types/chain.js";
6
7
  import { Action } from "../../../../common/types/message.js";
@@ -9,6 +10,8 @@ import { convertFromGenericAddress, isGenericAddress } from "../../../../common/
9
10
  import { convertBooleanToByte, convertNumberToBytes, getRandomBytes } from "../../../../common/utils/bytes.js";
10
11
  import { isAccountId } from "../../../../common/utils/lending.js";
11
12
  import { exhaustiveCheck } from "../../../../utils/exhaustive-check.js";
13
+ import { ArbitrumNodeInterfaceAbi } from "../constants/abi/arbitrum-node-interface-abi.js";
14
+ import { ARBITRUM_NODE_INTERFACE } from "../constants/address.js";
12
15
 
13
16
  import {
14
17
  getCCIPDataAdapterContract as getCcipDataAdapterContract,
@@ -31,7 +34,7 @@ import type {
31
34
  } from "../../../../common/types/message.js";
32
35
  import type { FolksHubTokenType, FolksSpokeTokenType } from "../../../../common/types/token.js";
33
36
  import type { CCIPAny2EvmMessage } from "../types/gmp.js";
34
- import type { Client, Hex, StateOverride } from "viem";
37
+ import type { Client, Hex, ContractFunctionArgs, StateOverride } from "viem";
35
38
 
36
39
  export const buildMessageParams = ({
37
40
  adapters,
@@ -416,31 +419,44 @@ export async function estimateEvmWormholeDataGasLimit(
416
419
  ) {
417
420
  const messageId = getRandomBytes(BYTES32_LENGTH);
418
421
  const wormholeDataAdapter = getWormholeDataAdapterContract(provider, wormholeDataAdapterAddress);
419
- return await wormholeDataAdapter.estimateGas.receiveWormholeMessages(
420
- [
421
- encodeEvmPayloadWithMetadata(
422
- messageBuilderParams.adapters.returnAdapterId,
423
- returnGasLimit,
424
- messageBuilderParams.sender,
425
- messageBuilderParams.handler,
426
- buildMessagePayload(
427
- messageBuilderParams.action,
428
- messageBuilderParams.accountId,
429
- messageBuilderParams.userAddress,
430
- buildEvmMessageData(messageBuilderParams),
431
- ),
422
+
423
+ const args: ContractFunctionArgs<typeof wormholeDataAdapter.abi, "payable", "receiveWormholeMessages"> = [
424
+ encodeEvmPayloadWithMetadata(
425
+ messageBuilderParams.adapters.returnAdapterId,
426
+ returnGasLimit,
427
+ messageBuilderParams.sender,
428
+ messageBuilderParams.handler,
429
+ buildMessagePayload(
430
+ messageBuilderParams.action,
431
+ messageBuilderParams.accountId,
432
+ messageBuilderParams.userAddress,
433
+ buildEvmMessageData(messageBuilderParams),
432
434
  ),
433
- [],
434
- sourceWormholeDataAdapterAddress,
435
- sourceWormholeChainId,
436
- messageId,
437
- ],
438
- {
439
- value: receiverValue,
440
- account: wormholeRelayer,
441
- stateOverride: [{ address: wormholeRelayer, balance: receiverValue }, ...stateOverride],
442
- },
435
+ ),
436
+ [],
437
+ sourceWormholeDataAdapterAddress,
438
+ sourceWormholeChainId,
439
+ messageId,
440
+ ] as const;
441
+
442
+ const gasLimit = await wormholeDataAdapter.estimateGas.receiveWormholeMessages(args, {
443
+ value: receiverValue,
444
+ account: wormholeRelayer,
445
+ stateOverride: [{ address: wormholeRelayer, balance: receiverValue }, ...stateOverride],
446
+ });
447
+
448
+ const gasToSubtract = await getGasToSubtract(
449
+ provider,
450
+ messageBuilderParams.destinationChainId,
451
+ convertFromGenericAddress(wormholeDataAdapterAddress, ChainType.EVM),
452
+ encodeFunctionData({
453
+ abi: wormholeDataAdapter.abi,
454
+ functionName: "receiveWormholeMessages",
455
+ args,
456
+ }),
443
457
  );
458
+
459
+ return gasLimit - gasToSubtract;
444
460
  }
445
461
 
446
462
  export async function estimateEvmCcipDataGasLimit(
@@ -471,12 +487,25 @@ export async function estimateEvmCcipDataGasLimit(
471
487
  ),
472
488
  ),
473
489
  destTokenAmounts: [],
474
- };
490
+ } as const;
475
491
 
476
492
  const ccipDataAdapter = getCcipDataAdapterContract(provider, ccipDataAdapterAddress);
477
- return await ccipDataAdapter.estimateGas.ccipReceive([ccipMessage], {
493
+ const gasLimit = await ccipDataAdapter.estimateGas.ccipReceive([ccipMessage], {
478
494
  account: ccipRouter,
479
495
  });
496
+
497
+ const gasToSubtract = await getGasToSubtract(
498
+ provider,
499
+ messageBuilderParams.destinationChainId,
500
+ convertFromGenericAddress(ccipDataAdapterAddress, ChainType.EVM),
501
+ encodeFunctionData({
502
+ abi: ccipDataAdapter.abi,
503
+ functionName: "ccipReceive",
504
+ args: [ccipMessage],
505
+ }),
506
+ );
507
+
508
+ return gasLimit - gasToSubtract;
480
509
  }
481
510
 
482
511
  export function getSendTokenStateOverride(folksChainId: FolksChainId, extraArgs: OverrideTokenData) {
@@ -500,3 +529,29 @@ export function getSendTokenStateOverride(folksChainId: FolksChainId, extraArgs:
500
529
  }
501
530
  return [];
502
531
  }
532
+
533
+ async function getGasToSubtract(
534
+ provider: Client,
535
+ destinationChainId: FolksChainId,
536
+ to: EvmAddress,
537
+ data: Hex,
538
+ ): Promise<bigint> {
539
+ switch (destinationChainId) {
540
+ case FOLKS_CHAIN_ID.ARBITRUM:
541
+ case FOLKS_CHAIN_ID.ARBITRUM_SEPOLIA:
542
+ return getArbitrumL1Estimation(provider, to, data);
543
+ default:
544
+ return 0n;
545
+ }
546
+ }
547
+
548
+ async function getArbitrumL1Estimation(provider: Client, to: EvmAddress, data: Hex): Promise<bigint> {
549
+ const nodeInterfaceContract = getContract({
550
+ abi: ArbitrumNodeInterfaceAbi,
551
+ address: ARBITRUM_NODE_INTERFACE,
552
+ client: provider,
553
+ });
554
+
555
+ const { result } = await nodeInterfaceContract.simulate.gasEstimateL1Component([to, false, data]);
556
+ return result[0];
557
+ }
@@ -61,7 +61,7 @@ export const HUB_CHAIN: Record<NetworkType, HubChain> = {
61
61
  [MAINNET_FOLKS_TOKEN_ID.USDC]: {
62
62
  token: {
63
63
  type: TokenType.CROSS_CHAIN,
64
- adapters: [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
64
+ adapters: [AdapterType.HUB, AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
65
65
  address: convertToGenericAddress("0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E" as EvmAddress, ChainType.EVM),
66
66
  decimals: 6,
67
67
  },
@@ -203,7 +203,7 @@ export const HUB_CHAIN: Record<NetworkType, HubChain> = {
203
203
  [MAINNET_FOLKS_TOKEN_ID.SolvBTC]: {
204
204
  token: {
205
205
  type: TokenType.CROSS_CHAIN,
206
- adapters: [AdapterType.CCIP_TOKEN],
206
+ adapters: [AdapterType.HUB, AdapterType.CCIP_TOKEN],
207
207
  address: convertToGenericAddress("0xbc78D84Ba0c46dFe32cf2895a19939c86b81a777" as EvmAddress, ChainType.EVM),
208
208
  decimals: 18,
209
209
  },
@@ -277,7 +277,7 @@ export const HUB_CHAIN: Record<NetworkType, HubChain> = {
277
277
  [TESTNET_FOLKS_TOKEN_ID.USDC]: {
278
278
  token: {
279
279
  type: TokenType.CROSS_CHAIN,
280
- adapters: [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
280
+ adapters: [AdapterType.HUB, AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN],
281
281
  address: convertToGenericAddress("0x5425890298aed601595a70ab815c96711a31bc65" as EvmAddress, ChainType.EVM),
282
282
  decimals: 6,
283
283
  },
@@ -349,7 +349,7 @@ export const HUB_CHAIN: Record<NetworkType, HubChain> = {
349
349
  [TESTNET_FOLKS_TOKEN_ID.CCIP_BnM]: {
350
350
  token: {
351
351
  type: TokenType.CROSS_CHAIN,
352
- adapters: [AdapterType.CCIP_TOKEN],
352
+ adapters: [AdapterType.HUB, AdapterType.CCIP_TOKEN],
353
353
  address: convertToGenericAddress("0xD21341536c5cF5EB1bcb58f6723cE26e8D8E90e4" as EvmAddress, ChainType.EVM),
354
354
  decimals: 18,
355
355
  },
@@ -9,12 +9,17 @@ import type { OraclePrice, OraclePrices } from "../types/oracle.js";
9
9
  import type { HubTokenData } from "../types/token.js";
10
10
  import type { Client, ContractFunctionParameters, ReadContractReturnType } from "viem";
11
11
 
12
- export async function getOraclePrice(provider: Client, network: NetworkType, poolId: number): Promise<OraclePrice> {
12
+ export async function getOraclePrice(
13
+ provider: Client,
14
+ network: NetworkType,
15
+ poolId: number,
16
+ blockNumber?: bigint,
17
+ ): Promise<OraclePrice> {
13
18
  const hubChain = getHubChain(network);
14
19
 
15
20
  const oracleManager = getOracleManagerContract(provider, hubChain.oracleManagerAddress);
16
21
 
17
- const { price, decimals } = await oracleManager.read.processPriceFeed([poolId]);
22
+ const { price, decimals } = await oracleManager.read.processPriceFeed([poolId], { blockNumber });
18
23
  return { price: [price, 18], decimals };
19
24
  }
20
25
 
@@ -22,6 +27,7 @@ export async function getOraclePrices(
22
27
  provider: Client,
23
28
  network: NetworkType,
24
29
  tokens: Array<HubTokenData>,
30
+ blockNumber?: bigint,
25
31
  ): Promise<OraclePrices> {
26
32
  const hubChain = getHubChain(network);
27
33
  const oracleManager = getOracleManagerContract(provider, hubChain.oracleManagerAddress);
@@ -36,6 +42,7 @@ export async function getOraclePrices(
36
42
  const priceFeeds = (await multicall(provider, {
37
43
  contracts: processPriceFeeds,
38
44
  allowFailure: false,
45
+ blockNumber,
39
46
  })) as Array<ReadContractReturnType<typeof OracleManagerAbi, "processPriceFeed">>;
40
47
 
41
48
  const oraclePrices: OraclePrices = {};
@@ -20,6 +20,7 @@ export async function getPoolInfo(
20
20
  provider: Client,
21
21
  network: NetworkType,
22
22
  folksTokenId: FolksTokenId,
23
+ blockNumber?: bigint,
23
24
  ): Promise<PoolInfo> {
24
25
  const {
25
26
  poolAddress,
@@ -87,6 +88,7 @@ export async function getPoolInfo(
87
88
  },
88
89
  ],
89
90
  allowFailure: false,
91
+ blockNumber,
90
92
  });
91
93
 
92
94
  const {
@@ -1,5 +1,3 @@
1
1
  import { AdapterType } from "../types/message.js";
2
2
 
3
- export const TOKEN_ADAPTERS = [AdapterType.WORMHOLE_CCTP, AdapterType.CCIP_TOKEN] as const;
4
- export const DATA_ADAPTERS = [AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA] as const;
5
- export const HUB_ADAPTERS = [AdapterType.HUB] as const;
3
+ export const DATA_ADAPTERS = [AdapterType.HUB, AdapterType.WORMHOLE_DATA, AdapterType.CCIP_DATA] as const;
@@ -1,15 +1,23 @@
1
1
  import { getHubTokenData, isHubChain } from "../../chains/evm/hub/utils/chain.js";
2
+ import { intersect } from "../../utils/array.js";
2
3
  import { exhaustiveCheck } from "../../utils/exhaustive-check.js";
3
4
  import { FolksCore } from "../../xchain/core/folks-core.js";
4
- import { DATA_ADAPTERS, HUB_ADAPTERS } from "../constants/adapter.js";
5
+ import { DATA_ADAPTERS } from "../constants/adapter.js";
5
6
  import { MessageAdapterParamsType } from "../types/adapter.js";
6
7
  import { AdapterType } from "../types/message.js";
7
8
  import { TokenType } from "../types/token.js";
8
9
 
10
+ import { getSpokeChain } from "./chain.js";
11
+
9
12
  import type { MessageAdapterParams, ReceiveTokenMessageAdapterParams } from "../types/adapter.js";
10
13
  import type { FolksChainId, NetworkType } from "../types/chain.js";
11
14
  import type { CrossChainTokenType, FolksTokenId } from "../types/token.js";
12
15
 
16
+ export function getSpokeAdapterIds(folksChainId: FolksChainId, network: NetworkType) {
17
+ const spokeChain = getSpokeChain(folksChainId, network);
18
+ return Object.keys(spokeChain.adapters).map<AdapterType>(parseInt);
19
+ }
20
+
13
21
  export function doesAdapterSupportDataMessage(folksChainId: FolksChainId, adapterId: AdapterType): boolean {
14
22
  const isHub = isHubChain(folksChainId, FolksCore.getSelectedNetwork());
15
23
  return (
@@ -82,36 +90,40 @@ function getSendTokenAdapterIds(folksTokenId: FolksTokenId, network: NetworkType
82
90
  return DATA_ADAPTERS;
83
91
  }
84
92
 
85
- function getAdapterIds(messageAdapterParams: MessageAdapterParams) {
86
- const { sourceFolksChainId, network, messageAdapterParamType } = messageAdapterParams;
87
- if (isHubChain(sourceFolksChainId, network)) return HUB_ADAPTERS;
88
- if (messageAdapterParamType == MessageAdapterParamsType.SendToken)
93
+ function getMessageAdapterIds(messageAdapterParams: MessageAdapterParams) {
94
+ const { network, messageAdapterParamType } = messageAdapterParams;
95
+ if (messageAdapterParamType === MessageAdapterParamsType.SendToken)
89
96
  return getSendTokenAdapterIds(messageAdapterParams.folksTokenId, network);
90
97
  return DATA_ADAPTERS;
91
98
  }
92
99
 
93
- function getReturnAdapterIds({ folksTokenId, destFolksChainId, network }: ReceiveTokenMessageAdapterParams) {
94
- if (isHubChain(destFolksChainId, network)) return HUB_ADAPTERS;
100
+ function getReturnMessageAdapterIds({ folksTokenId, network }: ReceiveTokenMessageAdapterParams) {
95
101
  return getSendTokenAdapterIds(folksTokenId, network);
96
102
  }
97
103
 
98
104
  export function getSupportedMessageAdapters(params: MessageAdapterParams) {
99
- const { messageAdapterParamType } = params;
105
+ const { messageAdapterParamType, sourceFolksChainId, network } = params;
106
+ const spokeAdapterIds = getSpokeAdapterIds(sourceFolksChainId, network);
107
+ const supportedAdapterIds = getMessageAdapterIds(params).filter(intersect(spokeAdapterIds));
100
108
 
101
109
  switch (messageAdapterParamType) {
102
- case MessageAdapterParamsType.SendToken:
110
+ case MessageAdapterParamsType.SendToken: {
103
111
  return {
104
- adapterIds: getAdapterIds(params),
105
- returnAdapterIds: getAdapterIds(params),
112
+ adapterIds: supportedAdapterIds,
113
+ returnAdapterIds: supportedAdapterIds,
106
114
  };
107
- case MessageAdapterParamsType.ReceiveToken:
115
+ }
116
+ case MessageAdapterParamsType.ReceiveToken: {
117
+ const destSpokeAdapterIds = getSpokeAdapterIds(params.destFolksChainId, network);
118
+ const supportedReturnAdapterIds = getReturnMessageAdapterIds(params).filter(intersect(destSpokeAdapterIds));
108
119
  return {
109
- adapterIds: getAdapterIds(params),
110
- returnAdapterIds: getReturnAdapterIds(params),
120
+ adapterIds: supportedAdapterIds,
121
+ returnAdapterIds: supportedReturnAdapterIds,
111
122
  };
123
+ }
112
124
  case MessageAdapterParamsType.Data:
113
125
  return {
114
- adapterIds: getAdapterIds(params),
126
+ adapterIds: supportedAdapterIds,
115
127
  returnAdapterIds: [AdapterType.HUB],
116
128
  };
117
129
  default:
@@ -0,0 +1,4 @@
1
+ export const intersect =
2
+ <T>(arr: Array<T>) =>
3
+ (x: T) =>
4
+ arr.includes(x);
@@ -6,21 +6,21 @@ import type { OraclePrice, OraclePrices } from "../../chains/evm/hub/types/oracl
6
6
  import type { FolksTokenId } from "../../common/types/token.js";
7
7
 
8
8
  export const read = {
9
- async oraclePrice(folksTokenId: FolksTokenId): Promise<OraclePrice> {
9
+ async oraclePrice(folksTokenId: FolksTokenId, blockNumber?: bigint): Promise<OraclePrice> {
10
10
  const network = FolksCore.getSelectedNetwork();
11
11
 
12
12
  const { poolId } = getHubTokenData(folksTokenId, network);
13
13
 
14
- return await FolksHubOracle.getOraclePrice(FolksCore.getHubProvider(), network, poolId);
14
+ return await FolksHubOracle.getOraclePrice(FolksCore.getHubProvider(), network, poolId, blockNumber);
15
15
  },
16
16
 
17
- async oraclePrices(folksTokenIds?: Array<FolksTokenId>): Promise<OraclePrices> {
17
+ async oraclePrices(folksTokenIds?: Array<FolksTokenId>, blockNumber?: bigint): Promise<OraclePrices> {
18
18
  const network = FolksCore.getSelectedNetwork();
19
19
 
20
20
  const tokensData = folksTokenIds
21
21
  ? folksTokenIds.map((folksTokenId) => getHubTokenData(folksTokenId, network))
22
22
  : Object.values(getHubTokensData(network));
23
23
 
24
- return FolksHubOracle.getOraclePrices(FolksCore.getHubProvider(), network, tokensData);
24
+ return FolksHubOracle.getOraclePrices(FolksCore.getHubProvider(), network, tokensData, blockNumber);
25
25
  },
26
26
  };
@@ -5,7 +5,12 @@ import type { PoolInfo } from "../../chains/evm/hub/types/pool.js";
5
5
  import type { FolksTokenId } from "../../common/types/token.js";
6
6
 
7
7
  export const read = {
8
- async poolInfo(folksTokenId: FolksTokenId): Promise<PoolInfo> {
9
- return FolksHubPool.getPoolInfo(FolksCore.getHubProvider(), FolksCore.getSelectedNetwork(), folksTokenId);
8
+ async poolInfo(folksTokenId: FolksTokenId, blockNumber?: bigint): Promise<PoolInfo> {
9
+ return FolksHubPool.getPoolInfo(
10
+ FolksCore.getHubProvider(),
11
+ FolksCore.getSelectedNetwork(),
12
+ folksTokenId,
13
+ blockNumber,
14
+ );
10
15
  },
11
16
  };