@wormhole-foundation/sdk-evm-tokenbridge 4.21.0 → 4.22.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.
@@ -1 +1 @@
1
- {"version":3,"file":"executorTokenBridge.d.ts","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kCAAkC,CAAC;AAW1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAGL,sBAAsB,EAGvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,sBAAsB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CACxE,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IASlC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,QAAQ,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAG1B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS;WA+BlB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAezC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB,CAAC,aAAa,EAChD,WAAW,CAAC,EAAE,mBAAmB,CAAC,WAAW,GAC5C,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwHxC,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,GAAG,EAAE,mBAAmB,CAAC,GAAG,GAC3B,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyBzC,2BAA2B,CAC/B,aAAa,EAAE,OAAO,EACtB,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAqBF,gBAAgB,CACd,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;CAQhC"}
1
+ {"version":3,"file":"executorTokenBridge.d.ts","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kCAAkC,CAAC;AAW1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAGL,sBAAsB,EAGvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,sBAAsB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CACxE,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IASlC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,QAAQ,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAG1B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS;WA+BlB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAezC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB,CAAC,aAAa,EAChD,WAAW,CAAC,EAAE,mBAAmB,CAAC,WAAW,GAC5C,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA2IxC,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,GAAG,EAAE,mBAAmB,CAAC,GAAG,GAC3B,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyBzC,2BAA2B,CAC/B,aAAa,EAAE,OAAO,EACtB,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAqBF,gBAAgB,CACd,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;CAQhC"}
@@ -14,8 +14,8 @@ const RELAYER_ABI = [
14
14
  'function executeVAAv1(bytes calldata encodedTransferMessage) payable',
15
15
  ];
16
16
  const RELAYER_WITH_REFERRER_ABI = [
17
- 'function transferTokensWithRelay(address tokenBridgeRelayer, address token, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint16 dbps, address payee) feeArgs) payable returns (uint64)',
18
- 'function wrapAndTransferEthWithRelay(address tokenBridgeRelayer, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint16 dbps, address payee) feeArgs) payable returns (uint64)',
17
+ 'function transferTokensWithRelay(address tokenBridgeRelayer, address token, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint256 transferTokenFee, uint256 nativeTokenFee, address payee) feeArgs) payable returns (uint64)',
18
+ 'function wrapAndTransferEthWithRelay(address tokenBridgeRelayer, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint256 transferTokenFee, uint256 nativeTokenFee, address payee) feeArgs) payable returns (uint64)',
19
19
  ];
20
20
  class EvmExecutorTokenBridge {
21
21
  network;
@@ -71,34 +71,51 @@ class EvmExecutorTokenBridge {
71
71
  const executionAmount = estimatedCost;
72
72
  const refundAddr = senderAddr;
73
73
  let txReq;
74
- // TODO: this could be optimized to use the non-referrer contract if referrerFee is not provided
75
- const feeArgs = referrerFee
76
- ? {
77
- dbps: referrerFee.feeDbps,
78
- payee: referrerFee.referrer.address.toString(),
79
- }
80
- : {
81
- dbps: 0n,
82
- payee: ethers_2.ZeroAddress,
83
- };
74
+ const referrerTransferTokenFee = referrerFee?.transferTokenFee ?? 0n;
75
+ const referrerNativeTokenFee = referrerFee?.nativeTokenFee ?? 0n;
76
+ const payee = referrerFee?.referrer.address.toString() ?? ethers_2.ZeroAddress;
77
+ // The helper contract bridges exactly what we pass as `amount` and then
78
+ // pulls transferTokenFee separately via _payFee. If we pass the gross
79
+ // amount we'd double-charge the user. Pass the post-fee remainder so the
80
+ // helper bridges the right amount; the fee transfers happen on top.
81
+ const bridgedAmount = referrerFee?.remainingAmount ?? amount;
84
82
  if ((0, sdk_connect_1.isNative)(token)) {
83
+ // The source token is native gas, so the contract can't pull
84
+ // transferTokenFee as ERC20 from msg.sender (no WETH approval exists).
85
+ // Fold it into nativeTokenFee — denominated in the same units — so the
86
+ // referrer is paid out of msg.value directly.
87
+ const combinedNativeFee = referrerNativeTokenFee + referrerTransferTokenFee;
88
+ const feeArgs = {
89
+ transferTokenFee: 0n,
90
+ nativeTokenFee: combinedNativeFee,
91
+ payee,
92
+ };
85
93
  txReq = await this.relayerWithReferrerContract
86
94
  .getFunction('wrapAndTransferEthWithRelay')
87
- .populateTransaction(this.relayerAddress, amount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
88
- value: amount + wormholeFee + executionAmount,
95
+ .populateTransaction(this.relayerAddress, bridgedAmount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
96
+ value: bridgedAmount + wormholeFee + executionAmount + combinedNativeFee,
89
97
  });
90
98
  }
91
99
  else {
100
+ const feeArgs = {
101
+ transferTokenFee: referrerTransferTokenFee,
102
+ nativeTokenFee: referrerNativeTokenFee,
103
+ payee,
104
+ };
92
105
  const tokenContract = sdk_evm_1.EvmPlatform.getTokenImplementation(this.provider, token.toString());
106
+ // Approval must cover the bridged remainder plus any ERC20-denominated
107
+ // fee the helper contract will pull via a second safeTransferFrom.
108
+ // Together this equals the user's original gross input amount.
109
+ const requiredAllowance = bridgedAmount + referrerTransferTokenFee;
93
110
  const allowance = await tokenContract.allowance(senderAddr, this.relayerWithReferrerAddress);
94
- if (allowance < amount) {
95
- const txReq = await tokenContract.approve.populateTransaction(this.relayerWithReferrerAddress, amount);
111
+ if (allowance < requiredAllowance) {
112
+ const txReq = await tokenContract.approve.populateTransaction(this.relayerWithReferrerAddress, requiredAllowance);
96
113
  yield this.createUnsignedTx(txReq, 'approve');
97
114
  }
98
115
  txReq = await this.relayerWithReferrerContract
99
116
  .getFunction('transferTokensWithRelay')
100
- .populateTransaction(this.relayerAddress, token.toString(), amount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
101
- value: wormholeFee + executionAmount,
117
+ .populateTransaction(this.relayerAddress, token.toString(), bridgedAmount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
118
+ value: wormholeFee + executionAmount + referrerNativeTokenFee,
102
119
  });
103
120
  }
104
121
  yield this.createUnsignedTx((0, sdk_evm_1.addFrom)(txReq, senderAddr), (0, sdk_connect_1.isNative)(token)
@@ -1 +1 @@
1
- {"version":3,"file":"executorTokenBridge.js","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executorTokenBridge.js","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"executorTokenBridge.d.ts","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kCAAkC,CAAC;AAW1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAGL,sBAAsB,EAGvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,sBAAsB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CACxE,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IASlC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,QAAQ,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAG1B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS;WA+BlB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAezC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB,CAAC,aAAa,EAChD,WAAW,CAAC,EAAE,mBAAmB,CAAC,WAAW,GAC5C,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwHxC,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,GAAG,EAAE,mBAAmB,CAAC,GAAG,GAC3B,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyBzC,2BAA2B,CAC/B,aAAa,EAAE,OAAO,EACtB,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAqBF,gBAAgB,CACd,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;CAQhC"}
1
+ {"version":3,"file":"executorTokenBridge.d.ts","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kCAAkC,CAAC;AAW1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAGL,sBAAsB,EAGvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAkBpE,qBAAa,sBAAsB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CACxE,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IASlC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,QAAQ,CAAC;IAC/C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAG1B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS;WA+BlB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,sBAAsB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAezC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB,CAAC,aAAa,EAChD,WAAW,CAAC,EAAE,mBAAmB,CAAC,WAAW,GAC5C,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA2IxC,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,GAAG,EAAE,mBAAmB,CAAC,GAAG,GAC3B,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyBzC,2BAA2B,CAC/B,aAAa,EAAE,OAAO,EACtB,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAqBF,gBAAgB,CACd,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;CAQhC"}
@@ -11,8 +11,8 @@ const RELAYER_ABI = [
11
11
  'function executeVAAv1(bytes calldata encodedTransferMessage) payable',
12
12
  ];
13
13
  const RELAYER_WITH_REFERRER_ABI = [
14
- 'function transferTokensWithRelay(address tokenBridgeRelayer, address token, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint16 dbps, address payee) feeArgs) payable returns (uint64)',
15
- 'function wrapAndTransferEthWithRelay(address tokenBridgeRelayer, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint16 dbps, address payee) feeArgs) payable returns (uint64)',
14
+ 'function transferTokensWithRelay(address tokenBridgeRelayer, address token, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint256 transferTokenFee, uint256 nativeTokenFee, address payee) feeArgs) payable returns (uint64)',
15
+ 'function wrapAndTransferEthWithRelay(address tokenBridgeRelayer, uint256 amount, uint16 targetChain, bytes32 targetRecipient, uint32 nonce, bytes32 dstTransferRecipient, bytes32 dstExecutionAddress, uint256 executionAmount, address refundAddr, bytes calldata signedQuoteBytes, bytes calldata relayInstructions, tuple(uint256 transferTokenFee, uint256 nativeTokenFee, address payee) feeArgs) payable returns (uint64)',
16
16
  ];
17
17
  export class EvmExecutorTokenBridge {
18
18
  network;
@@ -68,34 +68,51 @@ export class EvmExecutorTokenBridge {
68
68
  const executionAmount = estimatedCost;
69
69
  const refundAddr = senderAddr;
70
70
  let txReq;
71
- // TODO: this could be optimized to use the non-referrer contract if referrerFee is not provided
72
- const feeArgs = referrerFee
73
- ? {
74
- dbps: referrerFee.feeDbps,
75
- payee: referrerFee.referrer.address.toString(),
76
- }
77
- : {
78
- dbps: 0n,
79
- payee: ZeroAddress,
80
- };
71
+ const referrerTransferTokenFee = referrerFee?.transferTokenFee ?? 0n;
72
+ const referrerNativeTokenFee = referrerFee?.nativeTokenFee ?? 0n;
73
+ const payee = referrerFee?.referrer.address.toString() ?? ZeroAddress;
74
+ // The helper contract bridges exactly what we pass as `amount` and then
75
+ // pulls transferTokenFee separately via _payFee. If we pass the gross
76
+ // amount we'd double-charge the user. Pass the post-fee remainder so the
77
+ // helper bridges the right amount; the fee transfers happen on top.
78
+ const bridgedAmount = referrerFee?.remainingAmount ?? amount;
81
79
  if (isNative(token)) {
80
+ // The source token is native gas, so the contract can't pull
81
+ // transferTokenFee as ERC20 from msg.sender (no WETH approval exists).
82
+ // Fold it into nativeTokenFee — denominated in the same units — so the
83
+ // referrer is paid out of msg.value directly.
84
+ const combinedNativeFee = referrerNativeTokenFee + referrerTransferTokenFee;
85
+ const feeArgs = {
86
+ transferTokenFee: 0n,
87
+ nativeTokenFee: combinedNativeFee,
88
+ payee,
89
+ };
82
90
  txReq = await this.relayerWithReferrerContract
83
91
  .getFunction('wrapAndTransferEthWithRelay')
84
- .populateTransaction(this.relayerAddress, amount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
85
- value: amount + wormholeFee + executionAmount,
92
+ .populateTransaction(this.relayerAddress, bridgedAmount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
93
+ value: bridgedAmount + wormholeFee + executionAmount + combinedNativeFee,
86
94
  });
87
95
  }
88
96
  else {
97
+ const feeArgs = {
98
+ transferTokenFee: referrerTransferTokenFee,
99
+ nativeTokenFee: referrerNativeTokenFee,
100
+ payee,
101
+ };
89
102
  const tokenContract = EvmPlatform.getTokenImplementation(this.provider, token.toString());
103
+ // Approval must cover the bridged remainder plus any ERC20-denominated
104
+ // fee the helper contract will pull via a second safeTransferFrom.
105
+ // Together this equals the user's original gross input amount.
106
+ const requiredAllowance = bridgedAmount + referrerTransferTokenFee;
90
107
  const allowance = await tokenContract.allowance(senderAddr, this.relayerWithReferrerAddress);
91
- if (allowance < amount) {
92
- const txReq = await tokenContract.approve.populateTransaction(this.relayerWithReferrerAddress, amount);
108
+ if (allowance < requiredAllowance) {
109
+ const txReq = await tokenContract.approve.populateTransaction(this.relayerWithReferrerAddress, requiredAllowance);
93
110
  yield this.createUnsignedTx(txReq, 'approve');
94
111
  }
95
112
  txReq = await this.relayerWithReferrerContract
96
113
  .getFunction('transferTokensWithRelay')
97
- .populateTransaction(this.relayerAddress, token.toString(), amount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
98
- value: wormholeFee + executionAmount,
114
+ .populateTransaction(this.relayerAddress, token.toString(), bridgedAmount, targetChain, targetRecipient.toUint8Array(), nonce, dstTransferRecipient.toUint8Array(), dstExecutionAddress.toUint8Array(), executionAmount, refundAddr, signedQuoteBytes, relayInstructionsBytes, feeArgs, {
115
+ value: wormholeFee + executionAmount + referrerNativeTokenFee,
99
116
  });
100
117
  }
101
118
  yield this.createUnsignedTx(addFrom(txReq, senderAddr), isNative(token)
@@ -1 +1 @@
1
- {"version":3,"file":"executorTokenBridge.js","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executorTokenBridge.js","sourceRoot":"","sources":["../../src/executorTokenBridge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wormhole-foundation/sdk-evm-tokenbridge",
3
- "version": "4.21.0",
3
+ "version": "4.22.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/wormhole-foundation/wormhole-sdk-ts.git"
@@ -51,9 +51,9 @@
51
51
  "prettier": "prettier --write ./src"
52
52
  },
53
53
  "dependencies": {
54
- "@wormhole-foundation/sdk-connect": "4.21.0",
55
- "@wormhole-foundation/sdk-evm": "4.21.0",
56
- "@wormhole-foundation/sdk-evm-core": "4.21.0",
54
+ "@wormhole-foundation/sdk-connect": "4.22.0",
55
+ "@wormhole-foundation/sdk-evm": "4.22.0",
56
+ "@wormhole-foundation/sdk-evm-core": "4.22.0",
57
57
  "ethers": "^6.5.1"
58
58
  },
59
59
  "type": "module",