@wormhole-labs/cctp-executor-route 0.5.0-beta.0 → 0.6.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 (63) hide show
  1. package/dist/cjs/consts.d.ts +0 -1
  2. package/dist/cjs/consts.d.ts.map +1 -1
  3. package/dist/cjs/consts.js +15 -41
  4. package/dist/cjs/consts.js.map +1 -1
  5. package/dist/cjs/evm/executorV2.d.ts.map +1 -1
  6. package/dist/cjs/evm/executorV2.js +1 -1
  7. package/dist/cjs/evm/executorV2.js.map +1 -1
  8. package/dist/cjs/routes/cctpV1.d.ts +4 -3
  9. package/dist/cjs/routes/cctpV1.d.ts.map +1 -1
  10. package/dist/cjs/routes/cctpV1.js +3 -13
  11. package/dist/cjs/routes/cctpV1.js.map +1 -1
  12. package/dist/cjs/routes/cctpV2Base.d.ts +1 -0
  13. package/dist/cjs/routes/cctpV2Base.d.ts.map +1 -1
  14. package/dist/cjs/routes/cctpV2Base.js.map +1 -1
  15. package/dist/cjs/routes/cctpV2Fast.d.ts +3 -3
  16. package/dist/cjs/routes/cctpV2Fast.d.ts.map +1 -1
  17. package/dist/cjs/routes/cctpV2Fast.js +3 -14
  18. package/dist/cjs/routes/cctpV2Fast.js.map +1 -1
  19. package/dist/cjs/routes/cctpV2Standard.d.ts +3 -3
  20. package/dist/cjs/routes/cctpV2Standard.d.ts.map +1 -1
  21. package/dist/cjs/routes/cctpV2Standard.js +4 -14
  22. package/dist/cjs/routes/cctpV2Standard.js.map +1 -1
  23. package/dist/cjs/routes/helpers.d.ts +1 -1
  24. package/dist/cjs/routes/helpers.d.ts.map +1 -1
  25. package/dist/cjs/routes/helpers.js +5 -5
  26. package/dist/cjs/routes/helpers.js.map +1 -1
  27. package/dist/cjs/utils.d.ts +4 -2
  28. package/dist/cjs/utils.d.ts.map +1 -1
  29. package/dist/cjs/utils.js +33 -5
  30. package/dist/cjs/utils.js.map +1 -1
  31. package/dist/esm/consts.d.ts +0 -1
  32. package/dist/esm/consts.d.ts.map +1 -1
  33. package/dist/esm/consts.js +14 -40
  34. package/dist/esm/consts.js.map +1 -1
  35. package/dist/esm/evm/executorV2.d.ts.map +1 -1
  36. package/dist/esm/evm/executorV2.js +3 -3
  37. package/dist/esm/evm/executorV2.js.map +1 -1
  38. package/dist/esm/routes/cctpV1.d.ts +4 -3
  39. package/dist/esm/routes/cctpV1.d.ts.map +1 -1
  40. package/dist/esm/routes/cctpV1.js +7 -17
  41. package/dist/esm/routes/cctpV1.js.map +1 -1
  42. package/dist/esm/routes/cctpV2Base.d.ts +1 -0
  43. package/dist/esm/routes/cctpV2Base.d.ts.map +1 -1
  44. package/dist/esm/routes/cctpV2Base.js.map +1 -1
  45. package/dist/esm/routes/cctpV2Fast.d.ts +3 -3
  46. package/dist/esm/routes/cctpV2Fast.d.ts.map +1 -1
  47. package/dist/esm/routes/cctpV2Fast.js +6 -17
  48. package/dist/esm/routes/cctpV2Fast.js.map +1 -1
  49. package/dist/esm/routes/cctpV2Standard.d.ts +3 -3
  50. package/dist/esm/routes/cctpV2Standard.d.ts.map +1 -1
  51. package/dist/esm/routes/cctpV2Standard.js +6 -16
  52. package/dist/esm/routes/cctpV2Standard.js.map +1 -1
  53. package/dist/esm/routes/helpers.d.ts +1 -1
  54. package/dist/esm/routes/helpers.d.ts.map +1 -1
  55. package/dist/esm/routes/helpers.js +7 -7
  56. package/dist/esm/routes/helpers.js.map +1 -1
  57. package/dist/esm/utils.d.ts +4 -2
  58. package/dist/esm/utils.d.ts.map +1 -1
  59. package/dist/esm/utils.js +34 -7
  60. package/dist/esm/utils.js.map +1 -1
  61. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  62. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  63. package/package.json +8 -8
@@ -1,6 +1,6 @@
1
1
  import { Chain, Network } from "@wormhole-foundation/sdk-base";
2
2
  import { CircleV2Message, SignedQuote } from "./layouts";
3
- import { TransactionId } from "@wormhole-foundation/sdk-connect";
3
+ import { ChainContext, TokenId, TransactionId } from "@wormhole-foundation/sdk-connect";
4
4
  import { CCTPv2ExecutorRoute } from "./routes";
5
5
  export declare enum RelayStatus {
6
6
  Pending = "pending",
@@ -66,9 +66,10 @@ export interface StatusResponse extends RelayData {
66
66
  estimatedCost: string;
67
67
  }
68
68
  export declare function fetchStatus(network: Network, txHash: string, chain: Chain): Promise<StatusResponse[]>;
69
- export declare function calculateReferrerFee(amount: bigint, dBps: bigint): {
69
+ export declare function calculateReferrerFee(amount: bigint, dBps: bigint, threshold?: bigint): {
70
70
  referrerFee: bigint;
71
71
  remainingAmount: bigint;
72
+ referrerFeeDbps: bigint;
72
73
  };
73
74
  export declare function sleep(ms: number): Promise<void>;
74
75
  export declare function getCircleV2Attestation(tx: TransactionId, network: Network, timeout?: number): Promise<{
@@ -81,4 +82,5 @@ export declare function reattestCircleV2Message(network: Network, attestation: C
81
82
  attestation: string;
82
83
  } | null>;
83
84
  export declare function getCircleV2FastBurnAllowance(network: Network): Promise<bigint>;
85
+ export declare function getUsdcDestinationAddress<N extends Network>(sourceToken: TokenId, fromChain: ChainContext<N>, toChain: ChainContext<N>): TokenId[];
84
86
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/esm/utils.js CHANGED
@@ -1,8 +1,8 @@
1
- import { amount, encoding, toChainId, } from "@wormhole-foundation/sdk-base";
1
+ import { amount, circle, encoding, toChainId, amount as sdkAmount, } from "@wormhole-foundation/sdk-base";
2
2
  import { deserializeCircleV2Message, } from "./layouts";
3
3
  import axios from "axios";
4
4
  import { apiBaseUrl, circleV2Api, getCircleV2Chain, getCircleV2Domain, } from "./consts";
5
- import { DEFAULT_TASK_TIMEOUT, tasks, } from "@wormhole-foundation/sdk-connect";
5
+ import { DEFAULT_TASK_TIMEOUT, isSameToken, tasks, Wormhole, } from "@wormhole-foundation/sdk-connect";
6
6
  export var RelayStatus;
7
7
  (function (RelayStatus) {
8
8
  RelayStatus["Pending"] = "pending";
@@ -60,16 +60,29 @@ export async function fetchStatus(network, txHash, chain) {
60
60
  }
61
61
  }
62
62
  const MAX_U16 = 65535n;
63
- export function calculateReferrerFee(amount, dBps) {
63
+ export function calculateReferrerFee(amount, dBps, threshold) {
64
64
  if (dBps > MAX_U16) {
65
65
  throw new Error("dBps exceeds max u16");
66
66
  }
67
+ let referrerFeeDbps = dBps;
68
+ let remainingAmount = amount;
69
+ let referrerFee = 0n;
67
70
  if (dBps > 0) {
68
- const referrerFee = (amount * dBps) / 100000n;
69
- const remainingAmount = amount - referrerFee;
70
- return { referrerFee, remainingAmount };
71
+ if (threshold !== undefined && amount > 0) {
72
+ // We first need to convert the threshold value to base units
73
+ const thresholdAmount = sdkAmount.parse(threshold.toString(), 6);
74
+ // Capped dBps is minimum of dBps and threshold/amount
75
+ const cappedMax = sdkAmount.units(thresholdAmount) / amount;
76
+ const cappedDBps = dBps < cappedMax ? dBps : cappedMax;
77
+ referrerFee = (amount * cappedDBps) / 100000n;
78
+ referrerFeeDbps = cappedDBps;
79
+ }
80
+ else {
81
+ referrerFee = (amount * dBps) / 100000n;
82
+ }
83
+ remainingAmount = amount - referrerFee;
71
84
  }
72
- return { referrerFee: 0n, remainingAmount: amount };
85
+ return { referrerFee, remainingAmount, referrerFeeDbps };
73
86
  }
74
87
  export function sleep(ms) {
75
88
  return new Promise((resolve) => setTimeout(resolve, ms));
@@ -144,4 +157,18 @@ export async function getCircleV2FastBurnAllowance(network) {
144
157
  const response = await axios.get(url);
145
158
  return amount.units(amount.parse(response.data.allowance, 6));
146
159
  }
160
+ export function getUsdcDestinationAddress(sourceToken, fromChain, toChain) {
161
+ // Ensure the source token is USDC
162
+ const sourceChainUsdcContract = circle.usdcContract.get(fromChain.network, fromChain.chain);
163
+ if (!(sourceChainUsdcContract &&
164
+ isSameToken(sourceToken, Wormhole.tokenId(fromChain.chain, sourceChainUsdcContract)))) {
165
+ return [];
166
+ }
167
+ // Get the destination chain's USDC contract
168
+ const { network, chain } = toChain;
169
+ const destChainUsdcContract = circle.usdcContract.get(network, chain);
170
+ if (!destChainUsdcContract)
171
+ return [];
172
+ return [Wormhole.chainAddress(chain, destChainUsdcContract)];
173
+ }
147
174
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}