@1inch/fusion-sdk 2.3.9-rc.8 → 2.3.10-rc.2

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 (35) hide show
  1. package/dist/cjs/api/quoter/quote/quote.js +2 -2
  2. package/dist/cjs/fusion-order/fusion-order.js +21 -33
  3. package/dist/cjs/fusion-order/fusion-order.spec.js +3 -4
  4. package/dist/cjs/index.js +9 -1
  5. package/dist/esm/api/quoter/quote/quote.js +2 -2
  6. package/dist/esm/fusion-order/fusion-order.js +19 -31
  7. package/dist/esm/fusion-order/fusion-order.spec.js +1 -2
  8. package/dist/esm/fusion-order/types.js +4 -0
  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/fusion-order/types.d.ts +1 -0
  14. package/dist/types/src/index.d.ts +1 -2
  15. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  16. package/package.json +2 -2
  17. package/dist/cjs/abi/NativeOrderFactory.abi.json +0 -217
  18. package/dist/cjs/abi/NativeOrderImpl.abi.json +0 -286
  19. package/dist/cjs/contracts/index.js +0 -21
  20. package/dist/cjs/contracts/native-order-factory.js +0 -115
  21. package/dist/cjs/contracts/native-order-impl.js +0 -130
  22. package/dist/cjs/contracts/proxy-factory.js +0 -87
  23. package/dist/cjs/contracts/types.js +0 -4
  24. package/dist/esm/abi/NativeOrderFactory.abi.json +0 -217
  25. package/dist/esm/abi/NativeOrderImpl.abi.json +0 -286
  26. package/dist/esm/contracts/index.js +0 -4
  27. package/dist/esm/contracts/native-order-factory.js +0 -100
  28. package/dist/esm/contracts/native-order-impl.js +0 -115
  29. package/dist/esm/contracts/proxy-factory.js +0 -72
  30. package/dist/esm/contracts/types.js +0 -1
  31. package/dist/types/src/contracts/index.d.ts +0 -4
  32. package/dist/types/src/contracts/native-order-factory.d.ts +0 -9
  33. package/dist/types/src/contracts/native-order-impl.d.ts +0 -9
  34. package/dist/types/src/contracts/proxy-factory.d.ts +0 -8
  35. package/dist/types/src/contracts/types.d.ts +0 -6
@@ -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");
@@ -144,10 +143,13 @@ var FusionOrder = /*#__PURE__*/ function() {
144
143
  if (orderInfo.makerAsset.isNative()) {
145
144
  throw new Error('use FusionOrder.fromNative to create order from native asset');
146
145
  }
146
+ var optimizeReceiverAddress = extra.optimizeReceiverAddress !== undefined ? extra.optimizeReceiverAddress : FusionOrder.defaultExtra.optimizeReceiverAddress;
147
147
  this.inner = new _limitordersdk.LimitOrder(_object_spread_props(_object_spread({}, orderInfo), {
148
148
  receiver: receiver,
149
149
  salt: saltWithInjectedTrackCode
150
- }), makerTraits, builtExtension);
150
+ }), makerTraits, builtExtension, {
151
+ optimizeReceiverAddress: optimizeReceiverAddress
152
+ });
151
153
  this.fusionExtension = extension;
152
154
  }
153
155
  _create_class(FusionOrder, [
@@ -449,7 +451,7 @@ var FusionOrder = /*#__PURE__*/ function() {
449
451
  {
450
452
  key: "isNative",
451
453
  value: function isNative(chainId, ethOrderFactory, signature) {
452
- return FusionOrder.isNativeOrder(chainId, ethOrderFactory, this.build(), signature);
454
+ return this.inner.isNative(chainId, ethOrderFactory, signature);
453
455
  }
454
456
  },
455
457
  {
@@ -461,15 +463,7 @@ var FusionOrder = /*#__PURE__*/ function() {
461
463
  * @see FusionOrder.isNative
462
464
  * @see FusionOrder.fromNative
463
465
  */ function nativeSignature(maker) {
464
- return new _limitordersdk.LimitOrder({
465
- maker: maker,
466
- makerAsset: this.makerAsset,
467
- makingAmount: this.makingAmount,
468
- takingAmount: this.takingAmount,
469
- takerAsset: this.takerAsset,
470
- receiver: this.receiver,
471
- salt: this.salt
472
- }, this.inner.makerTraits).toCalldata();
466
+ return this.inner.nativeSignature(maker);
473
467
  }
474
468
  }
475
469
  ], [
@@ -485,13 +479,7 @@ var FusionOrder = /*#__PURE__*/ function() {
485
479
  {
486
480
  key: "isNativeOrder",
487
481
  value: function isNativeOrder(chainId, ethOrderFactory, order, signature) {
488
- try {
489
- var orderWithRealMaker = _limitordersdk.LimitOrder.fromCalldata(signature);
490
- var expectedAddress = ethOrderFactory.getProxyAddress(orderWithRealMaker.getOrderHash(chainId));
491
- return expectedAddress.equal(new _limitordersdk.Address(order.maker));
492
- } catch (e) {
493
- return false;
494
- }
482
+ return _limitordersdk.LimitOrder.isNativeOrder(chainId, ethOrderFactory, order, signature);
495
483
  }
496
484
  },
497
485
  {
@@ -508,18 +496,16 @@ var FusionOrder = /*#__PURE__*/ function() {
508
496
  * @see https://github.com/1inch/limit-order-settlement
509
497
  */ settlementExtension, orderInfo, details, extra) {
510
498
  var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
511
- makerAsset: _constants.CHAIN_TO_WRAPPER[chainId],
499
+ makerAsset: _limitordersdk.LimitOrder.CHAIN_TO_WRAPPER[chainId],
512
500
  receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
513
501
  });
514
- // create temp order to calc order hash
515
- var _order = FusionOrder.new(settlementExtension, _orderInfo, details, extra);
516
- var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
517
- maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
518
- });
519
- return new FusionOrder(settlementExtension, // use same salt to have same order hash. Remove extension hash from it
520
- _object_spread_props(_object_spread({}, finalOrderInfo), {
521
- salt: _order.salt >> 160n
522
- }), details.auction, details.whitelist, details.surplus, extra);
502
+ var _order = FusionOrder.new(settlementExtension, _orderInfo, details, _object_spread_props(_object_spread({}, extra), {
503
+ optimizeReceiverAddress: false
504
+ }));
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;
523
509
  }
524
510
  },
525
511
  {
@@ -551,10 +537,11 @@ var FusionOrder = /*#__PURE__*/ function() {
551
537
  allowPartialFills: makerTraits.isPartialFillAllowed(),
552
538
  enablePermit2: makerTraits.isPermit2(),
553
539
  nonce: makerTraits.nonceOrEpoch(),
554
- 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,
555
541
  unwrapWETH: makerTraits.isNativeUnwrapEnabled(),
556
542
  orderExpirationDelay: orderExpirationDelay,
557
- fees: extra === null || extra === void 0 ? void 0 : extra.fees
543
+ fees: extra === null || extra === void 0 ? void 0 : extra.fees,
544
+ optimizeReceiverAddress: true
558
545
  });
559
546
  (0, _assert.default)(providedSalt === fusionOrder.salt, 'invalid salt for passed extension');
560
547
  return fusionOrder;
@@ -568,5 +555,6 @@ _define_property(FusionOrder, "defaultExtra", {
568
555
  allowMultipleFills: true,
569
556
  unwrapWETH: false,
570
557
  enablePermit2: false,
571
- orderExpirationDelay: 12n
558
+ orderExpirationDelay: 12n,
559
+ optimizeReceiverAddress: true
572
560
  });
@@ -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';
@@ -129,10 +128,13 @@ export var FusionOrder = /*#__PURE__*/ function() {
129
128
  if (orderInfo.makerAsset.isNative()) {
130
129
  throw new Error('use FusionOrder.fromNative to create order from native asset');
131
130
  }
131
+ var optimizeReceiverAddress = extra.optimizeReceiverAddress !== undefined ? extra.optimizeReceiverAddress : FusionOrder.defaultExtra.optimizeReceiverAddress;
132
132
  this.inner = new LimitOrder(_object_spread_props(_object_spread({}, orderInfo), {
133
133
  receiver: receiver,
134
134
  salt: saltWithInjectedTrackCode
135
- }), makerTraits, builtExtension);
135
+ }), makerTraits, builtExtension, {
136
+ optimizeReceiverAddress: optimizeReceiverAddress
137
+ });
136
138
  this.fusionExtension = extension;
137
139
  }
138
140
  _create_class(FusionOrder, [
@@ -434,7 +436,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
434
436
  {
435
437
  key: "isNative",
436
438
  value: function isNative(chainId, ethOrderFactory, signature) {
437
- return FusionOrder.isNativeOrder(chainId, ethOrderFactory, this.build(), signature);
439
+ return this.inner.isNative(chainId, ethOrderFactory, signature);
438
440
  }
439
441
  },
440
442
  {
@@ -446,15 +448,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
446
448
  * @see FusionOrder.isNative
447
449
  * @see FusionOrder.fromNative
448
450
  */ function nativeSignature(maker) {
449
- return new LimitOrder({
450
- maker: maker,
451
- makerAsset: this.makerAsset,
452
- makingAmount: this.makingAmount,
453
- takingAmount: this.takingAmount,
454
- takerAsset: this.takerAsset,
455
- receiver: this.receiver,
456
- salt: this.salt
457
- }, this.inner.makerTraits).toCalldata();
451
+ return this.inner.nativeSignature(maker);
458
452
  }
459
453
  }
460
454
  ], [
@@ -470,13 +464,7 @@ export var FusionOrder = /*#__PURE__*/ function() {
470
464
  {
471
465
  key: "isNativeOrder",
472
466
  value: function isNativeOrder(chainId, ethOrderFactory, order, signature) {
473
- try {
474
- var orderWithRealMaker = LimitOrder.fromCalldata(signature);
475
- var expectedAddress = ethOrderFactory.getProxyAddress(orderWithRealMaker.getOrderHash(chainId));
476
- return expectedAddress.equal(new Address(order.maker));
477
- } catch (e) {
478
- return false;
479
- }
467
+ return LimitOrder.isNativeOrder(chainId, ethOrderFactory, order, signature);
480
468
  }
481
469
  },
482
470
  {
@@ -493,18 +481,16 @@ export var FusionOrder = /*#__PURE__*/ function() {
493
481
  * @see https://github.com/1inch/limit-order-settlement
494
482
  */ settlementExtension, orderInfo, details, extra) {
495
483
  var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
496
- makerAsset: CHAIN_TO_WRAPPER[chainId],
484
+ makerAsset: LimitOrder.CHAIN_TO_WRAPPER[chainId],
497
485
  receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
498
486
  });
499
- // create temp order to calc order hash
500
- var _order = FusionOrder.new(settlementExtension, _orderInfo, details, extra);
501
- var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
502
- maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
503
- });
504
- return new FusionOrder(settlementExtension, // use same salt to have same order hash. Remove extension hash from it
505
- _object_spread_props(_object_spread({}, finalOrderInfo), {
506
- salt: _order.salt >> 160n
507
- }), details.auction, details.whitelist, details.surplus, extra);
487
+ var _order = FusionOrder.new(settlementExtension, _orderInfo, details, _object_spread_props(_object_spread({}, extra), {
488
+ optimizeReceiverAddress: false
489
+ }));
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;
508
494
  }
509
495
  },
510
496
  {
@@ -539,7 +525,8 @@ export var FusionOrder = /*#__PURE__*/ function() {
539
525
  permit: extension.makerPermit === ZX ? undefined : Interaction.decode(extension.makerPermit).data,
540
526
  unwrapWETH: makerTraits.isNativeUnwrapEnabled(),
541
527
  orderExpirationDelay: orderExpirationDelay,
542
- fees: extra === null || extra === void 0 ? void 0 : extra.fees
528
+ fees: extra === null || extra === void 0 ? void 0 : extra.fees,
529
+ optimizeReceiverAddress: true
543
530
  });
544
531
  assert(providedSalt === fusionOrder.salt, 'invalid salt for passed extension');
545
532
  return fusionOrder;
@@ -553,5 +540,6 @@ _define_property(FusionOrder, "defaultExtra", {
553
540
  allowMultipleFills: true,
554
541
  unwrapWETH: false,
555
542
  enablePermit2: false,
556
- orderExpirationDelay: 12n
543
+ orderExpirationDelay: 12n,
544
+ optimizeReceiverAddress: true
557
545
  });
@@ -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';
@@ -8,4 +8,8 @@
8
8
  */ /**
9
9
  * Order will expire in `orderExpirationDelay` after auction ends
10
10
  * Default 12s
11
+ */ /**
12
+ * When enabled, orders where maker == receiver will have ZERO_ADDRESS set
13
+ * Used to save calldata costs
14
+ * By default: enabled
11
15
  */ export { };
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.8","type":"module"}
1
+ {"name":"@1inch/fusion-sdk","version":"2.3.10-rc.2","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;
@@ -12,6 +12,7 @@ export type Extra = {
12
12
  enablePermit2?: boolean;
13
13
  source?: string;
14
14
  fees?: Fees;
15
+ optimizeReceiverAddress?: boolean;
15
16
  };
16
17
  export type Details = {
17
18
  auction: AuctionDetails;
@@ -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';