@wormhole-labs/cctp-executor-route 0.26.0-beta.8 → 0.26.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 (69) hide show
  1. package/dist/cjs/aptos/executor.d.ts.map +1 -1
  2. package/dist/cjs/aptos/executor.js +36 -15
  3. package/dist/cjs/aptos/executor.js.map +1 -1
  4. package/dist/cjs/consts.d.ts +2 -0
  5. package/dist/cjs/consts.d.ts.map +1 -1
  6. package/dist/cjs/consts.js +50 -4
  7. package/dist/cjs/consts.js.map +1 -1
  8. package/dist/cjs/evm/executor.d.ts.map +1 -1
  9. package/dist/cjs/evm/executor.js +40 -23
  10. package/dist/cjs/evm/executor.js.map +1 -1
  11. package/dist/cjs/evm/executorV2.d.ts.map +1 -1
  12. package/dist/cjs/evm/executorV2.js +40 -23
  13. package/dist/cjs/evm/executorV2.js.map +1 -1
  14. package/dist/cjs/routes/cctpV1.d.ts +6 -0
  15. package/dist/cjs/routes/cctpV1.d.ts.map +1 -1
  16. package/dist/cjs/routes/cctpV1.js +1 -1
  17. package/dist/cjs/routes/cctpV1.js.map +1 -1
  18. package/dist/cjs/routes/cctpV2Base.d.ts +3 -0
  19. package/dist/cjs/routes/cctpV2Base.d.ts.map +1 -1
  20. package/dist/cjs/routes/cctpV2Base.js.map +1 -1
  21. package/dist/cjs/routes/cctpV2Fast.d.ts.map +1 -1
  22. package/dist/cjs/routes/cctpV2Fast.js +1 -1
  23. package/dist/cjs/routes/cctpV2Fast.js.map +1 -1
  24. package/dist/cjs/routes/cctpV2Standard.d.ts.map +1 -1
  25. package/dist/cjs/routes/cctpV2Standard.js +1 -1
  26. package/dist/cjs/routes/cctpV2Standard.js.map +1 -1
  27. package/dist/cjs/routes/helpers.d.ts +6 -2
  28. package/dist/cjs/routes/helpers.d.ts.map +1 -1
  29. package/dist/cjs/routes/helpers.js +85 -22
  30. package/dist/cjs/routes/helpers.js.map +1 -1
  31. package/dist/cjs/svm/executor.d.ts.map +1 -1
  32. package/dist/cjs/svm/executor.js +4 -1
  33. package/dist/cjs/svm/executor.js.map +1 -1
  34. package/dist/esm/aptos/executor.d.ts.map +1 -1
  35. package/dist/esm/aptos/executor.js +36 -15
  36. package/dist/esm/aptos/executor.js.map +1 -1
  37. package/dist/esm/consts.d.ts +2 -0
  38. package/dist/esm/consts.d.ts.map +1 -1
  39. package/dist/esm/consts.js +49 -3
  40. package/dist/esm/consts.js.map +1 -1
  41. package/dist/esm/evm/executor.d.ts.map +1 -1
  42. package/dist/esm/evm/executor.js +40 -23
  43. package/dist/esm/evm/executor.js.map +1 -1
  44. package/dist/esm/evm/executorV2.d.ts.map +1 -1
  45. package/dist/esm/evm/executorV2.js +40 -23
  46. package/dist/esm/evm/executorV2.js.map +1 -1
  47. package/dist/esm/routes/cctpV1.d.ts +6 -0
  48. package/dist/esm/routes/cctpV1.d.ts.map +1 -1
  49. package/dist/esm/routes/cctpV1.js +2 -2
  50. package/dist/esm/routes/cctpV1.js.map +1 -1
  51. package/dist/esm/routes/cctpV2Base.d.ts +3 -0
  52. package/dist/esm/routes/cctpV2Base.d.ts.map +1 -1
  53. package/dist/esm/routes/cctpV2Base.js.map +1 -1
  54. package/dist/esm/routes/cctpV2Fast.d.ts.map +1 -1
  55. package/dist/esm/routes/cctpV2Fast.js +2 -2
  56. package/dist/esm/routes/cctpV2Fast.js.map +1 -1
  57. package/dist/esm/routes/cctpV2Standard.d.ts.map +1 -1
  58. package/dist/esm/routes/cctpV2Standard.js +2 -2
  59. package/dist/esm/routes/cctpV2Standard.js.map +1 -1
  60. package/dist/esm/routes/helpers.d.ts +6 -2
  61. package/dist/esm/routes/helpers.d.ts.map +1 -1
  62. package/dist/esm/routes/helpers.js +84 -22
  63. package/dist/esm/routes/helpers.js.map +1 -1
  64. package/dist/esm/svm/executor.d.ts.map +1 -1
  65. package/dist/esm/svm/executor.js +4 -1
  66. package/dist/esm/svm/executor.js.map +1 -1
  67. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  68. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  69. package/package.json +1 -1
@@ -3,23 +3,55 @@ import { gasLimits, SOLANA_MSG_VALUE_BASE_FEE } from "../consts";
3
3
  import { fetchCapabilities, fetchSignedQuote, fetchStatus, sleep, } from "../utils";
4
4
  import { SolanaAddress } from "@wormhole-foundation/sdk-solana";
5
5
  import { relayInstructionsLayout, signedQuoteLayout } from "../layouts";
6
- export function validateFeeConfig(config) {
7
- if (typeof config.transferTokenFee === "bigint" && config.transferTokenFee < 0n) {
8
- throw new Error("transferTokenFee must be non-negative");
6
+ const MAX_U16 = 65535n;
7
+ export function calculateReferrerFee(amount, dBps, threshold) {
8
+ if (dBps > MAX_U16)
9
+ throw new Error("dBps exceeds max u16");
10
+ let referrerFee = 0n;
11
+ let remainingAmount = amount;
12
+ if (dBps > 0n) {
13
+ if (threshold !== undefined && amount > 0n) {
14
+ const thresholdUnits = threshold * 1000000n; // whole USDC -> 6 decimals
15
+ const cappedAmount = amount < thresholdUnits ? amount : thresholdUnits;
16
+ referrerFee = (cappedAmount * dBps) / 100000n;
17
+ }
18
+ else {
19
+ referrerFee = (amount * dBps) / 100000n;
20
+ }
21
+ remainingAmount = amount - referrerFee;
9
22
  }
10
- if (typeof config.nativeTokenFee === "bigint" && config.nativeTokenFee < 0n) {
11
- throw new Error("nativeTokenFee must be non-negative");
23
+ return { referrerFee, remainingAmount };
24
+ }
25
+ export function validateFeeConfig(config) {
26
+ if (config.useLegacyFees) {
27
+ // Legacy dBPS mode validation
28
+ const dBps = config.referrerFeeDbps ?? 0n;
29
+ if (dBps < 0n || dBps > MAX_U16) {
30
+ throw new Error("referrerFeeDbps must be between 0 and 65535");
31
+ }
32
+ if (dBps > 0n && !config.referrerAddresses) {
33
+ throw new Error("referrerAddresses must be provided when referrerFeeDbps > 0");
34
+ }
12
35
  }
13
- const hasFee = typeof config.transferTokenFee === "function" || (config.transferTokenFee ?? 0n) > 0n ||
14
- typeof config.nativeTokenFee === "function" || (config.nativeTokenFee ?? 0n) > 0n;
15
- if (hasFee && !config.referrerAddresses) {
16
- throw new Error("referrerAddresses must be provided when fees are configured");
36
+ else {
37
+ // Flat fee mode validation (default)
38
+ if (typeof config.transferTokenFee === "bigint" && config.transferTokenFee < 0n) {
39
+ throw new Error("transferTokenFee must be non-negative");
40
+ }
41
+ if (typeof config.nativeTokenFee === "bigint" && config.nativeTokenFee < 0n) {
42
+ throw new Error("nativeTokenFee must be non-negative");
43
+ }
44
+ const hasFee = typeof config.transferTokenFee === "function" || (config.transferTokenFee ?? 0n) > 0n ||
45
+ typeof config.nativeTokenFee === "function" || (config.nativeTokenFee ?? 0n) > 0n;
46
+ if (hasFee && !config.referrerAddresses) {
47
+ throw new Error("referrerAddresses must be provided when fees are configured");
48
+ }
17
49
  }
18
50
  }
19
51
  // The minimum rent exemption amount for a 165 byte account (e.g. an ATA)
20
52
  // cache it here to avoid fetching it from the Solana RPC
21
53
  let ataMinRentAmount = undefined;
22
- export async function fetchExecutorQuote(request, params, config, capability) {
54
+ export async function fetchExecutorQuote(request, params, config, capability, legacyShimContracts) {
23
55
  const { fromChain, toChain } = request;
24
56
  const srcUsdcAddress = circle.usdcContract.get(fromChain.network, fromChain.chain);
25
57
  if (!srcUsdcAddress) {
@@ -30,24 +62,47 @@ export async function fetchExecutorQuote(request, params, config, capability) {
30
62
  throw new Error("Invalid transfer, no USDC contract on destination");
31
63
  }
32
64
  const transferAmount = amount.units(params.normalizedParams.amount);
33
- const transferTokenFee = typeof config.transferTokenFee === "function"
34
- ? config.transferTokenFee(transferAmount, fromChain.chain)
35
- : (config.transferTokenFee ?? 0n);
36
- const nativeTokenFee = typeof config.nativeTokenFee === "function"
37
- ? config.nativeTokenFee(transferAmount, fromChain.chain)
38
- : (config.nativeTokenFee ?? 0n);
65
+ let transferTokenFee;
66
+ let nativeTokenFee;
67
+ let remainingAmount;
39
68
  let referrerAddress = undefined;
40
- if (transferTokenFee > 0n || nativeTokenFee > 0n) {
41
- referrerAddress =
42
- config.referrerAddresses?.[fromChain.network]?.[fromChain.chain];
43
- if (!referrerAddress) {
44
- throw new Error(`Referrer address not configured for ${fromChain.chain}`);
69
+ if (config.useLegacyFees) {
70
+ // Legacy dBPS mode
71
+ const dBps = config.referrerFeeDbps ?? 0n;
72
+ const result = calculateReferrerFee(transferAmount, dBps, config.referrerFeeThreshold);
73
+ transferTokenFee = result.referrerFee;
74
+ nativeTokenFee = 0n;
75
+ remainingAmount = result.remainingAmount;
76
+ if (dBps > 0n) {
77
+ referrerAddress =
78
+ config.referrerAddresses?.[fromChain.network]?.[fromChain.chain];
79
+ if (!referrerAddress) {
80
+ throw new Error(`Referrer address not configured for ${fromChain.chain}`);
81
+ }
82
+ }
83
+ }
84
+ else {
85
+ // Flat fee mode (default)
86
+ transferTokenFee =
87
+ typeof config.transferTokenFee === "function"
88
+ ? config.transferTokenFee(transferAmount, fromChain.chain)
89
+ : (config.transferTokenFee ?? 0n);
90
+ nativeTokenFee =
91
+ typeof config.nativeTokenFee === "function"
92
+ ? config.nativeTokenFee(transferAmount, fromChain.chain)
93
+ : (config.nativeTokenFee ?? 0n);
94
+ if (transferTokenFee > 0n || nativeTokenFee > 0n) {
95
+ referrerAddress =
96
+ config.referrerAddresses?.[fromChain.network]?.[fromChain.chain];
97
+ if (!referrerAddress) {
98
+ throw new Error(`Referrer address not configured for ${fromChain.chain}`);
99
+ }
45
100
  }
101
+ remainingAmount = transferAmount - transferTokenFee;
46
102
  }
47
103
  const referrer = referrerAddress
48
104
  ? Wormhole.chainAddress(fromChain.chain, referrerAddress)
49
105
  : undefined;
50
- const remainingAmount = transferAmount - transferTokenFee;
51
106
  if (remainingAmount <= 0n) {
52
107
  throw new Error(`Transfer token fee (${transferTokenFee}) exceeds transfer amount (${transferAmount})`);
53
108
  }
@@ -132,7 +187,10 @@ export async function fetchExecutorQuote(request, params, config, capability) {
132
187
  const signedQuoteBytes = encoding.hex.decode(quote.signedQuote);
133
188
  const signedQuote = deserializeLayout(signedQuoteLayout, signedQuoteBytes);
134
189
  const estimatedCost = BigInt(quote.estimatedCost);
190
+ // Only override the shim contract when using legacy fee contracts
191
+ const shimContract = legacyShimContracts?.[fromChain.network]?.[fromChain.chain];
135
192
  const details = {
193
+ shimContract,
136
194
  signedQuote: signedQuoteBytes,
137
195
  relayInstructions: relayInstructions,
138
196
  estimatedCost,
@@ -142,6 +200,10 @@ export async function fetchExecutorQuote(request, params, config, capability) {
142
200
  expiryTime: signedQuote.quote.expiryTime,
143
201
  gasDropOff: dropOff,
144
202
  nativeTokenFee,
203
+ ...(config.useLegacyFees && {
204
+ useLegacyFees: true,
205
+ referrerFeeDbps: config.referrerFeeDbps ?? 0n,
206
+ }),
145
207
  };
146
208
  return details;
147
209
  }
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/routes/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/routes/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/svm/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,QAAQ,EACd,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAIL,yBAAyB,EAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,UAAU,EAAW,SAAS,EAA8B,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAchD,qBAAa,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,YAAY,CACpE,YAAW,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAS3B,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,UAAU,EAAE,UAAU;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,uBAAuB,EAAE,SAAS,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,SAAS,CAAC;IAEhD,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;gBAG3B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS;WAkClB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAQrC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,YAAY,GACpB,cAAc,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA8GlD,OAAO,CAAC,gBAAgB;CAazB"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/svm/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,QAAQ,EACd,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAIL,yBAAyB,EAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,UAAU,EAAW,SAAS,EAA8B,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAchD,qBAAa,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,YAAY,CACpE,YAAW,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAS3B,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,UAAU,EAAE,UAAU;IAC/B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAV/B,QAAQ,CAAC,uBAAuB,EAAE,SAAS,CAAC;IAC5C,QAAQ,CAAC,2BAA2B,EAAE,SAAS,CAAC;IAEhD,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;gBAG3B,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS;WAkClB,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAQrC,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,YAAY,GACpB,cAAc,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAiHlD,OAAO,CAAC,gBAAgB;CAazB"}
@@ -66,7 +66,10 @@ export class SvmCCTPExecutor {
66
66
  const destinationAddress = recipient.address.toUniversalAddress();
67
67
  const msgSendEvent = Keypair.generate();
68
68
  transaction.add(await createDepositForBurnInstruction(this.messageTransmitterProgramId, this.tokenMessengerProgramId, usdc, destinationDomain, senderPk, senderAta, destinationAddress, details.remainingAmount, msgSendEvent.publicKey));
69
- const shimProgram = new Program(ExampleCctpWithExecutorIdl, this.shimProgramId, { connection: null });
69
+ const shimProgramId = details.shimContract
70
+ ? new PublicKey(details.shimContract)
71
+ : this.shimProgramId;
72
+ const shimProgram = new Program(ExampleCctpWithExecutorIdl, shimProgramId, { connection: null });
70
73
  const signedQuote = deserializeLayout(signedQuoteLayout, details.signedQuote);
71
74
  const messageTransmitter = utils.deriveAddress("message_transmitter", this.messageTransmitterProgramId);
72
75
  transaction.add(await shimProgram.methods
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/svm/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../src/svm/executor.ts"],"names":[],"mappings":"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"}