@hyperlane-xyz/sdk 32.0.1 → 33.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/core/EvmCoreModule.d.ts.map +1 -1
- package/dist/core/EvmCoreModule.js +2 -1
- package/dist/core/EvmCoreModule.js.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.js +1 -0
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/types.d.ts +124 -22
- package/dist/core/types.d.ts.map +1 -1
- package/dist/deploy/warp.d.ts.map +1 -1
- package/dist/deploy/warp.js +3 -1
- package/dist/deploy/warp.js.map +1 -1
- package/dist/hook/EvmHookReader.d.ts.map +1 -1
- package/dist/hook/EvmHookReader.js +4 -0
- package/dist/hook/EvmHookReader.js.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +19 -10
- package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
- package/dist/hook/types.d.ts +118 -17
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +14 -0
- package/dist/hook/types.js.map +1 -1
- package/dist/hook/updates.d.ts +4 -1
- package/dist/hook/updates.d.ts.map +1 -1
- package/dist/hook/updates.js +1 -1
- package/dist/hook/updates.js.map +1 -1
- package/dist/hook/utils.d.ts +7 -1
- package/dist/hook/utils.d.ts.map +1 -1
- package/dist/hook/utils.js +18 -0
- package/dist/hook/utils.js.map +1 -1
- package/dist/ica/types.d.ts +36 -6
- package/dist/ica/types.d.ts.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/predicate/PredicateApiClient.d.ts +45 -0
- package/dist/predicate/PredicateApiClient.d.ts.map +1 -0
- package/dist/predicate/PredicateApiClient.js +66 -0
- package/dist/predicate/PredicateApiClient.js.map +1 -0
- package/dist/predicate/PredicateApiClient.test.d.ts +2 -0
- package/dist/predicate/PredicateApiClient.test.d.ts.map +1 -0
- package/dist/predicate/PredicateApiClient.test.js +108 -0
- package/dist/predicate/PredicateApiClient.test.js.map +1 -0
- package/dist/predicate/PredicateDeployer.d.ts +56 -0
- package/dist/predicate/PredicateDeployer.d.ts.map +1 -0
- package/dist/predicate/PredicateDeployer.hardhat-test.d.ts +2 -0
- package/dist/predicate/PredicateDeployer.hardhat-test.d.ts.map +1 -0
- package/dist/predicate/PredicateDeployer.hardhat-test.js +209 -0
- package/dist/predicate/PredicateDeployer.hardhat-test.js.map +1 -0
- package/dist/predicate/PredicateDeployer.js +218 -0
- package/dist/predicate/PredicateDeployer.js.map +1 -0
- package/dist/router/types.d.ts +54 -9
- package/dist/router/types.d.ts.map +1 -1
- package/dist/test/testUtils.d.ts +1 -1
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +1 -0
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/EvmWarpModule.d.ts +55 -0
- package/dist/token/EvmWarpModule.d.ts.map +1 -1
- package/dist/token/EvmWarpModule.hardhat-test.js +29 -0
- package/dist/token/EvmWarpModule.hardhat-test.js.map +1 -1
- package/dist/token/EvmWarpModule.js +264 -21
- package/dist/token/EvmWarpModule.js.map +1 -1
- package/dist/token/EvmWarpRouteReader.d.ts +6 -0
- package/dist/token/EvmWarpRouteReader.d.ts.map +1 -1
- package/dist/token/EvmWarpRouteReader.js +34 -1
- package/dist/token/EvmWarpRouteReader.js.map +1 -1
- package/dist/token/adapters/EvmCrossCollateralAdapter.d.ts +2 -8
- package/dist/token/adapters/EvmCrossCollateralAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmCrossCollateralAdapter.js +23 -4
- package/dist/token/adapters/EvmCrossCollateralAdapter.js.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.d.ts +21 -4
- package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.js +191 -22
- package/dist/token/adapters/EvmTokenAdapter.js.map +1 -1
- package/dist/token/adapters/ITokenAdapter.d.ts +10 -0
- package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/ITokenAdapter.js +8 -0
- package/dist/token/adapters/ITokenAdapter.js.map +1 -1
- package/dist/token/deploy.d.ts +4 -1
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.js +30 -1
- package/dist/token/deploy.js.map +1 -1
- package/dist/token/types.d.ts +4427 -27
- package/dist/token/types.d.ts.map +1 -1
- package/dist/token/types.js +19 -0
- package/dist/token/types.js.map +1 -1
- package/dist/warp/WarpCore.d.ts +39 -19
- package/dist/warp/WarpCore.d.ts.map +1 -1
- package/dist/warp/WarpCore.js +149 -82
- package/dist/warp/WarpCore.js.map +1 -1
- package/package.json +10 -10
package/dist/warp/WarpCore.js
CHANGED
|
@@ -8,7 +8,7 @@ import { parseTokenConnectionId } from '../token/TokenConnection.js';
|
|
|
8
8
|
import { tokenIdentifiersEqual } from '../token/TokenMetadata.js';
|
|
9
9
|
import { LOCKBOX_STANDARDS, MINT_LIMITED_STANDARDS, TOKEN_COLLATERALIZED_STANDARDS, TOKEN_STANDARD_TO_PROVIDER_TYPE, TokenStandard, } from '../token/TokenStandard.js';
|
|
10
10
|
import { EVM_TRANSFER_REMOTE_GAS_ESTIMATE, } from '../token/adapters/EvmTokenAdapter.js';
|
|
11
|
-
import { isHypCrossCollateralAdapter, } from '../token/adapters/ITokenAdapter.js';
|
|
11
|
+
import { isHypCrossCollateralAdapter, isPredicateCapableAdapter, } from '../token/adapters/ITokenAdapter.js';
|
|
12
12
|
import { buildExecuteCalldata, buildQuoteCalldata, } from '../quoted-calls/builder.js';
|
|
13
13
|
import { decodeQuoteExecuteResult, extractQuoteTotals, } from '../quoted-calls/codec.js';
|
|
14
14
|
import { TokenPullMode } from '../quoted-calls/types.js';
|
|
@@ -151,7 +151,7 @@ export class WarpCore {
|
|
|
151
151
|
/**
|
|
152
152
|
* Simulates a transfer to estimate 'local' gas fees on the origin chain
|
|
153
153
|
*/
|
|
154
|
-
async getLocalTransferFee({ originToken, destination, sender, senderPubKey, interchainFee, tokenFeeQuote, destinationToken, }) {
|
|
154
|
+
async getLocalTransferFee({ originToken, destination, sender, senderPubKey, interchainFee, tokenFeeQuote, attestation, amount, destinationToken, }) {
|
|
155
155
|
this.logger.debug(`Estimating local transfer gas to ${destination}`);
|
|
156
156
|
const originMetadata = this.multiProvider.getChainMetadata(originToken.chainName);
|
|
157
157
|
const destinationMetadata = this.multiProvider.getChainMetadata(destination);
|
|
@@ -163,22 +163,26 @@ export class WarpCore {
|
|
|
163
163
|
}
|
|
164
164
|
// Form transactions to estimate local gas with
|
|
165
165
|
const recipient = convertToProtocolAddress(sender, destinationMetadata.protocol, destinationMetadata.bech32Prefix);
|
|
166
|
-
// Use a small but viable amount for gas estimation
|
|
167
|
-
// decimal truncation (e.g. 18→6 decimals) to avoid
|
|
168
|
-
// "HypNativeMinter: destination amount < 1". Compute minimum
|
|
169
|
-
// 10^(originDecimals - destDecimals) so destination gets exactly 1 unit.
|
|
170
|
-
const
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
166
|
+
// Use a small but viable amount for gas estimation when none is provided.
|
|
167
|
+
// Must survive on-chain decimal truncation (e.g. 18→6 decimals) to avoid
|
|
168
|
+
// reverts like "HypNativeMinter: destination amount < 1". Compute minimum
|
|
169
|
+
// as 10^(originDecimals - destDecimals) so destination gets exactly 1 unit.
|
|
170
|
+
const estimationAmount = amount ??
|
|
171
|
+
(() => {
|
|
172
|
+
const destToken = originToken.getConnectionForChain(destinationMetadata.name)?.token;
|
|
173
|
+
const decimalDiff = destToken
|
|
174
|
+
? Math.max(0, originToken.decimals - destToken.decimals)
|
|
175
|
+
: 0;
|
|
176
|
+
return BigInt(10) ** BigInt(decimalDiff);
|
|
177
|
+
})();
|
|
175
178
|
const txs = await this.getTransferRemoteTxs({
|
|
176
|
-
originTokenAmount: originToken.amount(
|
|
179
|
+
originTokenAmount: originToken.amount(estimationAmount),
|
|
177
180
|
destination,
|
|
178
181
|
sender,
|
|
179
182
|
recipient,
|
|
180
183
|
interchainFee,
|
|
181
184
|
tokenFeeQuote,
|
|
185
|
+
attestation,
|
|
182
186
|
destinationToken,
|
|
183
187
|
});
|
|
184
188
|
// Starknet does not support gas estimation without starknet account
|
|
@@ -221,7 +225,7 @@ export class WarpCore {
|
|
|
221
225
|
* but it also resolves the native token and returns a TokenAmount
|
|
222
226
|
* @todo: rename to getLocalTransferFee for consistency (requires breaking change)
|
|
223
227
|
*/
|
|
224
|
-
async getLocalTransferFeeAmount({ originToken, destination, sender, senderPubKey, interchainFee, tokenFeeQuote, destinationToken, }) {
|
|
228
|
+
async getLocalTransferFeeAmount({ originToken, destination, sender, senderPubKey, interchainFee, tokenFeeQuote, attestation, amount, destinationToken, }) {
|
|
225
229
|
const originMetadata = this.multiProvider.getChainMetadata(originToken.chainName);
|
|
226
230
|
// If there's no native token, we can't represent local gas
|
|
227
231
|
if (!originMetadata.nativeToken)
|
|
@@ -234,6 +238,8 @@ export class WarpCore {
|
|
|
234
238
|
senderPubKey,
|
|
235
239
|
interchainFee,
|
|
236
240
|
tokenFeeQuote,
|
|
241
|
+
attestation,
|
|
242
|
+
amount,
|
|
237
243
|
destinationToken,
|
|
238
244
|
});
|
|
239
245
|
// Get the local gas token. This assumes the chain's native token will pay for local gas
|
|
@@ -245,7 +251,12 @@ export class WarpCore {
|
|
|
245
251
|
* Gets a list of populated transactions required to transfer a token to a remote chain
|
|
246
252
|
* Typically just 1 transaction but sometimes more, like when an approval is required first
|
|
247
253
|
*/
|
|
248
|
-
async getTransferRemoteTxs({ originTokenAmount, destination, sender, recipient, interchainFee, tokenFeeQuote, destinationToken, quotedCalls, }) {
|
|
254
|
+
async getTransferRemoteTxs({ originTokenAmount, destination, sender, recipient, interchainFee, tokenFeeQuote, attestation, destinationToken, quotedCalls, }) {
|
|
255
|
+
// QuotedCalls and attestation are mutually exclusive: the QuotedCalls.execute() path
|
|
256
|
+
// calls transferRemote, not transferRemoteWithAttestation. Composing them would require
|
|
257
|
+
// new contract support; for now, surface a clear error rather than silently dropping
|
|
258
|
+
// the attestation.
|
|
259
|
+
assert(!(quotedCalls && attestation), 'quotedCalls and attestation cannot be used together. The QuotedCalls path does not support attestation-gated transfers.');
|
|
249
260
|
// QuotedCalls atomic path — single execute() tx with quotes + token pull + transfer + sweep
|
|
250
261
|
if (quotedCalls) {
|
|
251
262
|
return this.getQuotedCallsTransferTxs({
|
|
@@ -267,6 +278,9 @@ export class WarpCore {
|
|
|
267
278
|
sender,
|
|
268
279
|
recipient,
|
|
269
280
|
destinationToken,
|
|
281
|
+
attestation,
|
|
282
|
+
interchainFee,
|
|
283
|
+
tokenFeeQuote,
|
|
270
284
|
});
|
|
271
285
|
}
|
|
272
286
|
// Standard warp route transfer
|
|
@@ -276,7 +290,10 @@ export class WarpCore {
|
|
|
276
290
|
const destinationDomainId = this.multiProvider.getDomainId(destination);
|
|
277
291
|
const providerType = TOKEN_STANDARD_TO_PROVIDER_TYPE[token.standard];
|
|
278
292
|
const hypAdapter = token.getHypAdapter(this.multiProvider, destinationName);
|
|
279
|
-
if (!interchainFee
|
|
293
|
+
if (!interchainFee) {
|
|
294
|
+
// Only re-fetch when the IGP quote is missing. tokenFeeQuote may legitimately
|
|
295
|
+
// be undefined for routes that have no token fee — treating its absence as a
|
|
296
|
+
// reason to re-fetch would overwrite a valid pinned interchainFee.
|
|
280
297
|
const transferFee = await this.getInterchainTransferFee({
|
|
281
298
|
originTokenAmount,
|
|
282
299
|
destination,
|
|
@@ -361,6 +378,9 @@ export class WarpCore {
|
|
|
361
378
|
const extraSignerKeypairs = providerType === ProviderType.SolanaWeb3
|
|
362
379
|
? [Keypair.generate()]
|
|
363
380
|
: undefined;
|
|
381
|
+
if (attestation) {
|
|
382
|
+
assert(isPredicateCapableAdapter(hypAdapter), 'Attestation provided but adapter does not support predicate transfers');
|
|
383
|
+
}
|
|
364
384
|
const transferTxReq = await hypAdapter.populateTransferRemoteTx({
|
|
365
385
|
weiAmountOrId: amount.toString(),
|
|
366
386
|
destination: destinationDomainId,
|
|
@@ -368,6 +388,7 @@ export class WarpCore {
|
|
|
368
388
|
recipient,
|
|
369
389
|
interchainGas,
|
|
370
390
|
customHook: token.igpTokenAddressOrDenom,
|
|
391
|
+
attestation,
|
|
371
392
|
extraSigners: extraSignerKeypairs,
|
|
372
393
|
});
|
|
373
394
|
this.logger.debug(`Remote transfer tx for ${token.symbol} populated`);
|
|
@@ -395,7 +416,7 @@ export class WarpCore {
|
|
|
395
416
|
* Uses transferRemoteTo for both same-chain and cross-chain transfers.
|
|
396
417
|
* Same-chain: calls handle() directly on target router (atomic, no relay needed).
|
|
397
418
|
*/
|
|
398
|
-
async getCrossCollateralTransferTxs({ originTokenAmount, destination, sender, recipient, destinationToken, }) {
|
|
419
|
+
async getCrossCollateralTransferTxs({ originTokenAmount, destination, sender, recipient, destinationToken, attestation, interchainFee, tokenFeeQuote, }) {
|
|
399
420
|
const transactions = [];
|
|
400
421
|
const { token: originToken, amount } = originTokenAmount;
|
|
401
422
|
const destinationName = this.multiProvider.getChainName(destination);
|
|
@@ -409,13 +430,36 @@ export class WarpCore {
|
|
|
409
430
|
const providerType = TOKEN_STANDARD_TO_PROVIDER_TYPE[originToken.standard];
|
|
410
431
|
const adapter = originToken.getHypAdapter(this.multiProvider, destinationName);
|
|
411
432
|
assert(isHypCrossCollateralAdapter(adapter), 'Adapter does not implement IHypCrossCollateralAdapter');
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
433
|
+
// Use pre-computed fees when provided (e.g. when attestation is present and the
|
|
434
|
+
// msg_value was signed over the original quote). Re-quoting could produce a
|
|
435
|
+
// different value and cause the attestation check to fail on-chain.
|
|
436
|
+
// Mirror the standard path (line ~517): only re-quote when interchainFee is absent.
|
|
437
|
+
// tokenFeeQuote may legitimately be undefined (no token fee on this route) and that
|
|
438
|
+
// is not a reason to re-quote — doing so would overwrite a valid pinned interchainFee.
|
|
439
|
+
let transferQuote;
|
|
440
|
+
if (interchainFee) {
|
|
441
|
+
transferQuote = {
|
|
442
|
+
igpQuote: {
|
|
443
|
+
amount: interchainFee.amount,
|
|
444
|
+
addressOrDenom: interchainFee.token.addressOrDenom,
|
|
445
|
+
},
|
|
446
|
+
...(tokenFeeQuote && {
|
|
447
|
+
tokenFeeQuote: {
|
|
448
|
+
amount: tokenFeeQuote.amount,
|
|
449
|
+
addressOrDenom: tokenFeeQuote.token.addressOrDenom,
|
|
450
|
+
},
|
|
451
|
+
}),
|
|
452
|
+
};
|
|
453
|
+
}
|
|
454
|
+
else {
|
|
455
|
+
transferQuote = await adapter.quoteTransferRemoteToGas({
|
|
456
|
+
destination: this.multiProvider.getDomainId(destination),
|
|
457
|
+
recipient,
|
|
458
|
+
amount,
|
|
459
|
+
targetRouter: resolvedDestinationToken.addressOrDenom,
|
|
460
|
+
sender,
|
|
461
|
+
});
|
|
462
|
+
}
|
|
419
463
|
assert(!transferQuote.igpQuote.addressOrDenom ||
|
|
420
464
|
isZeroishAddress(transferQuote.igpQuote.addressOrDenom), `CrossCollateralRouter transferRemoteTo requires native IGP fee; got ${transferQuote.igpQuote.addressOrDenom}`);
|
|
421
465
|
const tokenFeeAmount = transferQuote.tokenFeeQuote?.amount ?? 0n;
|
|
@@ -462,6 +506,7 @@ export class WarpCore {
|
|
|
462
506
|
interchainGas: transferQuote,
|
|
463
507
|
fromAccountOwner: sender,
|
|
464
508
|
extraSigners: extraSignerKeypairs,
|
|
509
|
+
attestation,
|
|
465
510
|
});
|
|
466
511
|
transactions.push({
|
|
467
512
|
category: WarpTxCategory.Transfer,
|
|
@@ -648,7 +693,7 @@ export class WarpCore {
|
|
|
648
693
|
/**
|
|
649
694
|
* Fetch local and interchain fee estimates for a remote transfer
|
|
650
695
|
*/
|
|
651
|
-
async estimateTransferRemoteFees({ originTokenAmount, destination, recipient, sender, senderPubKey, destinationToken, }) {
|
|
696
|
+
async estimateTransferRemoteFees({ originTokenAmount, destination, recipient, sender, senderPubKey, attestation, destinationToken, }) {
|
|
652
697
|
this.logger.debug('Fetching remote transfer fee estimates');
|
|
653
698
|
const { token: originToken } = originTokenAmount;
|
|
654
699
|
// Handle CrossCollateralRouter fee estimation
|
|
@@ -660,6 +705,7 @@ export class WarpCore {
|
|
|
660
705
|
recipient,
|
|
661
706
|
sender,
|
|
662
707
|
senderPubKey,
|
|
708
|
+
attestation,
|
|
663
709
|
});
|
|
664
710
|
}
|
|
665
711
|
// First get interchain gas quote (aka IGP quote)
|
|
@@ -678,6 +724,8 @@ export class WarpCore {
|
|
|
678
724
|
senderPubKey,
|
|
679
725
|
interchainFee: igpQuote,
|
|
680
726
|
tokenFeeQuote,
|
|
727
|
+
attestation,
|
|
728
|
+
amount: originTokenAmount.amount,
|
|
681
729
|
});
|
|
682
730
|
return {
|
|
683
731
|
interchainQuote: igpQuote,
|
|
@@ -688,7 +736,7 @@ export class WarpCore {
|
|
|
688
736
|
/**
|
|
689
737
|
* Estimate fees for a CrossCollateralRouter transfer.
|
|
690
738
|
*/
|
|
691
|
-
async estimateCrossCollateralFees({ originTokenAmount, destination, destinationToken, recipient, sender, senderPubKey, }) {
|
|
739
|
+
async estimateCrossCollateralFees({ originTokenAmount, destination, destinationToken, recipient, sender, senderPubKey, attestation, }) {
|
|
692
740
|
const { token: originToken } = originTokenAmount;
|
|
693
741
|
const resolvedDestinationToken = this.resolveDestinationToken({
|
|
694
742
|
originToken,
|
|
@@ -709,6 +757,8 @@ export class WarpCore {
|
|
|
709
757
|
senderPubKey,
|
|
710
758
|
interchainFee: interchainQuote,
|
|
711
759
|
tokenFeeQuote,
|
|
760
|
+
attestation,
|
|
761
|
+
amount: originTokenAmount.amount,
|
|
712
762
|
destinationToken: resolvedDestinationToken,
|
|
713
763
|
});
|
|
714
764
|
return {
|
|
@@ -821,7 +871,7 @@ export class WarpCore {
|
|
|
821
871
|
/**
|
|
822
872
|
* Ensure the remote token transfer would be valid for the given chains, amount, sender, and recipient
|
|
823
873
|
*/
|
|
824
|
-
async validateTransfer({ originTokenAmount, destination, recipient, sender, senderPubKey, destinationToken, }) {
|
|
874
|
+
async validateTransfer({ originTokenAmount, destination, recipient, sender, senderPubKey, attestation, destinationToken, }) {
|
|
825
875
|
const chainError = this.validateChains(originTokenAmount.token.chainName, destination);
|
|
826
876
|
if (chainError)
|
|
827
877
|
return chainError;
|
|
@@ -856,7 +906,7 @@ export class WarpCore {
|
|
|
856
906
|
const originCollateralError = await this.validateOriginCollateral(originTokenAmount);
|
|
857
907
|
if (originCollateralError)
|
|
858
908
|
return originCollateralError;
|
|
859
|
-
const balancesError = await this.validateTokenBalances(originTokenAmount, destination, sender, recipient, senderPubKey, resolvedDestinationToken);
|
|
909
|
+
const balancesError = await this.validateTokenBalances(originTokenAmount, destination, sender, recipient, senderPubKey, attestation, resolvedDestinationToken);
|
|
860
910
|
if (balancesError)
|
|
861
911
|
return balancesError;
|
|
862
912
|
return null;
|
|
@@ -934,7 +984,7 @@ export class WarpCore {
|
|
|
934
984
|
/**
|
|
935
985
|
* Ensure the sender has sufficient balances for transfer and interchain gas
|
|
936
986
|
*/
|
|
937
|
-
async validateTokenBalances(originTokenAmount, destination, sender, recipient, senderPubKey, destinationToken) {
|
|
987
|
+
async validateTokenBalances(originTokenAmount, destination, sender, recipient, senderPubKey, attestation, destinationToken) {
|
|
938
988
|
const { token: originToken, amount } = originTokenAmount;
|
|
939
989
|
const { amount: senderBalance } = await originToken.getBalance(this.multiProvider, sender);
|
|
940
990
|
const senderBalanceAmount = originTokenAmount.token.amount(senderBalance);
|
|
@@ -975,6 +1025,8 @@ export class WarpCore {
|
|
|
975
1025
|
senderPubKey,
|
|
976
1026
|
interchainFee: interchainQuote,
|
|
977
1027
|
tokenFeeQuote,
|
|
1028
|
+
attestation,
|
|
1029
|
+
amount,
|
|
978
1030
|
destinationToken,
|
|
979
1031
|
});
|
|
980
1032
|
const feeEstimate = { interchainQuote, localQuote };
|
|
@@ -993,60 +1045,6 @@ export class WarpCore {
|
|
|
993
1045
|
}
|
|
994
1046
|
return null;
|
|
995
1047
|
}
|
|
996
|
-
resolveDestinationToken({ originToken, destination, destinationToken, }) {
|
|
997
|
-
const destinationName = this.multiProvider.getChainName(destination);
|
|
998
|
-
const destinationCandidates = originToken
|
|
999
|
-
.getConnections()
|
|
1000
|
-
.filter((connection) => connection.token.chainName === destinationName)
|
|
1001
|
-
.map((connection) => connection.token);
|
|
1002
|
-
assert(destinationCandidates.length > 0, `No connection found for ${destinationName}`);
|
|
1003
|
-
if (destinationToken) {
|
|
1004
|
-
assert(destinationToken.chainName === destinationName, `Destination token chain mismatch for ${destinationName}`);
|
|
1005
|
-
const matchedToken = destinationCandidates.find((candidate) => candidate.equals(destinationToken) ||
|
|
1006
|
-
tokenIdentifiersEqual(candidate.addressOrDenom, destinationToken.addressOrDenom));
|
|
1007
|
-
assert(matchedToken, `Destination token ${destinationToken.addressOrDenom} is not connected from ${originToken.chainName} to ${destinationName}`);
|
|
1008
|
-
return matchedToken;
|
|
1009
|
-
}
|
|
1010
|
-
assert(destinationCandidates.length === 1, `Ambiguous route to ${destinationName}; specify destination token`);
|
|
1011
|
-
return destinationCandidates[0];
|
|
1012
|
-
}
|
|
1013
|
-
/**
|
|
1014
|
-
* Search through token list to find token with matching chain and address
|
|
1015
|
-
*/
|
|
1016
|
-
findToken(chainName, addressOrDenom) {
|
|
1017
|
-
if (!addressOrDenom)
|
|
1018
|
-
return null;
|
|
1019
|
-
const results = this.tokens.filter((token) => token.chainName === chainName &&
|
|
1020
|
-
tokenIdentifiersEqual(token.addressOrDenom, addressOrDenom));
|
|
1021
|
-
if (results.length === 1)
|
|
1022
|
-
return results[0];
|
|
1023
|
-
if (results.length > 1)
|
|
1024
|
-
throw new Error(`Ambiguous token search results for ${addressOrDenom}`);
|
|
1025
|
-
const chainMetadata = this.multiProvider.getChainMetadata(chainName);
|
|
1026
|
-
if (chainMetadata.nativeToken?.denom === addressOrDenom) {
|
|
1027
|
-
return Token.FromChainMetadataNativeToken(chainMetadata);
|
|
1028
|
-
}
|
|
1029
|
-
return null;
|
|
1030
|
-
}
|
|
1031
|
-
/**
|
|
1032
|
-
* Get the list of chains referenced by the tokens in this WarpCore
|
|
1033
|
-
*/
|
|
1034
|
-
getTokenChains() {
|
|
1035
|
-
return [...new Set(this.tokens.map((token) => token.chainName)).values()];
|
|
1036
|
-
}
|
|
1037
|
-
/**
|
|
1038
|
-
* Get the subset of tokens whose chain matches the given chainName
|
|
1039
|
-
*/
|
|
1040
|
-
getTokensForChain(chainName) {
|
|
1041
|
-
return this.tokens.filter((token) => token.chainName === chainName);
|
|
1042
|
-
}
|
|
1043
|
-
/**
|
|
1044
|
-
* Get the subset of tokens whose chain matches the given chainName
|
|
1045
|
-
* and which are connected to a token on the given destination chain
|
|
1046
|
-
*/
|
|
1047
|
-
getTokensForRoute(origin, destination) {
|
|
1048
|
-
return this.tokens.filter((token) => token.chainName === origin && token.getConnectionForChain(destination));
|
|
1049
|
-
}
|
|
1050
1048
|
/**
|
|
1051
1049
|
* Ensure the sender has sufficient balances for transfer and interchain gas
|
|
1052
1050
|
*/
|
|
@@ -1119,5 +1117,74 @@ export class WarpCore {
|
|
|
1119
1117
|
}
|
|
1120
1118
|
return null;
|
|
1121
1119
|
}
|
|
1120
|
+
resolveDestinationToken({ originToken, destination, destinationToken, }) {
|
|
1121
|
+
const destinationName = this.multiProvider.getChainName(destination);
|
|
1122
|
+
const destinationCandidates = originToken
|
|
1123
|
+
.getConnections()
|
|
1124
|
+
.filter((connection) => connection.token.chainName === destinationName)
|
|
1125
|
+
.map((connection) => connection.token);
|
|
1126
|
+
assert(destinationCandidates.length > 0, `No connection found for ${destinationName}`);
|
|
1127
|
+
if (destinationToken) {
|
|
1128
|
+
assert(destinationToken.chainName === destinationName, `Destination token chain mismatch for ${destinationName}`);
|
|
1129
|
+
const matchedToken = destinationCandidates.find((candidate) => candidate.equals(destinationToken) ||
|
|
1130
|
+
tokenIdentifiersEqual(candidate.addressOrDenom, destinationToken.addressOrDenom));
|
|
1131
|
+
assert(matchedToken, `Destination token ${destinationToken.addressOrDenom} is not connected from ${originToken.chainName} to ${destinationName}`);
|
|
1132
|
+
return matchedToken;
|
|
1133
|
+
}
|
|
1134
|
+
assert(destinationCandidates.length === 1, `Ambiguous route to ${destinationName}; specify destination token`);
|
|
1135
|
+
return destinationCandidates[0];
|
|
1136
|
+
}
|
|
1137
|
+
/**
|
|
1138
|
+
* Search through token list to find token with matching chain and address
|
|
1139
|
+
*/
|
|
1140
|
+
findToken(chainName, addressOrDenom) {
|
|
1141
|
+
if (!addressOrDenom)
|
|
1142
|
+
return null;
|
|
1143
|
+
const results = this.tokens.filter((token) => token.chainName === chainName &&
|
|
1144
|
+
tokenIdentifiersEqual(token.addressOrDenom, addressOrDenom));
|
|
1145
|
+
if (results.length === 1)
|
|
1146
|
+
return results[0];
|
|
1147
|
+
if (results.length > 1)
|
|
1148
|
+
throw new Error(`Ambiguous token search results for ${addressOrDenom}`);
|
|
1149
|
+
// If the token is not found, check to see if it matches the denom of chain's native token
|
|
1150
|
+
// This is a convenience so WarpConfigs don't need to include definitions for native tokens
|
|
1151
|
+
const chainMetadata = this.multiProvider.getChainMetadata(chainName);
|
|
1152
|
+
if (chainMetadata.nativeToken?.denom === addressOrDenom) {
|
|
1153
|
+
return Token.FromChainMetadataNativeToken(chainMetadata);
|
|
1154
|
+
}
|
|
1155
|
+
return null;
|
|
1156
|
+
}
|
|
1157
|
+
/**
|
|
1158
|
+
* Get the list of chains referenced by the tokens in this WarpCore
|
|
1159
|
+
*/
|
|
1160
|
+
getTokenChains() {
|
|
1161
|
+
return [...new Set(this.tokens.map((t) => t.chainName)).values()];
|
|
1162
|
+
}
|
|
1163
|
+
/**
|
|
1164
|
+
* Get the subset of tokens whose chain matches the given chainName
|
|
1165
|
+
*/
|
|
1166
|
+
getTokensForChain(chainName) {
|
|
1167
|
+
return this.tokens.filter((t) => t.chainName === chainName);
|
|
1168
|
+
}
|
|
1169
|
+
/**
|
|
1170
|
+
* Get the subset of tokens whose chain matches the given chainName
|
|
1171
|
+
* and which are connected to a token on the given destination chain
|
|
1172
|
+
*/
|
|
1173
|
+
getTokensForRoute(origin, destination) {
|
|
1174
|
+
return this.tokens.filter((t) => t.chainName === origin && t.getConnectionForChain(destination));
|
|
1175
|
+
}
|
|
1176
|
+
/**
|
|
1177
|
+
* Check if a token supports Predicate attestations
|
|
1178
|
+
* @param token The token to check
|
|
1179
|
+
* @param destination Optional destination chain for the route
|
|
1180
|
+
* @returns True if the token's warp route has a PredicateRouterWrapper configured
|
|
1181
|
+
*/
|
|
1182
|
+
async isPredicateSupported(token, destination) {
|
|
1183
|
+
const adapter = token.getHypAdapter(this.multiProvider, destination);
|
|
1184
|
+
if (!isPredicateCapableAdapter(adapter)) {
|
|
1185
|
+
return false;
|
|
1186
|
+
}
|
|
1187
|
+
return adapter.supportsAttestation();
|
|
1188
|
+
}
|
|
1122
1189
|
}
|
|
1123
1190
|
//# sourceMappingURL=WarpCore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WarpCore.js","sourceRoot":"","sources":["../../src/warp/WarpCore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WarpCore.js","sourceRoot":"","sources":["../../src/warp/WarpCore.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperlane-xyz/sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "33.0.0",
|
|
4
4
|
"description": "The official SDK for the Hyperlane Network",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Hyperlane",
|
|
@@ -139,15 +139,15 @@
|
|
|
139
139
|
"viem": "^2.21.45",
|
|
140
140
|
"zksync-ethers": "^5.10.0",
|
|
141
141
|
"zod": "^3.21.2",
|
|
142
|
-
"@hyperlane-xyz/aleo-sdk": "
|
|
142
|
+
"@hyperlane-xyz/aleo-sdk": "33.0.0",
|
|
143
143
|
"@hyperlane-xyz/core": "11.3.1",
|
|
144
|
-
"@hyperlane-xyz/deploy-sdk": "5.0.
|
|
145
|
-
"@hyperlane-xyz/
|
|
146
|
-
"@hyperlane-xyz/
|
|
147
|
-
"@hyperlane-xyz/radix-sdk": "
|
|
148
|
-
"@hyperlane-xyz/starknet-core": "
|
|
149
|
-
"@hyperlane-xyz/tron-sdk": "23.0.
|
|
150
|
-
"@hyperlane-xyz/utils": "
|
|
144
|
+
"@hyperlane-xyz/deploy-sdk": "5.0.2",
|
|
145
|
+
"@hyperlane-xyz/provider-sdk": "5.0.2",
|
|
146
|
+
"@hyperlane-xyz/cosmos-sdk": "33.0.0",
|
|
147
|
+
"@hyperlane-xyz/radix-sdk": "33.0.0",
|
|
148
|
+
"@hyperlane-xyz/starknet-core": "33.0.0",
|
|
149
|
+
"@hyperlane-xyz/tron-sdk": "23.0.2",
|
|
150
|
+
"@hyperlane-xyz/utils": "33.0.0"
|
|
151
151
|
},
|
|
152
152
|
"devDependencies": {
|
|
153
153
|
"@ethersproject/providers": "*",
|
|
@@ -173,7 +173,7 @@
|
|
|
173
173
|
"tsx": "^4.19.1",
|
|
174
174
|
"typescript": "6.0.2",
|
|
175
175
|
"yaml": "2.4.5",
|
|
176
|
-
"@hyperlane-xyz/tsconfig": "^
|
|
176
|
+
"@hyperlane-xyz/tsconfig": "^33.0.0"
|
|
177
177
|
},
|
|
178
178
|
"peerDependencies": {
|
|
179
179
|
"@ethersproject/abi": "*"
|