@1delta/trade-sdk 0.1.6 → 0.1.7

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 (45) hide show
  1. package/dist/aggregator/fetchAggregatorTrade.d.ts +0 -1
  2. package/dist/aggregator/fetchAggregatorTrade.d.ts.map +1 -1
  3. package/dist/aggregator/fetchAggregatorTrade.js +55 -2
  4. package/dist/composedTrades/across/acrossWithSwap.js +1 -0
  5. package/dist/composedTrades/across/acrossWithSwaps.d.ts.map +1 -1
  6. package/dist/composedTrades/across/acrossWithSwaps.js +1 -0
  7. package/dist/composedTrades/across/calldata/createAcrossMessage.d.ts +1 -1
  8. package/dist/composedTrades/across/calldata/createAcrossMessage.d.ts.map +1 -1
  9. package/dist/composedTrades/axelar/axelarWithSwap.js +1 -0
  10. package/dist/composedTrades/axelar/axelarWithSwaps.d.ts.map +1 -1
  11. package/dist/composedTrades/axelar/axelarWithSwaps.js +1 -0
  12. package/dist/composedTrades/axelar/squid/createSquidPayload.d.ts +1 -1
  13. package/dist/composedTrades/axelar/squid/createSquidPayload.d.ts.map +1 -1
  14. package/dist/composedTrades/gaszip/gaszipWithSwaps.d.ts.map +1 -1
  15. package/dist/composedTrades/gaszip/gaszipWithSwaps.js +1 -0
  16. package/dist/composedTrades/utils/createSwapAndBridgeCalldata.d.ts +2 -2
  17. package/dist/composedTrades/utils/createSwapAndBridgeCalldata.d.ts.map +1 -1
  18. package/dist/composedTrades/utils/createSwapAndBridgeCalldata.js +11 -3
  19. package/dist/composedTrades/utils/fetchBridgeAndGasTrade.d.ts.map +1 -1
  20. package/dist/composedTrades/utils/fetchBridgeAndGasTrade.js +7 -7
  21. package/dist/composedTrades/utils/index.d.ts +2 -0
  22. package/dist/composedTrades/utils/index.d.ts.map +1 -1
  23. package/dist/composedTrades/utils/index.js +2 -0
  24. package/dist/composedTrades/utils/multichainUtils.d.ts.map +1 -1
  25. package/dist/composedTrades/utils/multichainUtils.js +1 -0
  26. package/dist/deltaCall/createDeltaCallsCalldata.d.ts +5 -1
  27. package/dist/deltaCall/createDeltaCallsCalldata.d.ts.map +1 -1
  28. package/dist/deltaCall/createDeltaCallsCalldata.js +12 -8
  29. package/dist/deltaCall/toComposerCall.d.ts +1 -1
  30. package/dist/deltaCall/toComposerCall.d.ts.map +1 -1
  31. package/dist/deltaCall/toComposerCall.js +1 -1
  32. package/dist/deltaCall/toForwarderCall.d.ts +1 -1
  33. package/dist/deltaCall/toForwarderCall.d.ts.map +1 -1
  34. package/dist/deltaCall/toForwarderCall.js +1 -1
  35. package/dist/index.d.ts +2 -2
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/types/bridgeInput.d.ts +9 -4
  38. package/dist/types/bridgeInput.d.ts.map +1 -1
  39. package/dist/types/index.d.ts +0 -1
  40. package/dist/types/index.d.ts.map +1 -1
  41. package/dist/types/index.js +0 -1
  42. package/package.json +3 -3
  43. package/dist/types/deltaCall.d.ts +0 -62
  44. package/dist/types/deltaCall.d.ts.map +0 -1
  45. package/dist/types/deltaCall.js +0 -16
@@ -1,4 +1,3 @@
1
- export * from './fetchAggregatorTrade';
2
1
  import { AggregatorApiInput, GenericTrade, OneDeltaInput } from '@1delta/lib-utils';
3
2
  export declare const fetchAggregatorTrade: (aggregator: string, input: AggregatorApiInput | OneDeltaInput, controller?: AbortController) => Promise<GenericTrade | undefined>;
4
3
  //# sourceMappingURL=fetchAggregatorTrade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchAggregatorTrade.d.ts","sourceRoot":"","sources":["../../src/aggregator/fetchAggregatorTrade.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AAMtC,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACd,MAAM,mBAAmB,CAAA;AAI1B,eAAO,MAAM,oBAAoB,GAC/B,YAAY,MAAM,EAClB,OAAO,kBAAkB,GAAG,aAAa,EACzC,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAclC,CAAA"}
1
+ {"version":3,"file":"fetchAggregatorTrade.d.ts","sourceRoot":"","sources":["../../src/aggregator/fetchAggregatorTrade.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,kBAAkB,EAIlB,YAAY,EACZ,aAAa,EACd,MAAM,mBAAmB,CAAA;AAQ1B,eAAO,MAAM,oBAAoB,GAC/B,YAAY,MAAM,EAClB,OAAO,kBAAkB,GAAG,aAAa,EACzC,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAclC,CAAA"}
@@ -1,8 +1,61 @@
1
- export * from './fetchAggregatorTrade';
2
1
  import { fetchAggregatorTrade as fetchAggregatorTradeWithoutConfigs, } from '@1delta/aggregators';
3
2
  import { getSwapAggregators } from '@1delta/bridge-configs';
4
- import { fetchBridgeTrade } from '../bridge';
3
+ import { ChainType, ChainUtils, } from '@1delta/lib-utils';
4
+ import { fetchBridgeTrade } from '../bridge/fetchBridgeTrade';
5
+ import { createSwapAndBridgeCalldata, requireDeltaContracts, } from '../composedTrades/utils';
5
6
  export const fetchAggregatorTrade = async (aggregator, input, controller) => {
7
+ const needsAdditionalCalls = !!input.additionalCalls && input.additionalCalls.length > 0;
8
+ if (input.disableComposer) {
9
+ if (needsAdditionalCalls)
10
+ throw new Error(`Aggregator ${aggregator.toString()} does not support additional calls without composer`);
11
+ return fetchSwapTrade(aggregator, input, controller);
12
+ }
13
+ else {
14
+ return fetchAggregatorWithComposerTrade(aggregator, input, controller);
15
+ }
16
+ };
17
+ const fetchAggregatorWithComposerTrade = async (aggregator, input, controller) => {
18
+ let trade = undefined;
19
+ const { forwarder, composer } = requireDeltaContracts(input.chainId);
20
+ trade = await fetchSwapTrade(aggregator, { ...input, caller: forwarder, receiver: forwarder }, controller);
21
+ if (!trade)
22
+ return undefined;
23
+ if (!trade.assemble)
24
+ throw new Error(`Aggregator ${aggregator.toString()} does not support composer`);
25
+ const assemble = async () => {
26
+ try {
27
+ const chainId = input.fromCurrency.chainId;
28
+ if (ChainUtils.isEvm(chainId)) {
29
+ const fundsToPull = [
30
+ {
31
+ address: trade.inputAmount.currency.address,
32
+ amount: trade.inputAmount.amount,
33
+ },
34
+ ];
35
+ const tx = await createSwapAndBridgeCalldata([trade], input.caller, input.receiver, true, fundsToPull, false, true, input.additionalCalls);
36
+ return {
37
+ [ChainType.EVM]: {
38
+ calldata: tx.calldata,
39
+ value: tx.value.toString(),
40
+ to: tx.to,
41
+ },
42
+ };
43
+ }
44
+ return undefined;
45
+ }
46
+ catch (error) {
47
+ console.log(`cannot compose ${aggregator.toString()} swap tx:`, error);
48
+ return undefined;
49
+ }
50
+ };
51
+ return {
52
+ ...trade,
53
+ assemble,
54
+ approvalTarget: composer,
55
+ target: composer,
56
+ };
57
+ };
58
+ const fetchSwapTrade = async (aggregator, input, controller) => {
6
59
  if (getSwapAggregators().includes(aggregator)) {
7
60
  return await fetchBridgeTrade(aggregator, { ...input, order: 'CHEAPEST' }, controller);
8
61
  }
@@ -82,6 +82,7 @@ const fetchAcrossTradeWithDestinationCalls = async (input, controller) => {
82
82
  caller: getAcrossMulticallHandler(toChainId),
83
83
  receiver: input.receiver,
84
84
  flashSwap: undefined,
85
+ disableComposer: true,
85
86
  };
86
87
  const destinationSwapTrade = await fetchBestTrade(destinationSwapInput, controller);
87
88
  if (!destinationSwapTrade || !destinationSwapTrade.assemble)
@@ -1 +1 @@
1
- {"version":3,"file":"acrossWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/across/acrossWithSwaps.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAOZ,WAAW,EAGZ,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAA;AAsB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,CACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,KAC7B,WAAW,GAAG,SAAS,EAC5B,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAqKlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
1
+ {"version":3,"file":"acrossWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/across/acrossWithSwaps.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAOZ,WAAW,EAGZ,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAA;AAsB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,CACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,KAC7B,WAAW,GAAG,SAAS,EAC5B,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAsKlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
@@ -48,6 +48,7 @@ export const fetchAcrossTradeWithSwaps = async (input, getCurrency, controller)
48
48
  caller: forwarder,
49
49
  receiver: forwarder,
50
50
  flashSwap: undefined,
51
+ disableComposer: true,
51
52
  };
52
53
  sourceSwapTrade = await fetchBestTrade(sourceSwapInput, controller);
53
54
  }
@@ -1,5 +1,5 @@
1
+ import { DeltaCall } from '@1delta/lib-utils';
1
2
  import { Hex } from 'viem';
2
- import { DeltaCall } from '../../../types/deltaCall';
3
3
  import { DestinationSwapData } from '../../../types/destinationSwapData';
4
4
  import { AcrossCall } from './types';
5
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"createAcrossMessage.d.ts","sourceRoot":"","sources":["../../../../src/composedTrades/across/calldata/createAcrossMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,GAAG,EAAY,MAAM,MAAM,CAAA;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAGxE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,uBAAuB,EAAE,MAAM,EAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,EACnB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,SAAS,EAAE,EAC5B,mBAAmB,CAAC,EAAE,mBAAmB,GACxC,GAAG,CA4DL;AAED,wBAAgB,qBAAqB,CACnC,mBAAmB,EAAE,mBAAmB,GACvC,UAAU,EAAE,CA8Bd;AAED,wBAAgB,wBAAwB,CACtC,uBAAuB,EAAE,MAAM,EAC/B,uBAAuB,EAAE,MAAM,EAC/B,aAAa,EAAE,MAAM,EAAE,GACtB,GAAG,CAWL"}
1
+ {"version":3,"file":"createAcrossMessage.d.ts","sourceRoot":"","sources":["../../../../src/composedTrades/across/calldata/createAcrossMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAA+B,GAAG,EAAY,MAAM,MAAM,CAAA;AAGjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAGxE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,uBAAuB,EAAE,MAAM,EAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,EACnB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,SAAS,EAAE,EAC5B,mBAAmB,CAAC,EAAE,mBAAmB,GACxC,GAAG,CA4DL;AAED,wBAAgB,qBAAqB,CACnC,mBAAmB,EAAE,mBAAmB,GACvC,UAAU,EAAE,CA8Bd;AAED,wBAAgB,wBAAwB,CACtC,uBAAuB,EAAE,MAAM,EAC/B,uBAAuB,EAAE,MAAM,EAC/B,aAAa,EAAE,MAAM,EAAE,GACtB,GAAG,CAWL"}
@@ -64,6 +64,7 @@ const fetchAxelarTradeWithDestinationCalls = async (input, getPrices, controller
64
64
  caller: squidMulticall,
65
65
  receiver: squidMulticall,
66
66
  flashSwap: undefined,
67
+ disableComposer: true,
67
68
  };
68
69
  const destinationSwapTrade = await fetchBestTrade(destinationSwapInput, controller);
69
70
  if (!destinationSwapTrade || !destinationSwapTrade.assemble)
@@ -1 +1 @@
1
- {"version":3,"file":"axelarWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/axelar/axelarWithSwaps.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAMZ,WAAW,EAGX,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAmB,eAAe,EAAE,MAAM,aAAa,CAAA;AAmB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,CACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,KAC7B,WAAW,GAAG,SAAS,EAC5B,WAAW,4BAA4B,EACvC,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAqKlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
1
+ {"version":3,"file":"axelarWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/axelar/axelarWithSwaps.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAMZ,WAAW,EAGX,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EAAmB,eAAe,EAAE,MAAM,aAAa,CAAA;AAmB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,CACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,MAAM,GAAG,SAAS,KAC7B,WAAW,GAAG,SAAS,EAC5B,WAAW,4BAA4B,EACvC,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAsKlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
@@ -47,6 +47,7 @@ export const fetchAxelarTradeWithSwaps = async (input, getCurrency, getPrices, c
47
47
  caller: forwarder,
48
48
  receiver: forwarder,
49
49
  flashSwap: undefined,
50
+ disableComposer: true,
50
51
  };
51
52
  sourceSwapTrade = await fetchBestTrade(sourceSwapInput, controller);
52
53
  }
@@ -1,5 +1,5 @@
1
+ import { DeltaCall } from '@1delta/lib-utils';
1
2
  import { Hex } from 'viem';
2
- import { DeltaCall } from '../../../types/deltaCall';
3
3
  import { DestinationSwapData } from '../../../types/destinationSwapData';
4
4
  /**
5
5
  * Creates the final `payload` for a complete cross-chain swap using Squid.
@@ -1 +1 @@
1
- {"version":3,"file":"createSquidPayload.d.ts","sourceRoot":"","sources":["../../../../src/composedTrades/axelar/squid/createSquidPayload.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,GAAG,EAAyB,MAAM,MAAM,CAAA;AAG9E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAyDxE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,EACnB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,SAAS,EAAE,EAC5B,mBAAmB,CAAC,EAAE,mBAAmB,GACxC,GAAG,CA6DL"}
1
+ {"version":3,"file":"createSquidPayload.d.ts","sourceRoot":"","sources":["../../../../src/composedTrades/axelar/squid/createSquidPayload.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAA+B,GAAG,EAAyB,MAAM,MAAM,CAAA;AAG9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAyDxE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,EACnB,qBAAqB,EAAE,MAAM,EAC7B,eAAe,EAAE,SAAS,EAAE,EAC5B,mBAAmB,CAAC,EAAE,mBAAmB,GACxC,GAAG,CA6DL"}
@@ -1 +1 @@
1
- {"version":3,"file":"gaszipWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/gaszip/gaszipWithSwaps.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,YAAY,EASb,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAmB,eAAe,EAAE,MAAM,aAAa,CAAA;AAoB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAkJlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
1
+ {"version":3,"file":"gaszipWithSwaps.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/gaszip/gaszipWithSwaps.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,YAAY,EASb,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAmB,eAAe,EAAE,MAAM,aAAa,CAAA;AAoB9D,eAAO,MAAM,yBAAyB,GACpC,OAAO,eAAe,EACtB,aAAa,eAAe,KAC3B,OAAO,CAAC,YAAY,GAAG,SAAS,CAmJlC,CAAA;AAED,eAAe,yBAAyB,CAAA"}
@@ -45,6 +45,7 @@ export const fetchGaszipTradeWithSwaps = async (input, controller) => {
45
45
  caller: forwarder,
46
46
  receiver: forwarder,
47
47
  flashSwap: undefined,
48
+ disableComposer: true,
48
49
  };
49
50
  sourceSwapTrade = await fetchBestTrade(sourceSwapInput, controller);
50
51
  }
@@ -1,8 +1,8 @@
1
- import { InternalTrade } from '@1delta/lib-utils';
1
+ import { DeltaCall, InternalTrade } from '@1delta/lib-utils';
2
2
  export declare function createSwapAndBridgeCalldata(trades: InternalTrade[], account: string, bridgeReceiver: string, sweep: boolean, fundsToPull?: {
3
3
  address: string;
4
4
  amount: bigint;
5
- }[], catchRevert?: boolean, sweepDust?: boolean): Promise<{
5
+ }[], catchRevert?: boolean, sweepDust?: boolean, additionalCalls?: DeltaCall[]): Promise<{
6
6
  calldata: `0x${string}`;
7
7
  value: bigint;
8
8
  to: string;
@@ -1 +1 @@
1
- {"version":3,"file":"createSwapAndBridgeCalldata.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/createSwapAndBridgeCalldata.ts"],"names":[],"mappings":"AAcA,OAAO,EAOL,aAAa,EAKd,MAAM,mBAAmB,CAAA;AAG1B,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,aAAa,EAAE,EACvB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,OAAO,EACd,WAAW,GAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAO,EACvD,WAAW,GAAE,OAAc,EAC3B,SAAS,GAAE,OAAe;;;;GAgO3B"}
1
+ {"version":3,"file":"createSwapAndBridgeCalldata.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/createSwapAndBridgeCalldata.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,SAAS,EAKT,aAAa,EAKd,MAAM,mBAAmB,CAAA;AAK1B,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,aAAa,EAAE,EACvB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,OAAO,EACd,WAAW,GAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAO,EACvD,WAAW,GAAE,OAAc,EAC3B,SAAS,GAAE,OAAe,EAC1B,eAAe,GAAE,SAAS,EAAO;;;;GA2OlC"}
@@ -2,7 +2,8 @@ import { Bridge } from '@1delta/bridge-configs';
2
2
  import { encodeAcrossBridgeNative, encodeAcrossBridgeToken, encodeApprove, encodeExternalCall, encodeGasZipEvmBridge, encodeSquidRouterCall, encodeStargateV2BridgeSimpleTaxi, encodeSweep, encodeTransferIn, encodeTryExternalCall, SweepType, } from '@1delta/calldatalib';
3
3
  import { buildMetaSwapParams, CurrencyHandler, encodeComposerCompose, getDeltaComposerProxyAddress, getForwarderAddress, minimumAmountInFromAmount, packCommands, TradeUtils, } from '@1delta/lib-utils';
4
4
  import { encodePacked, pad } from 'viem';
5
- export async function createSwapAndBridgeCalldata(trades, account, bridgeReceiver, sweep, fundsToPull = [], catchRevert = true, sweepDust = false) {
5
+ import { createDeltaCalls } from '../../deltaCall';
6
+ export async function createSwapAndBridgeCalldata(trades, account, bridgeReceiver, sweep, fundsToPull = [], catchRevert = true, sweepDust = false, additionalCalls = []) {
6
7
  if (!trades || trades.length === 0 || !isSameSourceChainId(trades))
7
8
  throw new Error(`Invalid trades array. Must have at least one trade and all trades must be on the same chain`);
8
9
  const sourceChainId = trades[0].inputAmount.currency.chainId;
@@ -95,6 +96,7 @@ export async function createSwapAndBridgeCalldata(trades, account, bridgeReceive
95
96
  sweepTokens.push(sweepOutputToken);
96
97
  }
97
98
  }
99
+ const sweepCommands = [];
98
100
  if (sweep) {
99
101
  const sameChainTrades = trades.filter((t) => t.inputAmount.currency.chainId === t.outputAmount.currency.chainId);
100
102
  const currencyToAmount = TradeUtils.groupAmountByCurrency({
@@ -104,7 +106,7 @@ export async function createSwapAndBridgeCalldata(trades, account, bridgeReceive
104
106
  });
105
107
  for (const [currency, amount] of currencyToAmount.entries()) {
106
108
  const sweepCall = encodeSweep(currency.address, account, sweepDust ? 0n : amount, SweepType.VALIDATE);
107
- commands.push(sweepCall);
109
+ sweepCommands.push(sweepCall);
108
110
  }
109
111
  }
110
112
  let value = 0n;
@@ -115,9 +117,15 @@ export async function createSwapAndBridgeCalldata(trades, account, bridgeReceive
115
117
  else
116
118
  transferInCommands.push(encodeTransferIn(address, forwarder, amount));
117
119
  }
120
+ const { composerCommands, forwarderCommands } = createDeltaCalls(sourceChainId, additionalCalls);
118
121
  const calldata = encodeComposerCompose(packCommands([
119
122
  ...transferInCommands,
120
- encodeExternalCall(forwarder, value, false, packCommands(commands)),
123
+ ...composerCommands,
124
+ encodeExternalCall(forwarder, value, false, packCommands([
125
+ ...commands,
126
+ ...forwarderCommands,
127
+ ...sweepCommands,
128
+ ])),
121
129
  ]));
122
130
  return { calldata, value, to: composerProxy };
123
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetchBridgeAndGasTrade.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/fetchBridgeAndGasTrade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAEL,YAAY,EAEZ,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAG7C,eAAO,MAAM,sBAAsB,GACjC,YAAY,MAAM,EAClB,OAAO,eAAe,EACtB,WAAW,4BAA4B,EACvC,aAAa,eAAe,KAC3B,OAAO,CACR;IAAE,WAAW,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,CA6E9E,CAAA"}
1
+ {"version":3,"file":"fetchBridgeAndGasTrade.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/fetchBridgeAndGasTrade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAEL,YAAY,EAEZ,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAG7C,eAAO,MAAM,sBAAsB,GACjC,YAAY,MAAM,EAClB,OAAO,eAAe,EACtB,WAAW,4BAA4B,EACvC,aAAa,eAAe,KAC3B,OAAO,CACR;IAAE,WAAW,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,CA4E9E,CAAA"}
@@ -18,27 +18,27 @@ export const fetchBridgeAndGasTrade = async (aggregator, input, getPrices, contr
18
18
  const bridgeTokenIsNative = CurrencyHandler.isNative(input.fromCurrency);
19
19
  if (bridgeTokenIsNative) {
20
20
  const adjustedAmount = BigInt(input.swapAmount) - bridgeTrade.gasAmount;
21
- const updatedStargateTrade = await fetchBridgeTrade(aggregator, {
21
+ const updatedTrade = await fetchBridgeTrade(aggregator, {
22
22
  ...input,
23
23
  swapAmount: adjustedAmount.toString(),
24
24
  }, controller);
25
25
  bridgeTrade.gasAmount = undefined;
26
- if (updatedStargateTrade)
27
- return { gasTrade: undefined, bridgeTrade: updatedStargateTrade };
26
+ if (updatedTrade)
27
+ return { gasTrade: undefined, bridgeTrade: updatedTrade };
28
28
  }
29
29
  else {
30
30
  const adjustedGasAmount = (bridgeTrade.gasAmount * 110n + BigInt(gasTradeSlippage)) / 100n; // increase by 10% + gas trade slippage
31
31
  const gasTrade = await fetchGasTrade(adjustedGasAmount);
32
32
  if (gasTrade) {
33
33
  const adjustedAmount = BigInt(input.swapAmount) - gasTrade.inputAmount.amount;
34
- const updatedStargateTrade = await fetchBridgeTrade(aggregator, {
34
+ const updatedTrade = await fetchBridgeTrade(aggregator, {
35
35
  ...input,
36
36
  swapAmount: adjustedAmount.toString(),
37
37
  }, controller);
38
38
  bridgeTrade.gasAmount = undefined;
39
- const isEnoughGas = gasTrade.outputAmount.amount >= (updatedStargateTrade?.gasAmount ?? 0n);
40
- if (isEnoughGas && updatedStargateTrade)
41
- return { gasTrade, bridgeTrade: updatedStargateTrade };
39
+ const isEnoughGas = gasTrade.outputAmount.amount >= (updatedTrade?.gasAmount ?? 0n);
40
+ if (isEnoughGas && updatedTrade)
41
+ return { gasTrade, bridgeTrade: updatedTrade };
42
42
  }
43
43
  }
44
44
  return undefined;
@@ -1,3 +1,5 @@
1
+ export * from './createSwapAndBridgeCalldata';
1
2
  export * from './fetchBridgeAndGasTrade';
2
3
  export * from './multichainUtils';
4
+ export * from './requireDeltaContracts';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA"}
@@ -1,2 +1,4 @@
1
+ export * from './createSwapAndBridgeCalldata';
1
2
  export * from './fetchBridgeAndGasTrade';
2
3
  export * from './multichainUtils';
4
+ export * from './requireDeltaContracts';
@@ -1 +1 @@
1
- {"version":3,"file":"multichainUtils.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/multichainUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EAEb,WAAW,EAEX,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAK7C,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,YAAY,CAAA;IACzB,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAA;CACnC;AAWD,wBAAsB,cAAc,CAClC,KAAK,EAAE,eAAe,EACtB,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,YAAY,CAAC,CAyEvB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,4BAA4B,EACvC,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAwCpC;AAID,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAKR"}
1
+ {"version":3,"file":"multichainUtils.d.ts","sourceRoot":"","sources":["../../../src/composedTrades/utils/multichainUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EAEb,WAAW,EAEX,4BAA4B,EAC7B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAK7C,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,YAAY,CAAA;IACzB,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAA;CACnC;AAWD,wBAAsB,cAAc,CAClC,KAAK,EAAE,eAAe,EACtB,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,YAAY,CAAC,CAyEvB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,4BAA4B,EACvC,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAyCpC;AAID,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAKR"}
@@ -92,6 +92,7 @@ export async function getExactOutputTrade(currencyIn, currencyOut, outputAmount,
92
92
  receiver: caller,
93
93
  simpleRoute: true,
94
94
  flashSwap: undefined,
95
+ disableComposer: true,
95
96
  };
96
97
  return await fetchBestTrade(quoteInput, controller);
97
98
  }
@@ -1,5 +1,5 @@
1
+ import { DeltaCall } from '@1delta/lib-utils';
1
2
  import { Address, Hex } from 'viem';
2
- import { DeltaCall } from '../types/deltaCall';
3
3
  export declare const createDeltaCallsCalldata: (chainId: string, calls: DeltaCall[], sweepProps?: {
4
4
  tokensToSweep: string[];
5
5
  receiver: string;
@@ -7,4 +7,8 @@ export declare const createDeltaCallsCalldata: (chainId: string, calls: DeltaCal
7
7
  calldata: Hex;
8
8
  to: Address;
9
9
  };
10
+ export declare const createDeltaCalls: (chainId: string, calls: DeltaCall[]) => {
11
+ composerCommands: Hex[];
12
+ forwarderCommands: Hex[];
13
+ };
10
14
  //# sourceMappingURL=createDeltaCallsCalldata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createDeltaCallsCalldata.d.ts","sourceRoot":"","sources":["../../src/deltaCall/createDeltaCallsCalldata.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,EAAuB,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAInE,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,OAAO,SAAS,EAAE,EAClB,aAAa;IACX,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;CACjB,KACA;IACD,QAAQ,EAAE,GAAG,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;CAuCZ,CAAA"}
1
+ {"version":3,"file":"createDeltaCallsCalldata.d.ts","sourceRoot":"","sources":["../../src/deltaCall/createDeltaCallsCalldata.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAGV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAMnC,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,OAAO,SAAS,EAAE,EAClB,aAAa;IACX,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;CACjB,KACA;IACD,QAAQ,EAAE,GAAG,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;CAoCZ,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,SAAS,MAAM,EACf,OAAO,SAAS,EAAE,KACjB;IACD,gBAAgB,EAAE,GAAG,EAAE,CAAA;IACvB,iBAAiB,EAAE,GAAG,EAAE,CAAA;CAazB,CAAA"}
@@ -1,17 +1,11 @@
1
1
  import { encodeExternalCall, encodeSweep, SweepType } from '@1delta/calldatalib';
2
- import { encodeComposerCompose, packCommands } from '@1delta/lib-utils';
2
+ import { COMPOSER_CALL_TYPES, encodeComposerCompose, packCommands, } from '@1delta/lib-utils';
3
3
  import { requireDeltaContracts } from '../composedTrades/utils/requireDeltaContracts';
4
- import { COMPOSER_CALL_TYPES } from '../types/deltaCall';
5
4
  import { toComposerCall } from './toComposerCall';
6
5
  import { toForwarderCall } from './toForwarderCall';
7
6
  export const createDeltaCallsCalldata = (chainId, calls, sweepProps) => {
8
7
  const { forwarder, composer } = requireDeltaContracts(chainId);
9
- const composerCommands = calls
10
- .filter((call) => COMPOSER_CALL_TYPES.includes(call.callType))
11
- .flatMap((call) => toComposerCall(call, forwarder));
12
- const forwarderCommands = calls
13
- .filter((call) => !COMPOSER_CALL_TYPES.includes(call.callType))
14
- .map((call) => toForwarderCall(call));
8
+ const { composerCommands, forwarderCommands } = createDeltaCalls(chainId, calls);
15
9
  // sweep tokens at the end
16
10
  if (sweepProps) {
17
11
  const { tokensToSweep, receiver } = sweepProps;
@@ -26,3 +20,13 @@ export const createDeltaCallsCalldata = (chainId, calls, sweepProps) => {
26
20
  ]));
27
21
  return { calldata, to: composer };
28
22
  };
23
+ export const createDeltaCalls = (chainId, calls) => {
24
+ const { forwarder } = requireDeltaContracts(chainId);
25
+ const composerCommands = calls
26
+ .filter((call) => COMPOSER_CALL_TYPES.includes(call.callType))
27
+ .flatMap((call) => toComposerCall(call, forwarder));
28
+ const forwarderCommands = calls
29
+ .filter((call) => !COMPOSER_CALL_TYPES.includes(call.callType))
30
+ .map((call) => toForwarderCall(call));
31
+ return { composerCommands, forwarderCommands };
32
+ };
@@ -1,4 +1,4 @@
1
+ import { DeltaCall } from '@1delta/lib-utils';
1
2
  import { Hex } from 'viem';
2
- import { DeltaCall } from '../types/deltaCall';
3
3
  export declare function toComposerCall(call: DeltaCall, receiver: string): Hex[];
4
4
  //# sourceMappingURL=toComposerCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toComposerCall.d.ts","sourceRoot":"","sources":["../../src/deltaCall/toComposerCall.ts"],"names":[],"mappings":"AAMA,OAAO,EAAW,GAAG,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EACL,SAAS,EAGV,MAAM,oBAAoB,CAAA;AAE3B,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,EAAE,CAgDvE"}
1
+ {"version":3,"file":"toComposerCall.d.ts","sourceRoot":"","sources":["../../src/deltaCall/toComposerCall.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,SAAS,EAGV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAW,GAAG,EAAE,MAAM,MAAM,CAAA;AAEnC,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,GAAG,EAAE,CAgDvE"}
@@ -1,5 +1,5 @@
1
1
  import { encodePermit, encodePermit2TransferFrom, encodeTransferIn, PermitIds, } from '@1delta/calldatalib';
2
- import { DeltaCallPermitType, DeltaCallType, } from '../types/deltaCall';
2
+ import { DeltaCallPermitType, DeltaCallType, } from '@1delta/lib-utils';
3
3
  export function toComposerCall(call, receiver) {
4
4
  switch (call.callType) {
5
5
  case DeltaCallType.TRANSFER_IN: {
@@ -1,4 +1,4 @@
1
+ import { DeltaCall } from '@1delta/lib-utils';
1
2
  import { Hex } from 'viem';
2
- import { DeltaCall } from '../types/deltaCall';
3
3
  export declare function toForwarderCall(call: DeltaCall): Hex;
4
4
  //# sourceMappingURL=toForwarderCall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toForwarderCall.d.ts","sourceRoot":"","sources":["../../src/deltaCall/toForwarderCall.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,GAAG,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAA;AAE7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,GAAG,CA4CpD"}
1
+ {"version":3,"file":"toForwarderCall.d.ts","sourceRoot":"","sources":["../../src/deltaCall/toForwarderCall.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAiB,MAAM,mBAAmB,CAAA;AAC5D,OAAO,EAAW,GAAG,EAAE,MAAM,MAAM,CAAA;AAEnC,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,GAAG,CA4CpD"}
@@ -1,5 +1,5 @@
1
1
  import { encodeApprove, encodeExternalCall, encodeExternalCallWithReplace, encodeSweep, SweepType, } from '@1delta/calldatalib';
2
- import { DeltaCallType } from '../types/deltaCall';
2
+ import { DeltaCallType } from '@1delta/lib-utils';
3
3
  export function toForwarderCall(call) {
4
4
  switch (call.callType) {
5
5
  case DeltaCallType.FULL_TOKEN_BALANCE: {
package/dist/index.d.ts CHANGED
@@ -3,10 +3,10 @@ export { fetchBridgeTrade as fetchBridgeTradeWithoutComposed } from './bridge';
3
3
  export * from './core';
4
4
  export { createDeltaCallsCalldata } from './deltaCall';
5
5
  export * from './initialize';
6
- export type { BridgeInput, DeltaCall, DeltaCallPermitType, DeltaCallType, } from './types';
6
+ export type { BridgeInput } from './types';
7
7
  export { TradeAggregator } from '@1delta/aggregators';
8
8
  export { Bridge, getBridges, getCowSwapSlippage, getSwapAggregators, } from '@1delta/bridge-configs';
9
9
  export type { Params as BridgeParams, Status as BridgeStatus, } from '@1delta/bridge-core';
10
10
  export { getBridgeIcon, getStatus as getBridgeStatus, } from '@1delta/bridge-core';
11
- export type { AggregatorApiInput, useGeneralPricesCallbackType, } from '@1delta/lib-utils';
11
+ export type { AggregatorApiInput, DeltaCall, DeltaCallPermitType, DeltaCallType, useGeneralPricesCallbackType, } from '@1delta/lib-utils';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,gBAAgB,IAAI,+BAA+B,EAAE,MAAM,UAAU,CAAA;AAC9E,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AACtD,cAAc,cAAc,CAAA;AAC5B,YAAY,EACV,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,aAAa,GACd,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EACL,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,MAAM,IAAI,YAAY,EACtB,MAAM,IAAI,YAAY,GACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,SAAS,IAAI,eAAe,GAC7B,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,kBAAkB,EAClB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,gBAAgB,IAAI,+BAA+B,EAAE,MAAM,UAAU,CAAA;AAC9E,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AACtD,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EACL,MAAM,EACN,UAAU,EACV,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,MAAM,IAAI,YAAY,EACtB,MAAM,IAAI,YAAY,GACvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,aAAa,EACb,SAAS,IAAI,eAAe,GAC7B,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,kBAAkB,EAClB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,4BAA4B,GAC7B,MAAM,mBAAmB,CAAA"}
@@ -1,6 +1,5 @@
1
1
  import { Bridge } from '@1delta/bridge-configs';
2
- import { RawCurrency, TradeType } from '@1delta/lib-utils';
3
- import { DeltaCall } from './deltaCall';
2
+ import { DeltaCall, RawCurrency, TradeType } from '@1delta/lib-utils';
4
3
  export interface BaseBridgeInput {
5
4
  slippage: number;
6
5
  tradeType: TradeType;
@@ -30,6 +29,8 @@ export interface AcrossBaseInput extends BaseBridgeInput, AdditionalCalls {
30
29
  }
31
30
  export interface AxelarBaseInput extends BaseBridgeInput, AdditionalCallsWithGasLimit, WithGasInput {
32
31
  }
32
+ export interface SwapAggregatorInput extends BaseBridgeInput, AdditionalCalls {
33
+ }
33
34
  type AcrossInput = {
34
35
  bridge: Bridge.ACROSS;
35
36
  input: AcrossBaseInput;
@@ -38,10 +39,14 @@ type AxelarInput = {
38
39
  bridge: Bridge.AXELAR;
39
40
  input: AxelarBaseInput;
40
41
  };
42
+ type ZenlinkInput = {
43
+ bridge: Bridge.Zenlink;
44
+ input: SwapAggregatorInput;
45
+ };
41
46
  interface DefaultBridgeInput extends BaseBridgeInput {
42
- bridge: Exclude<Bridge, Bridge.AXELAR | Bridge.ACROSS>;
47
+ bridge: Exclude<Bridge, Bridge.AXELAR | Bridge.ACROSS | Bridge.Zenlink>;
43
48
  input: BaseBridgeInput;
44
49
  }
45
- export type BridgeInput = AcrossInput | AxelarInput | DefaultBridgeInput;
50
+ export type BridgeInput = AcrossInput | AxelarInput | ZenlinkInput | DefaultBridgeInput;
46
51
  export {};
47
52
  //# sourceMappingURL=bridgeInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeInput.d.ts","sourceRoot":"","sources":["../../src/types/bridgeInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,YAAY,EAAE,WAAW,GAAG,SAAS,CAAA;IACrC,UAAU,EAAE,WAAW,GAAG,SAAS,CAAA;IACnC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,GAAG,SAAS,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,UAAU,YAAY;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,UAAU,eAAe;IACvB,eAAe,CAAC,EAAE,SAAS,EAAE,CAAA;CAC9B;AAED,UAAU,2BAA2B;IACnC,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,SAAS,EAAE,CAAA;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe,EAAE,eAAe;CAAG;AAE5E,MAAM,WAAW,eACf,SAAQ,eAAe,EACrB,2BAA2B,EAC3B,YAAY;CAAG;AAEnB,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;IACrB,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;IACrB,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,UAAU,kBAAmB,SAAQ,eAAe;IAClD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IACtD,KAAK,EAAE,eAAe,CAAA;CACvB;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,kBAAkB,CAAA"}
1
+ {"version":3,"file":"bridgeInput.d.ts","sourceRoot":"","sources":["../../src/types/bridgeInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAErE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,YAAY,EAAE,WAAW,GAAG,SAAS,CAAA;IACrC,UAAU,EAAE,WAAW,GAAG,SAAS,CAAA;IACnC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,GAAG,SAAS,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,UAAU,YAAY;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,UAAU,eAAe;IACvB,eAAe,CAAC,EAAE,SAAS,EAAE,CAAA;CAC9B;AAED,UAAU,2BAA2B;IACnC,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,SAAS,EAAE,CAAA;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe,EAAE,eAAe;CAAG;AAE5E,MAAM,WAAW,eACf,SAAQ,eAAe,EACrB,2BAA2B,EAC3B,YAAY;CAAG;AAEnB,MAAM,WAAW,mBAAoB,SAAQ,eAAe,EAAE,eAAe;CAAG;AAEhF,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;IACrB,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;IACrB,KAAK,EAAE,eAAe,CAAA;CACvB,CAAA;AAED,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAA;IACtB,KAAK,EAAE,mBAAmB,CAAA;CAC3B,CAAA;AAED,UAAU,kBAAmB,SAAQ,eAAe;IAClD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IACvE,KAAK,EAAE,eAAe,CAAA;CACvB;AAED,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,WAAW,GACX,YAAY,GACZ,kBAAkB,CAAA"}
@@ -1,5 +1,4 @@
1
1
  export * from './aggregatorInput';
2
2
  export * from './bridgeInput';
3
- export * from './deltaCall';
4
3
  export * from './destinationSwapData';
5
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA"}
@@ -1,4 +1,3 @@
1
1
  export * from './aggregatorInput';
2
2
  export * from './bridgeInput';
3
- export * from './deltaCall';
4
3
  export * from './destinationSwapData';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1delta/trade-sdk",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "1Delta Trade SDK for handling cross-chain swaps and bridges",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -12,8 +12,8 @@
12
12
  "viem": "^2.40.3",
13
13
  "@1delta/aggregators": "0.1.6",
14
14
  "@1delta/bridge-configs": "0.1.6",
15
- "@1delta/lib-utils": "0.1.6",
16
- "@1delta/bridge-core": "0.1.3"
15
+ "@1delta/bridge-core": "0.1.3",
16
+ "@1delta/lib-utils": "0.1.7"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@types/node": "^24.10.1",
@@ -1,62 +0,0 @@
1
- import { Hex } from 'viem';
2
- export declare enum DeltaCallType {
3
- DEFAULT = 0,
4
- FULL_TOKEN_BALANCE = 1,
5
- FULL_NATIVE_BALANCE = 2,
6
- SWEEP_WITH_VALIDATION = 3,
7
- TRANSFER_IN = 4,
8
- APPROVE = 5
9
- }
10
- export declare enum DeltaCallPermitType {
11
- ERC20_PERMIT = 0,
12
- PERMIT2 = 1,
13
- NONE = 2
14
- }
15
- export declare const COMPOSER_CALL_TYPES: DeltaCallType[];
16
- interface BaseCall {
17
- target: string;
18
- value?: bigint;
19
- callData: Hex;
20
- }
21
- interface FullTokenBalanceCall extends BaseCall {
22
- callType: DeltaCallType.FULL_TOKEN_BALANCE;
23
- tokenAddress: string;
24
- balanceOfInjectIndex: number;
25
- }
26
- interface FullNativeBalanceCall extends Omit<BaseCall, 'value'> {
27
- callType: DeltaCallType.FULL_NATIVE_BALANCE;
28
- }
29
- interface SweepWithValidationCall {
30
- callType: DeltaCallType.SWEEP_WITH_VALIDATION;
31
- tokenAddress: string;
32
- limit: bigint;
33
- receiver: string;
34
- }
35
- interface BaseTransferInCall {
36
- callType: DeltaCallType.TRANSFER_IN;
37
- tokenAddress: string;
38
- amount?: bigint;
39
- }
40
- interface NonePermitTransferInCall extends BaseTransferInCall {
41
- permitType: DeltaCallPermitType.NONE;
42
- }
43
- interface ERC20PermitCall extends BaseTransferInCall {
44
- permitType: DeltaCallPermitType.ERC20_PERMIT;
45
- permitData: Hex;
46
- }
47
- interface Permit2Call extends BaseTransferInCall {
48
- permitType: DeltaCallPermitType.PERMIT2;
49
- permitData: Hex;
50
- }
51
- type TransferInCall = ERC20PermitCall | Permit2Call | NonePermitTransferInCall;
52
- interface ApproveCall {
53
- callType: DeltaCallType.APPROVE;
54
- tokenAddress: string;
55
- spender: string;
56
- }
57
- interface DefaultCall extends BaseCall {
58
- callType: DeltaCallType.DEFAULT;
59
- }
60
- export type DeltaCall = FullTokenBalanceCall | FullNativeBalanceCall | SweepWithValidationCall | TransferInCall | ApproveCall | DefaultCall;
61
- export {};
62
- //# sourceMappingURL=deltaCall.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deltaCall.d.ts","sourceRoot":"","sources":["../../src/types/deltaCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAE1B,oBAAY,aAAa;IACvB,OAAO,IAAI;IACX,kBAAkB,IAAI;IACtB,mBAAmB,IAAI;IACvB,qBAAqB,IAAI;IACzB,WAAW,IAAI;IACf,OAAO,IAAI;CACZ;AAED,oBAAY,mBAAmB;IAC7B,YAAY,IAAI;IAChB,OAAO,IAAI;IACX,IAAI,IAAI;CACT;AAED,eAAO,MAAM,mBAAmB,iBAA8B,CAAA;AAE9D,UAAU,QAAQ;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,GAAG,CAAA;CACd;AAED,UAAU,oBAAqB,SAAQ,QAAQ;IAC7C,QAAQ,EAAE,aAAa,CAAC,kBAAkB,CAAA;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED,UAAU,qBAAsB,SAAQ,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC7D,QAAQ,EAAE,aAAa,CAAC,mBAAmB,CAAA;CAC5C;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAA;IAC7C,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAA;IACnC,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,wBAAyB,SAAQ,kBAAkB;IAC3D,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAAA;CACrC;AAED,UAAU,eAAgB,SAAQ,kBAAkB;IAClD,UAAU,EAAE,mBAAmB,CAAC,YAAY,CAAA;IAC5C,UAAU,EAAE,GAAG,CAAA;CAChB;AAED,UAAU,WAAY,SAAQ,kBAAkB;IAC9C,UAAU,EAAE,mBAAmB,CAAC,OAAO,CAAA;IACvC,UAAU,EAAE,GAAG,CAAA;CAChB;AAED,KAAK,cAAc,GAAG,eAAe,GAAG,WAAW,GAAG,wBAAwB,CAAA;AAE9E,UAAU,WAAW;IACnB,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,WAAY,SAAQ,QAAQ;IACpC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAA;CAChC;AAED,MAAM,MAAM,SAAS,GACjB,oBAAoB,GACpB,qBAAqB,GACrB,uBAAuB,GACvB,cAAc,GACd,WAAW,GACX,WAAW,CAAA"}
@@ -1,16 +0,0 @@
1
- export var DeltaCallType;
2
- (function (DeltaCallType) {
3
- DeltaCallType[DeltaCallType["DEFAULT"] = 0] = "DEFAULT";
4
- DeltaCallType[DeltaCallType["FULL_TOKEN_BALANCE"] = 1] = "FULL_TOKEN_BALANCE";
5
- DeltaCallType[DeltaCallType["FULL_NATIVE_BALANCE"] = 2] = "FULL_NATIVE_BALANCE";
6
- DeltaCallType[DeltaCallType["SWEEP_WITH_VALIDATION"] = 3] = "SWEEP_WITH_VALIDATION";
7
- DeltaCallType[DeltaCallType["TRANSFER_IN"] = 4] = "TRANSFER_IN";
8
- DeltaCallType[DeltaCallType["APPROVE"] = 5] = "APPROVE";
9
- })(DeltaCallType || (DeltaCallType = {}));
10
- export var DeltaCallPermitType;
11
- (function (DeltaCallPermitType) {
12
- DeltaCallPermitType[DeltaCallPermitType["ERC20_PERMIT"] = 0] = "ERC20_PERMIT";
13
- DeltaCallPermitType[DeltaCallPermitType["PERMIT2"] = 1] = "PERMIT2";
14
- DeltaCallPermitType[DeltaCallPermitType["NONE"] = 2] = "NONE";
15
- })(DeltaCallPermitType || (DeltaCallPermitType = {}));
16
- export const COMPOSER_CALL_TYPES = [DeltaCallType.TRANSFER_IN];