@hyperlane-xyz/sdk 44.0.1 → 45.0.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/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +114 -718
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/consts/testChains.d.ts.map +1 -1
- package/dist/consts/testChains.js +11 -6
- package/dist/consts/testChains.js.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts +6 -0
- package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.js +20 -0
- package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.test.js +17 -0
- package/dist/core/adapters/SealevelCoreAdapter.test.js.map +1 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +14 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/types.test.js +98 -1
- package/dist/core/types.test.js.map +1 -1
- package/dist/deploy/proxy.d.ts +1 -0
- package/dist/deploy/proxy.d.ts.map +1 -1
- package/dist/deploy/proxy.js +6 -0
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/warp.d.ts.map +1 -1
- package/dist/deploy/warp.js +26 -41
- package/dist/deploy/warp.js.map +1 -1
- package/dist/gas/adapters/SealevelIgpAdapter.d.ts +3 -2
- package/dist/gas/adapters/SealevelIgpAdapter.d.ts.map +1 -1
- package/dist/gas/adapters/SealevelIgpAdapter.js +3 -2
- package/dist/gas/adapters/SealevelIgpAdapter.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/ism/EvmIsmModule.d.ts.map +1 -1
- package/dist/ism/EvmIsmModule.js +5 -1
- package/dist/ism/EvmIsmModule.js.map +1 -1
- package/dist/ism/EvmIsmModule.test.js +109 -0
- package/dist/ism/EvmIsmModule.test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +26 -6
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +60 -0
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +165 -34
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.test.js +33 -6
- package/dist/ism/HyperlaneIsmFactory.test.js.map +1 -1
- package/dist/ism/types.d.ts +18 -2
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +43 -3
- package/dist/ism/types.js.map +1 -1
- package/dist/ism/types.test.js +232 -56
- package/dist/ism/types.test.js.map +1 -1
- package/dist/ism/utils.d.ts.map +1 -1
- package/dist/ism/utils.js +13 -0
- package/dist/ism/utils.js.map +1 -1
- package/dist/ism/utils.test.js +43 -1
- package/dist/ism/utils.test.js.map +1 -1
- package/dist/metadata/ChainMetadataManager.d.ts +1 -0
- package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
- package/dist/metadata/ChainMetadataManager.js +1 -0
- package/dist/metadata/ChainMetadataManager.js.map +1 -1
- package/dist/metadata/ChainMetadataManager.test.js +14 -1
- package/dist/metadata/ChainMetadataManager.test.js.map +1 -1
- package/dist/metadata/ChainMetadataResolver.d.ts +1 -0
- package/dist/metadata/ChainMetadataResolver.d.ts.map +1 -1
- package/dist/metadata/ChainMetadataResolver.js +1 -0
- package/dist/metadata/ChainMetadataResolver.js.map +1 -1
- package/dist/metadata/ChainMetadataResolver.test.js +4 -0
- package/dist/metadata/ChainMetadataResolver.test.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +209 -93
- package/dist/metadata/agentConfig.d.ts.map +1 -1
- package/dist/metadata/agentConfig.js +106 -13
- package/dist/metadata/agentConfig.js.map +1 -1
- package/dist/metadata/agentConfig.test.js +277 -25
- package/dist/metadata/agentConfig.test.js.map +1 -1
- package/dist/metadata/chainMetadata.test.js +25 -0
- package/dist/metadata/chainMetadata.test.js.map +1 -1
- package/dist/metadata/chainMetadataTypes.d.ts +36 -0
- package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
- package/dist/metadata/chainMetadataTypes.js +26 -0
- package/dist/metadata/chainMetadataTypes.js.map +1 -1
- package/dist/providers/SeismicSigner.d.ts +4 -12
- package/dist/providers/SeismicSigner.d.ts.map +1 -1
- package/dist/providers/SeismicSigner.js +84 -35
- package/dist/providers/SeismicSigner.js.map +1 -1
- package/dist/providers/SeismicSigner.test.d.ts +2 -0
- package/dist/providers/SeismicSigner.test.d.ts.map +1 -0
- package/dist/providers/SeismicSigner.test.js +160 -0
- package/dist/providers/SeismicSigner.test.js.map +1 -0
- package/dist/providers/SmartProvider/SmartProvider.d.ts +0 -4
- package/dist/providers/SmartProvider/SmartProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.emptyResponse.test.d.ts +2 -0
- package/dist/providers/SmartProvider/SmartProvider.emptyResponse.test.d.ts.map +1 -0
- package/dist/providers/SmartProvider/SmartProvider.emptyResponse.test.js +164 -0
- package/dist/providers/SmartProvider/SmartProvider.emptyResponse.test.js.map +1 -0
- package/dist/providers/SmartProvider/SmartProvider.js +20 -61
- package/dist/providers/SmartProvider/SmartProvider.js.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.test.js +159 -0
- package/dist/providers/SmartProvider/SmartProvider.test.js.map +1 -1
- package/dist/providers/SmartProvider/jsonRpcError.d.ts +7 -0
- package/dist/providers/SmartProvider/jsonRpcError.d.ts.map +1 -0
- package/dist/providers/SmartProvider/jsonRpcError.js +67 -0
- package/dist/providers/SmartProvider/jsonRpcError.js.map +1 -0
- package/dist/providers/SmartProvider/types.d.ts +1 -0
- package/dist/providers/SmartProvider/types.d.ts.map +1 -1
- package/dist/providers/builders/ethersV5.d.ts +0 -1
- package/dist/providers/builders/ethersV5.d.ts.map +1 -1
- package/dist/providers/builders/ethersV5.js +19 -5
- package/dist/providers/builders/ethersV5.js.map +1 -1
- package/dist/providers/builders/ethersV5.test.d.ts +2 -0
- package/dist/providers/builders/ethersV5.test.d.ts.map +1 -0
- package/dist/providers/builders/ethersV5.test.js +77 -0
- package/dist/providers/builders/ethersV5.test.js.map +1 -0
- package/dist/providers/builders/radix.browser.d.ts +1 -0
- package/dist/providers/builders/radix.browser.d.ts.map +1 -1
- package/dist/providers/builders/radix.browser.js +1 -0
- package/dist/providers/builders/radix.browser.js.map +1 -1
- package/dist/providers/builders/radix.d.ts.map +1 -1
- package/dist/providers/builders/radix.gateway.test.d.ts +2 -0
- package/dist/providers/builders/radix.gateway.test.d.ts.map +1 -0
- package/dist/providers/builders/radix.gateway.test.js +39 -0
- package/dist/providers/builders/radix.gateway.test.js.map +1 -0
- package/dist/providers/builders/radix.js +1 -0
- package/dist/providers/builders/radix.js.map +1 -1
- package/dist/providers/builders/radix.test.js +1 -0
- package/dist/providers/builders/radix.test.js.map +1 -1
- package/dist/providers/providerBuilders.d.ts +1 -1
- package/dist/providers/providerBuilders.d.ts.map +1 -1
- package/dist/providers/providerBuilders.js +1 -1
- package/dist/providers/providerBuilders.js.map +1 -1
- package/dist/rpc/evm/EvmEventLogsReader.hardhat-test.js +60 -8
- package/dist/rpc/evm/EvmEventLogsReader.hardhat-test.js.map +1 -1
- package/dist/test/errors.d.ts +21 -0
- package/dist/test/errors.d.ts.map +1 -1
- package/dist/test/errors.js +25 -0
- package/dist/test/errors.js.map +1 -1
- package/dist/timelock/evm/EvmTimelockReader.hardhat-test.js +92 -7
- package/dist/timelock/evm/EvmTimelockReader.hardhat-test.js.map +1 -1
- package/dist/timelock/evm/errors.js +1 -1
- package/dist/timelock/evm/errors.js.map +1 -1
- package/dist/token/EvmWarpRouteReader.d.ts +26 -0
- package/dist/token/EvmWarpRouteReader.d.ts.map +1 -1
- package/dist/token/EvmWarpRouteReader.hardhat-test.js +28 -3
- package/dist/token/EvmWarpRouteReader.hardhat-test.js.map +1 -1
- package/dist/token/EvmWarpRouteReader.js +137 -41
- package/dist/token/EvmWarpRouteReader.js.map +1 -1
- package/dist/token/EvmWarpRouteReader.test.js +381 -3
- package/dist/token/EvmWarpRouteReader.test.js.map +1 -1
- package/dist/token/types.d.ts +1 -1
- package/dist/token/warpCheck.d.ts +1 -0
- package/dist/token/warpCheck.d.ts.map +1 -1
- package/dist/token/warpCheck.js +25 -2
- package/dist/token/warpCheck.js.map +1 -1
- package/dist/token/warpCheck.test.js +119 -0
- package/dist/token/warpCheck.test.js.map +1 -1
- package/dist/utils/contract.d.ts +32 -0
- package/dist/utils/contract.d.ts.map +1 -1
- package/dist/utils/contract.js +90 -3
- package/dist/utils/contract.js.map +1 -1
- package/dist/utils/contract.test.js +402 -2
- package/dist/utils/contract.test.js.map +1 -1
- package/dist/utils/contract.transport.test.d.ts +2 -0
- package/dist/utils/contract.transport.test.d.ts.map +1 -0
- package/dist/utils/contract.transport.test.js +145 -0
- package/dist/utils/contract.transport.test.js.map +1 -0
- package/dist/utils/ism.d.ts +12 -6
- package/dist/utils/ism.d.ts.map +1 -1
- package/dist/utils/ism.js +92 -41
- package/dist/utils/ism.js.map +1 -1
- package/dist/utils/ism.test.js +75 -2
- package/dist/utils/ism.test.js.map +1 -1
- package/package.json +29 -15
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ethersV5.test.js","sourceRoot":"","sources":["../../../src/providers/builders/ethersV5.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix.browser.d.ts","sourceRoot":"","sources":["../../../src/providers/builders/radix.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,UAAU,oBAAoB;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,KAAK,wBAAwB,GAAG,KAC9B,OAAO,EAAE,oBAAoB,KAC1B,gBAAgB,CAAC;AAEtB,UAAU,kBAAkB;IAC1B,aAAa,EAAE,wBAAwB,CAAC;CACzC;AAED,KAAK,mBAAmB,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAC;AA8B7D,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,YAAY,GAAE,mBAAuC,GACpD,gBAAgB,
|
|
1
|
+
{"version":3,"file":"radix.browser.d.ts","sourceRoot":"","sources":["../../../src/providers/builders/radix.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,UAAU,oBAAoB;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,KAAK,wBAAwB,GAAG,KAC9B,OAAO,EAAE,oBAAoB,KAC1B,gBAAgB,CAAC;AAEtB,UAAU,kBAAkB;IAC1B,aAAa,EAAE,wBAAwB,CAAC;CACzC;AAED,KAAK,mBAAmB,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAC;AA8B7D,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,YAAY,GAAE,mBAAuC,GACpD,gBAAgB,CA0BlB;AAED,eAAO,MAAM,2BAA2B,EAAE,iBAAiB,CAAC,aAAa,CAKxE,CAAC"}
|
|
@@ -28,6 +28,7 @@ export function createLazyRadixProvider(metadata, loadProvider = loadRadixProvid
|
|
|
28
28
|
const provider = new LazyAsync(() => loadProvider().then(({ RadixProvider }) => new RadixProvider({
|
|
29
29
|
rpcUrls: urls,
|
|
30
30
|
networkId,
|
|
31
|
+
gatewayUrls: metadata.gatewayUrls?.map(({ http }) => http),
|
|
31
32
|
chainMetadata: metadata,
|
|
32
33
|
})));
|
|
33
34
|
const asyncProvider = createAsyncMethodProxy(() => provider.get());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix.browser.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIpE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"radix.browser.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIpE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAqBlD,MAAM,iBAAiB,GAAwB,GAAG,EAAE,CAClD,MAAM,CAAC,kCAAkC,CAAC,CAAC;AAE7C,SAAS,sBAAsB,CAC7B,SAA2B;IAE3B,uEAAuE;IACvE,6EAA6E;IAC7E,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE;YACnB,IAAI,QAAQ,KAAK,MAAM;gBAAE,OAAO,SAAS,CAAC;YAC1C,OAAO,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;gBAClC,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC7C,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;oBACjC,MAAM,IAAI,KAAK,CACb,2BAA2B,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAC9D,CAAC;gBACJ,CAAC;gBACD,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAC7C,CAAC,CAAC;QACJ,CAAC;KACF,CACG,CAAC;AACT,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,QAAuB,EACvB,YAAY,GAAwB,iBAAiB;IAErD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IACtC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,oCAAoC,CAAC,CAAC;IACjE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,qCAAqC,CAAC,CAAC;IAElE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,CAClC,YAAY,EAAE,CAAC,IAAI,CACjB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CACpB,IAAI,aAAa,CAAC;QAChB,OAAO,EAAE,IAAI;QACb,SAAS;QACT,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;QAC1D,aAAa,EAAE,QAAQ;KACxB,CAAC,CACL,CACF,CAAC;IACF,MAAM,aAAa,GAAG,sBAAsB,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IAEnE,OAAO,IAAI,KAAK,CAAC,aAAa,EAAE;QAC9B,GAAG,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAClC,IAAI,QAAQ,KAAK,YAAY;gBAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC;YACjD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAqC,CAC3E,QAAuB,EACvB,EAAE;IACF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;AAChD,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix.d.ts","sourceRoot":"","sources":["../../../src/providers/builders/radix.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,eAAO,MAAM,2BAA2B,EAAE,iBAAiB,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"radix.d.ts","sourceRoot":"","sources":["../../../src/providers/builders/radix.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,eAAO,MAAM,2BAA2B,EAAE,iBAAiB,CAAC,aAAa,CAcxE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radix.gateway.test.d.ts","sourceRoot":"","sources":["../../../src/providers/builders/radix.gateway.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import sinon from 'sinon';
|
|
3
|
+
import { ProtocolType } from '@hyperlane-xyz/utils';
|
|
4
|
+
import { ChainMetadataSchema } from '../../metadata/chainMetadataTypes.js';
|
|
5
|
+
import { defaultRadixProviderBuilder as browserBuilder } from './radix.browser.js';
|
|
6
|
+
import { defaultRadixProviderBuilder as nodeBuilder } from './radix.js';
|
|
7
|
+
describe('Radix gateway selection', () => {
|
|
8
|
+
afterEach(() => sinon.restore());
|
|
9
|
+
for (const [name, builder] of Object.entries({
|
|
10
|
+
node: nodeBuilder,
|
|
11
|
+
browser: browserBuilder,
|
|
12
|
+
})) {
|
|
13
|
+
for (const configured of [true, false]) {
|
|
14
|
+
it(`${name} uses ${configured ? 'the configured gateway' : 'the network default'}`, async () => {
|
|
15
|
+
const fetch = sinon.stub(globalThis, 'fetch').resolves(new Response(JSON.stringify({
|
|
16
|
+
ledger_state: { state_version: 1 },
|
|
17
|
+
}), { status: 200, headers: { 'Content-Type': 'application/json' } }));
|
|
18
|
+
const metadata = {
|
|
19
|
+
name: 'radix',
|
|
20
|
+
protocol: ProtocolType.Radix,
|
|
21
|
+
chainId: 1,
|
|
22
|
+
domainId: 1,
|
|
23
|
+
rpcUrls: [{ http: 'https://core.example' }],
|
|
24
|
+
...(configured
|
|
25
|
+
? { gatewayUrls: [{ http: 'https://gateway.example' }] }
|
|
26
|
+
: {}),
|
|
27
|
+
};
|
|
28
|
+
const parsed = ChainMetadataSchema.parse(metadata);
|
|
29
|
+
expect(parsed.gatewayUrls).to.deep.equal(metadata.gatewayUrls);
|
|
30
|
+
const { provider } = builder(parsed);
|
|
31
|
+
expect(await provider.isHealthy()).to.equal(true);
|
|
32
|
+
expect(fetch.calledOnce).to.equal(true);
|
|
33
|
+
expect(fetch.firstCall.args[0]).to.equal(`${configured ? 'https://gateway.example' : 'https://mainnet.radixdlt.com'}/status/gateway-status`);
|
|
34
|
+
expect(provider.getRpcUrls()).to.deep.equal(['https://core.example']);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
//# sourceMappingURL=radix.gateway.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radix.gateway.test.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.gateway.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,2BAA2B,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,2BAA2B,IAAI,WAAW,EAAE,MAAM,YAAY,CAAC;AAExE,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAEjC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC;QAC3C,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,cAAc;KACxB,CAAC,EAAE,CAAC;QACH,KAAK,MAAM,UAAU,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,GAAG,IAAI,SAAS,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,qBAAqB,EAAE,EAAE,KAAK,IAAI,EAAE;gBAC7F,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,QAAQ,CACpD,IAAI,QAAQ,CACV,IAAI,CAAC,SAAS,CAAC;oBACb,YAAY,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;iBACnC,CAAC,EACF,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CACF,CAAC;gBACF,MAAM,QAAQ,GAAkB;oBAC9B,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,YAAY,CAAC,KAAK;oBAC5B,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,CAAC;oBACX,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;oBAC3C,GAAG,CAAC,UAAU;wBACZ,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,EAAE;wBACxD,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;gBACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnD,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACtC,GAAG,UAAU,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,8BAA8B,wBAAwB,CACnG,CAAC;gBACF,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -9,6 +9,7 @@ export const defaultRadixProviderBuilder = (metadata) => {
|
|
|
9
9
|
const provider = new RadixSDKProvider({
|
|
10
10
|
rpcUrls: rpcUrls.map((rpc) => rpc.http),
|
|
11
11
|
networkId,
|
|
12
|
+
gatewayUrls: metadata.gatewayUrls?.map(({ http }) => http),
|
|
12
13
|
chainMetadata: metadata,
|
|
13
14
|
});
|
|
14
15
|
return { provider, type: ProviderType.Radix };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIlD,MAAM,CAAC,MAAM,2BAA2B,GAAqC,CAC3E,QAAuB,EACvB,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IACtC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,oCAAoC,CAAC,CAAC;IACjE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,qCAAqC,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;QACpC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC;QACvC,SAAS;QACT,aAAa,EAAE,QAAQ;KACxB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;AAChD,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"radix.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIlD,MAAM,CAAC,MAAM,2BAA2B,GAAqC,CAC3E,QAAuB,EACvB,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IACtC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,oCAAoC,CAAC,CAAC;IACjE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,qCAAqC,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;QACpC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC;QACvC,SAAS;QACT,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;QAC1D,aAAa,EAAE,QAAQ;KACxB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;AAChD,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix.test.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"radix.test.js","sourceRoot":"","sources":["../../../src/providers/builders/radix.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export type { ProviderBuilderFn, TypedProviderBuilderFn, } from './builders/types.js';
|
|
2
2
|
export { defaultAleoProviderBuilder } from './builders/aleo.js';
|
|
3
3
|
export { defaultCosmJsNativeProviderBuilder, defaultCosmJsProviderBuilder, defaultCosmJsWasmProviderBuilder, } from './builders/cosmos.js';
|
|
4
|
-
export { defaultEthersV5ProviderBuilder,
|
|
4
|
+
export { defaultEthersV5ProviderBuilder, defaultProviderBuilder, } from './builders/ethersV5.js';
|
|
5
5
|
export { defaultRadixProviderBuilder } from './builders/radix.js';
|
|
6
6
|
export { defaultSolProviderBuilder } from './builders/solana.js';
|
|
7
7
|
export { defaultStarknetJsProviderBuilder } from './builders/starknet.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerBuilders.d.ts","sourceRoot":"","sources":["../../src/providers/providerBuilders.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,
|
|
1
|
+
{"version":3,"file":"providerBuilders.d.ts","sourceRoot":"","sources":["../../src/providers/providerBuilders.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,KAAK,kBAAkB,GACxB,MAAM,iCAAiC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { defaultAleoProviderBuilder } from './builders/aleo.js';
|
|
2
2
|
export { defaultCosmJsNativeProviderBuilder, defaultCosmJsProviderBuilder, defaultCosmJsWasmProviderBuilder, } from './builders/cosmos.js';
|
|
3
|
-
export { defaultEthersV5ProviderBuilder,
|
|
3
|
+
export { defaultEthersV5ProviderBuilder, defaultProviderBuilder, } from './builders/ethersV5.js';
|
|
4
4
|
export { defaultRadixProviderBuilder } from './builders/radix.js';
|
|
5
5
|
export { defaultSolProviderBuilder } from './builders/solana.js';
|
|
6
6
|
export { defaultStarknetJsProviderBuilder } from './builders/starknet.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerBuilders.js","sourceRoot":"","sources":["../../src/providers/providerBuilders.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,
|
|
1
|
+
{"version":3,"file":"providerBuilders.js","sourceRoot":"","sources":["../../src/providers/providerBuilders.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,4BAA4B,EAC5B,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EACL,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,yBAAyB,EACzB,gCAAgC,GAEjC,MAAM,iCAAiC,CAAC"}
|
|
@@ -5,7 +5,8 @@ import hre from 'hardhat';
|
|
|
5
5
|
import sinon from 'sinon';
|
|
6
6
|
import { ERC20Test__factory } from '@hyperlane-xyz/core';
|
|
7
7
|
import { assert } from '@hyperlane-xyz/utils';
|
|
8
|
-
import {
|
|
8
|
+
import { EXPLORER_API_URL, explorerLogsResponse, explorerResultResponse, } from '../../block-explorer/testFixtures.js';
|
|
9
|
+
import { TestChainName, test1 } from '../../consts/testChains.js';
|
|
9
10
|
import { ExplorerFamily } from '../../metadata/chainMetadataTypes.js';
|
|
10
11
|
import { MultiProvider } from '../../providers/MultiProvider.js';
|
|
11
12
|
import { randomAddress, randomInt } from '../../test/testUtils.js';
|
|
@@ -271,21 +272,72 @@ describe('EvmEventLogsReader', () => {
|
|
|
271
272
|
beforeEach(async () => {
|
|
272
273
|
await deployTestErc20();
|
|
273
274
|
multiProvider = new MultiProvider({
|
|
274
|
-
|
|
275
|
+
[TestChainName.test1]: {
|
|
276
|
+
...test1,
|
|
277
|
+
blockExplorers: [
|
|
278
|
+
{
|
|
279
|
+
name: 'Test explorer',
|
|
280
|
+
url: EXPLORER_API_URL,
|
|
281
|
+
apiUrl: EXPLORER_API_URL,
|
|
282
|
+
family: ExplorerFamily.Routescan,
|
|
283
|
+
},
|
|
284
|
+
],
|
|
285
|
+
},
|
|
275
286
|
});
|
|
287
|
+
multiProvider.setProvider(TestChainName.test1, providerChainTest1);
|
|
276
288
|
reader = EvmEventLogsReader.fromConfig({
|
|
277
|
-
chain:
|
|
289
|
+
chain: TestChainName.test1,
|
|
278
290
|
}, multiProvider);
|
|
279
291
|
});
|
|
280
292
|
it('should get the expected number of events when fromBlock is not provided', async () => {
|
|
293
|
+
await (await testContract.mint(1)).wait();
|
|
294
|
+
const toBlock = await providerChainTest1.getBlockNumber();
|
|
295
|
+
const logs = await providerChainTest1.getLogs({
|
|
296
|
+
address: testContract.address,
|
|
297
|
+
fromBlock: deploymentBlockNumber,
|
|
298
|
+
toBlock,
|
|
299
|
+
topics: [transferTopic],
|
|
300
|
+
});
|
|
301
|
+
const rpcLogs = sinon
|
|
302
|
+
.stub(providerChainTest1, 'getLogs')
|
|
303
|
+
.rejects(new Error('Explorer tests must not fall back to RPC logs'));
|
|
304
|
+
const fetchStub = sinon
|
|
305
|
+
.stub(globalThis, 'fetch')
|
|
306
|
+
.callsFake(async (input) => {
|
|
307
|
+
const url = new URL(input instanceof Request ? input.url : input.toString());
|
|
308
|
+
expect(url.origin + url.pathname).to.equal(EXPLORER_API_URL);
|
|
309
|
+
if (url.searchParams.get('action') === 'getcontractcreation') {
|
|
310
|
+
expect(url.searchParams.get('contractaddresses')).to.equal(testContract.address);
|
|
311
|
+
return explorerResultResponse({
|
|
312
|
+
contractAddress: testContract.address,
|
|
313
|
+
contractCreator: contractOwner.address,
|
|
314
|
+
txHash: testContract.deployTransaction.hash,
|
|
315
|
+
blockNumber: deploymentBlockNumber,
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
expect(url.searchParams.get('action')).to.equal('getLogs');
|
|
319
|
+
expect(url.searchParams.get('address')).to.equal(testContract.address);
|
|
320
|
+
expect(url.searchParams.get('topic0')).to.equal(transferTopic);
|
|
321
|
+
expect(url.searchParams.get('fromBlock')).to.equal(String(deploymentBlockNumber));
|
|
322
|
+
expect(url.searchParams.get('toBlock')).to.equal(String(toBlock));
|
|
323
|
+
return explorerLogsResponse(logs.map((log) => ({
|
|
324
|
+
...log,
|
|
325
|
+
blockNumber: ethers.utils.hexValue(log.blockNumber),
|
|
326
|
+
logIndex: ethers.utils.hexValue(log.logIndex),
|
|
327
|
+
transactionIndex: ethers.utils.hexValue(log.transactionIndex),
|
|
328
|
+
})));
|
|
329
|
+
});
|
|
281
330
|
const res = await reader.getLogsByTopic({
|
|
282
|
-
contractAddress:
|
|
283
|
-
|
|
284
|
-
eventTopic: '0xc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b58',
|
|
331
|
+
contractAddress: testContract.address,
|
|
332
|
+
eventTopic: transferTopic,
|
|
285
333
|
// Omitting from block to test getting contract deployment block from explorer
|
|
286
|
-
toBlock
|
|
334
|
+
toBlock,
|
|
287
335
|
});
|
|
288
|
-
expect(res
|
|
336
|
+
expect(res).to.have.length(2);
|
|
337
|
+
expect(res.map((log) => log.transactionHash)).to.deep.equal(logs.map((log) => log.transactionHash));
|
|
338
|
+
expect(res[0].blockNumber).to.equal(deploymentBlockNumber);
|
|
339
|
+
expect(fetchStub.callCount).to.equal(2);
|
|
340
|
+
expect(rpcLogs.called).to.be.false;
|
|
289
341
|
});
|
|
290
342
|
});
|
|
291
343
|
describe('retry before fallback', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmEventLogsReader.hardhat-test.js","sourceRoot":"","sources":["../../../src/rpc/evm/EvmEventLogsReader.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EvmEventLogsReader.hardhat-test.js","sourceRoot":"","sources":["../../../src/rpc/evm/EvmEventLogsReader.hardhat-test.ts"],"names":[],"mappings":"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"}
|
package/dist/test/errors.d.ts
CHANGED
|
@@ -6,4 +6,25 @@ export declare function networkError(): Error & {
|
|
|
6
6
|
code: string;
|
|
7
7
|
};
|
|
8
8
|
export declare function wrappedError(cause: Error): Error;
|
|
9
|
+
export declare function panicRevertError(): Error & {
|
|
10
|
+
code: string;
|
|
11
|
+
data: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function errorStringRevertError(): Error & {
|
|
14
|
+
code: string;
|
|
15
|
+
data: string;
|
|
16
|
+
};
|
|
17
|
+
export declare function lsp17NoExtensionError(): Error & {
|
|
18
|
+
code: string;
|
|
19
|
+
data: string;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Shape of the CALL_EXCEPTION ethers v5 JsonRpcProvider throws for an eth_call
|
|
23
|
+
* that failed without revert data: data "0x" with the original error nested.
|
|
24
|
+
*/
|
|
25
|
+
export declare function ethersCallExceptionWithNestedError(nested: object): Error & {
|
|
26
|
+
code: string;
|
|
27
|
+
data: string;
|
|
28
|
+
error: object;
|
|
29
|
+
};
|
|
9
30
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/test/errors.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,IAAI,KAAK,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAKA;AAED,wBAAgB,YAAY,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAIvD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAEhD"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/test/errors.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,IAAI,KAAK,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAKA;AAED,wBAAgB,YAAY,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAIvD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAEhD;AAED,wBAAgB,gBAAgB,IAAI,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAKzE;AAED,wBAAgB,sBAAsB,IAAI,KAAK,GAAG;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAKA;AAED,wBAAgB,qBAAqB,IAAI,KAAK,GAAG;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAKA;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,MAAM,GACb,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAOvD"}
|
package/dist/test/errors.js
CHANGED
|
@@ -12,4 +12,29 @@ export function networkError() {
|
|
|
12
12
|
export function wrappedError(cause) {
|
|
13
13
|
return new Error('wrapped provider error', { cause });
|
|
14
14
|
}
|
|
15
|
+
export function panicRevertError() {
|
|
16
|
+
return Object.assign(new Error('call revert exception'), {
|
|
17
|
+
code: 'CALL_EXCEPTION',
|
|
18
|
+
data: `0x4e487b71${'0'.repeat(62)}11`,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
export function errorStringRevertError() {
|
|
22
|
+
return Object.assign(new Error('call revert exception'), {
|
|
23
|
+
code: 'CALL_EXCEPTION',
|
|
24
|
+
data: `0x08c379a0${'0'.repeat(62)}20${'0'.repeat(62)}06${'706175736564'}${'0'.repeat(52)}`,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
export function lsp17NoExtensionError() {
|
|
28
|
+
return Object.assign(new Error('call revert exception'), {
|
|
29
|
+
code: 'CALL_EXCEPTION',
|
|
30
|
+
data: `0xbb370b2b${'0'.repeat(56)}46904840`,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Shape of the CALL_EXCEPTION ethers v5 JsonRpcProvider throws for an eth_call
|
|
35
|
+
* that failed without revert data: data "0x" with the original error nested.
|
|
36
|
+
*/
|
|
37
|
+
export function ethersCallExceptionWithNestedError(nested) {
|
|
38
|
+
return Object.assign(new Error('missing revert data in call exception; Transaction reverted without a reason string [ See: https://links.ethers.org/v5-errors-CALL_EXCEPTION ] (data="0x", transaction={}, error={}, code=CALL_EXCEPTION, version=providers/5.8.0)'), { code: 'CALL_EXCEPTION', data: '0x', error: nested });
|
|
39
|
+
}
|
|
15
40
|
//# sourceMappingURL=errors.js.map
|
package/dist/test/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/test/errors.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB;IAIlC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,EAAE;QACnE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,EAAE;QACtD,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAY;IACvC,OAAO,IAAI,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,CAAC"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/test/errors.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB;IAIlC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,EAAE;QACnE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,EAAE;QACtD,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAY;IACvC,OAAO,IAAI,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,EAAE;QACvD,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI;KACtC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,sBAAsB;IAIpC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,EAAE;QACvD,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB;IAInC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,EAAE;QACvD,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU;KAC5C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kCAAkC,CAChD,MAAc;IAEd,OAAO,MAAM,CAAC,MAAM,CAClB,IAAI,KAAK,CACP,oOAAoO,CACrO,EACD,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CACtD,CAAC;AACJ,CAAC"}
|
|
@@ -2,9 +2,11 @@ import chai, { expect } from 'chai';
|
|
|
2
2
|
import chaiAsPromised from 'chai-as-promised';
|
|
3
3
|
import { ethers } from 'ethers';
|
|
4
4
|
import hre from 'hardhat';
|
|
5
|
+
import sinon from 'sinon';
|
|
5
6
|
import { TimelockController__factory } from '@hyperlane-xyz/core';
|
|
6
7
|
import { assert, deepCopy, normalizeAddressEvm } from '@hyperlane-xyz/utils';
|
|
7
|
-
import {
|
|
8
|
+
import { EXPLORER_API_URL, explorerResponse, } from '../../block-explorer/testFixtures.js';
|
|
9
|
+
import { TestChainName, ethereumTestChain, test1, } from '../../consts/testChains.js';
|
|
8
10
|
import { ZBytes32String } from '../../metadata/customZodTypes.js';
|
|
9
11
|
import { MultiProvider } from '../../providers/MultiProvider.js';
|
|
10
12
|
import { randomAddress } from '../../test/testUtils.js';
|
|
@@ -736,22 +738,103 @@ describe(EvmTimelockReader.name, () => {
|
|
|
736
738
|
});
|
|
737
739
|
describe(`${EvmTimelockReader.name} (Block Explorer)`, () => {
|
|
738
740
|
let reader;
|
|
739
|
-
let
|
|
741
|
+
let sandbox;
|
|
742
|
+
let operationIds;
|
|
743
|
+
let explorerFetch;
|
|
744
|
+
let rpcGetLogs;
|
|
740
745
|
beforeEach(async () => {
|
|
746
|
+
sandbox = sinon.createSandbox();
|
|
747
|
+
const timelock = await deployTestTimelock();
|
|
748
|
+
operationIds = [];
|
|
749
|
+
for (let i = 0; i < 3; i++) {
|
|
750
|
+
const salt = ethers.utils.formatBytes32String(`explorer-${i}`);
|
|
751
|
+
const args = [
|
|
752
|
+
[executor.address],
|
|
753
|
+
[0],
|
|
754
|
+
['0x'],
|
|
755
|
+
EMPTY_BYTES_32,
|
|
756
|
+
salt,
|
|
757
|
+
];
|
|
758
|
+
await (await timelock.connect(proposer).scheduleBatch(...args, 0)).wait();
|
|
759
|
+
operationIds.push(await timelock.hashOperationBatch(...args));
|
|
760
|
+
if (i === 0)
|
|
761
|
+
await (await timelock.connect(proposer).cancel(operationIds[i])).wait();
|
|
762
|
+
if (i === 1)
|
|
763
|
+
await (await timelock.connect(executor).executeBatch(...args)).wait();
|
|
764
|
+
}
|
|
765
|
+
const explorerUrl = EXPLORER_API_URL;
|
|
741
766
|
multiProvider = new MultiProvider({
|
|
742
|
-
|
|
767
|
+
[TestChainName.test1]: {
|
|
768
|
+
...test1,
|
|
769
|
+
blockExplorers: ethereumTestChain.blockExplorers
|
|
770
|
+
?.slice(0, 1)
|
|
771
|
+
.map((explorer) => ({
|
|
772
|
+
...explorer,
|
|
773
|
+
apiUrl: explorerUrl,
|
|
774
|
+
url: 'https://explorer.test',
|
|
775
|
+
})),
|
|
776
|
+
},
|
|
777
|
+
});
|
|
778
|
+
multiProvider.setProvider(TestChainName.test1, providerChainTest1);
|
|
779
|
+
const fixtureLogs = await providerChainTest1.getLogs({
|
|
780
|
+
address: timelock.address,
|
|
781
|
+
fromBlock: timelock.deployTransaction.blockNumber,
|
|
782
|
+
toBlock: 'latest',
|
|
783
|
+
});
|
|
784
|
+
rpcGetLogs = sandbox
|
|
785
|
+
.stub(providerChainTest1, 'getLogs')
|
|
786
|
+
.rejects(new Error('Explorer tests must not fall back to RPC logs'));
|
|
787
|
+
// Exercise the explorer HTTP/decoding path using real local events.
|
|
788
|
+
// No public RPC or explorer is involved in this Hardhat suite.
|
|
789
|
+
explorerFetch = sandbox
|
|
790
|
+
.stub(globalThis, 'fetch')
|
|
791
|
+
.callsFake(async (input) => {
|
|
792
|
+
const url = new URL(input instanceof Request ? input.url : input.toString());
|
|
793
|
+
expect(url.origin + url.pathname).to.equal(explorerUrl);
|
|
794
|
+
let result;
|
|
795
|
+
if (url.searchParams.get('action') === 'getcontractcreation') {
|
|
796
|
+
result = [
|
|
797
|
+
{
|
|
798
|
+
contractAddress: timelock.address,
|
|
799
|
+
contractCreator: contractOwner.address,
|
|
800
|
+
txHash: timelock.deployTransaction.hash,
|
|
801
|
+
blockNumber: timelock.deployTransaction.blockNumber,
|
|
802
|
+
},
|
|
803
|
+
];
|
|
804
|
+
}
|
|
805
|
+
else {
|
|
806
|
+
expect(url.searchParams.get('action')).to.equal('getLogs');
|
|
807
|
+
expect(url.searchParams.get('address')).to.equal(timelock.address);
|
|
808
|
+
const topic = url.searchParams.get('topic0');
|
|
809
|
+
assert(topic, 'Expected an event topic');
|
|
810
|
+
const logs = fixtureLogs.filter((log) => log.topics[0] === topic &&
|
|
811
|
+
log.blockNumber >= Number(url.searchParams.get('fromBlock')) &&
|
|
812
|
+
log.blockNumber <= Number(url.searchParams.get('toBlock')));
|
|
813
|
+
result = logs.map((log) => ({
|
|
814
|
+
...log,
|
|
815
|
+
blockNumber: ethers.utils.hexValue(log.blockNumber),
|
|
816
|
+
logIndex: ethers.utils.hexValue(log.logIndex),
|
|
817
|
+
transactionIndex: ethers.utils.hexValue(log.transactionIndex),
|
|
818
|
+
}));
|
|
819
|
+
}
|
|
820
|
+
return explorerResponse({ status: '1', message: 'OK', result });
|
|
743
821
|
});
|
|
744
822
|
reader = EvmTimelockReader.fromConfig({
|
|
745
|
-
chain:
|
|
746
|
-
timelockAddress
|
|
823
|
+
chain: TestChainName.test1,
|
|
824
|
+
timelockAddress,
|
|
747
825
|
multiProvider,
|
|
748
826
|
});
|
|
749
827
|
});
|
|
828
|
+
afterEach(() => {
|
|
829
|
+
sandbox.restore();
|
|
830
|
+
expect(explorerFetch.called).to.be.true;
|
|
831
|
+
expect(rpcGetLogs.called).to.be.false;
|
|
832
|
+
});
|
|
750
833
|
describe(`${EvmTimelockReader.prototype.getScheduledOperations.name}`, () => {
|
|
751
834
|
it('should retrieve scheduled transactions from block explorer API', async () => {
|
|
752
835
|
const scheduledTxs = await reader.getScheduledOperations();
|
|
753
836
|
// Should find some scheduled transactions on this timelock
|
|
754
|
-
expect(Object.keys(scheduledTxs)
|
|
837
|
+
expect(Object.keys(scheduledTxs)).to.have.members(operationIds);
|
|
755
838
|
// Validate structure of returned transactions
|
|
756
839
|
for (const [txId, tx] of Object.entries(scheduledTxs)) {
|
|
757
840
|
expect(ZBytes32String.safeParse(txId).success).to.be.true;
|
|
@@ -767,6 +850,7 @@ describe(EvmTimelockReader.name, () => {
|
|
|
767
850
|
it('should retrieve cancelled operation IDs from block explorer API', async () => {
|
|
768
851
|
const cancelledIds = await reader.getCancelledOperationIds();
|
|
769
852
|
expect(cancelledIds).to.be.instanceOf(Set);
|
|
853
|
+
expect([...cancelledIds]).to.deep.equal([operationIds[0]]);
|
|
770
854
|
for (const id of cancelledIds) {
|
|
771
855
|
expect(ZBytes32String.safeParse(id).success).to.be.true;
|
|
772
856
|
}
|
|
@@ -776,7 +860,7 @@ describe(EvmTimelockReader.name, () => {
|
|
|
776
860
|
it('should retrieve executed operation IDs from block explorer API', async () => {
|
|
777
861
|
const executedIds = await reader.getExecutedOperationIds();
|
|
778
862
|
// Should find some executed transactions on this timelock
|
|
779
|
-
expect(executedIds
|
|
863
|
+
expect([...executedIds]).to.deep.equal([operationIds[1]]);
|
|
780
864
|
for (const id of executedIds) {
|
|
781
865
|
expect(ZBytes32String.safeParse(id).success).to.be.true;
|
|
782
866
|
}
|
|
@@ -785,6 +869,7 @@ describe(EvmTimelockReader.name, () => {
|
|
|
785
869
|
describe(`${EvmTimelockReader.prototype.getScheduledExecutableTransactions.name}`, () => {
|
|
786
870
|
it('should retrieve scheduled executable transactions from block explorer API', async () => {
|
|
787
871
|
const executableTxs = await reader.getScheduledExecutableTransactions();
|
|
872
|
+
expect(Object.keys(executableTxs)).to.deep.equal([operationIds[2]]);
|
|
788
873
|
for (const [txId, executableTx] of Object.entries(executableTxs)) {
|
|
789
874
|
expect(executableTx.id).to.equal(txId);
|
|
790
875
|
expect(ZBytes32String.safeParse(txId).success).to.be.true;
|