@across-protocol/sdk 4.1.63 → 4.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/arch/evm/BlockUtils.d.ts +15 -0
- package/dist/cjs/arch/evm/BlockUtils.js +218 -0
- package/dist/cjs/arch/evm/BlockUtils.js.map +1 -0
- package/dist/cjs/arch/evm/SpokeUtils.d.ts +1 -1
- package/dist/cjs/arch/evm/SpokeUtils.js +6 -5
- package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
- package/dist/cjs/arch/evm/index.d.ts +1 -0
- package/dist/cjs/arch/evm/index.js +1 -0
- package/dist/cjs/arch/evm/index.js.map +1 -1
- package/dist/cjs/arch/svm/SpokeUtils.d.ts +20 -0
- package/dist/cjs/arch/svm/SpokeUtils.js +449 -0
- package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -0
- package/dist/cjs/arch/svm/constants.d.ts +2 -0
- package/dist/cjs/arch/svm/constants.js +7 -0
- package/dist/cjs/arch/svm/constants.js.map +1 -0
- package/dist/cjs/arch/svm/eventsClient.d.ts +26 -0
- package/dist/cjs/arch/svm/eventsClient.js +253 -0
- package/dist/cjs/arch/svm/eventsClient.js.map +1 -0
- package/dist/cjs/arch/svm/index.d.ts +5 -1
- package/dist/cjs/arch/svm/index.js +6 -2
- package/dist/cjs/arch/svm/index.js.map +1 -1
- package/dist/cjs/{svm → arch/svm}/types.d.ts +9 -4
- package/dist/cjs/arch/svm/types.js.map +1 -0
- package/dist/cjs/arch/svm/utils.d.ts +18 -0
- package/dist/cjs/arch/svm/utils.js +212 -0
- package/dist/cjs/arch/svm/utils.js.map +1 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/BaseAbstractClient.d.ts +6 -5
- package/dist/cjs/clients/BaseAbstractClient.js +30 -19
- package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +15 -11
- package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
- package/dist/cjs/clients/HubPoolClient.d.ts +4 -3
- package/dist/cjs/clients/HubPoolClient.js +18 -17
- package/dist/cjs/clients/HubPoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
- package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +23 -0
- package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +172 -0
- package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +5 -5
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +54 -57
- package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient/index.d.ts +3 -0
- package/dist/cjs/clients/SpokePoolClient/index.js +8 -1
- package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
- package/dist/cjs/clients/index.d.ts +1 -1
- package/dist/cjs/clients/index.js +2 -1
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +1 -1
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js +2 -2
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockHubPoolClient.js +2 -2
- package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +7 -4
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.d.ts +33 -0
- package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +184 -0
- package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -0
- package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.d.ts +30 -0
- package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +90 -0
- package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -0
- package/dist/cjs/clients/mocks/index.d.ts +2 -0
- package/dist/cjs/clients/mocks/index.js +2 -0
- package/dist/cjs/clients/mocks/index.js.map +1 -1
- package/dist/cjs/coingecko/Coingecko.d.ts +3 -2
- package/dist/cjs/coingecko/Coingecko.js +11 -3
- package/dist/cjs/coingecko/Coingecko.js.map +1 -1
- package/dist/cjs/constants.d.ts +1 -0
- package/dist/cjs/constants.js +2 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -4
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +3 -2
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -3
- package/dist/cjs/gasPriceOracle/adapters/solana.d.ts +4 -0
- package/dist/cjs/gasPriceOracle/adapters/solana.js +43 -0
- package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -0
- package/dist/cjs/gasPriceOracle/index.d.ts +1 -1
- package/dist/cjs/gasPriceOracle/oracle.d.ts +4 -3
- package/dist/cjs/gasPriceOracle/oracle.js +16 -9
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
- package/dist/cjs/gasPriceOracle/types.d.ts +6 -1
- package/dist/cjs/index.d.ts +0 -1
- package/dist/cjs/index.js +1 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces/SpokePool.d.ts +13 -0
- package/dist/cjs/interfaces/SpokePool.js.map +1 -1
- package/dist/cjs/providers/index.d.ts +1 -1
- package/dist/cjs/providers/index.js +1 -2
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.d.ts +5 -0
- package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js +21 -0
- package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -0
- package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +5 -0
- package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js +20 -0
- package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -0
- package/dist/cjs/providers/mocks/MockSolanaRpcFactory.d.ts +13 -0
- package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js +76 -0
- package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js.map +1 -0
- package/dist/cjs/providers/mocks/index.d.ts +4 -0
- package/dist/cjs/providers/mocks/index.js +8 -0
- package/dist/cjs/providers/mocks/index.js.map +1 -0
- package/dist/cjs/providers/{mockProvider.js → mocks/mockEthersProvider.js} +2 -2
- package/dist/cjs/providers/mocks/mockEthersProvider.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +10 -8
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +8 -2
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js +1 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +37 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +171 -0
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +2 -0
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +9 -3
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/utils/AddressUtils.d.ts +9 -3
- package/dist/cjs/utils/AddressUtils.js +36 -6
- package/dist/cjs/utils/AddressUtils.js.map +1 -1
- package/dist/cjs/utils/ArrayUtils.d.ts +1 -0
- package/dist/cjs/utils/ArrayUtils.js +6 -1
- package/dist/cjs/utils/ArrayUtils.js.map +1 -1
- package/dist/cjs/utils/BlockFinder.d.ts +22 -0
- package/dist/cjs/utils/BlockFinder.js +10 -0
- package/dist/cjs/utils/BlockFinder.js.map +1 -0
- package/dist/cjs/utils/BlockUtils.d.ts +2 -27
- package/dist/cjs/utils/BlockUtils.js +2 -208
- package/dist/cjs/utils/BlockUtils.js.map +1 -1
- package/dist/cjs/utils/EventUtils.d.ts +4 -4
- package/dist/cjs/utils/EventUtils.js +7 -4
- package/dist/cjs/utils/EventUtils.js.map +1 -1
- package/dist/cjs/utils/JSONUtils.js +3 -0
- package/dist/cjs/utils/JSONUtils.js.map +1 -1
- package/dist/cjs/utils/NumberUtils.d.ts +1 -0
- package/dist/cjs/utils/NumberUtils.js +7 -1
- package/dist/cjs/utils/NumberUtils.js.map +1 -1
- package/dist/cjs/utils/SpokeUtils.js +5 -0
- package/dist/cjs/utils/SpokeUtils.js.map +1 -1
- package/dist/cjs/utils/TokenUtils.js +4 -1
- package/dist/cjs/utils/TokenUtils.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.js +1 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/esm/arch/evm/BlockUtils.d.ts +24 -0
- package/dist/esm/arch/evm/BlockUtils.js +250 -0
- package/dist/esm/arch/evm/BlockUtils.js.map +1 -0
- package/dist/esm/arch/evm/SpokeUtils.d.ts +1 -1
- package/dist/esm/arch/evm/SpokeUtils.js +6 -5
- package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
- package/dist/esm/arch/evm/index.d.ts +1 -0
- package/dist/esm/arch/evm/index.js +1 -0
- package/dist/esm/arch/evm/index.js.map +1 -1
- package/dist/esm/arch/svm/SpokeUtils.d.ts +122 -0
- package/dist/esm/arch/svm/SpokeUtils.js +566 -0
- package/dist/esm/arch/svm/SpokeUtils.js.map +1 -0
- package/dist/esm/arch/svm/constants.d.ts +2 -0
- package/dist/esm/arch/svm/constants.js +3 -0
- package/dist/esm/arch/svm/constants.js.map +1 -0
- package/dist/esm/arch/svm/eventsClient.d.ts +87 -0
- package/dist/esm/arch/svm/eventsClient.js +316 -0
- package/dist/esm/arch/svm/eventsClient.js.map +1 -0
- package/dist/esm/arch/svm/index.d.ts +5 -1
- package/dist/esm/arch/svm/index.js +5 -1
- package/dist/esm/arch/svm/index.js.map +1 -1
- package/dist/esm/{svm → arch/svm}/types.d.ts +9 -4
- package/dist/esm/arch/svm/types.js.map +1 -0
- package/dist/esm/arch/svm/utils.d.ts +63 -0
- package/dist/esm/arch/svm/utils.js +258 -0
- package/dist/esm/arch/svm/utils.js.map +1 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/BaseAbstractClient.d.ts +6 -5
- package/dist/esm/clients/BaseAbstractClient.js +30 -19
- package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js +17 -14
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
- package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
- package/dist/esm/clients/HubPoolClient.d.ts +4 -3
- package/dist/esm/clients/HubPoolClient.js +19 -18
- package/dist/esm/clients/HubPoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
- package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +66 -0
- package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +225 -0
- package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +57 -59
- package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient/index.d.ts +8 -0
- package/dist/esm/clients/SpokePoolClient/index.js +10 -0
- package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
- package/dist/esm/clients/index.d.ts +1 -1
- package/dist/esm/clients/index.js +1 -1
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +1 -1
- package/dist/esm/clients/mocks/MockConfigStoreClient.js +2 -2
- package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockHubPoolClient.js +2 -2
- package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +8 -5
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSvmCpiEventsClient.d.ts +33 -0
- package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +183 -0
- package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -0
- package/dist/esm/clients/mocks/MockSvmSpokePoolClient.d.ts +30 -0
- package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +89 -0
- package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -0
- package/dist/esm/clients/mocks/index.d.ts +2 -0
- package/dist/esm/clients/mocks/index.js +2 -0
- package/dist/esm/clients/mocks/index.js.map +1 -1
- package/dist/esm/coingecko/Coingecko.d.ts +3 -2
- package/dist/esm/coingecko/Coingecko.js +12 -3
- package/dist/esm/coingecko/Coingecko.js.map +1 -1
- package/dist/esm/constants.d.ts +1 -0
- package/dist/esm/constants.js +1 -0
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -4
- package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js +3 -2
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +4 -4
- package/dist/esm/gasPriceOracle/adapters/polygon.js +1 -1
- package/dist/esm/gasPriceOracle/adapters/solana.d.ts +8 -0
- package/dist/esm/gasPriceOracle/adapters/solana.js +43 -0
- package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -0
- package/dist/esm/gasPriceOracle/index.d.ts +1 -1
- package/dist/esm/gasPriceOracle/oracle.d.ts +4 -3
- package/dist/esm/gasPriceOracle/oracle.js +18 -9
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
- package/dist/esm/gasPriceOracle/types.d.ts +6 -1
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces/SpokePool.d.ts +13 -0
- package/dist/esm/interfaces/SpokePool.js.map +1 -1
- package/dist/esm/providers/index.d.ts +1 -1
- package/dist/esm/providers/index.js +1 -2
- package/dist/esm/providers/index.js.map +1 -1
- package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.d.ts +5 -0
- package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js +19 -0
- package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -0
- package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +5 -0
- package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js +18 -0
- package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -0
- package/dist/esm/providers/mocks/MockSolanaRpcFactory.d.ts +13 -0
- package/dist/esm/providers/mocks/MockSolanaRpcFactory.js +74 -0
- package/dist/esm/providers/mocks/MockSolanaRpcFactory.js.map +1 -0
- package/dist/esm/providers/mocks/index.d.ts +4 -0
- package/dist/esm/providers/mocks/index.js +5 -0
- package/dist/esm/providers/mocks/index.js.map +1 -0
- package/dist/esm/providers/{mockProvider.js → mocks/mockEthersProvider.js} +2 -2
- package/dist/esm/providers/mocks/mockEthersProvider.js.map +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +10 -8
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js +11 -5
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js +1 -0
- package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +84 -0
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +216 -0
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +12 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +9 -4
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/utils/AddressUtils.d.ts +9 -3
- package/dist/esm/utils/AddressUtils.js +41 -6
- package/dist/esm/utils/AddressUtils.js.map +1 -1
- package/dist/esm/utils/ArrayUtils.d.ts +6 -0
- package/dist/esm/utils/ArrayUtils.js +9 -0
- package/dist/esm/utils/ArrayUtils.js.map +1 -1
- package/dist/esm/utils/BlockFinder.d.ts +22 -0
- package/dist/esm/utils/BlockFinder.js +7 -0
- package/dist/esm/utils/BlockFinder.js.map +1 -0
- package/dist/esm/utils/BlockUtils.d.ts +2 -36
- package/dist/esm/utils/BlockUtils.js +2 -243
- package/dist/esm/utils/BlockUtils.js.map +1 -1
- package/dist/esm/utils/EventUtils.d.ts +4 -4
- package/dist/esm/utils/EventUtils.js +7 -4
- package/dist/esm/utils/EventUtils.js.map +1 -1
- package/dist/esm/utils/JSONUtils.js +3 -0
- package/dist/esm/utils/JSONUtils.js.map +1 -1
- package/dist/esm/utils/NumberUtils.d.ts +7 -0
- package/dist/esm/utils/NumberUtils.js +11 -0
- package/dist/esm/utils/NumberUtils.js.map +1 -1
- package/dist/esm/utils/SpokeUtils.js +5 -0
- package/dist/esm/utils/SpokeUtils.js.map +1 -1
- package/dist/esm/utils/TokenUtils.d.ts +12 -0
- package/dist/esm/utils/TokenUtils.js +6 -3
- package/dist/esm/utils/TokenUtils.js.map +1 -1
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/types/arch/evm/BlockUtils.d.ts +25 -0
- package/dist/types/arch/evm/BlockUtils.d.ts.map +1 -0
- package/dist/types/arch/evm/SpokeUtils.d.ts +1 -1
- package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
- package/dist/types/arch/evm/index.d.ts +1 -0
- package/dist/types/arch/evm/index.d.ts.map +1 -1
- package/dist/types/arch/svm/SpokeUtils.d.ts +123 -0
- package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -0
- package/dist/types/arch/svm/constants.d.ts +3 -0
- package/dist/types/arch/svm/constants.d.ts.map +1 -0
- package/dist/types/arch/svm/eventsClient.d.ts +88 -0
- package/dist/types/arch/svm/eventsClient.d.ts.map +1 -0
- package/dist/types/arch/svm/index.d.ts +5 -1
- package/dist/types/arch/svm/index.d.ts.map +1 -1
- package/dist/types/{svm → arch/svm}/types.d.ts +9 -4
- package/dist/types/arch/svm/types.d.ts.map +1 -0
- package/dist/types/arch/svm/utils.d.ts +64 -0
- package/dist/types/arch/svm/utils.d.ts.map +1 -0
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
- package/dist/types/clients/BaseAbstractClient.d.ts +6 -5
- package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -1
- package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
- package/dist/types/clients/HubPoolClient.d.ts +4 -3
- package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
- package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
- package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
- package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +67 -0
- package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
- package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
- package/dist/types/clients/SpokePoolClient/index.d.ts +8 -0
- package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -1
- package/dist/types/clients/index.d.ts +1 -1
- package/dist/types/clients/index.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +1 -1
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts +34 -0
- package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts +31 -0
- package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts.map +1 -0
- package/dist/types/clients/mocks/index.d.ts +2 -0
- package/dist/types/clients/mocks/index.d.ts.map +1 -1
- package/dist/types/coingecko/Coingecko.d.ts +3 -2
- package/dist/types/coingecko/Coingecko.d.ts.map +1 -1
- package/dist/types/constants.d.ts +1 -0
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +4 -4
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -4
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/solana.d.ts +9 -0
- package/dist/types/gasPriceOracle/adapters/solana.d.ts.map +1 -0
- package/dist/types/gasPriceOracle/index.d.ts +1 -1
- package/dist/types/gasPriceOracle/index.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/oracle.d.ts +4 -3
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/types.d.ts +6 -1
- package/dist/types/gasPriceOracle/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/interfaces/SpokePool.d.ts +13 -0
- package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
- package/dist/types/providers/index.d.ts +1 -1
- package/dist/types/providers/index.d.ts.map +1 -1
- package/dist/types/providers/mocks/MockCachedSolanaRpcFactory.d.ts +6 -0
- package/dist/types/providers/mocks/MockCachedSolanaRpcFactory.d.ts.map +1 -0
- package/dist/types/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +6 -0
- package/dist/types/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts.map +1 -0
- package/dist/types/providers/mocks/MockSolanaRpcFactory.d.ts +14 -0
- package/dist/types/providers/mocks/MockSolanaRpcFactory.d.ts.map +1 -0
- package/dist/types/providers/mocks/index.d.ts +5 -0
- package/dist/types/providers/mocks/index.d.ts.map +1 -0
- package/dist/types/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +1 -1
- package/dist/types/providers/mocks/mockEthersProvider.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +1 -0
- package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +85 -0
- package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -0
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +12 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
- package/dist/types/utils/AddressUtils.d.ts +9 -3
- package/dist/types/utils/AddressUtils.d.ts.map +1 -1
- package/dist/types/utils/ArrayUtils.d.ts +6 -0
- package/dist/types/utils/ArrayUtils.d.ts.map +1 -1
- package/dist/types/utils/BlockFinder.d.ts +23 -0
- package/dist/types/utils/BlockFinder.d.ts.map +1 -0
- package/dist/types/utils/BlockUtils.d.ts +2 -36
- package/dist/types/utils/BlockUtils.d.ts.map +1 -1
- package/dist/types/utils/EventUtils.d.ts +4 -4
- package/dist/types/utils/EventUtils.d.ts.map +1 -1
- package/dist/types/utils/JSONUtils.d.ts.map +1 -1
- package/dist/types/utils/NumberUtils.d.ts +7 -0
- package/dist/types/utils/NumberUtils.d.ts.map +1 -1
- package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
- package/dist/types/utils/TokenUtils.d.ts +12 -0
- package/dist/types/utils/TokenUtils.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/package.json +3 -1
- package/src/arch/evm/BlockUtils.ts +209 -0
- package/src/arch/evm/SpokeUtils.ts +5 -5
- package/src/arch/evm/index.ts +1 -0
- package/src/arch/svm/SpokeUtils.ts +581 -0
- package/src/arch/svm/constants.ts +2 -0
- package/src/arch/svm/eventsClient.ts +342 -0
- package/src/arch/svm/index.ts +5 -1
- package/src/{svm → arch/svm}/types.ts +21 -4
- package/src/arch/svm/utils.ts +233 -0
- package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +7 -7
- package/src/clients/BaseAbstractClient.ts +20 -13
- package/src/clients/BundleDataClient/BundleDataClient.ts +28 -19
- package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +1 -1
- package/src/clients/HubPoolClient.ts +19 -19
- package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +23 -21
- package/src/clients/SpokePoolClient/SVMSpokePoolClient.ts +268 -0
- package/src/clients/SpokePoolClient/SpokePoolClient.ts +50 -59
- package/src/clients/SpokePoolClient/index.ts +11 -0
- package/src/clients/index.ts +1 -1
- package/src/clients/mocks/MockConfigStoreClient.ts +2 -2
- package/src/clients/mocks/MockHubPoolClient.ts +2 -2
- package/src/clients/mocks/MockSpokePoolClient.ts +9 -4
- package/src/clients/mocks/MockSvmCpiEventsClient.ts +226 -0
- package/src/clients/mocks/MockSvmSpokePoolClient.ts +119 -0
- package/src/clients/mocks/index.ts +2 -0
- package/src/coingecko/Coingecko.ts +12 -3
- package/src/constants.ts +1 -0
- package/src/gasPriceOracle/adapters/arbitrum.ts +5 -2
- package/src/gasPriceOracle/adapters/ethereum.ts +7 -4
- package/src/gasPriceOracle/adapters/linea-viem.ts +3 -1
- package/src/gasPriceOracle/adapters/polygon.ts +6 -6
- package/src/gasPriceOracle/adapters/solana.ts +47 -0
- package/src/gasPriceOracle/index.ts +1 -1
- package/src/gasPriceOracle/oracle.ts +20 -4
- package/src/gasPriceOracle/types.ts +7 -1
- package/src/index.ts +0 -1
- package/src/interfaces/SpokePool.ts +14 -0
- package/src/providers/index.ts +1 -1
- package/src/providers/mocks/MockCachedSolanaRpcFactory.ts +15 -0
- package/src/providers/mocks/MockRateLimitedSolanaRpcFactory.ts +14 -0
- package/src/providers/mocks/MockSolanaRpcFactory.ts +55 -0
- package/src/providers/mocks/index.ts +4 -0
- package/src/providers/{mockProvider.ts → mocks/mockEthersProvider.ts} +1 -1
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +11 -9
- package/src/relayFeeCalculator/chain-queries/factory.ts +24 -8
- package/src/relayFeeCalculator/chain-queries/index.ts +1 -0
- package/src/relayFeeCalculator/chain-queries/svmQuery.ts +225 -0
- package/src/relayFeeCalculator/relayFeeCalculator.ts +15 -3
- package/src/utils/AddressUtils.ts +49 -6
- package/src/utils/ArrayUtils.ts +12 -0
- package/src/utils/BlockFinder.ts +26 -0
- package/src/utils/BlockUtils.ts +5 -215
- package/src/utils/EventUtils.ts +11 -11
- package/src/utils/JSONUtils.ts +2 -0
- package/src/utils/NumberUtils.ts +10 -0
- package/src/utils/SpokeUtils.ts +7 -3
- package/src/utils/TokenUtils.ts +6 -3
- package/src/utils/index.ts +1 -0
- package/dist/cjs/providers/mockProvider.js.map +0 -1
- package/dist/cjs/svm/eventsClient.d.ts +0 -15
- package/dist/cjs/svm/eventsClient.js +0 -157
- package/dist/cjs/svm/eventsClient.js.map +0 -1
- package/dist/cjs/svm/index.d.ts +0 -3
- package/dist/cjs/svm/index.js +0 -8
- package/dist/cjs/svm/index.js.map +0 -1
- package/dist/cjs/svm/types.js.map +0 -1
- package/dist/cjs/svm/utils/events.d.ts +0 -8
- package/dist/cjs/svm/utils/events.js +0 -47
- package/dist/cjs/svm/utils/events.js.map +0 -1
- package/dist/cjs/svm/utils/helpers.d.ts +0 -2
- package/dist/cjs/svm/utils/helpers.js +0 -19
- package/dist/cjs/svm/utils/helpers.js.map +0 -1
- package/dist/cjs/svm/utils/index.d.ts +0 -1
- package/dist/cjs/svm/utils/index.js +0 -5
- package/dist/cjs/svm/utils/index.js.map +0 -1
- package/dist/esm/providers/mockProvider.js.map +0 -1
- package/dist/esm/svm/eventsClient.d.ts +0 -51
- package/dist/esm/svm/eventsClient.js +0 -195
- package/dist/esm/svm/eventsClient.js.map +0 -1
- package/dist/esm/svm/index.d.ts +0 -3
- package/dist/esm/svm/index.js +0 -5
- package/dist/esm/svm/index.js.map +0 -1
- package/dist/esm/svm/types.js.map +0 -1
- package/dist/esm/svm/utils/events.d.ts +0 -17
- package/dist/esm/svm/utils/events.js +0 -55
- package/dist/esm/svm/utils/events.js.map +0 -1
- package/dist/esm/svm/utils/helpers.d.ts +0 -5
- package/dist/esm/svm/utils/helpers.js +0 -18
- package/dist/esm/svm/utils/helpers.js.map +0 -1
- package/dist/esm/svm/utils/index.d.ts +0 -1
- package/dist/esm/svm/utils/index.js +0 -2
- package/dist/esm/svm/utils/index.js.map +0 -1
- package/dist/types/providers/mockProvider.d.ts.map +0 -1
- package/dist/types/svm/eventsClient.d.ts +0 -52
- package/dist/types/svm/eventsClient.d.ts.map +0 -1
- package/dist/types/svm/index.d.ts +0 -4
- package/dist/types/svm/index.d.ts.map +0 -1
- package/dist/types/svm/types.d.ts.map +0 -1
- package/dist/types/svm/utils/events.d.ts +0 -18
- package/dist/types/svm/utils/events.d.ts.map +0 -1
- package/dist/types/svm/utils/helpers.d.ts +0 -6
- package/dist/types/svm/utils/helpers.d.ts.map +0 -1
- package/dist/types/svm/utils/index.d.ts +0 -2
- package/dist/types/svm/utils/index.d.ts.map +0 -1
- package/src/svm/eventsClient.ts +0 -199
- package/src/svm/index.ts +0 -3
- package/src/svm/utils/events.ts +0 -58
- package/src/svm/utils/helpers.ts +0 -9
- package/src/svm/utils/index.ts +0 -1
- /package/dist/cjs/{svm → arch/svm}/types.js +0 -0
- /package/dist/cjs/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +0 -0
- /package/dist/esm/{svm → arch/svm}/types.js +0 -0
- /package/dist/esm/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +0 -0
|
@@ -5,9 +5,9 @@ export declare function spreadEvent(args: Result | Record<string, unknown>): {
|
|
|
5
5
|
[key: string]: any;
|
|
6
6
|
};
|
|
7
7
|
export interface EventSearchConfig {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
from: number;
|
|
9
|
+
to: number;
|
|
10
|
+
maxLookBack?: number;
|
|
11
11
|
}
|
|
12
12
|
export declare const eventToLog: (event: Event) => Log;
|
|
13
13
|
export declare function paginatedEventQuery(contract: Contract, filter: EventFilter, searchConfig: EventSearchConfig, retryCount?: number): Promise<Log[]>;
|
|
@@ -25,7 +25,7 @@ export declare function paginatedEventQuery(contract: Contract, filter: EventFil
|
|
|
25
25
|
* input range, but can include blocks outside of the desired range, so results should be filtered. Results
|
|
26
26
|
* are ordered from smallest to largest.
|
|
27
27
|
*/
|
|
28
|
-
export declare function getPaginatedBlockRanges({
|
|
28
|
+
export declare function getPaginatedBlockRanges({ from, to, maxLookBack }: EventSearchConfig): [number, number][];
|
|
29
29
|
export declare function logToSortableEvent(log: Log): SortableEvent;
|
|
30
30
|
export declare function spreadEventWithBlockNumber(event: Log): SortableEvent;
|
|
31
31
|
type PartialSortableEvent = Pick<SortableEvent, "blockNumber" | "logIndex">;
|
|
@@ -98,8 +98,8 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
|
|
|
98
98
|
return __generator(this, function (_a) {
|
|
99
99
|
switch (_a.label) {
|
|
100
100
|
case 0:
|
|
101
|
-
if (!(searchConfig.
|
|
102
|
-
return [4 /*yield*/, contract.queryFilter(filter, searchConfig.
|
|
101
|
+
if (!(searchConfig.maxLookBack === 0)) return [3 /*break*/, 2];
|
|
102
|
+
return [4 /*yield*/, contract.queryFilter(filter, searchConfig.from, searchConfig.to)];
|
|
103
103
|
case 1:
|
|
104
104
|
events = _a.sent();
|
|
105
105
|
return [2 /*return*/, events.map(eventToLog)];
|
|
@@ -115,7 +115,7 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
|
|
|
115
115
|
case 4: return [2 /*return*/, ((_a.sent())
|
|
116
116
|
.flat()
|
|
117
117
|
// Filter events by block number because ranges can include blocks that are outside the range specified for caching reasons.
|
|
118
|
-
.filter(function (event) { return event.blockNumber >= searchConfig.
|
|
118
|
+
.filter(function (event) { return event.blockNumber >= searchConfig.from && event.blockNumber <= searchConfig.to; })
|
|
119
119
|
.map(eventToLog))];
|
|
120
120
|
case 5:
|
|
121
121
|
error_1 = _a.sent();
|
|
@@ -147,7 +147,10 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
|
|
|
147
147
|
* are ordered from smallest to largest.
|
|
148
148
|
*/
|
|
149
149
|
export function getPaginatedBlockRanges(_a) {
|
|
150
|
-
var
|
|
150
|
+
var from = _a.from, to = _a.to, maxLookBack = _a.maxLookBack;
|
|
151
|
+
var fromBlock = from;
|
|
152
|
+
var toBlock = to;
|
|
153
|
+
var maxBlockLookBack = maxLookBack;
|
|
151
154
|
// If the maxBlockLookBack is undefined, we can look back as far as we like. Just return the entire range.
|
|
152
155
|
if (maxBlockLookBack === undefined) {
|
|
153
156
|
return [[fromBlock, toBlock]];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventUtils.js","sourceRoot":"","sources":["../../../src/utils/EventUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EventUtils.js","sourceRoot":"","sources":["../../../src/utils/EventUtils.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAgB,SAAS,EAAE,MAAM,IAAI,CAAC;AAE9D,IAAM,UAAU,GAAG,CAAC,CAAC;AACrB,IAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,4FAA4F;AAC5F,IAAM,0BAA0B,GAAG;IACjC,gBAAgB;IAChB,gBAAgB;IAChB,+CAA+C;IAC/C,YAAY;IACZ,aAAa;IACb,WAAW;IACX,WAAW;IACX,kBAAkB;IAClB,cAAc;IACd,SAAS;IACT,0BAA0B;IAC1B,kBAAkB;CACnB,CAAC;AAEF,8DAA8D;AAC9D,MAAM,UAAU,WAAW,CAAC,IAAsC;IAChE,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAC,GAAW,IAAK,OAAA,KAAK,CAAC,CAAC,GAAG,CAAC,EAAX,CAAW,CAAC,CAAC,CAAC,4BAA4B;IAEjG,8DAA8D;IAC9D,IAAM,cAAc,GAA+B,EAAE,CAAC;IACtD,IAAI,CAAC,OAAO,CAAC,UAAC,GAAW;QACvB,QAAQ,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE;YACxB,KAAK,SAAS,CAAC,CAAC,cAAc;YAC9B,KAAK,QAAQ,CAAC;YACd,KAAK,QAAQ;gBACX,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;oBAC5B,cAAc,CAAC,GAAG,CAAC;wBACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAC,GAAW,IAAK,OAAA,KAAK,CAAC,CAAC,GAAG,CAAC,EAAX,CAAW,CAAC,CAAC,MAAM,GAAG,CAAC;4BACpE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,yBAAyB;4BAClD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB;iBAClC;qBAAM;oBACL,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;iBACjC;gBACD,MAAM;SACT;IACH,CAAC,CAAC,CAAC;IAEH,+FAA+F;IAC/F,IAAI,cAAc,CAAC,UAAU,EAAE;QAC7B,cAAc,CAAC,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;KAC/D;IACD,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;KACvD;IACD,IAAI,cAAc,CAAC,OAAO,EAAE;QAC1B,cAAc,CAAC,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;KACzD;IACD,IAAI,cAAc,CAAC,kBAAkB,EAAE;QACrC,cAAc,CAAC,kBAAkB,GAAG,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;KAC/E;IACD,IAAI,cAAc,CAAC,aAAa,EAAE;QAChC,cAAc,CAAC,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;KACrE;IACD,IAAI,cAAc,CAAC,gBAAgB,EAAE;QACnC,cAAc,CAAC,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;KAC3E;IACD,IAAI,cAAc,CAAC,SAAS,EAAE;QAC5B,cAAc,CAAC,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;KAC7D;IACD,IAAI,cAAc,CAAC,YAAY,EAAE;QAC/B,cAAc,CAAC,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;KACnE;IACD,yHAAyH;IACzH,uDAAuD;IACvD,IAAI,SAAS,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;QACvC,+JAA+J;QAC/J,oDAAoD;QACpD,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,SAAyB,CAAC,CAAC;KAC3E;IAED,kEAAkE;IAClE,KAAoB,UAA0B,EAA1B,yDAA0B,EAA1B,wCAA0B,EAA1B,IAA0B,EAAE;QAA3C,IAAM,KAAK,mCAAA;QACd,IAAI,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE;YACpC,IAAI,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5C,IAAI;gBACF,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC7B,oCAAoC;aACrC;YAAC,OAAO,CAAC,EAAE,GAAE;YACd,cAAc,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;SACjC;KACF;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAQD,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,KAAY,IAAU,OAAA,uBAAM,KAAK,KAAE,KAAK,EAAE,KAAK,CAAC,KAAM,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAK,CAAC,IAAG,EAAnE,CAAmE,CAAC;AAErH,MAAM,UAAgB,mBAAmB,CACvC,QAAkB,EAClB,MAAmB,EACnB,YAA+B,EAC/B,UAAc;IAAd,2BAAA,EAAA,cAAc;;;;;;yBAGV,CAAA,YAAY,CAAC,WAAW,KAAK,CAAC,CAAA,EAA9B,wBAA8B;oBACjB,qBAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,EAAA;;oBAA/E,MAAM,GAAG,SAAsE;oBACrF,sBAAO,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAC;;oBAM1B,eAAe,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC;;;;oBAKxD,qBAAM,OAAO,CAAC,GAAG,CACf,eAAe,CAAC,GAAG,CAAC,UAAC,EAAoB;gCAAnB,SAAS,QAAA,EAAE,OAAO,QAAA;4BAAM,OAAA,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;wBAAhD,CAAgD,CAAC,CAChG,EAAA;wBAJL,sBAAO,CACL,CACE,SAEC,CACF;yBACE,IAAI,EAAE;wBACP,4HAA4H;yBAC3H,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,IAAI,YAAY,CAAC,EAAE,EAA9E,CAA8E,CAAC;yBACjG,GAAG,CAAC,UAAU,CAAC,CACnB,EAAC;;;yBAEE,CAAA,UAAU,GAAG,UAAU,CAAA,EAAvB,wBAAuB;oBACzB,qBAAM,KAAK,CAAC,cAAc,CAAC,EAAA;;oBAA3B,SAA2B,CAAC;oBACrB,qBAAM,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,GAAG,CAAC,CAAC,EAAA;wBAAhF,sBAAO,SAAyE,EAAC;wBAEjF,MAAM,OAAK,CAAC;;;;;;CAGjB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,EAA4C;QAA1C,IAAI,UAAA,EAAE,EAAE,QAAA,EAAE,WAAW,iBAAA;IAC7D,IAAM,SAAS,GAAG,IAAI,CAAC;IACvB,IAAM,OAAO,GAAG,EAAE,CAAC;IACnB,IAAM,gBAAgB,GAAG,WAAW,CAAC;IAErC,0GAA0G;IAC1G,IAAI,gBAAgB,KAAK,SAAS,EAAE;QAClC,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;KAC/B;IAED,wDAAwD;IACxD,IAAI,SAAS,GAAG,OAAO,EAAE;QACvB,OAAO,EAAE,CAAC;KACX;IAED,0CAA0C;IAC1C,IAAI,gBAAgB,IAAI,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IAED,2GAA2G;IAC3G,qFAAqF;IACrF,sBAAsB;IACtB,iHAAiH;IACjH,8BAA8B;IAC9B,IAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;IAEtF,oFAAoF;IACpF,IAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAEnF,IAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;QACnC,8FAA8F;QAC9F,IAAM,cAAc,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,CAAC,CAAC;QAEhE,+GAA+G;QAC/G,gHAAgH;QAChH,UAAU;QACV,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,gBAAgB,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC;KAC7C;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAQ;IACzC,OAAO;QACL,QAAQ,EAAE,GAAG,CAAC,gBAAgB;QAC9B,MAAM,EAAE,GAAG,CAAC,eAAe;QAC3B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,WAAW,EAAE,GAAG,CAAC,WAAW;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAU;IACnD,6BACK,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,GACvB,kBAAkB,CAAC,KAAK,CAAC,EAC5B;AACJ,CAAC;AAID,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CAAiC,MAAW;IAC7E,OAAO,0BAA0B,mBAAK,MAAM,QAAE,CAAC;AACjD,CAAC;AAED,kHAAkH;AAClH,qFAAqF;AACrF,MAAM,UAAU,0BAA0B,CAAiC,MAAW;IACpF,OAAO,MAAM,CAAC,IAAI,CAAC,UAAC,EAAE,EAAE,EAAE;QACxB,OAAA,EAAE,CAAC,WAAW,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW;IAA/F,CAA+F,CAChG,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAAiC,MAAW;IAC9E,OAAO,2BAA2B,mBAAK,MAAM,QAAE,CAAC;AAClD,CAAC;AAED,kHAAkH;AAClH,qFAAqF;AACrF,MAAM,UAAU,2BAA2B,CAAiC,MAAW;IACrF,OAAO,MAAM,CAAC,IAAI,CAAC,UAAC,EAAE,EAAE,EAAE;QACxB,OAAA,EAAE,CAAC,WAAW,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW;IAA/F,CAA+F,CAChG,CAAC;AACJ,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,YAAY,CAAiC,EAAK,EAAE,EAAK;IACvE,OAAO,EAAE,CAAC,WAAW,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAuB;IACxD,yBAAW,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAC,CAAC,QAAE;AAC/D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,CAAgB,EAAE,CAAgB;IAC/D,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,CAAC;AAC5D,CAAC"}
|
|
@@ -33,6 +33,9 @@ export function stringifyJSONWithNumericString(obj) {
|
|
|
33
33
|
if (typeof value === "object" && value !== null && value.type === "BigNumber") {
|
|
34
34
|
return BigNumber.from(value).toString();
|
|
35
35
|
}
|
|
36
|
+
else if (typeof value === "bigint" && value !== null) {
|
|
37
|
+
return value.toString();
|
|
38
|
+
}
|
|
36
39
|
return value;
|
|
37
40
|
});
|
|
38
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONUtils.js","sourceRoot":"","sources":["../../../src/utils/JSONUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CAAC,UAAkB;IAC3D,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,UAAC,IAAI,EAAE,KAAK;YACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAClC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;KACJ;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,SAAS,CAAC;KAClB;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAAC,GAAY;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAC,IAAI,EAAE,KAAK;QACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE;YAC7E,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;SACzC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,KAAc;IACrE,mEAAmE;IACnE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QACrB,OAAO,KAAK,CAAC;KACd;IAED,oEAAoE;IACpE,gFAAgF;IAChF,kDAAkD;IAClD,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7D,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;KACzB;IACD,yFAAyF;IACzF,wCAAwC;IACxC,IAAM,WAAW,GAAG,KAAsC,CAAC;IAC3D,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,IAAI,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE;QAClE,OAAO,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;KACnD;IACD,yBAAyB;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAY,EAAE,KAAc;IACpE,6EAA6E;IAC7E,8BAA8B;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACtD,IAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,SAAS,CAAC,QAAQ,EAAE,KAAK,KAAK,EAAE;YAClC,OAAO,SAAS,CAAC;SAClB;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY,EAAE,KAAc;IAClE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,KAAc;IACjE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAClG,CAAC"}
|
|
1
|
+
{"version":3,"file":"JSONUtils.js","sourceRoot":"","sources":["../../../src/utils/JSONUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,3 +10,10 @@ export declare function isInteger(value: unknown): value is number;
|
|
|
10
10
|
* @returns True if the value is a number, an integer, and greater than zero, false otherwise.
|
|
11
11
|
*/
|
|
12
12
|
export declare function isPositiveInteger(value: unknown): value is number;
|
|
13
|
+
/**
|
|
14
|
+
* Returns a random integer between min (inclusive) and max (exclusive).
|
|
15
|
+
* @param min The minimum value (inclusive).
|
|
16
|
+
* @param max The maximum value (exclusive). Defaults to 1000000.
|
|
17
|
+
* @returns A random integer between min and max.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getRandomInt(min?: number, max?: number): number;
|
|
@@ -14,4 +14,15 @@ export function isInteger(value) {
|
|
|
14
14
|
export function isPositiveInteger(value) {
|
|
15
15
|
return isInteger(value) && value > 0;
|
|
16
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* Returns a random integer between min (inclusive) and max (exclusive).
|
|
19
|
+
* @param min The minimum value (inclusive).
|
|
20
|
+
* @param max The maximum value (exclusive). Defaults to 1000000.
|
|
21
|
+
* @returns A random integer between min and max.
|
|
22
|
+
*/
|
|
23
|
+
export function getRandomInt(min, max) {
|
|
24
|
+
if (min === void 0) { min = 0; }
|
|
25
|
+
if (max === void 0) { max = 1000000; }
|
|
26
|
+
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
27
|
+
}
|
|
17
28
|
//# sourceMappingURL=NumberUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../../src/utils/NumberUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../../src/utils/NumberUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,GAAe,EAAE,GAAqB;IAAtC,oBAAA,EAAA,OAAe;IAAE,oBAAA,EAAA,aAAqB;IACjE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC3D,CAAC"}
|
|
@@ -4,6 +4,8 @@ import { MAX_SAFE_DEPOSIT_ID, ZERO_ADDRESS, ZERO_BYTES } from "../constants";
|
|
|
4
4
|
import { toBytes32 } from "./AddressUtils";
|
|
5
5
|
import { BigNumber } from "./BigNumberUtils";
|
|
6
6
|
import { isMessageEmpty } from "./DepositUtils";
|
|
7
|
+
import { chainIsSvm } from "./NetworkUtils";
|
|
8
|
+
import { svm } from "../arch";
|
|
7
9
|
/**
|
|
8
10
|
* Produce the RelayData for a Deposit.
|
|
9
11
|
* @param deposit Deposit instance.
|
|
@@ -53,6 +55,9 @@ export function getRelayDataHash(relayData, destinationChainId) {
|
|
|
53
55
|
{ type: "uint256", name: "destinationChainId" },
|
|
54
56
|
];
|
|
55
57
|
var _relayData = __assign(__assign({}, relayData), { depositor: toBytes32(relayData.depositor), recipient: toBytes32(relayData.recipient), inputToken: toBytes32(relayData.inputToken), outputToken: toBytes32(relayData.outputToken), exclusiveRelayer: toBytes32(relayData.exclusiveRelayer) });
|
|
58
|
+
if (chainIsSvm(destinationChainId)) {
|
|
59
|
+
return svm.getRelayDataHash(_relayData, destinationChainId);
|
|
60
|
+
}
|
|
56
61
|
return keccak256(encodeAbiParameters(abi, [_relayData, destinationChainId]));
|
|
57
62
|
}
|
|
58
63
|
export function getRelayHashFromEvent(e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -296,6 +296,12 @@ export declare const resolveContractFromSymbol: (symbol: string, chainId: string
|
|
|
296
296
|
l1TokenDecimals: number;
|
|
297
297
|
coingeckoId: string;
|
|
298
298
|
};
|
|
299
|
+
/**
|
|
300
|
+
* Get the USDC symbol for the given token address and chain ID.
|
|
301
|
+
* @param l2Token A Web3 token address (not case sensitive)
|
|
302
|
+
* @param chainId A chain Id to reference
|
|
303
|
+
* @returns Either USDC (if native) or USDbC/USDC.e (if bridged) or undefined if the token address is not recognized.
|
|
304
|
+
*/
|
|
299
305
|
USDT: {
|
|
300
306
|
name: string;
|
|
301
307
|
symbol: string;
|
|
@@ -711,6 +717,12 @@ export declare function getTokenInfo(l2TokenAddress: string, chainId: number, to
|
|
|
711
717
|
l1TokenDecimals: number;
|
|
712
718
|
coingeckoId: string;
|
|
713
719
|
};
|
|
720
|
+
/**
|
|
721
|
+
* Get the USDC symbol for the given token address and chain ID.
|
|
722
|
+
* @param l2Token A Web3 token address (not case sensitive)
|
|
723
|
+
* @param chainId A chain Id to reference
|
|
724
|
+
* @returns Either USDC (if native) or USDbC/USDC.e (if bridged) or undefined if the token address is not recognized.
|
|
725
|
+
*/
|
|
714
726
|
USDT: {
|
|
715
727
|
name: string;
|
|
716
728
|
symbol: string;
|
|
@@ -2,9 +2,9 @@ import { __awaiter, __generator } from "tslib";
|
|
|
2
2
|
import { Contract } from "ethers";
|
|
3
3
|
import * as constants from "../constants";
|
|
4
4
|
import { ERC20__factory } from "../typechain";
|
|
5
|
-
import { getNetworkName, chainIsL1, chainIsProd } from "./NetworkUtils";
|
|
5
|
+
import { getNetworkName, chainIsL1, chainIsProd, chainIsSvm } from "./NetworkUtils";
|
|
6
6
|
import { isDefined } from "./TypeGuards";
|
|
7
|
-
import { compareAddressesSimple } from "./AddressUtils";
|
|
7
|
+
import { compareAddressesSimple, toAddressType } from "./AddressUtils";
|
|
8
8
|
var TOKEN_SYMBOLS_MAP = constants.TOKEN_SYMBOLS_MAP, CHAIN_IDs = constants.CHAIN_IDs, TOKEN_EQUIVALENCE_REMAPPING = constants.TOKEN_EQUIVALENCE_REMAPPING;
|
|
9
9
|
export function fetchTokenInfo(address, signerOrProvider) {
|
|
10
10
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -98,11 +98,14 @@ export function isStablecoin(tokenSymbol) {
|
|
|
98
98
|
export function getTokenInfo(l2TokenAddress, chainId, tokenMapping) {
|
|
99
99
|
var _a;
|
|
100
100
|
if (tokenMapping === void 0) { tokenMapping = TOKEN_SYMBOLS_MAP; }
|
|
101
|
+
var parsedAddress = chainIsSvm(chainId)
|
|
102
|
+
? toAddressType(l2TokenAddress).toBase58()
|
|
103
|
+
: toAddressType(l2TokenAddress).toEvmAddress();
|
|
101
104
|
// @dev This might give false positives if tokens on different networks have the same address. I'm not sure how
|
|
102
105
|
// to get around this...
|
|
103
106
|
var tokenObject = Object.values(tokenMapping).find(function (_a) {
|
|
104
107
|
var addresses = _a.addresses;
|
|
105
|
-
return addresses[chainId] ===
|
|
108
|
+
return addresses[chainId] === parsedAddress;
|
|
106
109
|
});
|
|
107
110
|
if (!tokenObject) {
|
|
108
111
|
throw new Error("TokenUtils#getTokenInfo: Unable to resolve token in TOKEN_SYMBOLS_MAP for ".concat(l2TokenAddress, " on chain ").concat(chainId));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAqB,MAAM,QAAQ,CAAC;AACrD,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Provider, Block as EthersBlock } from "@ethersproject/abstract-provider";
|
|
2
|
+
import { BlockFinder, type Block, type BlockFinderOpts as Opts, type BlockTimeAverage, type BlockFinderHints } from "../../utils/BlockFinder";
|
|
3
|
+
interface EVMBlock extends Block, EthersBlock {
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* @description Compute the average block time over a block range.
|
|
7
|
+
* @returns Average number of seconds per block.
|
|
8
|
+
*/
|
|
9
|
+
export declare function averageBlockTime(provider: Provider, { highBlock, highBlockOffset, blockRange }?: Opts): Promise<Pick<BlockTimeAverage, "average" | "blockRange">>;
|
|
10
|
+
export declare class EVMBlockFinder extends BlockFinder<EVMBlock> {
|
|
11
|
+
private readonly provider;
|
|
12
|
+
private readonly blocks;
|
|
13
|
+
constructor(provider: Provider, blocks?: EVMBlock[]);
|
|
14
|
+
/**
|
|
15
|
+
* @notice Gets the latest block whose timestamp is <= the provided timestamp.
|
|
16
|
+
* @param number Timestamp timestamp to search.
|
|
17
|
+
* @param hints Optional low and high block to bound the search space.
|
|
18
|
+
*/
|
|
19
|
+
getBlockForTimestamp(timestamp: number | string, hints?: BlockFinderHints): Promise<EVMBlock>;
|
|
20
|
+
private getLatestBlock;
|
|
21
|
+
private getBlock;
|
|
22
|
+
private findBlock;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=BlockUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/evm/BlockUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAIlF,OAAO,EACL,WAAW,EACX,KAAK,KAAK,EACV,KAAK,eAAe,IAAI,IAAI,EAC5B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AAKjC,UAAU,QAAS,SAAQ,KAAK,EAAE,WAAW;CAAG;AAuBhD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,QAAQ,EAClB,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,GAAE,IAAS,GACpD,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,YAAY,CAAC,CAAC,CAqC3D;AAQD,qBAAa,cAAe,SAAQ,WAAW,CAAC,QAAQ,CAAC;IAErD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,QAAQ,EAAE,QAAQ,EAClB,MAAM,GAAE,QAAQ,EAAO;IAK1C;;;;OAIG;IACU,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,GAAE,gBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC;YA+ChG,cAAc;YAQd,QAAQ;YAiBR,SAAS;CAgCxB"}
|
|
@@ -42,7 +42,7 @@ export declare function findDepositBlock(spokePool: Contract, depositId: BigNumb
|
|
|
42
42
|
* @param blockTag Block tag (numeric or "latest") to query at.
|
|
43
43
|
* @returns The amount filled for the specified deposit at the requested block (or latest).
|
|
44
44
|
*/
|
|
45
|
-
export declare function relayFillStatus(spokePool: Contract, relayData: RelayData, blockTag?:
|
|
45
|
+
export declare function relayFillStatus(spokePool: Contract, relayData: RelayData, blockTag?: BlockTag, destinationChainId?: number): Promise<FillStatus>;
|
|
46
46
|
export declare function fillStatusArray(spokePool: Contract, relayData: RelayData[], blockTag?: BlockTag): Promise<(FillStatus | undefined)[]>;
|
|
47
47
|
/**
|
|
48
48
|
* Find the block at which a fill was completed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/evm/SpokeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAEL,SAAS,EAcV,MAAM,aAAa,CAAC;AAErB,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,QAAQ,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,gBAAgB,SAA6B,GAC5C,OAAO,CAAC,oBAAoB,CAAC,CAoB/B;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAIzF;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7G;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlG;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkC7B;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,
|
|
1
|
+
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/evm/SpokeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAEL,SAAS,EAcV,MAAM,aAAa,CAAC;AAErB,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,QAAQ,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,gBAAgB,SAA6B,GAC5C,OAAO,CAAC,oBAAoB,CAAC,CAoB/B;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAIzF;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7G;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlG;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAkC7B;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,GAAE,QAAmB,EAC7B,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,UAAU,CAAC,CAgBrB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EAAE,EACtB,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,CA8BrC;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgD7B;AAED,wBAAsB,aAAa,CACjC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAoCpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/arch/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/arch/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { SvmSpokeClient } from "@across-protocol/contracts";
|
|
2
|
+
import { Address, type TransactionSigner } from "@solana/kit";
|
|
3
|
+
import { Logger } from "winston";
|
|
4
|
+
import { Deposit, DepositWithBlock, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
|
|
5
|
+
import { BigNumber, SvmAddress } from "../../utils";
|
|
6
|
+
import { SvmCpiEventsClient } from "./";
|
|
7
|
+
import { SVMProvider } from "./types";
|
|
8
|
+
/**
|
|
9
|
+
* @note: Average Solana slot duration is about 400-500ms. We can be conservative
|
|
10
|
+
* and choose 400 to ensure that the most slots get included in our ranges
|
|
11
|
+
*/
|
|
12
|
+
export declare const SLOT_DURATION_MS = 400;
|
|
13
|
+
/**
|
|
14
|
+
* Retrieves the chain time at a particular slot.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getTimestampForSlot(provider: SVMProvider, slotNumber: number): Promise<number>;
|
|
17
|
+
/**
|
|
18
|
+
* Returns the current fill deadline buffer.
|
|
19
|
+
* @param provider SVM Provider instance
|
|
20
|
+
* @param statePda Spoke Pool's State PDA
|
|
21
|
+
* @returns fill deadline buffer
|
|
22
|
+
*/
|
|
23
|
+
export declare function getFillDeadline(provider: SVMProvider, statePda: Address): Promise<number>;
|
|
24
|
+
/**
|
|
25
|
+
* Finds the deposit id at a specific block number.
|
|
26
|
+
* @param blockTag The block number to search for the deposit ID at.
|
|
27
|
+
* @returns The deposit ID.
|
|
28
|
+
*/
|
|
29
|
+
export declare function getDepositIdAtBlock(_contract: unknown, _blockTag: number): Promise<BigNumber>;
|
|
30
|
+
/**
|
|
31
|
+
* Finds deposit events within a 2-day window ending at the specified slot.
|
|
32
|
+
*
|
|
33
|
+
* @remarks
|
|
34
|
+
* This implementation uses a slot-limited search approach because Solana PDA state has
|
|
35
|
+
* limitations that prevent directly referencing old deposit IDs. Unlike EVM chains where
|
|
36
|
+
* we might use binary search across the entire chain history, in Solana we must query within
|
|
37
|
+
* a constrained slot range.
|
|
38
|
+
*
|
|
39
|
+
* The search window is calculated by:
|
|
40
|
+
* 1. Using the provided slot (or current confirmed slot if none is provided)
|
|
41
|
+
* 2. Looking back 2 days worth of slots from that point
|
|
42
|
+
*
|
|
43
|
+
* We use a 2-day window because:
|
|
44
|
+
* 1. Most valid deposits that need to be processed will be recent
|
|
45
|
+
* 2. This covers multiple bundle submission periods
|
|
46
|
+
* 3. It balances performance with practical deposit age
|
|
47
|
+
*
|
|
48
|
+
* @important
|
|
49
|
+
* This function may return `undefined` for valid deposit IDs that are older than the search
|
|
50
|
+
* window (approximately 2 days before the specified slot). This is an acceptable limitation
|
|
51
|
+
* as deposits this old are typically not relevant to current operations.
|
|
52
|
+
*
|
|
53
|
+
* @param eventClient - SvmCpiEventsClient instance
|
|
54
|
+
* @param depositId - The deposit ID to search for
|
|
55
|
+
* @param slot - The slot to search up to (defaults to current slot). The search will look
|
|
56
|
+
* for deposits between (slot - secondsLookback) and slot.
|
|
57
|
+
* @param secondsLookback - The number of seconds to look back for deposits (defaults to 2 days).
|
|
58
|
+
* @returns The deposit if found within the slot window, undefined otherwise
|
|
59
|
+
*/
|
|
60
|
+
export declare function findDeposit(eventClient: SvmCpiEventsClient, depositId: BigNumber, slot?: bigint, secondsLookback?: number): Promise<DepositWithBlock | undefined>;
|
|
61
|
+
/**
|
|
62
|
+
* Resolves the fill status of a deposit at a specific slot or at the current confirmed one.
|
|
63
|
+
*
|
|
64
|
+
* If no slot is provided, attempts to solve the fill status using the PDA. Otherwise, it is reconstructed from PDA events.
|
|
65
|
+
*
|
|
66
|
+
* @param programId - The spoke pool program ID.
|
|
67
|
+
* @param relayData - Deposit information used to locate the fill status.
|
|
68
|
+
* @param destinationChainId - Destination chain ID (must be an SVM chain).
|
|
69
|
+
* @param provider - SVM provider instance.
|
|
70
|
+
* @param svmEventsClient - SVM events client for querying events.
|
|
71
|
+
* @param atHeight - (Optional) Specific slot number to query. Defaults to the latest confirmed slot.
|
|
72
|
+
* @returns The fill status for the deposit at the specified or current slot.
|
|
73
|
+
*/
|
|
74
|
+
export declare function relayFillStatus(programId: Address, relayData: RelayData, destinationChainId: number, svmEventsClient: SvmCpiEventsClient, atHeight?: number): Promise<FillStatus>;
|
|
75
|
+
/**
|
|
76
|
+
* Resolves fill statuses for multiple deposits at a specific or latest confirmed slot,
|
|
77
|
+
* using PDAs when possible and falling back to events if needed.
|
|
78
|
+
*
|
|
79
|
+
* @param programId The spoke pool program ID.
|
|
80
|
+
* @param relayData An array of relay data to resolve fill statuses for.
|
|
81
|
+
* @param destinationChainId The destination chain ID (must be an SVM chain).
|
|
82
|
+
* @param provider SVM Provider instance.
|
|
83
|
+
* @param svmEventsClient SVM events client instance for querying events.
|
|
84
|
+
* @param atHeight (Optional) The slot number to query at. If omitted, queries the latest confirmed slot.
|
|
85
|
+
* @returns An array of fill statuses for the specified deposits at the requested slot (or at the current confirmed slot).
|
|
86
|
+
*/
|
|
87
|
+
export declare function fillStatusArray(programId: Address, relayData: RelayData[], destinationChainId: number, svmEventsClient: SvmCpiEventsClient, atHeight?: number, logger?: Logger): Promise<(FillStatus | undefined)[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Finds the `FilledRelay` event for a given deposit within the provided slot range.
|
|
90
|
+
*
|
|
91
|
+
* @param relayData - Deposit information that is used to complete a fill.
|
|
92
|
+
* @param destinationChainId - Destination chain ID (must be an SVM chain).
|
|
93
|
+
* @param svmEventsClient - SVM events client instance for querying events.
|
|
94
|
+
* @param fromSlot - Starting slot to search.
|
|
95
|
+
* @param toSlot (Optional) Ending slot to search. If not provided, the current confirmed slot will be used.
|
|
96
|
+
* @returns The fill event with block info, or `undefined` if not found.
|
|
97
|
+
*/
|
|
98
|
+
export declare function findFillEvent(relayData: RelayData, destinationChainId: number, svmEventsClient: SvmCpiEventsClient, fromSlot: number, toSlot?: number): Promise<FillWithBlock | undefined>;
|
|
99
|
+
/**
|
|
100
|
+
* @param spokePool Address (program ID) of the SvmSpoke.
|
|
101
|
+
* @param deposit V3Deopsit instance.
|
|
102
|
+
* @param relayer Address of the relayer filling the deposit.
|
|
103
|
+
* @param repaymentChainId Optional repaymentChainId (defaults to destinationChainId).
|
|
104
|
+
* @returns An Ethers UnsignedTransaction instance.
|
|
105
|
+
*/
|
|
106
|
+
export declare function fillRelayInstruction(spokePool: SvmAddress, deposit: Omit<Deposit, "messageHash">, relayer: TransactionSigner<string>, recipientTokenAccount: Address<string>, repaymentChainId?: number): Promise<SvmSpokeClient.FillRelayInstruction<Address<"JAZWcGrpSWNPTBj8QtJ9UyQqhJCDhG9GJkDeMf5NQBiq">, string, string, string, string, string, string, string, string, string, string, string, string, []>>;
|
|
107
|
+
/**
|
|
108
|
+
* @param mint Address of the token corresponding to the account being made.
|
|
109
|
+
* @param relayer Address of the relayer filling the deposit.
|
|
110
|
+
* @returns An instruction for creating a new token account.
|
|
111
|
+
*/
|
|
112
|
+
export declare function createTokenAccountsInstruction(mint: SvmAddress, relayer: TransactionSigner<string>): SvmSpokeClient.CreateTokenAccountsInstruction;
|
|
113
|
+
/**
|
|
114
|
+
* @param mint Address of the token corresponding to the account being made.
|
|
115
|
+
* @param amount Amount of the token to approve.
|
|
116
|
+
* @param relayer Address of the relayer filling the deposit.
|
|
117
|
+
* @param spokePool Address (program ID) of the SvmSpoke.
|
|
118
|
+
* @returns A token approval instruction.
|
|
119
|
+
*/
|
|
120
|
+
export declare function createApproveInstruction(mint: SvmAddress, amount: BigNumber, relayer: SvmAddress, spokePool: SvmAddress, mintDecimals?: number): Promise<import("@solana-program/token").ApproveCheckedInstruction<Address<"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA">, string, string, string, string, []>>;
|
|
121
|
+
export declare function getAssociatedTokenAddress(owner: SvmAddress, mint: SvmAddress, tokenProgramId?: Address<string>): Promise<Address<string>>;
|
|
122
|
+
export declare function getRelayDataHash(relayData: RelayData, destinationChainId: number): string;
|
|
123
|
+
//# sourceMappingURL=SpokeUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACvF,eAAO,MAAM,cAAc,QAAY,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Idl } from "@coral-xyz/anchor";
|
|
2
|
+
import { Address, Commitment, GetSignaturesForAddressApi, Signature } from "@solana/kit";
|
|
3
|
+
import { EventName, EventWithData, SVMProvider } from "./types";
|
|
4
|
+
import { DepositWithTime, FillWithTime } from "../../interfaces";
|
|
5
|
+
type GetSignaturesForAddressConfig = Parameters<GetSignaturesForAddressApi["getSignaturesForAddress"]>[1];
|
|
6
|
+
export type DepositEventFromSignature = Omit<DepositWithTime, "fromLiteChain" | "toLiteChain">;
|
|
7
|
+
export type FillEventFromSignature = FillWithTime;
|
|
8
|
+
export declare class SvmCpiEventsClient {
|
|
9
|
+
private rpc;
|
|
10
|
+
private programAddress;
|
|
11
|
+
private programEventAuthority;
|
|
12
|
+
private idl;
|
|
13
|
+
/**
|
|
14
|
+
* Protected constructor. Use the async create() method to instantiate.
|
|
15
|
+
*/
|
|
16
|
+
protected constructor(rpc: SVMProvider, address: Address, eventAuthority: Address, idl: Idl);
|
|
17
|
+
/**
|
|
18
|
+
* Factory method to asynchronously create an instance of SvmSpokeEventsClient.
|
|
19
|
+
*/
|
|
20
|
+
static create(rpc: SVMProvider): Promise<SvmCpiEventsClient>;
|
|
21
|
+
static createFor(rpc: SVMProvider, programId: string, idl: Idl): Promise<SvmCpiEventsClient>;
|
|
22
|
+
/**
|
|
23
|
+
* Queries events for the SvmSpoke program filtered by event name.
|
|
24
|
+
*
|
|
25
|
+
* @param eventName - The name of the event to filter by.
|
|
26
|
+
* @param fromSlot - Optional starting slot.
|
|
27
|
+
* @param toSlot - Optional ending slot.
|
|
28
|
+
* @param options - Options for fetching signatures.
|
|
29
|
+
* @returns A promise that resolves to an array of events matching the eventName.
|
|
30
|
+
*/
|
|
31
|
+
queryEvents(eventName: EventName, fromSlot?: bigint, toSlot?: bigint, options?: GetSignaturesForAddressConfig): Promise<EventWithData[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Queries events for the provided derived address at instantiation filtered by event name.
|
|
34
|
+
*
|
|
35
|
+
* @param eventName - The name of the event to filter by.
|
|
36
|
+
* @param fromSlot - Optional starting slot.
|
|
37
|
+
* @param toSlot - Optional ending slot.
|
|
38
|
+
* @param options - Options for fetching signatures.
|
|
39
|
+
* @returns A promise that resolves to an array of events matching the eventName.
|
|
40
|
+
*/
|
|
41
|
+
queryDerivedAddressEvents(eventName: string, derivedAddress: Address, fromSlot?: bigint, toSlot?: bigint, options?: GetSignaturesForAddressConfig): Promise<EventWithData[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Queries all events for a specific program.
|
|
44
|
+
*
|
|
45
|
+
* @param fromSlot - Optional starting slot.
|
|
46
|
+
* @param toSlot - Optional ending slot.
|
|
47
|
+
* @param options - Options for fetching signatures.
|
|
48
|
+
* @param forDerivedAddress - Whether to query events for the program or the derived address.
|
|
49
|
+
* @returns A promise that resolves to an array of all events with additional metadata.
|
|
50
|
+
*/
|
|
51
|
+
private queryAllEvents;
|
|
52
|
+
/**
|
|
53
|
+
* Reads events from a transaction signature.
|
|
54
|
+
*
|
|
55
|
+
* @param txSignature - The transaction signature.
|
|
56
|
+
* @param commitment - Commitment level.
|
|
57
|
+
* @returns A promise that resolves to an array of events.
|
|
58
|
+
*/
|
|
59
|
+
private readEventsFromSignature;
|
|
60
|
+
/**
|
|
61
|
+
* Processes events from a transaction.
|
|
62
|
+
*
|
|
63
|
+
* @param txResult - The transaction result.
|
|
64
|
+
* @returns A promise that resolves to an array of events with their data and name.
|
|
65
|
+
*/
|
|
66
|
+
private processEventFromTx;
|
|
67
|
+
/**
|
|
68
|
+
* Finds all FundsDeposited events for a given transaction signature.
|
|
69
|
+
*
|
|
70
|
+
* @param originChainId - The chain ID where the deposit originated.
|
|
71
|
+
* @param txSignature - The transaction signature to search for events.
|
|
72
|
+
* @param commitment - Optional commitment level for the transaction query.
|
|
73
|
+
* @returns A promise that resolves to an array of deposit events for the transaction, or undefined if none found.
|
|
74
|
+
*/
|
|
75
|
+
getDepositEventsFromSignature(originChainId: number, txSignature: Signature, commitment?: Commitment): Promise<DepositEventFromSignature[] | undefined>;
|
|
76
|
+
/**
|
|
77
|
+
* Finds all FilledRelay events for a given transaction signature.
|
|
78
|
+
*
|
|
79
|
+
* @param destinationChainId - The destination chain ID (must be an SVM chain).
|
|
80
|
+
* @param txSignature - The transaction signature to search for events.
|
|
81
|
+
* @returns A promise that resolves to an array of fill events for the transaction, or undefined if none found.
|
|
82
|
+
*/
|
|
83
|
+
getFillEventsFromSignature(destinationChainId: number, txSignature: Signature, commitment?: Commitment): Promise<FillEventFromSignature[] | undefined>;
|
|
84
|
+
getProgramAddress(): Address;
|
|
85
|
+
getRpc(): SVMProvider;
|
|
86
|
+
}
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=eventsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventsClient.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/eventsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAGxC,OAAO,EAEL,OAAO,EACP,UAAU,EAEV,0BAA0B,EAE1B,SAAS,EACV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAiBjE,KAAK,6BAA6B,GAAG,UAAU,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAI1G,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,aAAa,CAAC,CAAC;AAC/F,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC;AAElD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,qBAAqB,CAAU;IACvC,OAAO,CAAC,GAAG,CAAM;IAEjB;;OAEG;IACH,SAAS,aAAa,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG;IAO3F;;OAEG;WACiB,MAAM,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;WAOrD,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,kBAAkB,CAAC;IASzG;;;;;;;;OAQG;IACU,WAAW,CACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,6BAAwE,GAChF,OAAO,CAAC,aAAa,EAAE,CAAC;IAK3B;;;;;;;;OAQG;IACU,yBAAyB,CACpC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,OAAO,EACvB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,6BAAwE,GAChF,OAAO,CAAC,aAAa,EAAE,CAAC;IAK3B;;;;;;;;OAQG;YACW,cAAc;IAsD5B;;;;;;OAMG;YACW,uBAAuB;IASrC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;;;;;;OAOG;IACU,6BAA6B,CACxC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,SAAS,EACtB,UAAU,GAAE,UAAwB,GACnC,OAAO,CAAC,yBAAyB,EAAE,GAAG,SAAS,CAAC;IAwCnD;;;;;;OAMG;IACU,0BAA0B,CACrC,kBAAkB,EAAE,MAAM,EAC1B,WAAW,EAAE,SAAS,EACtB,UAAU,GAAE,UAAwB,GACnC,OAAO,CAAC,sBAAsB,EAAE,GAAG,SAAS,CAAC;IAwCzC,iBAAiB,IAAI,OAAO;IAI5B,MAAM,IAAI,WAAW;CAG7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|