@across-protocol/sdk 4.1.63 → 4.2.0
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/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/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/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/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/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/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/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 +45 -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/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
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SvmCpiEventsClient = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var contracts_1 = require("@across-protocol/contracts");
|
|
6
|
+
var web3_v1_1 = require("@across-protocol/contracts/dist/src/svm/web3-v1");
|
|
7
|
+
var kit_1 = require("@solana/kit");
|
|
8
|
+
var utils_1 = require("../../utils");
|
|
9
|
+
var utils_2 = require("./utils");
|
|
10
|
+
var _1 = require("./");
|
|
11
|
+
var assert_1 = tslib_1.__importDefault(require("assert"));
|
|
12
|
+
var SvmCpiEventsClient = (function () {
|
|
13
|
+
function SvmCpiEventsClient(rpc, address, eventAuthority, idl) {
|
|
14
|
+
this.rpc = rpc;
|
|
15
|
+
this.programAddress = address;
|
|
16
|
+
this.programEventAuthority = eventAuthority;
|
|
17
|
+
this.idl = idl;
|
|
18
|
+
}
|
|
19
|
+
SvmCpiEventsClient.create = function (rpc) {
|
|
20
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
21
|
+
var isTestnet, programId;
|
|
22
|
+
return tslib_1.__generator(this, function (_a) {
|
|
23
|
+
switch (_a.label) {
|
|
24
|
+
case 0: return [4, (0, utils_2.isDevnet)(rpc)];
|
|
25
|
+
case 1:
|
|
26
|
+
isTestnet = _a.sent();
|
|
27
|
+
programId = (0, contracts_1.getDeployedAddress)("SvmSpoke", (0, web3_v1_1.getSolanaChainId)(isTestnet ? "devnet" : "mainnet").toString());
|
|
28
|
+
if (!programId)
|
|
29
|
+
throw new Error("Program not found");
|
|
30
|
+
return [2, this.createFor(rpc, programId, contracts_1.SvmSpokeIdl)];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
SvmCpiEventsClient.createFor = function (rpc, programId, idl) {
|
|
36
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
37
|
+
var programAddress, eventAuthority;
|
|
38
|
+
return tslib_1.__generator(this, function (_a) {
|
|
39
|
+
switch (_a.label) {
|
|
40
|
+
case 0:
|
|
41
|
+
programAddress = (0, kit_1.address)(programId);
|
|
42
|
+
return [4, (0, kit_1.getProgramDerivedAddress)({
|
|
43
|
+
programAddress: programAddress,
|
|
44
|
+
seeds: ["__event_authority"],
|
|
45
|
+
})];
|
|
46
|
+
case 1:
|
|
47
|
+
eventAuthority = (_a.sent())[0];
|
|
48
|
+
return [2, new SvmCpiEventsClient(rpc, programAddress, eventAuthority, idl)];
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
SvmCpiEventsClient.prototype.queryEvents = function (eventName, fromSlot, toSlot, options) {
|
|
54
|
+
if (options === void 0) { options = { limit: 1000, commitment: "confirmed" }; }
|
|
55
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
56
|
+
var events;
|
|
57
|
+
return tslib_1.__generator(this, function (_a) {
|
|
58
|
+
switch (_a.label) {
|
|
59
|
+
case 0: return [4, this.queryAllEvents(fromSlot, toSlot, options)];
|
|
60
|
+
case 1:
|
|
61
|
+
events = _a.sent();
|
|
62
|
+
return [2, events.filter(function (event) { return event.name === eventName; })];
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
SvmCpiEventsClient.prototype.queryDerivedAddressEvents = function (eventName, derivedAddress, fromSlot, toSlot, options) {
|
|
68
|
+
if (options === void 0) { options = { limit: 1000, commitment: "confirmed" }; }
|
|
69
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
70
|
+
var events;
|
|
71
|
+
return tslib_1.__generator(this, function (_a) {
|
|
72
|
+
switch (_a.label) {
|
|
73
|
+
case 0: return [4, this.queryAllEvents(fromSlot, toSlot, options, derivedAddress)];
|
|
74
|
+
case 1:
|
|
75
|
+
events = _a.sent();
|
|
76
|
+
return [2, events.filter(function (event) { return event.name === eventName; })];
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
SvmCpiEventsClient.prototype.queryAllEvents = function (fromSlot, toSlot, options, derivedAddress) {
|
|
82
|
+
if (options === void 0) { options = { limit: 1000, commitment: "confirmed" }; }
|
|
83
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
84
|
+
var addressToQuery, allSignatures, hasMoreSignatures, currentOptions, signatures, filteredSignatures, eventsWithSlots;
|
|
85
|
+
var _this = this;
|
|
86
|
+
return tslib_1.__generator(this, function (_a) {
|
|
87
|
+
switch (_a.label) {
|
|
88
|
+
case 0:
|
|
89
|
+
addressToQuery = derivedAddress || this.programAddress;
|
|
90
|
+
allSignatures = [];
|
|
91
|
+
hasMoreSignatures = true;
|
|
92
|
+
currentOptions = options;
|
|
93
|
+
_a.label = 1;
|
|
94
|
+
case 1:
|
|
95
|
+
if (!hasMoreSignatures) return [3, 3];
|
|
96
|
+
return [4, this.rpc
|
|
97
|
+
.getSignaturesForAddress(addressToQuery, currentOptions)
|
|
98
|
+
.send()];
|
|
99
|
+
case 2:
|
|
100
|
+
signatures = _a.sent();
|
|
101
|
+
allSignatures.push.apply(allSignatures, signatures);
|
|
102
|
+
if (signatures.length > 0) {
|
|
103
|
+
currentOptions = tslib_1.__assign(tslib_1.__assign({}, currentOptions), { before: signatures[signatures.length - 1].signature });
|
|
104
|
+
}
|
|
105
|
+
if (fromSlot && allSignatures.length > 0 && allSignatures[allSignatures.length - 1].slot < fromSlot) {
|
|
106
|
+
hasMoreSignatures = false;
|
|
107
|
+
}
|
|
108
|
+
hasMoreSignatures = Boolean(hasMoreSignatures && currentOptions.limit && signatures.length === currentOptions.limit);
|
|
109
|
+
return [3, 1];
|
|
110
|
+
case 3:
|
|
111
|
+
filteredSignatures = allSignatures.filter(function (signatureTransaction) {
|
|
112
|
+
if (fromSlot && signatureTransaction.slot < fromSlot)
|
|
113
|
+
return false;
|
|
114
|
+
if (toSlot && signatureTransaction.slot > toSlot)
|
|
115
|
+
return false;
|
|
116
|
+
return true;
|
|
117
|
+
});
|
|
118
|
+
return [4, Promise.all(filteredSignatures.map(function (signatureTransaction) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
119
|
+
var events;
|
|
120
|
+
return tslib_1.__generator(this, function (_a) {
|
|
121
|
+
switch (_a.label) {
|
|
122
|
+
case 0: return [4, this.readEventsFromSignature(signatureTransaction.signature, options.commitment)];
|
|
123
|
+
case 1:
|
|
124
|
+
events = _a.sent();
|
|
125
|
+
return [2, events.map(function (event) { return (tslib_1.__assign(tslib_1.__assign({}, event), { confirmationStatus: signatureTransaction.confirmationStatus, blockTime: signatureTransaction.blockTime, signature: signatureTransaction.signature, slot: signatureTransaction.slot })); })];
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}); }))];
|
|
129
|
+
case 4:
|
|
130
|
+
eventsWithSlots = _a.sent();
|
|
131
|
+
return [2, eventsWithSlots.flat()];
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
};
|
|
136
|
+
SvmCpiEventsClient.prototype.readEventsFromSignature = function (txSignature, commitment) {
|
|
137
|
+
if (commitment === void 0) { commitment = "confirmed"; }
|
|
138
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
139
|
+
var txResult;
|
|
140
|
+
return tslib_1.__generator(this, function (_a) {
|
|
141
|
+
switch (_a.label) {
|
|
142
|
+
case 0: return [4, this.rpc
|
|
143
|
+
.getTransaction(txSignature, { commitment: commitment, maxSupportedTransactionVersion: 0 })
|
|
144
|
+
.send()];
|
|
145
|
+
case 1:
|
|
146
|
+
txResult = _a.sent();
|
|
147
|
+
if (txResult === null)
|
|
148
|
+
return [2, []];
|
|
149
|
+
return [2, this.processEventFromTx(txResult)];
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
};
|
|
154
|
+
SvmCpiEventsClient.prototype.processEventFromTx = function (txResult) {
|
|
155
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
156
|
+
if (!txResult)
|
|
157
|
+
return [];
|
|
158
|
+
var events = [];
|
|
159
|
+
var accountKeys = txResult.transaction.message.accountKeys;
|
|
160
|
+
var messageAccountKeys = tslib_1.__spreadArray([], accountKeys, true);
|
|
161
|
+
messageAccountKeys.push.apply(messageAccountKeys, ((_c = (_b = (_a = txResult === null || txResult === void 0 ? void 0 : txResult.meta) === null || _a === void 0 ? void 0 : _a.loadedAddresses) === null || _b === void 0 ? void 0 : _b.writable) !== null && _c !== void 0 ? _c : []));
|
|
162
|
+
messageAccountKeys.push.apply(messageAccountKeys, ((_f = (_e = (_d = txResult === null || txResult === void 0 ? void 0 : txResult.meta) === null || _d === void 0 ? void 0 : _d.loadedAddresses) === null || _e === void 0 ? void 0 : _e.readonly) !== null && _f !== void 0 ? _f : []));
|
|
163
|
+
for (var _i = 0, _j = (_h = (_g = txResult.meta) === null || _g === void 0 ? void 0 : _g.innerInstructions) !== null && _h !== void 0 ? _h : []; _i < _j.length; _i++) {
|
|
164
|
+
var ixBlock = _j[_i];
|
|
165
|
+
for (var _k = 0, _l = ixBlock.instructions; _k < _l.length; _k++) {
|
|
166
|
+
var ix = _l[_k];
|
|
167
|
+
var ixProgramId = messageAccountKeys[ix.programIdIndex];
|
|
168
|
+
var singleIxAccount = ix.accounts.length === 1 ? messageAccountKeys[ix.accounts[0]] : undefined;
|
|
169
|
+
if (ixProgramId !== undefined &&
|
|
170
|
+
singleIxAccount !== undefined &&
|
|
171
|
+
this.programAddress === ixProgramId &&
|
|
172
|
+
this.programEventAuthority === singleIxAccount) {
|
|
173
|
+
var ixData = utils_1.bs58.decode(ix.data);
|
|
174
|
+
var eventData = Buffer.from(ixData.slice(8)).toString("base64");
|
|
175
|
+
var _m = (0, utils_2.decodeEvent)(this.idl, eventData), name_1 = _m.name, data = _m.data;
|
|
176
|
+
events.push({ program: this.programAddress, name: name_1, data: data });
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
return events;
|
|
181
|
+
};
|
|
182
|
+
SvmCpiEventsClient.prototype.getDepositEventsFromSignature = function (originChainId, txSignature, commitment) {
|
|
183
|
+
if (commitment === void 0) { commitment = "confirmed"; }
|
|
184
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
185
|
+
var _a, events, txDetails, depositEvents;
|
|
186
|
+
return tslib_1.__generator(this, function (_b) {
|
|
187
|
+
switch (_b.label) {
|
|
188
|
+
case 0:
|
|
189
|
+
(0, assert_1.default)((0, utils_1.chainIsSvm)(originChainId), "Origin chain ".concat(originChainId, " is not an SVM chain"));
|
|
190
|
+
return [4, Promise.all([
|
|
191
|
+
this.readEventsFromSignature(txSignature, commitment),
|
|
192
|
+
this.rpc
|
|
193
|
+
.getTransaction(txSignature, {
|
|
194
|
+
commitment: commitment,
|
|
195
|
+
maxSupportedTransactionVersion: 0,
|
|
196
|
+
})
|
|
197
|
+
.send(),
|
|
198
|
+
])];
|
|
199
|
+
case 1:
|
|
200
|
+
_a = _b.sent(), events = _a[0], txDetails = _a[1];
|
|
201
|
+
depositEvents = events === null || events === void 0 ? void 0 : events.filter(function (event) { return (event === null || event === void 0 ? void 0 : event.name) === "FundsDeposited"; });
|
|
202
|
+
if (!txDetails || !(depositEvents === null || depositEvents === void 0 ? void 0 : depositEvents.length)) {
|
|
203
|
+
return [2];
|
|
204
|
+
}
|
|
205
|
+
return [2, events.map(function (event) {
|
|
206
|
+
var unwrappedEventArgs = (0, _1.unwrapEventData)(event, ["depositId"]);
|
|
207
|
+
return tslib_1.__assign(tslib_1.__assign({}, unwrappedEventArgs.data), { depositTimestamp: Number(txDetails.blockTime), originChainId: originChainId, messageHash: (0, utils_1.getMessageHash)(unwrappedEventArgs.data.message), blockNumber: Number(txDetails.slot), txnIndex: 0, txnRef: txSignature, logIndex: 0, destinationChainId: unwrappedEventArgs.data.destinationChainId.toNumber() });
|
|
208
|
+
})];
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
});
|
|
212
|
+
};
|
|
213
|
+
SvmCpiEventsClient.prototype.getFillEventsFromSignature = function (destinationChainId, txSignature, commitment) {
|
|
214
|
+
if (commitment === void 0) { commitment = "confirmed"; }
|
|
215
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
216
|
+
var _a, events, txDetails, fillEvents;
|
|
217
|
+
return tslib_1.__generator(this, function (_b) {
|
|
218
|
+
switch (_b.label) {
|
|
219
|
+
case 0:
|
|
220
|
+
(0, assert_1.default)((0, utils_1.chainIsSvm)(destinationChainId), "Destination chain ".concat(destinationChainId, " is not an SVM chain"));
|
|
221
|
+
return [4, Promise.all([
|
|
222
|
+
this.readEventsFromSignature(txSignature, commitment),
|
|
223
|
+
this.rpc
|
|
224
|
+
.getTransaction(txSignature, {
|
|
225
|
+
commitment: commitment,
|
|
226
|
+
maxSupportedTransactionVersion: 0,
|
|
227
|
+
})
|
|
228
|
+
.send(),
|
|
229
|
+
])];
|
|
230
|
+
case 1:
|
|
231
|
+
_a = _b.sent(), events = _a[0], txDetails = _a[1];
|
|
232
|
+
fillEvents = events === null || events === void 0 ? void 0 : events.filter(function (event) { return (event === null || event === void 0 ? void 0 : event.name) === "FilledRelay"; });
|
|
233
|
+
if (!txDetails || !(fillEvents === null || fillEvents === void 0 ? void 0 : fillEvents.length)) {
|
|
234
|
+
return [2];
|
|
235
|
+
}
|
|
236
|
+
return [2, fillEvents.map(function (event) {
|
|
237
|
+
var unwrappedEventData = (0, _1.unwrapEventData)(event);
|
|
238
|
+
return tslib_1.__assign(tslib_1.__assign({}, unwrappedEventData.data), { fillTimestamp: Number(txDetails.blockTime), blockNumber: Number(txDetails.slot), txnRef: txSignature, txnIndex: 0, logIndex: 0, destinationChainId: destinationChainId, repaymentChainId: unwrappedEventData.data.repaymentChainId.toNumber(), originChainId: unwrappedEventData.data.originChainId.toNumber() });
|
|
239
|
+
})];
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
};
|
|
244
|
+
SvmCpiEventsClient.prototype.getProgramAddress = function () {
|
|
245
|
+
return this.programAddress;
|
|
246
|
+
};
|
|
247
|
+
SvmCpiEventsClient.prototype.getRpc = function () {
|
|
248
|
+
return this.rpc;
|
|
249
|
+
};
|
|
250
|
+
return SvmCpiEventsClient;
|
|
251
|
+
}());
|
|
252
|
+
exports.SvmCpiEventsClient = SvmCpiEventsClient;
|
|
253
|
+
//# sourceMappingURL=eventsClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventsClient.js","sourceRoot":"","sources":["../../../../src/arch/svm/eventsClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./eventsClient"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./SpokeUtils"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./types"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./utils"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./constants"), exports);
|
|
5
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/arch/svm/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,uDAA6B;AAC7B,kDAAwB;AACxB,kDAAwB;AACxB,sDAA4B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Signature, Address, UnixTimestamp } from "@solana/kit";
|
|
2
1
|
import { SvmSpokeClient } from "@across-protocol/contracts";
|
|
2
|
+
import { Address, Rpc, RpcSubscriptions, RpcTransport, Signature, SignatureNotificationsApi, SlotNotificationsApi, SolanaRpcApiFromTransport, UnixTimestamp } from "@solana/kit";
|
|
3
3
|
export type EventData = SvmSpokeClient.BridgedToHubPool | SvmSpokeClient.TokensBridged | SvmSpokeClient.ExecutedRelayerRefundRoot | SvmSpokeClient.RelayedRootBundle | SvmSpokeClient.PausedDeposits | SvmSpokeClient.PausedFills | SvmSpokeClient.SetXDomainAdmin | SvmSpokeClient.EnabledDepositRoute | SvmSpokeClient.FilledRelay | SvmSpokeClient.FundsDeposited | SvmSpokeClient.EmergencyDeletedRootBundle | SvmSpokeClient.RequestedSlowFill | SvmSpokeClient.ClaimedRelayerRefund | SvmSpokeClient.TransferredOwnership;
|
|
4
4
|
export declare enum SVMEventNames {
|
|
5
5
|
FilledRelay = "FilledRelay",
|
|
@@ -18,12 +18,17 @@ export declare enum SVMEventNames {
|
|
|
18
18
|
TransferredOwnership = "TransferredOwnership"
|
|
19
19
|
}
|
|
20
20
|
export type EventName = keyof typeof SVMEventNames;
|
|
21
|
-
export type EventWithData
|
|
21
|
+
export type EventWithData = {
|
|
22
22
|
confirmationStatus: string | null;
|
|
23
23
|
blockTime: UnixTimestamp | null;
|
|
24
24
|
signature: Signature;
|
|
25
25
|
slot: bigint;
|
|
26
|
-
name:
|
|
27
|
-
data:
|
|
26
|
+
name: string;
|
|
27
|
+
data: unknown;
|
|
28
28
|
program: Address;
|
|
29
29
|
};
|
|
30
|
+
export type RpcClient = {
|
|
31
|
+
rpc: Rpc<SolanaRpcApiFromTransport<RpcTransport>>;
|
|
32
|
+
rpcSubscriptions: RpcSubscriptions<SignatureNotificationsApi & SlotNotificationsApi>;
|
|
33
|
+
};
|
|
34
|
+
export type SVMProvider = Rpc<SolanaRpcApiFromTransport<RpcTransport>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/arch/svm/types.ts"],"names":[],"mappings":";;;AA6BA,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,kDAAiC,CAAA;IACjC,4DAA2C,CAAA;IAC3C,wDAAuC,CAAA;IACvC,wEAAuD,CAAA;IACvD,sDAAqC,CAAA;IACrC,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,oDAAmC,CAAA;IACnC,0EAAyD,CAAA;IACzD,wDAAuC,CAAA;IACvC,8DAA6C,CAAA;IAC7C,gDAA+B,CAAA;IAC/B,8DAA6C,CAAA;AAC/C,CAAC,EAfW,aAAa,6BAAb,aAAa,QAexB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Idl } from "@coral-xyz/anchor";
|
|
2
|
+
import { Address, type TransactionSigner } from "@solana/kit";
|
|
3
|
+
import { RelayData } from "../../interfaces";
|
|
4
|
+
import { EventName, SVMProvider } from "./types";
|
|
5
|
+
export declare const SolanaVoidSigner: (simulationAddress: string) => TransactionSigner<string>;
|
|
6
|
+
export declare function isDevnet(rpc: SVMProvider): Promise<boolean>;
|
|
7
|
+
export declare function parseEventData(eventData: any): any;
|
|
8
|
+
export declare function decodeEvent(idl: Idl, rawEvent: string): {
|
|
9
|
+
data: unknown;
|
|
10
|
+
name: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function getEventName(rawName: string): EventName;
|
|
13
|
+
export declare function unwrapEventData(data: unknown, uint8ArrayKeysAsBigInt?: string[], currentKey?: string): unknown;
|
|
14
|
+
export declare function getStatePda(programId: Address): Promise<Address>;
|
|
15
|
+
export declare function getFillStatusPda(programId: Address, relayData: RelayData, destinationChainId: number): Promise<Address>;
|
|
16
|
+
export declare function getRoutePda(originToken: Address, seed: bigint, routeChainId: bigint): Promise<Address>;
|
|
17
|
+
export declare const getEventAuthority: () => Promise<Address<string>>;
|
|
18
|
+
export declare function getRandomSvmAddress(): Address<string>;
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRandomSvmAddress = exports.getEventAuthority = exports.getRoutePda = exports.getFillStatusPda = exports.getStatePda = exports.unwrapEventData = exports.getEventName = exports.decodeEvent = exports.parseEventData = exports.isDevnet = exports.SolanaVoidSigner = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var bs58_1 = tslib_1.__importDefault(require("bs58"));
|
|
6
|
+
var ethers_1 = require("ethers");
|
|
7
|
+
var anchor_1 = require("@coral-xyz/anchor");
|
|
8
|
+
var kit_1 = require("@solana/kit");
|
|
9
|
+
var contracts_1 = require("@across-protocol/contracts");
|
|
10
|
+
var interfaces_1 = require("../../interfaces");
|
|
11
|
+
var utils_1 = require("../../utils");
|
|
12
|
+
var types_1 = require("./types");
|
|
13
|
+
var SolanaVoidSigner = function (simulationAddress) {
|
|
14
|
+
return {
|
|
15
|
+
address: (0, kit_1.address)(simulationAddress),
|
|
16
|
+
signAndSendTransactions: function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
17
|
+
return tslib_1.__generator(this, function (_a) {
|
|
18
|
+
switch (_a.label) {
|
|
19
|
+
case 0: return [4, Promise.resolve([])];
|
|
20
|
+
case 1: return [2, _a.sent()];
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}); },
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
exports.SolanaVoidSigner = SolanaVoidSigner;
|
|
27
|
+
function isDevnet(rpc) {
|
|
28
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
29
|
+
var genesisHash;
|
|
30
|
+
return tslib_1.__generator(this, function (_a) {
|
|
31
|
+
switch (_a.label) {
|
|
32
|
+
case 0: return [4, rpc.getGenesisHash().send()];
|
|
33
|
+
case 1:
|
|
34
|
+
genesisHash = _a.sent();
|
|
35
|
+
return [2, genesisHash === "EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"];
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
exports.isDevnet = isDevnet;
|
|
41
|
+
function parseEventData(eventData) {
|
|
42
|
+
if (!eventData)
|
|
43
|
+
return eventData;
|
|
44
|
+
if (Array.isArray(eventData)) {
|
|
45
|
+
return eventData.map(parseEventData);
|
|
46
|
+
}
|
|
47
|
+
if (typeof eventData === "object") {
|
|
48
|
+
if (eventData.constructor.name === "PublicKey") {
|
|
49
|
+
return (0, kit_1.address)(eventData.toString());
|
|
50
|
+
}
|
|
51
|
+
if (anchor_1.BN.isBN(eventData)) {
|
|
52
|
+
return BigInt(eventData.toString());
|
|
53
|
+
}
|
|
54
|
+
return Object.fromEntries(Object.entries(eventData).map(function (_a) {
|
|
55
|
+
var key = _a[0], value = _a[1];
|
|
56
|
+
return [snakeToCamel(key), parseEventData(value)];
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
return eventData;
|
|
60
|
+
}
|
|
61
|
+
exports.parseEventData = parseEventData;
|
|
62
|
+
function decodeEvent(idl, rawEvent) {
|
|
63
|
+
var event = new anchor_1.BorshEventCoder(idl).decode(rawEvent);
|
|
64
|
+
if (!event)
|
|
65
|
+
throw new Error("Malformed rawEvent for IDL ".concat(idl.address, ": ").concat(rawEvent));
|
|
66
|
+
return {
|
|
67
|
+
name: event.name,
|
|
68
|
+
data: parseEventData(event.data),
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
exports.decodeEvent = decodeEvent;
|
|
72
|
+
function snakeToCamel(s) {
|
|
73
|
+
return s.replace(/(_\w)/g, function (match) { return match[1].toUpperCase(); });
|
|
74
|
+
}
|
|
75
|
+
function getEventName(rawName) {
|
|
76
|
+
if (Object.values(types_1.SVMEventNames).some(function (name) { return rawName.includes(name); }))
|
|
77
|
+
return rawName;
|
|
78
|
+
throw new Error("Unknown event name: ".concat(rawName));
|
|
79
|
+
}
|
|
80
|
+
exports.getEventName = getEventName;
|
|
81
|
+
function unwrapEventData(data, uint8ArrayKeysAsBigInt, currentKey) {
|
|
82
|
+
if (uint8ArrayKeysAsBigInt === void 0) { uint8ArrayKeysAsBigInt = ["depositId"]; }
|
|
83
|
+
if (data == null) {
|
|
84
|
+
return data;
|
|
85
|
+
}
|
|
86
|
+
if (typeof data === "bigint") {
|
|
87
|
+
return utils_1.BigNumber.from(data);
|
|
88
|
+
}
|
|
89
|
+
if (data instanceof Uint8Array || (0, utils_1.isUint8Array)(data)) {
|
|
90
|
+
var bytes = data instanceof Uint8Array ? data : new Uint8Array(data);
|
|
91
|
+
var hex = "0x" + Buffer.from(bytes).toString("hex");
|
|
92
|
+
if (currentKey && uint8ArrayKeysAsBigInt.includes(currentKey)) {
|
|
93
|
+
return utils_1.BigNumber.from(hex);
|
|
94
|
+
}
|
|
95
|
+
return hex;
|
|
96
|
+
}
|
|
97
|
+
if (Array.isArray(data)) {
|
|
98
|
+
return data.map(function (item) { return unwrapEventData(item, uint8ArrayKeysAsBigInt); });
|
|
99
|
+
}
|
|
100
|
+
if (typeof data === "string" && (0, kit_1.isAddress)(data)) {
|
|
101
|
+
return utils_1.SvmAddress.from(data).toBytes32();
|
|
102
|
+
}
|
|
103
|
+
if (typeof data === "object") {
|
|
104
|
+
if (currentKey === "fillType") {
|
|
105
|
+
var fillType = Object.keys(data)[0];
|
|
106
|
+
switch (fillType) {
|
|
107
|
+
case "FastFill":
|
|
108
|
+
return interfaces_1.FillType.FastFill;
|
|
109
|
+
case "ReplacedSlowFill":
|
|
110
|
+
return interfaces_1.FillType.ReplacedSlowFill;
|
|
111
|
+
case "SlowFill":
|
|
112
|
+
return interfaces_1.FillType.SlowFill;
|
|
113
|
+
default:
|
|
114
|
+
throw new Error("Unknown fill type: ".concat(fillType));
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (Object.keys(data).length === 0) {
|
|
118
|
+
return "0x";
|
|
119
|
+
}
|
|
120
|
+
return Object.fromEntries(Object.entries(data).map(function (_a) {
|
|
121
|
+
var key = _a[0], value = _a[1];
|
|
122
|
+
return [
|
|
123
|
+
key,
|
|
124
|
+
unwrapEventData(value, uint8ArrayKeysAsBigInt, key),
|
|
125
|
+
];
|
|
126
|
+
}));
|
|
127
|
+
}
|
|
128
|
+
return data;
|
|
129
|
+
}
|
|
130
|
+
exports.unwrapEventData = unwrapEventData;
|
|
131
|
+
function getStatePda(programId) {
|
|
132
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
133
|
+
var intEncoder, seed, statePda;
|
|
134
|
+
return tslib_1.__generator(this, function (_a) {
|
|
135
|
+
switch (_a.label) {
|
|
136
|
+
case 0:
|
|
137
|
+
intEncoder = (0, kit_1.getU64Encoder)();
|
|
138
|
+
seed = intEncoder.encode(0);
|
|
139
|
+
return [4, (0, kit_1.getProgramDerivedAddress)({
|
|
140
|
+
programAddress: programId,
|
|
141
|
+
seeds: ["state", seed],
|
|
142
|
+
})];
|
|
143
|
+
case 1:
|
|
144
|
+
statePda = (_a.sent())[0];
|
|
145
|
+
return [2, statePda];
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
exports.getStatePda = getStatePda;
|
|
151
|
+
function getFillStatusPda(programId, relayData, destinationChainId) {
|
|
152
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
153
|
+
var relayDataHash, uint8RelayDataHash, fillStatusPda;
|
|
154
|
+
return tslib_1.__generator(this, function (_a) {
|
|
155
|
+
switch (_a.label) {
|
|
156
|
+
case 0:
|
|
157
|
+
relayDataHash = (0, utils_1.getRelayDataHash)(relayData, destinationChainId);
|
|
158
|
+
uint8RelayDataHash = new Uint8Array(Buffer.from(relayDataHash.slice(2), "hex"));
|
|
159
|
+
return [4, (0, kit_1.getProgramDerivedAddress)({
|
|
160
|
+
programAddress: programId,
|
|
161
|
+
seeds: ["fills", uint8RelayDataHash],
|
|
162
|
+
})];
|
|
163
|
+
case 1:
|
|
164
|
+
fillStatusPda = (_a.sent())[0];
|
|
165
|
+
return [2, fillStatusPda];
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
exports.getFillStatusPda = getFillStatusPda;
|
|
171
|
+
function getRoutePda(originToken, seed, routeChainId) {
|
|
172
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
173
|
+
var intEncoder, addressEncoder, pda;
|
|
174
|
+
return tslib_1.__generator(this, function (_a) {
|
|
175
|
+
switch (_a.label) {
|
|
176
|
+
case 0:
|
|
177
|
+
intEncoder = (0, kit_1.getU64Encoder)();
|
|
178
|
+
addressEncoder = (0, kit_1.getAddressEncoder)();
|
|
179
|
+
return [4, (0, kit_1.getProgramDerivedAddress)({
|
|
180
|
+
programAddress: (0, kit_1.address)(contracts_1.SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS),
|
|
181
|
+
seeds: ["route", addressEncoder.encode(originToken), intEncoder.encode(seed), intEncoder.encode(routeChainId)],
|
|
182
|
+
})];
|
|
183
|
+
case 1:
|
|
184
|
+
pda = (_a.sent())[0];
|
|
185
|
+
return [2, pda];
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
exports.getRoutePda = getRoutePda;
|
|
191
|
+
var getEventAuthority = function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
192
|
+
var eventAuthority;
|
|
193
|
+
return tslib_1.__generator(this, function (_a) {
|
|
194
|
+
switch (_a.label) {
|
|
195
|
+
case 0: return [4, (0, kit_1.getProgramDerivedAddress)({
|
|
196
|
+
programAddress: (0, kit_1.address)(contracts_1.SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS),
|
|
197
|
+
seeds: ["__event_authority"],
|
|
198
|
+
})];
|
|
199
|
+
case 1:
|
|
200
|
+
eventAuthority = (_a.sent())[0];
|
|
201
|
+
return [2, eventAuthority];
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
}); };
|
|
205
|
+
exports.getEventAuthority = getEventAuthority;
|
|
206
|
+
function getRandomSvmAddress() {
|
|
207
|
+
var bytes = ethers_1.ethers.utils.randomBytes(32);
|
|
208
|
+
var base58Address = bs58_1.default.encode(bytes);
|
|
209
|
+
return (0, kit_1.address)(base58Address);
|
|
210
|
+
}
|
|
211
|
+
exports.getRandomSvmAddress = getRandomSvmAddress;
|
|
212
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/arch/svm/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ export declare class AcrossConfigStoreClient extends BaseAbstractClient {
|
|
|
43
43
|
cumulativeDisabledChainUpdates: DisabledChainsUpdate[];
|
|
44
44
|
hasLatestConfigStoreVersion: boolean;
|
|
45
45
|
chainId: number | undefined;
|
|
46
|
-
constructor(logger: winston.Logger, configStore: Contract, eventSearchConfig: MakeOptional<EventSearchConfig, "
|
|
46
|
+
constructor(logger: winston.Logger, configStore: Contract, eventSearchConfig: MakeOptional<EventSearchConfig, "to"> | undefined, configStoreVersion: number);
|
|
47
47
|
getRateModelForBlockNumber(l1Token: string, originChainId: number | string, destinationChainId: number | string, blockNumber?: number | undefined): RateModel;
|
|
48
48
|
getRouteRateModelForBlockNumber(l1Token: string, route: string, blockNumber?: number | undefined): RateModel | undefined;
|
|
49
49
|
protected implicitChainIdIndices(chainId?: number): number[];
|
|
@@ -39,7 +39,7 @@ var KNOWN_INVALID_TOKEN_CONFIG_UPDATE_HASHES = [
|
|
|
39
39
|
var AcrossConfigStoreClient = (function (_super) {
|
|
40
40
|
tslib_1.__extends(AcrossConfigStoreClient, _super);
|
|
41
41
|
function AcrossConfigStoreClient(logger, configStore, eventSearchConfig, configStoreVersion) {
|
|
42
|
-
if (eventSearchConfig === void 0) { eventSearchConfig = {
|
|
42
|
+
if (eventSearchConfig === void 0) { eventSearchConfig = { from: 0, maxLookBack: 0 }; }
|
|
43
43
|
var _this = _super.call(this, eventSearchConfig) || this;
|
|
44
44
|
_this.logger = logger;
|
|
45
45
|
_this.configStore = configStore;
|
|
@@ -54,8 +54,8 @@ var AcrossConfigStoreClient = (function (_super) {
|
|
|
54
54
|
_this.cumulativeConfigStoreVersionUpdates = [];
|
|
55
55
|
_this.cumulativeDisabledChainUpdates = [];
|
|
56
56
|
_this.hasLatestConfigStoreVersion = false;
|
|
57
|
-
_this.
|
|
58
|
-
_this.
|
|
57
|
+
_this.firstHeightToSearch = eventSearchConfig.from;
|
|
58
|
+
_this.latestHeightSearched = 0;
|
|
59
59
|
return _this;
|
|
60
60
|
}
|
|
61
61
|
AcrossConfigStoreClient.prototype.getRateModelForBlockNumber = function (l1Token, originChainId, destinationChainId, blockNumber) {
|
|
@@ -229,7 +229,7 @@ var AcrossConfigStoreClient = (function (_super) {
|
|
|
229
229
|
return [2, {
|
|
230
230
|
success: true,
|
|
231
231
|
chainId: chainId,
|
|
232
|
-
searchEndBlock: searchConfig.
|
|
232
|
+
searchEndBlock: searchConfig.to,
|
|
233
233
|
events: {
|
|
234
234
|
updatedTokenConfigEvents: updatedTokenConfigSortableEvents,
|
|
235
235
|
updatedGlobalConfigEvents: updatedGlobalConfigSortableEvents,
|
|
@@ -396,9 +396,9 @@ var AcrossConfigStoreClient = (function (_super) {
|
|
|
396
396
|
_loop_1(i);
|
|
397
397
|
}
|
|
398
398
|
this.hasLatestConfigStoreVersion = this.hasValidConfigStoreVersionForTimestamp();
|
|
399
|
-
this.
|
|
400
|
-
this.
|
|
401
|
-
this.eventSearchConfig.
|
|
399
|
+
this.latestHeightSearched = result.searchEndBlock;
|
|
400
|
+
this.firstHeightToSearch = result.searchEndBlock + 1;
|
|
401
|
+
this.eventSearchConfig.to = undefined;
|
|
402
402
|
this.chainId = (_e = this.chainId) !== null && _e !== void 0 ? _e : chainId;
|
|
403
403
|
this.isUpdated = true;
|
|
404
404
|
this.logger.debug({ at: "ConfigStore", message: "ConfigStore client updated!" });
|