@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
@@ -1 +1 @@
1
- {"version":3,"file":"agentConfig.d.ts","sourceRoot":"","sources":["../../src/metadata/agentConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentConfig.d.ts","sourceRoot":"","sources":["../../src/metadata/agentConfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ChainMetadata } from './chainMetadataTypes';
2
+ export declare function getExplorerBaseUrl(metadata: ChainMetadata): string | null;
3
+ export declare function getExplorerApiUrl(metadata: ChainMetadata): string | null;
4
+ export declare function getExplorerTxUrl(metadata: ChainMetadata, hash: string): string | null;
5
+ export declare function getExplorerAddressUrl(metadata: ChainMetadata, address: string): string | null;
6
+ //# sourceMappingURL=blockExplorer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockExplorer.d.ts","sourceRoot":"","sources":["../../src/metadata/blockExplorer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAWzE;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAUxE;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,aAAa,EACvB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CASf;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAIf"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getExplorerAddressUrl = exports.getExplorerTxUrl = exports.getExplorerApiUrl = exports.getExplorerBaseUrl = void 0;
4
+ const utils_1 = require("@hyperlane-xyz/utils");
5
+ const chainMetadata_1 = require("../consts/chainMetadata");
6
+ function getExplorerBaseUrl(metadata) {
7
+ if (!metadata?.blockExplorers?.length)
8
+ return null;
9
+ const url = new URL(metadata.blockExplorers[0].url);
10
+ // TODO consider move handling of these chain/protocol specific quirks to ChainMetadata
11
+ if (metadata.protocol === utils_1.ProtocolType.Sealevel &&
12
+ chainMetadata_1.solanaChainToClusterName[metadata.name]) {
13
+ url.searchParams.set('cluster', chainMetadata_1.solanaChainToClusterName[metadata.name]);
14
+ }
15
+ return url.toString();
16
+ }
17
+ exports.getExplorerBaseUrl = getExplorerBaseUrl;
18
+ function getExplorerApiUrl(metadata) {
19
+ const { protocol, blockExplorers } = metadata;
20
+ // TODO solana + cosmos support here as needed
21
+ if (protocol !== utils_1.ProtocolType.Ethereum)
22
+ return null;
23
+ if (!blockExplorers?.length || !blockExplorers[0].apiUrl)
24
+ return null;
25
+ const { apiUrl, apiKey } = blockExplorers[0];
26
+ if (!apiKey)
27
+ return apiUrl;
28
+ const url = new URL(apiUrl);
29
+ url.searchParams.set('apikey', apiKey);
30
+ return url.toString();
31
+ }
32
+ exports.getExplorerApiUrl = getExplorerApiUrl;
33
+ function getExplorerTxUrl(metadata, hash) {
34
+ const baseUrl = getExplorerBaseUrl(metadata);
35
+ if (!baseUrl)
36
+ return null;
37
+ const chainName = metadata.name;
38
+ // TODO consider move handling of these chain/protocol specific quirks to ChainMetadata
39
+ const urlPathStub = ['nautilus', 'proteustestnet'].includes(chainName)
40
+ ? 'transaction'
41
+ : 'tx';
42
+ return appendToPath(baseUrl, `${urlPathStub}/${hash}`).toString();
43
+ }
44
+ exports.getExplorerTxUrl = getExplorerTxUrl;
45
+ function getExplorerAddressUrl(metadata, address) {
46
+ const baseUrl = getExplorerBaseUrl(metadata);
47
+ if (!baseUrl)
48
+ return null;
49
+ return appendToPath(baseUrl, `address/${address}`).toString();
50
+ }
51
+ exports.getExplorerAddressUrl = getExplorerAddressUrl;
52
+ function appendToPath(baseUrl, pathExtension) {
53
+ const base = new URL(baseUrl);
54
+ let currentPath = base.pathname;
55
+ if (currentPath.endsWith('/'))
56
+ currentPath = currentPath.slice(0, -1);
57
+ const newPath = `${currentPath}/${pathExtension}`;
58
+ return new URL(newPath, base);
59
+ }
60
+ //# sourceMappingURL=blockExplorer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockExplorer.js","sourceRoot":"","sources":["../../src/metadata/blockExplorer.ts"],"names":[],"mappings":";;;AAAA,gDAAoD;AAEpD,2DAAmE;AAInE,SAAgB,kBAAkB,CAAC,QAAuB;IACxD,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,uFAAuF;IACvF,IACE,QAAQ,CAAC,QAAQ,KAAK,oBAAY,CAAC,QAAQ;QAC3C,wCAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,EACvC;QACA,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,wCAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;KAC1E;IACD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAXD,gDAWC;AAED,SAAgB,iBAAiB,CAAC,QAAuB;IACvD,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC;IAC9C,8CAA8C;IAC9C,IAAI,QAAQ,KAAK,oBAAY,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACtE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAVD,8CAUC;AAED,SAAgB,gBAAgB,CAC9B,QAAuB,EACvB,IAAY;IAEZ,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;IAChC,uFAAuF;IACvF,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACpE,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,IAAI,CAAC;IACT,OAAO,YAAY,CAAC,OAAO,EAAE,GAAG,WAAW,IAAI,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AACpE,CAAC;AAZD,4CAYC;AAED,SAAgB,qBAAqB,CACnC,QAAuB,EACvB,OAAe;IAEf,MAAM,OAAO,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,YAAY,CAAC,OAAO,EAAE,WAAW,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AAChE,CAAC;AAPD,sDAOC;AAED,SAAS,YAAY,CAAC,OAAe,EAAE,aAAqB;IAC1D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,GAAG,WAAW,IAAI,aAAa,EAAE,CAAC;IAClD,OAAO,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAChC,CAAC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const chai_1 = require("chai");
4
4
  const utils_1 = require("@hyperlane-xyz/utils");
5
+ const chainMetadata_1 = require("../consts/chainMetadata");
5
6
  const chainMetadataTypes_1 = require("./chainMetadataTypes");
6
7
  const minimalSchema = {
7
8
  chainId: 5,
@@ -74,5 +75,14 @@ describe('ChainMetadataSchema', () => {
74
75
  chainId: 'string-id',
75
76
  })).to.eq(false);
76
77
  });
78
+ it('Works for all SDK chain metadata consts', () => {
79
+ for (const chain of Object.keys(chainMetadata_1.chainMetadata)) {
80
+ const isValid = (0, chainMetadataTypes_1.isValidChainMetadata)(chainMetadata_1.chainMetadata[chain]);
81
+ // eslint-disable-next-line no-console
82
+ if (!isValid)
83
+ console.error(`Invalid chain metadata for ${chain}`);
84
+ (0, chai_1.expect)(isValid).to.eq(true);
85
+ }
86
+ });
77
87
  });
78
88
  //# sourceMappingURL=chainMetadata.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainMetadata.test.js","sourceRoot":"","sources":["../../src/metadata/chainMetadata.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chainMetadata.test.js","sourceRoot":"","sources":["../../src/metadata/chainMetadata.test.ts"],"names":[],"mappings":"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"}
@@ -138,6 +138,57 @@ export declare const ChainMetadataSchemaObject: z.ZodObject<{
138
138
  baseRetryMs: number;
139
139
  } | undefined;
140
140
  }>, "atleastone">;
141
+ restUrls: z.ZodOptional<z.ZodArray<z.ZodObject<{
142
+ http: z.ZodString;
143
+ webSocket: z.ZodOptional<z.ZodString>;
144
+ pagination: z.ZodOptional<z.ZodObject<{
145
+ maxBlockRange: z.ZodOptional<z.ZodNumber>;
146
+ minBlockNumber: z.ZodOptional<z.ZodNumber>;
147
+ maxBlockAge: z.ZodOptional<z.ZodNumber>;
148
+ }, "strip", z.ZodTypeAny, {
149
+ maxBlockRange?: number | undefined;
150
+ minBlockNumber?: number | undefined;
151
+ maxBlockAge?: number | undefined;
152
+ }, {
153
+ maxBlockRange?: number | undefined;
154
+ minBlockNumber?: number | undefined;
155
+ maxBlockAge?: number | undefined;
156
+ }>>;
157
+ retry: z.ZodOptional<z.ZodObject<{
158
+ maxRequests: z.ZodNumber;
159
+ baseRetryMs: z.ZodNumber;
160
+ }, "strip", z.ZodTypeAny, {
161
+ maxRequests: number;
162
+ baseRetryMs: number;
163
+ }, {
164
+ maxRequests: number;
165
+ baseRetryMs: number;
166
+ }>>;
167
+ }, "strip", z.ZodTypeAny, {
168
+ http: string;
169
+ webSocket?: string | undefined;
170
+ pagination?: {
171
+ maxBlockRange?: number | undefined;
172
+ minBlockNumber?: number | undefined;
173
+ maxBlockAge?: number | undefined;
174
+ } | undefined;
175
+ retry?: {
176
+ maxRequests: number;
177
+ baseRetryMs: number;
178
+ } | undefined;
179
+ }, {
180
+ http: string;
181
+ webSocket?: string | undefined;
182
+ pagination?: {
183
+ maxBlockRange?: number | undefined;
184
+ minBlockNumber?: number | undefined;
185
+ maxBlockAge?: number | undefined;
186
+ } | undefined;
187
+ retry?: {
188
+ maxRequests: number;
189
+ baseRetryMs: number;
190
+ } | undefined;
191
+ }>, "many">>;
141
192
  blockExplorers: z.ZodOptional<z.ZodArray<z.ZodObject<{
142
193
  name: z.ZodString;
143
194
  url: z.ZodString;
@@ -214,6 +265,19 @@ export declare const ChainMetadataSchemaObject: z.ZodObject<{
214
265
  name: string;
215
266
  decimals: number;
216
267
  } | undefined;
268
+ restUrls?: {
269
+ http: string;
270
+ webSocket?: string | undefined;
271
+ pagination?: {
272
+ maxBlockRange?: number | undefined;
273
+ minBlockNumber?: number | undefined;
274
+ maxBlockAge?: number | undefined;
275
+ } | undefined;
276
+ retry?: {
277
+ maxRequests: number;
278
+ baseRetryMs: number;
279
+ } | undefined;
280
+ }[] | undefined;
217
281
  blockExplorers?: {
218
282
  name: string;
219
283
  url: string;
@@ -270,6 +334,19 @@ export declare const ChainMetadataSchemaObject: z.ZodObject<{
270
334
  name: string;
271
335
  decimals: number;
272
336
  } | undefined;
337
+ restUrls?: {
338
+ http: string;
339
+ webSocket?: string | undefined;
340
+ pagination?: {
341
+ maxBlockRange?: number | undefined;
342
+ minBlockNumber?: number | undefined;
343
+ maxBlockAge?: number | undefined;
344
+ } | undefined;
345
+ retry?: {
346
+ maxRequests: number;
347
+ baseRetryMs: number;
348
+ } | undefined;
349
+ }[] | undefined;
273
350
  blockExplorers?: {
274
351
  name: string;
275
352
  url: string;
@@ -361,6 +438,57 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
361
438
  baseRetryMs: number;
362
439
  } | undefined;
363
440
  }>, "atleastone">;
441
+ restUrls: z.ZodOptional<z.ZodArray<z.ZodObject<{
442
+ http: z.ZodString;
443
+ webSocket: z.ZodOptional<z.ZodString>;
444
+ pagination: z.ZodOptional<z.ZodObject<{
445
+ maxBlockRange: z.ZodOptional<z.ZodNumber>;
446
+ minBlockNumber: z.ZodOptional<z.ZodNumber>;
447
+ maxBlockAge: z.ZodOptional<z.ZodNumber>;
448
+ }, "strip", z.ZodTypeAny, {
449
+ maxBlockRange?: number | undefined;
450
+ minBlockNumber?: number | undefined;
451
+ maxBlockAge?: number | undefined;
452
+ }, {
453
+ maxBlockRange?: number | undefined;
454
+ minBlockNumber?: number | undefined;
455
+ maxBlockAge?: number | undefined;
456
+ }>>;
457
+ retry: z.ZodOptional<z.ZodObject<{
458
+ maxRequests: z.ZodNumber;
459
+ baseRetryMs: z.ZodNumber;
460
+ }, "strip", z.ZodTypeAny, {
461
+ maxRequests: number;
462
+ baseRetryMs: number;
463
+ }, {
464
+ maxRequests: number;
465
+ baseRetryMs: number;
466
+ }>>;
467
+ }, "strip", z.ZodTypeAny, {
468
+ http: string;
469
+ webSocket?: string | undefined;
470
+ pagination?: {
471
+ maxBlockRange?: number | undefined;
472
+ minBlockNumber?: number | undefined;
473
+ maxBlockAge?: number | undefined;
474
+ } | undefined;
475
+ retry?: {
476
+ maxRequests: number;
477
+ baseRetryMs: number;
478
+ } | undefined;
479
+ }, {
480
+ http: string;
481
+ webSocket?: string | undefined;
482
+ pagination?: {
483
+ maxBlockRange?: number | undefined;
484
+ minBlockNumber?: number | undefined;
485
+ maxBlockAge?: number | undefined;
486
+ } | undefined;
487
+ retry?: {
488
+ maxRequests: number;
489
+ baseRetryMs: number;
490
+ } | undefined;
491
+ }>, "many">>;
364
492
  blockExplorers: z.ZodOptional<z.ZodArray<z.ZodObject<{
365
493
  name: z.ZodString;
366
494
  url: z.ZodString;
@@ -437,6 +565,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
437
565
  name: string;
438
566
  decimals: number;
439
567
  } | undefined;
568
+ restUrls?: {
569
+ http: string;
570
+ webSocket?: string | undefined;
571
+ pagination?: {
572
+ maxBlockRange?: number | undefined;
573
+ minBlockNumber?: number | undefined;
574
+ maxBlockAge?: number | undefined;
575
+ } | undefined;
576
+ retry?: {
577
+ maxRequests: number;
578
+ baseRetryMs: number;
579
+ } | undefined;
580
+ }[] | undefined;
440
581
  blockExplorers?: {
441
582
  name: string;
442
583
  url: string;
@@ -493,6 +634,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
493
634
  name: string;
494
635
  decimals: number;
495
636
  } | undefined;
637
+ restUrls?: {
638
+ http: string;
639
+ webSocket?: string | undefined;
640
+ pagination?: {
641
+ maxBlockRange?: number | undefined;
642
+ minBlockNumber?: number | undefined;
643
+ maxBlockAge?: number | undefined;
644
+ } | undefined;
645
+ retry?: {
646
+ maxRequests: number;
647
+ baseRetryMs: number;
648
+ } | undefined;
649
+ }[] | undefined;
496
650
  blockExplorers?: {
497
651
  name: string;
498
652
  url: string;
@@ -549,6 +703,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
549
703
  name: string;
550
704
  decimals: number;
551
705
  } | undefined;
706
+ restUrls?: {
707
+ http: string;
708
+ webSocket?: string | undefined;
709
+ pagination?: {
710
+ maxBlockRange?: number | undefined;
711
+ minBlockNumber?: number | undefined;
712
+ maxBlockAge?: number | undefined;
713
+ } | undefined;
714
+ retry?: {
715
+ maxRequests: number;
716
+ baseRetryMs: number;
717
+ } | undefined;
718
+ }[] | undefined;
552
719
  blockExplorers?: {
553
720
  name: string;
554
721
  url: string;
@@ -605,6 +772,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
605
772
  name: string;
606
773
  decimals: number;
607
774
  } | undefined;
775
+ restUrls?: {
776
+ http: string;
777
+ webSocket?: string | undefined;
778
+ pagination?: {
779
+ maxBlockRange?: number | undefined;
780
+ minBlockNumber?: number | undefined;
781
+ maxBlockAge?: number | undefined;
782
+ } | undefined;
783
+ retry?: {
784
+ maxRequests: number;
785
+ baseRetryMs: number;
786
+ } | undefined;
787
+ }[] | undefined;
608
788
  blockExplorers?: {
609
789
  name: string;
610
790
  url: string;
@@ -661,6 +841,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
661
841
  name: string;
662
842
  decimals: number;
663
843
  } | undefined;
844
+ restUrls?: {
845
+ http: string;
846
+ webSocket?: string | undefined;
847
+ pagination?: {
848
+ maxBlockRange?: number | undefined;
849
+ minBlockNumber?: number | undefined;
850
+ maxBlockAge?: number | undefined;
851
+ } | undefined;
852
+ retry?: {
853
+ maxRequests: number;
854
+ baseRetryMs: number;
855
+ } | undefined;
856
+ }[] | undefined;
664
857
  blockExplorers?: {
665
858
  name: string;
666
859
  url: string;
@@ -717,6 +910,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
717
910
  name: string;
718
911
  decimals: number;
719
912
  } | undefined;
913
+ restUrls?: {
914
+ http: string;
915
+ webSocket?: string | undefined;
916
+ pagination?: {
917
+ maxBlockRange?: number | undefined;
918
+ minBlockNumber?: number | undefined;
919
+ maxBlockAge?: number | undefined;
920
+ } | undefined;
921
+ retry?: {
922
+ maxRequests: number;
923
+ baseRetryMs: number;
924
+ } | undefined;
925
+ }[] | undefined;
720
926
  blockExplorers?: {
721
927
  name: string;
722
928
  url: string;
@@ -773,6 +979,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
773
979
  name: string;
774
980
  decimals: number;
775
981
  } | undefined;
982
+ restUrls?: {
983
+ http: string;
984
+ webSocket?: string | undefined;
985
+ pagination?: {
986
+ maxBlockRange?: number | undefined;
987
+ minBlockNumber?: number | undefined;
988
+ maxBlockAge?: number | undefined;
989
+ } | undefined;
990
+ retry?: {
991
+ maxRequests: number;
992
+ baseRetryMs: number;
993
+ } | undefined;
994
+ }[] | undefined;
776
995
  blockExplorers?: {
777
996
  name: string;
778
997
  url: string;
@@ -829,6 +1048,19 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
829
1048
  name: string;
830
1049
  decimals: number;
831
1050
  } | undefined;
1051
+ restUrls?: {
1052
+ http: string;
1053
+ webSocket?: string | undefined;
1054
+ pagination?: {
1055
+ maxBlockRange?: number | undefined;
1056
+ minBlockNumber?: number | undefined;
1057
+ maxBlockAge?: number | undefined;
1058
+ } | undefined;
1059
+ retry?: {
1060
+ maxRequests: number;
1061
+ baseRetryMs: number;
1062
+ } | undefined;
1063
+ }[] | undefined;
832
1064
  blockExplorers?: {
833
1065
  name: string;
834
1066
  url: string;
@@ -849,6 +1081,7 @@ export declare const ChainMetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects
849
1081
  isTestnet?: boolean | undefined;
850
1082
  }>;
851
1083
  export type ChainMetadata<Ext = object> = z.infer<typeof ChainMetadataSchema> & Ext;
1084
+ export type BlockExplorer = Exclude<ChainMetadata['blockExplorers'], undefined>[number];
852
1085
  export declare function isValidChainMetadata(c: ChainMetadata): boolean;
853
1086
  export declare function getDomainId(chainMetadata: ChainMetadata): number;
854
1087
  export declare function getChainIdNumber(chainMetadata: ChainMetadata): number;
@@ -1 +1 @@
1
- {"version":3,"file":"chainMetadataTypes.d.ts","sourceRoot":"","sources":["../../src/metadata/chainMetadataTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD,oBAAY,cAAc;IACxB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAGD,MAAM,MAAM,mBAAmB,GAAG,GAAG,cAAc,EAAE,CAAC;AAEtD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+GpC,CAAC;AAGH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuC7B,CAAC;AAEJ,MAAM,MAAM,aAAa,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GAC3E,GAAG,CAAC;AAEN,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAE9D;AAED,wBAAgB,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,MAAM,CAKhE;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,MAAM,CAGrE"}
1
+ {"version":3,"file":"chainMetadataTypes.d.ts","sourceRoot":"","sources":["../../src/metadata/chainMetadataTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD,oBAAY,cAAc;IACxB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,KAAK,UAAU;CAChB;AAGD,MAAM,MAAM,mBAAmB,GAAG,GAAG,cAAc,EAAE,CAAC;AAEtD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmHpC,CAAC;AAGH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuC7B,CAAC;AAEJ,MAAM,MAAM,aAAa,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GAC3E,GAAG,CAAC;AAEN,MAAM,MAAM,aAAa,GAAG,OAAO,CACjC,aAAa,CAAC,gBAAgB,CAAC,EAC/B,SAAS,CACV,CAAC,MAAM,CAAC,CAAC;AAEV,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAE9D;AAED,wBAAgB,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,MAAM,CAKhE;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,MAAM,CAGrE"}
@@ -79,6 +79,10 @@ exports.ChainMetadataSchemaObject = zod_1.z.object({
79
79
  .array(exports.RpcUrlSchema)
80
80
  .nonempty()
81
81
  .describe('The list of RPC endpoints for interacting with the chain.'),
82
+ restUrls: zod_1.z
83
+ .array(exports.RpcUrlSchema)
84
+ .describe('For cosmos chains only, a list of Rest API URLs')
85
+ .optional(),
82
86
  blockExplorers: zod_1.z
83
87
  .array(zod_1.z.object({
84
88
  name: zod_1.z.string().describe('A human readable name for the explorer.'),
@@ -1 +1 @@
1
- {"version":3,"file":"chainMetadataTypes.js","sourceRoot":"","sources":["../../src/metadata/chainMetadataTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chainMetadataTypes.js","sourceRoot":"","sources":["../../src/metadata/chainMetadataTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Address, ProtocolType } from '@hyperlane-xyz/utils';
2
+ import { CosmJsProvider, CosmJsWasmProvider, EthersV5Provider, SolanaWeb3Provider } from '../providers/ProviderType';
3
+ import { ChainMetadata, RpcUrl } from './chainMetadataTypes';
4
+ export declare function isRpcHealthy(rpc: RpcUrl, chainId: string | number, protocol: ProtocolType): Promise<boolean>;
5
+ export declare function isEthersV5ProviderHealthy(provider: EthersV5Provider['provider'], chainId: string | number): Promise<boolean>;
6
+ export declare function isSolanaWeb3ProviderHealthy(provider: SolanaWeb3Provider['provider'], chainId: string | number): Promise<boolean>;
7
+ export declare function isCosmJsProviderHealthy(provider: CosmJsProvider['provider'] | CosmJsWasmProvider['provider'], chainId: string | number): Promise<boolean>;
8
+ export declare function isBlockExplorerHealthy(chainMetadata: ChainMetadata, address?: Address, txHash?: string): Promise<boolean>;
9
+ //# sourceMappingURL=health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/metadata/health.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAW,MAAM,sBAAsB,CAAC;AAMtE,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAEhB,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AAQnC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI7D,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,OAAO,CAAC,CA4BlB;AAED,wBAAsB,yBAAyB,CAC7C,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,EACtC,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,OAAO,CAAC,OAAO,CAAC,CAyBlB;AAED,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACxC,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,EACrE,OAAO,EAAE,MAAM,GAAG,MAAM,GACvB,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,wBAAsB,sBAAsB,CAC1C,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAoClB"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isBlockExplorerHealthy = exports.isCosmJsProviderHealthy = exports.isSolanaWeb3ProviderHealthy = exports.isEthersV5ProviderHealthy = exports.isRpcHealthy = void 0;
4
+ const core_1 = require("@hyperlane-xyz/core");
5
+ const utils_1 = require("@hyperlane-xyz/utils");
6
+ const chainMetadata_1 = require("../consts/chainMetadata");
7
+ const environments_1 = require("../consts/environments");
8
+ const logger_1 = require("../logger");
9
+ const ProviderType_1 = require("../providers/ProviderType");
10
+ const providerBuilders_1 = require("../providers/providerBuilders");
11
+ const blockExplorer_1 = require("./blockExplorer");
12
+ const HEALTH_CHECK_TIMEOUT = 5000; // 5s
13
+ async function isRpcHealthy(rpc, chainId, protocol) {
14
+ try {
15
+ const builder = providerBuilders_1.protocolToDefaultProviderBuilder[protocol];
16
+ const provider = builder([rpc], chainId);
17
+ let resultPromise;
18
+ if (provider.type === ProviderType_1.ProviderType.EthersV5)
19
+ resultPromise = isEthersV5ProviderHealthy(provider.provider, chainId);
20
+ else if (provider.type === ProviderType_1.ProviderType.SolanaWeb3)
21
+ resultPromise = isSolanaWeb3ProviderHealthy(provider.provider, chainId);
22
+ else if (provider.type === ProviderType_1.ProviderType.CosmJsWasm ||
23
+ provider.type === ProviderType_1.ProviderType.CosmJs)
24
+ resultPromise = isCosmJsProviderHealthy(provider.provider, chainId);
25
+ else
26
+ throw new Error(`Unsupported provider type ${provider.type}, new health check required`);
27
+ const result = await (0, utils_1.timeout)(resultPromise, HEALTH_CHECK_TIMEOUT, 'RPC health check timed out');
28
+ return result;
29
+ }
30
+ catch (error) {
31
+ (0, logger_1.logger)(`Provider error for ${rpc.http}`, error);
32
+ return false;
33
+ }
34
+ }
35
+ exports.isRpcHealthy = isRpcHealthy;
36
+ async function isEthersV5ProviderHealthy(provider, chainId) {
37
+ (0, logger_1.logger)(`Checking ethers provider for ${chainId}`);
38
+ const blockNumber = await provider.getBlockNumber();
39
+ if (!blockNumber || blockNumber < 0)
40
+ return false;
41
+ (0, logger_1.logger)(`Block number is okay for ${chainId}`);
42
+ const chainName = chainMetadata_1.chainIdToMetadata[chainId]?.name;
43
+ if (chainName && environments_1.hyperlaneContractAddresses[chainName]) {
44
+ const mailboxAddr = environments_1.hyperlaneContractAddresses[chainName].mailbox;
45
+ const mailbox = core_1.Mailbox__factory.createInterface();
46
+ const topics = mailbox.encodeFilterTopics(mailbox.events['DispatchId(bytes32)'], []);
47
+ (0, logger_1.logger)(`Checking mailbox logs for ${chainId}`);
48
+ const mailboxLogs = await provider.getLogs({
49
+ address: mailboxAddr,
50
+ topics,
51
+ fromBlock: blockNumber - 99,
52
+ toBlock: blockNumber,
53
+ });
54
+ if (!mailboxLogs)
55
+ return false;
56
+ (0, logger_1.logger)(`Mailbox logs okay for ${chainId}`);
57
+ }
58
+ return true;
59
+ }
60
+ exports.isEthersV5ProviderHealthy = isEthersV5ProviderHealthy;
61
+ async function isSolanaWeb3ProviderHealthy(provider, chainId) {
62
+ (0, logger_1.logger)(`Checking solana provider for ${chainId}`);
63
+ const blockNumber = await provider.getBlockHeight();
64
+ if (!blockNumber || blockNumber < 0)
65
+ return false;
66
+ (0, logger_1.logger)(`Block number is okay for ${chainId}`);
67
+ return true;
68
+ }
69
+ exports.isSolanaWeb3ProviderHealthy = isSolanaWeb3ProviderHealthy;
70
+ async function isCosmJsProviderHealthy(provider, chainId) {
71
+ const readyProvider = await provider;
72
+ const blockNumber = await readyProvider.getHeight();
73
+ if (!blockNumber || blockNumber < 0)
74
+ return false;
75
+ (0, logger_1.logger)(`Block number is okay for ${chainId}`);
76
+ return true;
77
+ }
78
+ exports.isCosmJsProviderHealthy = isCosmJsProviderHealthy;
79
+ async function isBlockExplorerHealthy(chainMetadata, address, txHash) {
80
+ try {
81
+ const baseUrl = (0, blockExplorer_1.getExplorerBaseUrl)(chainMetadata);
82
+ if (!baseUrl)
83
+ return false;
84
+ (0, logger_1.logger)(`Got base url: ${baseUrl}`);
85
+ (0, logger_1.logger)(`Checking explorer home for ${chainMetadata.name}`);
86
+ const homeReq = await fetch(baseUrl);
87
+ if (!homeReq.ok)
88
+ return false;
89
+ (0, logger_1.logger)(`Explorer home okay for ${chainMetadata.name}`);
90
+ if (address) {
91
+ (0, logger_1.logger)(`Checking explorer address page for ${chainMetadata.name}`);
92
+ const addressUrl = (0, blockExplorer_1.getExplorerAddressUrl)(chainMetadata, address);
93
+ if (!addressUrl)
94
+ return false;
95
+ (0, logger_1.logger)(`Got address url: ${addressUrl}`);
96
+ const addressReq = await fetch(addressUrl);
97
+ if (!addressReq.ok)
98
+ return false;
99
+ (0, logger_1.logger)(`Explorer address page okay for ${chainMetadata.name}`);
100
+ }
101
+ if (txHash) {
102
+ (0, logger_1.logger)(`Checking explorer tx page for ${chainMetadata.name}`);
103
+ const txUrl = (0, blockExplorer_1.getExplorerTxUrl)(chainMetadata, txHash);
104
+ if (!txUrl)
105
+ return false;
106
+ (0, logger_1.logger)(`Got tx url: ${txUrl}`);
107
+ const txReq = await fetch(txUrl);
108
+ if (!txReq.ok)
109
+ return false;
110
+ (0, logger_1.logger)(`Explorer tx page okay for ${chainMetadata.name}`);
111
+ }
112
+ return true;
113
+ }
114
+ catch (error) {
115
+ (0, logger_1.logger)(`Explorer error for ${chainMetadata.name}`, error);
116
+ return false;
117
+ }
118
+ }
119
+ exports.isBlockExplorerHealthy = isBlockExplorerHealthy;
120
+ //# sourceMappingURL=health.js.map