@1inch/fusion-sdk 2.3.9-rc.9 → 2.4.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 (34) hide show
  1. package/README.md +101 -0
  2. package/dist/cjs/api/quoter/quote/quote.js +2 -2
  3. package/dist/cjs/fusion-order/fusion-order.js +10 -31
  4. package/dist/cjs/fusion-order/fusion-order.spec.js +3 -4
  5. package/dist/cjs/index.js +9 -1
  6. package/dist/esm/api/quoter/quote/quote.js +2 -2
  7. package/dist/esm/fusion-order/fusion-order.js +8 -29
  8. package/dist/esm/fusion-order/fusion-order.spec.js +1 -2
  9. package/dist/esm/index.js +1 -2
  10. package/dist/esm/package.json +1 -1
  11. package/dist/types/src/api/quoter/quote/quote.d.ts +1 -2
  12. package/dist/types/src/fusion-order/fusion-order.d.ts +2 -3
  13. package/dist/types/src/index.d.ts +1 -2
  14. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  15. package/package.json +3 -3
  16. package/dist/cjs/abi/NativeOrderFactory.abi.json +0 -217
  17. package/dist/cjs/abi/NativeOrderImpl.abi.json +0 -286
  18. package/dist/cjs/contracts/index.js +0 -21
  19. package/dist/cjs/contracts/native-order-factory.js +0 -115
  20. package/dist/cjs/contracts/native-order-impl.js +0 -130
  21. package/dist/cjs/contracts/proxy-factory.js +0 -87
  22. package/dist/cjs/contracts/types.js +0 -4
  23. package/dist/esm/abi/NativeOrderFactory.abi.json +0 -217
  24. package/dist/esm/abi/NativeOrderImpl.abi.json +0 -286
  25. package/dist/esm/contracts/index.js +0 -4
  26. package/dist/esm/contracts/native-order-factory.js +0 -100
  27. package/dist/esm/contracts/native-order-impl.js +0 -115
  28. package/dist/esm/contracts/proxy-factory.js +0 -72
  29. package/dist/esm/contracts/types.js +0 -1
  30. package/dist/types/src/contracts/index.d.ts +0 -4
  31. package/dist/types/src/contracts/native-order-factory.d.ts +0 -9
  32. package/dist/types/src/contracts/native-order-impl.d.ts +0 -9
  33. package/dist/types/src/contracts/proxy-factory.d.ts +0 -8
  34. package/dist/types/src/contracts/types.d.ts +0 -6
package/README.md CHANGED
@@ -107,6 +107,107 @@ async function main() {
107
107
  main()
108
108
  ```
109
109
 
110
+ ## How to swap with Fusion mode from Native asset
111
+ ```typescript
112
+ import {FusionSDK, NetworkEnum, OrderStatus, PrivateKeyProviderConnector, Web3Like, Address, NativeOrdersFactory} from "@1inch/fusion-sdk";
113
+ import {computeAddress, formatUnits, JsonRpcProvider, Wallet} from "ethers";
114
+
115
+ const PRIVATE_KEY = 'YOUR_PRIVATE_KEY'
116
+ const NODE_URL = 'YOUR_WEB3_NODE_URL'
117
+ const DEV_PORTAL_API_TOKEN = 'YOUR_DEV_PORTAL_API_TOKEN'
118
+
119
+ const ethersRpcProvider = new JsonRpcProvider(NODE_URL)
120
+
121
+ const ethersProviderConnector: Web3Like = {
122
+ eth: {
123
+ call(transactionConfig): Promise<string> {
124
+ return ethersRpcProvider.call(transactionConfig)
125
+ }
126
+ },
127
+ extend(): void {}
128
+ }
129
+
130
+ const connector = new PrivateKeyProviderConnector(
131
+ PRIVATE_KEY,
132
+ ethersProviderConnector
133
+ )
134
+
135
+ const sdk = new FusionSDK({
136
+ url: 'https://api.1inch.dev/fusion',
137
+ network: NetworkEnum.BINANCE,
138
+ blockchainProvider: connector,
139
+ authKey: DEV_PORTAL_API_TOKEN
140
+ })
141
+
142
+ const wallet = new Wallet(PRIVATE_KEY, ethersRpcProvider)
143
+
144
+ async function main() {
145
+ const params = {
146
+ fromTokenAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee', // ETH
147
+ toTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', // USDC
148
+ amount: '2000000000000000', // 0.002 ETH
149
+ walletAddress: computeAddress(PRIVATE_KEY),
150
+ source: 'sdk-test'
151
+ }
152
+
153
+ const quote = await sdk.getQuote(params)
154
+
155
+ const dstTokenDecimals = 6
156
+ console.log('Auction start amount', formatUnits(quote.presets[quote.recommendedPreset].auctionStartAmount, dstTokenDecimals))
157
+ console.log('Auction end amount', formatUnits(quote.presets[quote.recommendedPreset].auctionEndAmount), dstTokenDecimals)
158
+
159
+ const preparedOrder = await sdk.createOrder(params)
160
+
161
+ const info = await sdk.submitNativeOrder(preparedOrder.order, new Address(params.walletAddress), preparedOrder.quoteId)
162
+
163
+ console.log('OrderHash', info.orderHash)
164
+
165
+ const factory = NativeOrdersFactory.default(NetworkEnum.BINANCE)
166
+ const call = factory.create(new Address(wallet.address), preparedOrder.order)
167
+
168
+ const txRes = await wallet.sendTransaction({
169
+ to: call.to.toString(),
170
+ data: call.data,
171
+ value: call.value
172
+ })
173
+
174
+ console.log('TxHash', txRes.hash)
175
+
176
+ await wallet.provider.waitForTransaction(txRes.hash)
177
+
178
+
179
+ const start = Date.now()
180
+
181
+ while (true) {
182
+ try {
183
+ const data = await sdk.getOrderStatus(info.orderHash)
184
+
185
+ if (data.status === OrderStatus.Filled) {
186
+ console.log('fills', data.fills)
187
+ break
188
+ }
189
+
190
+ if (data.status === OrderStatus.Expired) {
191
+ console.log('Order Expired')
192
+ break
193
+ }
194
+
195
+ if (data.status === OrderStatus.Cancelled) {
196
+ console.log('Order Cancelled')
197
+ break
198
+ }
199
+ } catch (e) {
200
+ console.log(e)
201
+ }
202
+
203
+ }
204
+
205
+ console.log('Order executed for', (Date.now() - start) / 1000, 'sec')
206
+ }
207
+
208
+ main()
209
+ ```
210
+
110
211
  ## Resolvers
111
212
 
112
213
  `settleOrders` function usage and Resolver contract examples you can find [here](https://github.com/1inch/fusion-resolver-example)
@@ -17,7 +17,6 @@ var _preset = require("../preset.js");
17
17
  var _index = require("../../../fusion-order/index.js");
18
18
  var _constants = require("../../../fusion-order/constants.js");
19
19
  var _index1 = require("../../../fusion-order/fees/index.js");
20
- var _index2 = require("../../../index.js");
21
20
  function _class_call_check(instance, Constructor) {
22
21
  if (!(instance instanceof Constructor)) {
23
22
  throw new TypeError("Cannot call a class as a function");
@@ -96,7 +95,7 @@ var Quote = /*#__PURE__*/ function() {
96
95
  this.recommendedPreset = response.recommended_preset;
97
96
  this.slippage = response.autoK;
98
97
  this.settlementAddress = new _limitordersdk.Address(response.settlementAddress);
99
- this.nativeOrderFactory = response.nativeOrderFactoryAddress && response.nativeOrderImplAddress ? new _index2.ProxyFactory(new _limitordersdk.Address(response.nativeOrderFactoryAddress), new _limitordersdk.Address(response.nativeOrderImplAddress)) : undefined;
98
+ this.nativeOrderFactory = response.nativeOrderFactoryAddress && response.nativeOrderImplAddress ? new _limitordersdk.ProxyFactory(new _limitordersdk.Address(response.nativeOrderFactoryAddress), new _limitordersdk.Address(response.nativeOrderImplAddress)) : undefined;
100
99
  this.resolverFeePreset = {
101
100
  receiver: new _limitordersdk.Address(response.fee.receiver),
102
101
  whitelistDiscountPercent: _limitordersdk.Bps.fromPercent(response.fee.whitelistDiscountPercent),
@@ -119,6 +118,7 @@ var Quote = /*#__PURE__*/ function() {
119
118
  permit: this.params.permit,
120
119
  isPermit2: this.params.isPermit2,
121
120
  nonce: paramsData === null || paramsData === void 0 ? void 0 : paramsData.nonce,
121
+ delayAuctionStartTimeBy: paramsData === null || paramsData === void 0 ? void 0 : paramsData.delayAuctionStartTimeBy,
122
122
  network: paramsData.network
123
123
  });
124
124
  var preset = this.getPreset(params.preset);
@@ -13,9 +13,8 @@ var _assert = /*#__PURE__*/ _interop_require_default(require("assert"));
13
13
  var _fusionextension = require("./fusion-extension.js");
14
14
  var _sourcetrack = require("./source-track.js");
15
15
  var _surplusparams = require("./surplus-params.js");
16
- var _constants = require("./constants.js");
17
16
  var _index = require("../amount-calculator/auction-calculator/index.js");
18
- var _constants1 = require("../constants.js");
17
+ var _constants = require("../constants.js");
19
18
  var _amounts = require("../utils/amounts.js");
20
19
  var _time = require("../utils/time.js");
21
20
  var _amountcalculator = require("../amount-calculator/amount-calculator.js");
@@ -452,7 +451,7 @@ var FusionOrder = /*#__PURE__*/ function() {
452
451
  {
453
452
  key: "isNative",
454
453
  value: function isNative(chainId, ethOrderFactory, signature) {
455
- return FusionOrder.isNativeOrder(chainId, ethOrderFactory, this.build(), signature);
454
+ return this.inner.isNative(chainId, ethOrderFactory, signature);
456
455
  }
457
456
  },
458
457
  {
@@ -464,17 +463,7 @@ var FusionOrder = /*#__PURE__*/ function() {
464
463
  * @see FusionOrder.isNative
465
464
  * @see FusionOrder.fromNative
466
465
  */ function nativeSignature(maker) {
467
- return new _limitordersdk.LimitOrder({
468
- maker: maker,
469
- makerAsset: this.makerAsset,
470
- makingAmount: this.makingAmount,
471
- takingAmount: this.takingAmount,
472
- takerAsset: this.takerAsset,
473
- receiver: this.receiver,
474
- salt: this.salt
475
- }, this.inner.makerTraits, undefined, {
476
- optimizeReceiverAddress: false
477
- }).toCalldata();
466
+ return this.inner.nativeSignature(maker);
478
467
  }
479
468
  }
480
469
  ], [
@@ -490,13 +479,7 @@ var FusionOrder = /*#__PURE__*/ function() {
490
479
  {
491
480
  key: "isNativeOrder",
492
481
  value: function isNativeOrder(chainId, ethOrderFactory, order, signature) {
493
- try {
494
- var orderWithRealMaker = _limitordersdk.LimitOrder.fromCalldata(signature);
495
- var expectedAddress = ethOrderFactory.getProxyAddress(orderWithRealMaker.getOrderHash(chainId));
496
- return expectedAddress.equal(new _limitordersdk.Address(order.maker));
497
- } catch (e) {
498
- return false;
499
- }
482
+ return _limitordersdk.LimitOrder.isNativeOrder(chainId, ethOrderFactory, order, signature);
500
483
  }
501
484
  },
502
485
  {
@@ -513,20 +496,16 @@ var FusionOrder = /*#__PURE__*/ function() {
513
496
  * @see https://github.com/1inch/limit-order-settlement
514
497
  */ settlementExtension, orderInfo, details, extra) {
515
498
  var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
516
- makerAsset: _constants.CHAIN_TO_WRAPPER[chainId],
499
+ makerAsset: _limitordersdk.LimitOrder.CHAIN_TO_WRAPPER[chainId],
517
500
  receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
518
501
  });
519
- // create temp order to calc order hash
520
502
  var _order = FusionOrder.new(settlementExtension, _orderInfo, details, _object_spread_props(_object_spread({}, extra), {
521
503
  optimizeReceiverAddress: false
522
504
  }));
523
- var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
524
- maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
525
- });
526
- return new FusionOrder(settlementExtension, // use same salt to have same order hash. Remove extension hash from it
527
- _object_spread_props(_object_spread({}, finalOrderInfo), {
528
- salt: _order.salt >> 160n
529
- }), details.auction, details.whitelist, details.surplus, extra);
505
+ _order.inner = _limitordersdk.LimitOrder.fromNative(chainId, ethOrdersFactory, _object_spread_props(_object_spread({}, _orderInfo), {
506
+ salt: _order.salt
507
+ }), _order.inner.makerTraits, _order.inner.extension);
508
+ return _order;
530
509
  }
531
510
  },
532
511
  {
@@ -558,7 +537,7 @@ var FusionOrder = /*#__PURE__*/ function() {
558
537
  allowPartialFills: makerTraits.isPartialFillAllowed(),
559
538
  enablePermit2: makerTraits.isPermit2(),
560
539
  nonce: makerTraits.nonceOrEpoch(),
561
- permit: extension.makerPermit === _constants1.ZX ? undefined : _limitordersdk.Interaction.decode(extension.makerPermit).data,
540
+ permit: extension.makerPermit === _constants.ZX ? undefined : _limitordersdk.Interaction.decode(extension.makerPermit).data,
562
541
  unwrapWETH: makerTraits.isNativeUnwrapEnabled(),
563
542
  orderExpirationDelay: orderExpirationDelay,
564
543
  fees: extra === null || extra === void 0 ? void 0 : extra.fees,
@@ -9,7 +9,6 @@ var _index = require("./auction-details/index.js");
9
9
  var _index1 = require("./whitelist/index.js");
10
10
  var _surplusparams = require("./surplus-params.js");
11
11
  var _index2 = require("./fees/index.js");
12
- var _proxyfactory = require("../contracts/proxy-factory.js");
13
12
  var _constants = require("../constants.js");
14
13
  var _index3 = require("../amount-calculator/index.js");
15
14
  var _time = require("../utils/time.js");
@@ -300,7 +299,7 @@ describe('Fusion Order', function() {
300
299
  });
301
300
  describe('FusionOrder Native', function() {
302
301
  it('should correct detect that order is from native asset', function() {
303
- var ethOrderFactory = new _proxyfactory.ProxyFactory(_limitordersdk.Address.fromBigInt(1n), _limitordersdk.Address.fromBigInt(2n));
302
+ var ethOrderFactory = new _limitordersdk.ProxyFactory(_limitordersdk.Address.fromBigInt(1n), _limitordersdk.Address.fromBigInt(2n));
304
303
  var chainId = _constants.NetworkEnum.ETHEREUM;
305
304
  var settlementExt = _limitordersdk.Address.fromBigInt(3n);
306
305
  var maker = new _limitordersdk.Address('0x00000000219ab540356cbb839cbe05303d7705fa');
@@ -334,7 +333,7 @@ describe('FusionOrder Native', function() {
334
333
  expect(_fusionorder.FusionOrder.fromDataAndExtension(nativeOrder.build(), nativeOrder.extension).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
335
334
  });
336
335
  it('should correct detect that order is from native asset (no salt)', function() {
337
- var ethOrderFactory = new _proxyfactory.ProxyFactory(new _limitordersdk.Address('0x62c650084e97a0fba2ecf365cc6d8a7722425363'), new _limitordersdk.Address('0xe8773a43fce4eedb18d0edbaf319059e1ae786af'));
336
+ var ethOrderFactory = new _limitordersdk.ProxyFactory(new _limitordersdk.Address('0x62c650084e97a0fba2ecf365cc6d8a7722425363'), new _limitordersdk.Address('0xe8773a43fce4eedb18d0edbaf319059e1ae786af'));
338
337
  var chainId = _constants.NetworkEnum.ETHEREUM;
339
338
  var settlementExt = new _limitordersdk.Address('0x2ad5004c60e16e54d5007c80ce329adde5b51ef5');
340
339
  var maker = new _limitordersdk.Address('0x962a836519109e162754161000d65d9dc027fa0f');
@@ -367,7 +366,7 @@ describe('FusionOrder Native', function() {
367
366
  expect(_fusionorder.FusionOrder.fromDataAndExtension(nativeOrder.build(), _limitordersdk.Extension.decode(nativeOrder.extension.encode())).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
368
367
  });
369
368
  it('should correct detect that order is NOT from native asset', function() {
370
- var ethOrderFactory = new _proxyfactory.ProxyFactory(_limitordersdk.Address.fromBigInt(1n), _limitordersdk.Address.fromBigInt(2n));
369
+ var ethOrderFactory = new _limitordersdk.ProxyFactory(_limitordersdk.Address.fromBigInt(1n), _limitordersdk.Address.fromBigInt(2n));
371
370
  var chainId = _constants.NetworkEnum.ETHEREUM;
372
371
  var settlementExt = _limitordersdk.Address.fromBigInt(3n);
373
372
  var maker = new _limitordersdk.Address('0x00000000219ab540356cbb839cbe05303d7705fa');
package/dist/cjs/index.js CHANGED
@@ -30,6 +30,12 @@ _export(exports, {
30
30
  MakerTraits: function() {
31
31
  return _limitordersdk.MakerTraits;
32
32
  },
33
+ NativeOrdersFactory: function() {
34
+ return _limitordersdk.NativeOrdersFactory;
35
+ },
36
+ NativeOrdersImpl: function() {
37
+ return _limitordersdk.NativeOrdersImpl;
38
+ },
33
39
  OrderStatus: function() {
34
40
  return _index.OrderStatus;
35
41
  },
@@ -39,6 +45,9 @@ _export(exports, {
39
45
  PresetEnum: function() {
40
46
  return _index.PresetEnum;
41
47
  },
48
+ ProxyFactory: function() {
49
+ return _limitordersdk.ProxyFactory;
50
+ },
42
51
  Quote: function() {
43
52
  return _index.Quote;
44
53
  },
@@ -76,7 +85,6 @@ _export_star(require("./utils/time.js"), exports);
76
85
  _export_star(require("./validations.js"), exports);
77
86
  _export_star(require("./ws-api/index.js"), exports);
78
87
  _export_star(require("./errors.js"), exports);
79
- _export_star(require("./contracts/index.js"), exports);
80
88
  var _index = require("./api/index.js");
81
89
  function _export_star(from, to) {
82
90
  Object.keys(from).forEach(function(k) {
@@ -30,7 +30,7 @@ function _define_property(obj, key, value) {
30
30
  }
31
31
  return obj;
32
32
  }
33
- import { Address, Bps, randBigInt } from '@1inch/limit-order-sdk';
33
+ import { Address, Bps, randBigInt, ProxyFactory } from '@1inch/limit-order-sdk';
34
34
  import { UINT_40_MAX } from '@1inch/byte-utils';
35
35
  import assert from 'assert';
36
36
  import { FusionOrderParams } from './order-params.js';
@@ -39,7 +39,6 @@ import { Preset } from '../preset.js';
39
39
  import { FusionOrder, SurplusParams, Whitelist } from '../../../fusion-order/index.js';
40
40
  import { CHAIN_TO_WRAPPER } from '../../../fusion-order/constants.js';
41
41
  import { Fees, ResolverFee, IntegratorFee } from '../../../fusion-order/fees/index.js';
42
- import { ProxyFactory } from '../../../index.js';
43
42
  export var Quote = /*#__PURE__*/ function() {
44
43
  "use strict";
45
44
  function Quote(params, response) {
@@ -104,6 +103,7 @@ export var Quote = /*#__PURE__*/ function() {
104
103
  permit: this.params.permit,
105
104
  isPermit2: this.params.isPermit2,
106
105
  nonce: paramsData === null || paramsData === void 0 ? void 0 : paramsData.nonce,
106
+ delayAuctionStartTimeBy: paramsData === null || paramsData === void 0 ? void 0 : paramsData.delayAuctionStartTimeBy,
107
107
  network: paramsData.network
108
108
  });
109
109
  var preset = this.getPreset(params.preset);
@@ -74,7 +74,6 @@ import assert from 'assert';
74
74
  import { FusionExtension } from './fusion-extension.js';
75
75
  import { injectTrackCode } from './source-track.js';
76
76
  import { SurplusParams } from './surplus-params.js';
77
- import { CHAIN_TO_WRAPPER } from './constants.js';
78
77
  import { AuctionCalculator } from '../amount-calculator/auction-calculator/index.js';
79
78
  import { ZX } from '../constants.js';
80
79
  import { calcTakingAmount } from '../utils/amounts.js';
@@ -437,7 +436,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
437
436
  {
438
437
  key: "isNative",
439
438
  value: function isNative(chainId, ethOrderFactory, signature) {
440
- return FusionOrder.isNativeOrder(chainId, ethOrderFactory, this.build(), signature);
439
+ return this.inner.isNative(chainId, ethOrderFactory, signature);
441
440
  }
442
441
  },
443
442
  {
@@ -449,17 +448,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
449
448
  * @see FusionOrder.isNative
450
449
  * @see FusionOrder.fromNative
451
450
  */ function nativeSignature(maker) {
452
- return new LimitOrder({
453
- maker: maker,
454
- makerAsset: this.makerAsset,
455
- makingAmount: this.makingAmount,
456
- takingAmount: this.takingAmount,
457
- takerAsset: this.takerAsset,
458
- receiver: this.receiver,
459
- salt: this.salt
460
- }, this.inner.makerTraits, undefined, {
461
- optimizeReceiverAddress: false
462
- }).toCalldata();
451
+ return this.inner.nativeSignature(maker);
463
452
  }
464
453
  }
465
454
  ], [
@@ -475,13 +464,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
475
464
  {
476
465
  key: "isNativeOrder",
477
466
  value: function isNativeOrder(chainId, ethOrderFactory, order, signature) {
478
- try {
479
- var orderWithRealMaker = LimitOrder.fromCalldata(signature);
480
- var expectedAddress = ethOrderFactory.getProxyAddress(orderWithRealMaker.getOrderHash(chainId));
481
- return expectedAddress.equal(new Address(order.maker));
482
- } catch (e) {
483
- return false;
484
- }
467
+ return LimitOrder.isNativeOrder(chainId, ethOrderFactory, order, signature);
485
468
  }
486
469
  },
487
470
  {
@@ -498,20 +481,16 @@ export var FusionOrder = /*#__PURE__*/ function() {
498
481
  * @see https://github.com/1inch/limit-order-settlement
499
482
  */ settlementExtension, orderInfo, details, extra) {
500
483
  var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
501
- makerAsset: CHAIN_TO_WRAPPER[chainId],
484
+ makerAsset: LimitOrder.CHAIN_TO_WRAPPER[chainId],
502
485
  receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
503
486
  });
504
- // create temp order to calc order hash
505
487
  var _order = FusionOrder.new(settlementExtension, _orderInfo, details, _object_spread_props(_object_spread({}, extra), {
506
488
  optimizeReceiverAddress: false
507
489
  }));
508
- var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
509
- maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
510
- });
511
- return new FusionOrder(settlementExtension, // use same salt to have same order hash. Remove extension hash from it
512
- _object_spread_props(_object_spread({}, finalOrderInfo), {
513
- salt: _order.salt >> 160n
514
- }), details.auction, details.whitelist, details.surplus, extra);
490
+ _order.inner = LimitOrder.fromNative(chainId, ethOrdersFactory, _object_spread_props(_object_spread({}, _orderInfo), {
491
+ salt: _order.salt
492
+ }), _order.inner.makerTraits, _order.inner.extension);
493
+ return _order;
515
494
  }
516
495
  },
517
496
  {
@@ -1,11 +1,10 @@
1
- import { Address, Bps, MakerTraits, Extension } from '@1inch/limit-order-sdk';
1
+ import { Address, Bps, MakerTraits, Extension, ProxyFactory } from '@1inch/limit-order-sdk';
2
2
  import { parseEther, parseUnits } from 'ethers';
3
3
  import { FusionOrder } from './fusion-order.js';
4
4
  import { AuctionDetails } from './auction-details/index.js';
5
5
  import { Whitelist } from './whitelist/index.js';
6
6
  import { SurplusParams } from './surplus-params.js';
7
7
  import { Fees, IntegratorFee, ResolverFee } from './fees/index.js';
8
- import { ProxyFactory } from '../contracts/proxy-factory.js';
9
8
  import { NetworkEnum } from '../constants.js';
10
9
  import { AuctionCalculator } from '../amount-calculator/index.js';
11
10
  import { now } from '../utils/time.js';
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { Address, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract, MakerTraits } from '@1inch/limit-order-sdk';
1
+ export { Address, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract, MakerTraits, ProxyFactory, NativeOrdersFactory, NativeOrdersImpl } from '@1inch/limit-order-sdk';
2
2
  export * from './fusion-order/index.js';
3
3
  export * from './amount-calculator//index.js';
4
4
  export * from './connector/index.js';
@@ -10,5 +10,4 @@ export * from './utils/time.js';
10
10
  export * from './validations.js';
11
11
  export * from './ws-api/index.js';
12
12
  export * from './errors.js';
13
- export * from './contracts/index.js';
14
13
  export { QuoterRequest, RelayerRequest, QuoterCustomPresetRequest, PresetEnum, Preset, Quote, OrderStatus } from './api/index.js';
@@ -1 +1 @@
1
- {"name":"@1inch/fusion-sdk","version":"2.3.9-rc.9","type":"module"}
1
+ {"name":"@1inch/fusion-sdk","version":"2.4.0","type":"module"}
@@ -1,10 +1,9 @@
1
- import { Address } from '@1inch/limit-order-sdk';
1
+ import { Address, ProxyFactory } from '@1inch/limit-order-sdk';
2
2
  import { FusionOrderParamsData, IntegratorFeeParams, ResolverFeePreset } from './types.js';
3
3
  import { Cost, PresetEnum, QuoterResponse } from '../types.js';
4
4
  import { Preset } from '../preset.js';
5
5
  import { FusionOrder } from '../../../fusion-order/index.js';
6
6
  import { QuoterRequest } from '../quoter.request.js';
7
- import { ProxyFactory } from '../../../index.js';
8
7
  export declare class Quote {
9
8
  private readonly params;
10
9
  readonly settlementAddress: Address;
@@ -1,5 +1,4 @@
1
- import { Address, EIP712TypedData, Extension, LimitOrderV4Struct, OrderInfoData } from '@1inch/limit-order-sdk';
2
- import { ProxyFactory } from 'contracts/proxy-factory.js';
1
+ import { Address, EIP712TypedData, Extension, LimitOrder, LimitOrderV4Struct, OrderInfoData, ProxyFactory } from '@1inch/limit-order-sdk';
3
2
  import { FusionExtension } from './fusion-extension.js';
4
3
  import { AuctionDetails } from './auction-details/index.js';
5
4
  import { Whitelist } from './whitelist/whitelist.js';
@@ -12,7 +11,7 @@ export declare class FusionOrder {
12
11
  readonly settlementExtensionContract: Address;
13
12
  private static defaultExtra;
14
13
  readonly fusionExtension: FusionExtension;
15
- private inner;
14
+ protected inner: LimitOrder;
16
15
  protected constructor(settlementExtensionContract: Address, orderInfo: OrderInfoData, auctionDetails: AuctionDetails, whitelist: Whitelist, surplusParams?: SurplusParams, extra?: Extra, extension?: FusionExtension);
17
16
  get extension(): Extension;
18
17
  get maker(): Address;
@@ -1,4 +1,4 @@
1
- export { Address, type LimitOrderV4Struct, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract, type OrderInfoData, type EIP712TypedData, MakerTraits } from '@1inch/limit-order-sdk';
1
+ export { Address, type LimitOrderV4Struct, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract, type OrderInfoData, type EIP712TypedData, MakerTraits, ProxyFactory, NativeOrdersFactory, NativeOrdersImpl } from '@1inch/limit-order-sdk';
2
2
  export * from './fusion-order/index.js';
3
3
  export * from './amount-calculator//index.js';
4
4
  export * from './connector/index.js';
@@ -10,5 +10,4 @@ export * from './utils/time.js';
10
10
  export * from './validations.js';
11
11
  export * from './ws-api/index.js';
12
12
  export * from './errors.js';
13
- export * from './contracts/index.js';
14
13
  export { QuoterRequest, type QuoterResponse, RelayerRequest, QuoterCustomPresetRequest, PresetEnum, Preset, Quote, type OrderStatusResponse, OrderStatus } from './api/index.js';