@hyperlane-xyz/sdk 3.2.0 → 3.4.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.
Files changed (140) hide show
  1. package/dist/app/MultiProtocolApp.d.ts.map +1 -1
  2. package/dist/app/MultiProtocolApp.js +6 -0
  3. package/dist/app/MultiProtocolApp.js.map +1 -1
  4. package/dist/app/MultiProtocolApp.test.js +4 -1
  5. package/dist/app/MultiProtocolApp.test.js.map +1 -1
  6. package/dist/consts/chainMetadata.d.ts +18 -28
  7. package/dist/consts/chainMetadata.d.ts.map +1 -1
  8. package/dist/consts/chainMetadata.js +497 -542
  9. package/dist/consts/chainMetadata.js.map +1 -1
  10. package/dist/consts/chains.d.ts +5 -5
  11. package/dist/consts/chains.d.ts.map +1 -1
  12. package/dist/consts/chains.js +4 -4
  13. package/dist/consts/chains.js.map +1 -1
  14. package/dist/consts/environments/index.d.ts +114 -114
  15. package/dist/consts/environments/index.js +1 -1
  16. package/dist/consts/multisigIsm.d.ts.map +1 -1
  17. package/dist/consts/multisigIsm.js +123 -120
  18. package/dist/consts/multisigIsm.js.map +1 -1
  19. package/dist/core/HyperlaneCore.d.ts +5 -4
  20. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  21. package/dist/core/HyperlaneCore.js.map +1 -1
  22. package/dist/core/HyperlaneCoreDeployer.d.ts +1 -2
  23. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  24. package/dist/core/HyperlaneCoreDeployer.js +11 -8
  25. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  26. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  27. package/dist/deploy/HyperlaneDeployer.js +2 -2
  28. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  29. package/dist/deploy/contracts.d.ts.map +1 -1
  30. package/dist/deploy/contracts.js +0 -4
  31. package/dist/deploy/contracts.js.map +1 -1
  32. package/dist/gas/token-prices.d.ts +3 -2
  33. package/dist/gas/token-prices.d.ts.map +1 -1
  34. package/dist/gas/token-prices.js +6 -3
  35. package/dist/gas/token-prices.js.map +1 -1
  36. package/dist/gas/token-prices.test.js +1 -1
  37. package/dist/gas/token-prices.test.js.map +1 -1
  38. package/dist/hook/HyperlaneHookDeployer.d.ts +2 -2
  39. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  40. package/dist/hook/HyperlaneHookDeployer.js +6 -2
  41. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  42. package/dist/hook/contracts.d.ts +2 -2
  43. package/dist/hook/contracts.d.ts.map +1 -1
  44. package/dist/hook/contracts.js +1 -1
  45. package/dist/hook/contracts.js.map +1 -1
  46. package/dist/hook/types.d.ts +6 -3
  47. package/dist/hook/types.d.ts.map +1 -1
  48. package/dist/hook/types.js.map +1 -1
  49. package/dist/index.d.ts +9 -5
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +22 -13
  52. package/dist/index.js.map +1 -1
  53. package/dist/ism/HyperlaneIsmFactory.d.ts +26 -8
  54. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  55. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +175 -10
  56. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  57. package/dist/ism/HyperlaneIsmFactory.js +193 -65
  58. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  59. package/dist/ism/types.d.ts +10 -2
  60. package/dist/ism/types.d.ts.map +1 -1
  61. package/dist/ism/types.js +4 -1
  62. package/dist/ism/types.js.map +1 -1
  63. package/dist/logger.d.ts +3 -0
  64. package/dist/logger.d.ts.map +1 -0
  65. package/dist/logger.js +11 -0
  66. package/dist/logger.js.map +1 -0
  67. package/dist/metadata/ChainMetadataManager.d.ts +7 -7
  68. package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
  69. package/dist/metadata/ChainMetadataManager.js +18 -42
  70. package/dist/metadata/ChainMetadataManager.js.map +1 -1
  71. package/dist/metadata/agentConfig.d.ts +724 -1
  72. package/dist/metadata/agentConfig.d.ts.map +1 -1
  73. package/dist/metadata/blockExplorer.d.ts +6 -0
  74. package/dist/metadata/blockExplorer.d.ts.map +1 -0
  75. package/dist/metadata/blockExplorer.js +60 -0
  76. package/dist/metadata/blockExplorer.js.map +1 -0
  77. package/dist/metadata/chainMetadata.test.js +10 -0
  78. package/dist/metadata/chainMetadata.test.js.map +1 -1
  79. package/dist/metadata/chainMetadataTypes.d.ts +233 -0
  80. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  81. package/dist/metadata/chainMetadataTypes.js +4 -0
  82. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  83. package/dist/metadata/health.d.ts +9 -0
  84. package/dist/metadata/health.d.ts.map +1 -0
  85. package/dist/metadata/health.js +120 -0
  86. package/dist/metadata/health.js.map +1 -0
  87. package/dist/providers/MultiProvider.d.ts.map +1 -1
  88. package/dist/providers/MultiProvider.js +1 -1
  89. package/dist/providers/MultiProvider.js.map +1 -1
  90. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts +21 -0
  91. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts.map +1 -0
  92. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js +120 -0
  93. package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js.map +1 -0
  94. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts +16 -0
  95. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -0
  96. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +115 -0
  97. package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -0
  98. package/dist/providers/SmartProvider/ProviderMethods.d.ts +21 -0
  99. package/dist/providers/SmartProvider/ProviderMethods.d.ts.map +1 -0
  100. package/dist/providers/SmartProvider/ProviderMethods.js +25 -0
  101. package/dist/providers/SmartProvider/ProviderMethods.js.map +1 -0
  102. package/dist/providers/SmartProvider/SmartProvider.d.ts +44 -0
  103. package/dist/providers/SmartProvider/SmartProvider.d.ts.map +1 -0
  104. package/dist/providers/SmartProvider/SmartProvider.foundry-test.d.ts +2 -0
  105. package/dist/providers/SmartProvider/SmartProvider.foundry-test.d.ts.map +1 -0
  106. package/dist/providers/SmartProvider/SmartProvider.foundry-test.js +67 -0
  107. package/dist/providers/SmartProvider/SmartProvider.foundry-test.js.map +1 -0
  108. package/dist/providers/SmartProvider/SmartProvider.js +248 -0
  109. package/dist/providers/SmartProvider/SmartProvider.js.map +1 -0
  110. package/dist/providers/SmartProvider/SmartProvider.test.d.ts +2 -0
  111. package/dist/providers/SmartProvider/SmartProvider.test.d.ts.map +1 -0
  112. package/dist/providers/SmartProvider/SmartProvider.test.js +171 -0
  113. package/dist/providers/SmartProvider/SmartProvider.test.js.map +1 -0
  114. package/dist/providers/SmartProvider/types.d.ts +36 -0
  115. package/dist/providers/SmartProvider/types.d.ts.map +1 -0
  116. package/dist/providers/SmartProvider/types.js +10 -0
  117. package/dist/providers/SmartProvider/types.js.map +1 -0
  118. package/dist/providers/providerBuilders.d.ts +10 -11
  119. package/dist/providers/providerBuilders.d.ts.map +1 -1
  120. package/dist/providers/providerBuilders.js +6 -34
  121. package/dist/providers/providerBuilders.js.map +1 -1
  122. package/dist/router/MultiProtocolRouterApps.test.js +3 -2
  123. package/dist/router/MultiProtocolRouterApps.test.js.map +1 -1
  124. package/dist/test/metadata-check.d.ts +2 -0
  125. package/dist/test/metadata-check.d.ts.map +1 -0
  126. package/dist/test/metadata-check.js +116 -0
  127. package/dist/test/metadata-check.js.map +1 -0
  128. package/dist/test/testUtils.js +2 -2
  129. package/dist/test/testUtils.js.map +1 -1
  130. package/dist/token/adapters/SealevelTokenAdapter.d.ts +1 -9
  131. package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
  132. package/package.json +10 -8
  133. package/dist/consts/agentStartBlocks.d.ts +0 -3
  134. package/dist/consts/agentStartBlocks.d.ts.map +0 -1
  135. package/dist/consts/agentStartBlocks.js +0 -28
  136. package/dist/consts/agentStartBlocks.js.map +0 -1
  137. package/dist/providers/RetryProvider.d.ts +0 -12
  138. package/dist/providers/RetryProvider.d.ts.map +0 -1
  139. package/dist/providers/RetryProvider.js +0 -21
  140. package/dist/providers/RetryProvider.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/metadata/health.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MultiProvider.d.ts","sourceRoot":"","sources":["../../src/providers/MultiProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiProvider.d.ts","sourceRoot":"","sources":["../../src/providers/MultiProvider.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,7 @@ class MultiProvider extends ChainMetadataManager_1.ChainMetadataManager {
53
53
  this.providers[name] = new ethers_1.providers.JsonRpcProvider('http://127.0.0.1:8545', 31337);
54
54
  }
55
55
  else if (rpcUrls.length) {
56
- this.providers[name] = this.providerBuilder(rpcUrls, chainId, providerBuilders_1.DEFAULT_RETRY_OPTIONS);
56
+ this.providers[name] = this.providerBuilder(rpcUrls, chainId);
57
57
  }
58
58
  else {
59
59
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"MultiProvider.js","sourceRoot":"","sources":["../../src/providers/MultiProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiProvider.js","sourceRoot":"","sources":["../../src/providers/MultiProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import debug from 'debug';
2
+ import { providers } from 'ethers';
3
+ import { BlockExplorer } from '../../metadata/chainMetadataTypes';
4
+ import { IProviderMethods, ProviderMethod } from './ProviderMethods';
5
+ export declare class HyperlaneEtherscanProvider extends providers.EtherscanProvider implements IProviderMethods {
6
+ readonly explorerConfig: BlockExplorer;
7
+ protected readonly logger: debug.Debugger;
8
+ readonly supportedMethods: ProviderMethod[];
9
+ constructor(explorerConfig: BlockExplorer, network: providers.Networkish);
10
+ getBaseUrl(): string;
11
+ getUrl(module: string, params: Record<string, string>): string;
12
+ getPostUrl(): string;
13
+ getHostname(): string;
14
+ getQueryWaitTime(): number;
15
+ fetch(module: string, params: Record<string, any>, post?: boolean): Promise<any>;
16
+ perform(method: string, params: any, reqId?: number): Promise<any>;
17
+ performGetLogs(params: {
18
+ filter: providers.Filter;
19
+ }): Promise<any>;
20
+ }
21
+ //# sourceMappingURL=HyperlaneEtherscanProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneEtherscanProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/SmartProvider/HyperlaneEtherscanProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAInC,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAElE,OAAO,EACL,gBAAgB,EAChB,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAM3B,qBAAa,0BACX,SAAQ,SAAS,CAAC,iBAClB,YAAW,gBAAgB;aAWT,cAAc,EAAE,aAAa;IAT/C,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwC;IAEjE,SAAgB,gBAAgB,mBAI7B;gBAGe,cAAc,EAAE,aAAa,EAC7C,OAAO,EAAE,SAAS,CAAC,UAAU;IAU/B,UAAU,IAAI,MAAM;IAQpB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM;IAQ9D,UAAU,IAAI,MAAM;IAIpB,WAAW,IAAI,MAAM;IAIrB,gBAAgB,IAAI,MAAM;IAOpB,KAAK,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,GAAG,CAAC;IAiBT,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAelE,cAAc,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAsBzE"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HyperlaneEtherscanProvider = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const ethers_1 = require("ethers");
9
+ const utils_1 = require("@hyperlane-xyz/utils");
10
+ const ProviderMethods_1 = require("./ProviderMethods");
11
+ // Used for crude rate-limiting of explorer queries without API keys
12
+ const hostToLastQueried = {};
13
+ const ETHERSCAN_THROTTLE_TIME = 6000; // 6.0 seconds
14
+ class HyperlaneEtherscanProvider extends ethers_1.providers.EtherscanProvider {
15
+ constructor(explorerConfig, network) {
16
+ super(network, explorerConfig.apiKey);
17
+ this.explorerConfig = explorerConfig;
18
+ this.logger = (0, debug_1.default)('hyperlane:EtherscanProvider');
19
+ // Seeing problems with these two methods even though etherscan api claims to support them
20
+ this.supportedMethods = (0, ProviderMethods_1.excludeProviderMethods)([
21
+ ProviderMethods_1.ProviderMethod.Call,
22
+ ProviderMethods_1.ProviderMethod.EstimateGas,
23
+ ProviderMethods_1.ProviderMethod.SendTransaction,
24
+ ]);
25
+ if (!explorerConfig.apiKey) {
26
+ this.logger('HyperlaneEtherscanProviders created without an API key will be severely rate limited. Consider using an API key for better reliability.');
27
+ }
28
+ }
29
+ getBaseUrl() {
30
+ if (!this.explorerConfig)
31
+ return ''; // Constructor net yet finished
32
+ const apiUrl = this.explorerConfig?.apiUrl;
33
+ if (!apiUrl)
34
+ throw new Error('Explorer config missing apiUrl');
35
+ if (apiUrl.endsWith('/api'))
36
+ return apiUrl.slice(0, -4);
37
+ return apiUrl;
38
+ }
39
+ getUrl(module, params) {
40
+ const combinedParams = (0, utils_1.objFilter)(params, (k, v) => !!k && !!v);
41
+ combinedParams['module'] = module;
42
+ if (this.apiKey)
43
+ combinedParams['apikey'] = this.apiKey;
44
+ const parsedParams = new URLSearchParams(combinedParams);
45
+ return `${this.getBaseUrl()}/api?${parsedParams.toString()}`;
46
+ }
47
+ getPostUrl() {
48
+ return `${this.getBaseUrl()}/api`;
49
+ }
50
+ getHostname() {
51
+ return new URL(this.getBaseUrl()).hostname;
52
+ }
53
+ getQueryWaitTime() {
54
+ if (!this.isCommunityResource())
55
+ return 0;
56
+ const hostname = this.getHostname();
57
+ const lastExplorerQuery = hostToLastQueried[hostname] || 0;
58
+ return ETHERSCAN_THROTTLE_TIME - (Date.now() - lastExplorerQuery);
59
+ }
60
+ async fetch(module, params, post) {
61
+ if (!this.isCommunityResource())
62
+ return super.fetch(module, params, post);
63
+ const hostname = this.getHostname();
64
+ let waitTime = this.getQueryWaitTime();
65
+ while (waitTime > 0) {
66
+ this.logger(`HyperlaneEtherscanProvider waiting ${waitTime}ms to avoid rate limit`);
67
+ await (0, utils_1.sleep)(waitTime);
68
+ waitTime = this.getQueryWaitTime();
69
+ }
70
+ hostToLastQueried[hostname] = Date.now();
71
+ return super.fetch(module, params, post);
72
+ }
73
+ async perform(method, params, reqId) {
74
+ this.logger(`HyperlaneEtherscanProvider performing method ${method} for reqId ${reqId}`);
75
+ if (!this.supportedMethods.includes(method))
76
+ throw new Error(`Unsupported method ${method}`);
77
+ if (method === ProviderMethods_1.ProviderMethod.GetLogs) {
78
+ return this.performGetLogs(params);
79
+ }
80
+ else {
81
+ return super.perform(method, params);
82
+ }
83
+ }
84
+ // Overriding to allow more than one topic value
85
+ async performGetLogs(params) {
86
+ const args = { action: 'getLogs' };
87
+ if (params.filter.fromBlock)
88
+ args.fromBlock = checkLogTag(params.filter.fromBlock);
89
+ if (params.filter.toBlock)
90
+ args.toBlock = checkLogTag(params.filter.toBlock);
91
+ if (params.filter.address)
92
+ args.address = params.filter.address;
93
+ const topics = params.filter.topics;
94
+ if (topics?.length) {
95
+ if (topics.length > 2)
96
+ throw new Error(`Unsupported topic count ${topics.length} (max 2)`);
97
+ for (let i = 0; i < topics.length; i++) {
98
+ const topic = topics[i];
99
+ if (!topic || typeof topic !== 'string' || topic.length !== 66)
100
+ throw new Error(`Unsupported topic format: ${topic}`);
101
+ args[`topic${i}`] = topic;
102
+ if (i < topics.length - 1)
103
+ args[`topic${i}_${i + 1}_opr`] = 'and';
104
+ }
105
+ }
106
+ return this.fetch('logs', args);
107
+ }
108
+ }
109
+ exports.HyperlaneEtherscanProvider = HyperlaneEtherscanProvider;
110
+ // From ethers/providers/src.ts/providers/etherscan-provider.ts
111
+ function checkLogTag(blockTag) {
112
+ if (typeof blockTag === 'number')
113
+ return blockTag;
114
+ if (blockTag === 'pending')
115
+ throw new Error('pending not supported');
116
+ if (blockTag === 'latest')
117
+ return blockTag;
118
+ return parseInt(blockTag.substring(2), 16);
119
+ }
120
+ //# sourceMappingURL=HyperlaneEtherscanProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneEtherscanProvider.js","sourceRoot":"","sources":["../../../src/providers/SmartProvider/HyperlaneEtherscanProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import debug from 'debug';
2
+ import { providers } from 'ethers';
3
+ import { IProviderMethods, ProviderMethod } from './ProviderMethods';
4
+ import { RpcConfigWithConnectionInfo } from './types';
5
+ export declare class HyperlaneJsonRpcProvider extends providers.StaticJsonRpcProvider implements IProviderMethods {
6
+ readonly rpcConfig: RpcConfigWithConnectionInfo;
7
+ protected readonly logger: debug.Debugger;
8
+ readonly supportedMethods: ProviderMethod[];
9
+ constructor(rpcConfig: RpcConfigWithConnectionInfo, network: providers.Networkish);
10
+ perform(method: string, params: any, reqId?: number): Promise<any>;
11
+ performGetLogs(params: {
12
+ filter: providers.Filter;
13
+ }): Promise<any>;
14
+ getBaseUrl(): string;
15
+ }
16
+ //# sourceMappingURL=HyperlaneJsonRpcProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneJsonRpcProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/SmartProvider/HyperlaneJsonRpcProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAa,SAAS,EAAS,MAAM,QAAQ,CAAC;AAIrD,OAAO,EAEL,gBAAgB,EAChB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAKtD,qBAAa,wBACX,SAAQ,SAAS,CAAC,qBAClB,YAAW,gBAAgB;aAMT,SAAS,EAAE,2BAA2B;IAJxD,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAsC;IAC/D,SAAgB,gBAAgB,mBAAsB;gBAGpC,SAAS,EAAE,2BAA2B,EACtD,OAAO,EAAE,SAAS,CAAC,UAAU;IAKzB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAwBlE,cAAc,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA4FxE,UAAU,IAAI,MAAM;CAGrB"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HyperlaneJsonRpcProvider = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const ethers_1 = require("ethers");
9
+ const utils_1 = require("@hyperlane-xyz/utils");
10
+ const ProviderMethods_1 = require("./ProviderMethods");
11
+ const NUM_LOG_BLOCK_RANGES_TO_QUERY = 10;
12
+ const NUM_PARALLEL_LOG_QUERIES = 5;
13
+ class HyperlaneJsonRpcProvider extends ethers_1.providers.StaticJsonRpcProvider {
14
+ constructor(rpcConfig, network) {
15
+ super(rpcConfig.connection ?? rpcConfig.http, network);
16
+ this.rpcConfig = rpcConfig;
17
+ this.logger = (0, debug_1.default)('hyperlane:JsonRpcProvider');
18
+ this.supportedMethods = ProviderMethods_1.AllProviderMethods;
19
+ }
20
+ async perform(method, params, reqId) {
21
+ this.logger(`HyperlaneJsonRpcProvider performing method ${method} for reqId ${reqId}`);
22
+ if (method === ProviderMethods_1.ProviderMethod.GetLogs) {
23
+ return this.performGetLogs(params);
24
+ }
25
+ const result = await super.perform(method, params);
26
+ if (result === '0x' &&
27
+ [
28
+ ProviderMethods_1.ProviderMethod.Call,
29
+ ProviderMethods_1.ProviderMethod.GetBalance,
30
+ ProviderMethods_1.ProviderMethod.GetBlock,
31
+ ProviderMethods_1.ProviderMethod.GetBlockNumber,
32
+ ].includes(method)) {
33
+ this.logger(`Received 0x result from ${method} for reqId ${reqId}.`);
34
+ throw new Error('Invalid response from provider');
35
+ }
36
+ return result;
37
+ }
38
+ async performGetLogs(params) {
39
+ const superPerform = () => super.perform(ProviderMethods_1.ProviderMethod.GetLogs, params);
40
+ const paginationOptions = this.rpcConfig.pagination;
41
+ if (!paginationOptions || !params.filter)
42
+ return superPerform();
43
+ const { fromBlock, toBlock, address, topics } = params.filter;
44
+ const { maxBlockRange, minBlockNumber, maxBlockAge } = paginationOptions;
45
+ if (!maxBlockRange && !maxBlockAge && (0, utils_1.isNullish)(minBlockNumber))
46
+ return superPerform();
47
+ const currentBlockNumber = await super.perform(ProviderMethods_1.ProviderMethod.GetBlockNumber, null);
48
+ let endBlock;
49
+ if ((0, utils_1.isNullish)(toBlock) || toBlock === 'latest') {
50
+ endBlock = currentBlockNumber;
51
+ }
52
+ else if ((0, utils_1.isBigNumberish)(toBlock)) {
53
+ endBlock = ethers_1.BigNumber.from(toBlock).toNumber();
54
+ }
55
+ else {
56
+ return superPerform();
57
+ }
58
+ let startBlock;
59
+ if ((0, utils_1.isNullish)(fromBlock) || fromBlock === 'earliest') {
60
+ startBlock = 0;
61
+ }
62
+ else if ((0, utils_1.isBigNumberish)(fromBlock)) {
63
+ startBlock = ethers_1.BigNumber.from(fromBlock).toNumber();
64
+ }
65
+ else {
66
+ return superPerform();
67
+ }
68
+ if (startBlock > endBlock) {
69
+ this.logger(`Start block ${startBlock} greater than end block. Using ${endBlock} instead`);
70
+ startBlock = endBlock;
71
+ }
72
+ const minForBlockRange = maxBlockRange
73
+ ? endBlock - maxBlockRange * NUM_LOG_BLOCK_RANGES_TO_QUERY + 1
74
+ : 0;
75
+ if (startBlock < minForBlockRange) {
76
+ this.logger(`Start block ${startBlock} requires too many queries, using ${minForBlockRange}.`);
77
+ startBlock = minForBlockRange;
78
+ }
79
+ const minForBlockAge = maxBlockAge ? currentBlockNumber - maxBlockAge : 0;
80
+ if (startBlock < minForBlockAge) {
81
+ this.logger(`Start block ${startBlock} below max block age, increasing to ${minForBlockAge}`);
82
+ startBlock = minForBlockAge;
83
+ }
84
+ if (minBlockNumber && startBlock < minBlockNumber) {
85
+ this.logger(`Start block ${startBlock} below config min, increasing to ${minBlockNumber}`);
86
+ startBlock = minBlockNumber;
87
+ }
88
+ const blockChunkRange = maxBlockRange || endBlock - startBlock;
89
+ const blockChunks = [];
90
+ for (let from = startBlock; from <= endBlock; from += blockChunkRange) {
91
+ const to = Math.min(from + blockChunkRange - 1, endBlock);
92
+ blockChunks.push([from, to]);
93
+ }
94
+ let combinedResults = [];
95
+ const requestChunks = (0, utils_1.chunk)(blockChunks, NUM_PARALLEL_LOG_QUERIES);
96
+ for (const reqChunk of requestChunks) {
97
+ const resultPromises = reqChunk.map((blockChunk) => super.perform(ProviderMethods_1.ProviderMethod.GetLogs, {
98
+ filter: {
99
+ address,
100
+ topics,
101
+ fromBlock: ethers_1.utils.hexValue(ethers_1.BigNumber.from(blockChunk[0])),
102
+ toBlock: ethers_1.utils.hexValue(ethers_1.BigNumber.from(blockChunk[1])),
103
+ },
104
+ }));
105
+ const results = await Promise.all(resultPromises);
106
+ combinedResults = [...combinedResults, ...results.flat()];
107
+ }
108
+ return combinedResults;
109
+ }
110
+ getBaseUrl() {
111
+ return this.connection.url;
112
+ }
113
+ }
114
+ exports.HyperlaneJsonRpcProvider = HyperlaneJsonRpcProvider;
115
+ //# sourceMappingURL=HyperlaneJsonRpcProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneJsonRpcProvider.js","sourceRoot":"","sources":["../../../src/providers/SmartProvider/HyperlaneJsonRpcProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export interface IProviderMethods {
2
+ readonly supportedMethods: ProviderMethod[];
3
+ }
4
+ export declare enum ProviderMethod {
5
+ Call = "call",
6
+ EstimateGas = "estimateGas",
7
+ GetBalance = "getBalance",
8
+ GetBlock = "getBlock",
9
+ GetBlockNumber = "getBlockNumber",
10
+ GetCode = "getCode",
11
+ GetGasPrice = "getGasPrice",
12
+ GetStorageAt = "getStorageAt",
13
+ GetTransaction = "getTransaction",
14
+ GetTransactionCount = "getTransactionCount",
15
+ GetTransactionReceipt = "getTransactionReceipt",
16
+ GetLogs = "getLogs",
17
+ SendTransaction = "sendTransaction"
18
+ }
19
+ export declare const AllProviderMethods: ProviderMethod[];
20
+ export declare function excludeProviderMethods(exclude: ProviderMethod[]): ProviderMethod[];
21
+ //# sourceMappingURL=ProviderMethods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderMethods.d.ts","sourceRoot":"","sources":["../../../src/providers/SmartProvider/ProviderMethods.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,cAAc,EAAE,CAAC;CAC7C;AAED,oBAAY,cAAc;IACxB,IAAI,SAAS;IACb,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,qBAAqB,0BAA0B;IAC/C,OAAO,YAAY;IACnB,eAAe,oBAAoB;CACpC;AAED,eAAO,MAAM,kBAAkB,kBAAgC,CAAC;AAEhE,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EAAE,GACxB,cAAc,EAAE,CAElB"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.excludeProviderMethods = exports.AllProviderMethods = exports.ProviderMethod = void 0;
4
+ var ProviderMethod;
5
+ (function (ProviderMethod) {
6
+ ProviderMethod["Call"] = "call";
7
+ ProviderMethod["EstimateGas"] = "estimateGas";
8
+ ProviderMethod["GetBalance"] = "getBalance";
9
+ ProviderMethod["GetBlock"] = "getBlock";
10
+ ProviderMethod["GetBlockNumber"] = "getBlockNumber";
11
+ ProviderMethod["GetCode"] = "getCode";
12
+ ProviderMethod["GetGasPrice"] = "getGasPrice";
13
+ ProviderMethod["GetStorageAt"] = "getStorageAt";
14
+ ProviderMethod["GetTransaction"] = "getTransaction";
15
+ ProviderMethod["GetTransactionCount"] = "getTransactionCount";
16
+ ProviderMethod["GetTransactionReceipt"] = "getTransactionReceipt";
17
+ ProviderMethod["GetLogs"] = "getLogs";
18
+ ProviderMethod["SendTransaction"] = "sendTransaction";
19
+ })(ProviderMethod || (exports.ProviderMethod = ProviderMethod = {}));
20
+ exports.AllProviderMethods = Object.values(ProviderMethod);
21
+ function excludeProviderMethods(exclude) {
22
+ return exports.AllProviderMethods.filter((m) => !exclude.includes(m));
23
+ }
24
+ exports.excludeProviderMethods = excludeProviderMethods;
25
+ //# sourceMappingURL=ProviderMethods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderMethods.js","sourceRoot":"","sources":["../../../src/providers/SmartProvider/ProviderMethods.ts"],"names":[],"mappings":";;;AAIA,IAAY,cAcX;AAdD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,6CAA2B,CAAA;IAC3B,2CAAyB,CAAA;IACzB,uCAAqB,CAAA;IACrB,mDAAiC,CAAA;IACjC,qCAAmB,CAAA;IACnB,6CAA2B,CAAA;IAC3B,+CAA6B,CAAA;IAC7B,mDAAiC,CAAA;IACjC,6DAA2C,CAAA;IAC3C,iEAA+C,CAAA;IAC/C,qCAAmB,CAAA;IACnB,qDAAmC,CAAA;AACrC,CAAC,EAdW,cAAc,8BAAd,cAAc,QAczB;AAEY,QAAA,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAEhE,SAAgB,sBAAsB,CACpC,OAAyB;IAEzB,OAAO,0BAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAJD,wDAIC"}
@@ -0,0 +1,44 @@
1
+ import debug from 'debug';
2
+ import { providers } from 'ethers';
3
+ import { BlockExplorer, RpcUrl } from '../../metadata/chainMetadataTypes';
4
+ import { HyperlaneEtherscanProvider } from './HyperlaneEtherscanProvider';
5
+ import { HyperlaneJsonRpcProvider } from './HyperlaneJsonRpcProvider';
6
+ import { IProviderMethods, ProviderMethod } from './ProviderMethods';
7
+ import { ChainMetadataWithRpcConnectionInfo, ProviderPerformResult, SmartProviderOptions } from './types';
8
+ type HyperlaneProvider = HyperlaneEtherscanProvider | HyperlaneJsonRpcProvider;
9
+ export declare class HyperlaneSmartProvider extends providers.BaseProvider implements IProviderMethods {
10
+ readonly options?: SmartProviderOptions | undefined;
11
+ protected readonly logger: debug.Debugger;
12
+ readonly explorerProviders: HyperlaneEtherscanProvider[];
13
+ readonly rpcProviders: HyperlaneJsonRpcProvider[];
14
+ readonly supportedMethods: ProviderMethod[];
15
+ requestCount: number;
16
+ constructor(network: providers.Networkish, rpcUrls?: RpcUrl[], blockExplorers?: BlockExplorer[], options?: SmartProviderOptions | undefined);
17
+ static fromChainMetadata(chainMetadata: ChainMetadataWithRpcConnectionInfo, options?: SmartProviderOptions): HyperlaneSmartProvider;
18
+ static fromRpcUrl(network: providers.Networkish, rpcUrl: string, options?: SmartProviderOptions): HyperlaneSmartProvider;
19
+ detectNetwork(): Promise<providers.Network>;
20
+ perform(method: string, params: {
21
+ [name: string]: any;
22
+ }): Promise<any>;
23
+ /**
24
+ * Checks if this SmartProvider is healthy by checking for new blocks
25
+ * @param numBlocks The number of sequential blocks to check for. Default 1
26
+ * @param timeoutMs The maximum time to wait for the full check. Default 3000ms
27
+ * @returns true if the provider is healthy, false otherwise
28
+ */
29
+ isHealthy(numBlocks?: number, timeoutMs?: number): Promise<boolean>;
30
+ isExplorerProvider(p: HyperlaneProvider): p is HyperlaneEtherscanProvider;
31
+ /**
32
+ * This perform method will trigger any providers that support the method
33
+ * one at a time in preferential order. If one is slow to respond, the next is triggered.
34
+ * TODO: Consider adding a quorum option that requires a certain number of providers to agree
35
+ */
36
+ protected performWithFallback(method: string, params: {
37
+ [name: string]: any;
38
+ }, providers: Array<HyperlaneEtherscanProvider | HyperlaneJsonRpcProvider>, reqId: number): Promise<any>;
39
+ protected wrapProviderPerform(provider: HyperlaneProvider, providerUrl: string, method: string, params: any, reqId: number): Promise<ProviderPerformResult>;
40
+ protected waitForProviderSuccess(resultPromises: Promise<ProviderPerformResult>[]): Promise<ProviderPerformResult>;
41
+ protected throwCombinedProviderErrors(errors: unknown[], fallbackMsg: string): void;
42
+ }
43
+ export {};
44
+ //# sourceMappingURL=SmartProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/SmartProvider/SmartProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AASnC,OAAO,EACL,aAAa,EAGb,MAAM,EACP,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EACL,kCAAkC,EAClC,qBAAqB,EAGrB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAMjB,KAAK,iBAAiB,GAAG,0BAA0B,GAAG,wBAAwB,CAAC;AAE/E,qBAAa,sBACX,SAAQ,SAAS,CAAC,YAClB,YAAW,gBAAgB;aAaT,OAAO,CAAC;IAX1B,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAoC;IAE7D,SAAgB,iBAAiB,EAAE,0BAA0B,EAAE,CAAC;IAChE,SAAgB,YAAY,EAAE,wBAAwB,EAAE,CAAC;IACzD,SAAgB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IAC5C,YAAY,SAAK;gBAGtB,OAAO,EAAE,SAAS,CAAC,UAAU,EAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,cAAc,CAAC,EAAE,aAAa,EAAE,EAChB,OAAO,CAAC,kCAAsB;IA4ChD,MAAM,CAAC,iBAAiB,CACtB,aAAa,EAAE,kCAAkC,EACjD,OAAO,CAAC,EAAE,oBAAoB,GAC7B,sBAAsB;IAUzB,MAAM,CAAC,UAAU,CACf,OAAO,EAAE,SAAS,CAAC,UAAU,EAC7B,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,oBAAoB,GAC7B,sBAAsB;IASnB,aAAa,IAAI,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;IAO3C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAoB5E;;;;;OAKG;IACG,SAAS,CAAC,SAAS,SAAI,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAuBnE,kBAAkB,CAAC,CAAC,EAAE,iBAAiB,GAAG,CAAC,IAAI,0BAA0B;IAIzE;;;;OAIG;cACa,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAC/B,SAAS,EAAE,KAAK,CAAC,0BAA0B,GAAG,wBAAwB,CAAC,EACvE,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,GAAG,CAAC;cA8FC,mBAAmB,CACjC,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC;cAiBjB,sBAAsB,CACpC,cAAc,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAAE,GAC/C,OAAO,CAAC,qBAAqB,CAAC;IA+BjC,SAAS,CAAC,2BAA2B,CACnC,MAAM,EAAE,OAAO,EAAE,EACjB,WAAW,EAAE,MAAM,GAClB,IAAI;CAMR"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=SmartProvider.foundry-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartProvider.foundry-test.d.ts","sourceRoot":"","sources":["../../../src/providers/SmartProvider/SmartProvider.foundry-test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chai_1 = require("chai");
4
+ const ethers_1 = require("ethers");
5
+ const core_1 = require("@hyperlane-xyz/core");
6
+ const SmartProvider_1 = require("./SmartProvider");
7
+ const PK = '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80';
8
+ const NETWORK = 31337;
9
+ const URL = 'http://127.0.0.1:8545';
10
+ describe('SmartProvider', async () => {
11
+ let signer;
12
+ let smartProvider;
13
+ let contractAddress;
14
+ before(async () => {
15
+ smartProvider = SmartProvider_1.HyperlaneSmartProvider.fromRpcUrl(NETWORK, URL, {
16
+ maxRetries: 3,
17
+ });
18
+ signer = new ethers_1.Wallet(PK, smartProvider);
19
+ });
20
+ it('Sends transactions', async () => {
21
+ const transferTx = await signer.populateTransaction({
22
+ to: signer.address,
23
+ value: 1,
24
+ });
25
+ const signedTx = await signer.signTransaction(transferTx);
26
+ const response = await smartProvider.sendTransaction(signedTx);
27
+ (0, chai_1.expect)(response.hash.substring(0, 2)).to.equal('0x');
28
+ (0, chai_1.expect)(response.hash.length).to.equal(66);
29
+ });
30
+ it('Deploys contracts', async () => {
31
+ const factory = new core_1.ERC20__factory(signer);
32
+ const contract = await factory.deploy('fake', 'FAKE');
33
+ contractAddress = contract.address;
34
+ (0, chai_1.expect)(contractAddress.substring(0, 2)).to.equal('0x');
35
+ (0, chai_1.expect)(contractAddress.length).to.equal(42);
36
+ });
37
+ it('Handles multiple requests', async () => {
38
+ const [isHealthy, blockNum, block, balance, gasPrice, feeData, code, txCount, network, logs,] = await Promise.all([
39
+ smartProvider.isHealthy(),
40
+ smartProvider.getBlockNumber(),
41
+ smartProvider.getBlock(1),
42
+ smartProvider.getBalance(signer.address),
43
+ smartProvider.getGasPrice(),
44
+ smartProvider.getFeeData(),
45
+ smartProvider.getCode(contractAddress),
46
+ smartProvider.getTransactionCount(signer.address),
47
+ smartProvider.getNetwork(),
48
+ smartProvider.getLogs({
49
+ fromBlock: 0,
50
+ address: ethers_1.constants.AddressZero,
51
+ topics: [],
52
+ }),
53
+ ]);
54
+ (0, chai_1.expect)(isHealthy).to.be.true;
55
+ (0, chai_1.expect)(blockNum).to.greaterThan(0);
56
+ (0, chai_1.expect)(block.number).to.equal(1);
57
+ (0, chai_1.expect)(balance.toBigInt() > 0).to.be.true;
58
+ (0, chai_1.expect)(gasPrice.toBigInt() > 0).to.be.true;
59
+ (0, chai_1.expect)(feeData.maxFeePerGas && feeData.maxFeePerGas.toBigInt() > 0).to.be
60
+ .true;
61
+ (0, chai_1.expect)(code.length).to.greaterThan(10);
62
+ (0, chai_1.expect)(txCount).to.be.greaterThan(0);
63
+ (0, chai_1.expect)(network.chainId).to.equal(NETWORK);
64
+ (0, chai_1.expect)(Array.isArray(logs)).to.be.true;
65
+ });
66
+ });
67
+ //# sourceMappingURL=SmartProvider.foundry-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartProvider.foundry-test.js","sourceRoot":"","sources":["../../../src/providers/SmartProvider/SmartProvider.foundry-test.ts"],"names":[],"mappings":"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"}