@1inch/fusion-sdk 2.3.9-rc.5 → 2.3.9-rc.6
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.
- package/dist/cjs/api/quoter/quoter.request.spec.js +0 -15
- package/dist/cjs/fusion-order/fusion-order.js +5 -2
- package/dist/cjs/fusion-order/fusion-order.spec.js +33 -0
- package/dist/esm/api/quoter/quoter.request.spec.js +0 -15
- package/dist/esm/fusion-order/fusion-order.js +5 -2
- package/dist/esm/fusion-order/fusion-order.spec.js +33 -0
- package/dist/esm/package.json +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -5,21 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
var _limitordersdk = require("@1inch/limit-order-sdk");
|
|
6
6
|
var _quoterrequest = require("./quoter.request.js");
|
|
7
7
|
describe(__filename, function() {
|
|
8
|
-
it('should return error if native currency', function() {
|
|
9
|
-
expect(function() {
|
|
10
|
-
return _quoterrequest.QuoterRequest.new({
|
|
11
|
-
fromTokenAddress: _limitordersdk.Address.NATIVE_CURRENCY.toString(),
|
|
12
|
-
toTokenAddress: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
|
13
|
-
amount: '1000000000000000000000',
|
|
14
|
-
walletAddress: '0x00000000219ab540356cbb839cbe05303d7705fa',
|
|
15
|
-
integratorFee: {
|
|
16
|
-
share: _limitordersdk.Bps.fromPercent(50),
|
|
17
|
-
receiver: _limitordersdk.Address.fromBigInt(10n),
|
|
18
|
-
value: new _limitordersdk.Bps(1n)
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}).toThrow(/wrap native currency/);
|
|
22
|
-
});
|
|
23
8
|
it('returns error fromTokenAddress or toTokenAddress equals ZERO_ADDRESS', function() {
|
|
24
9
|
expect(function() {
|
|
25
10
|
return _quoterrequest.QuoterRequest.new({
|
|
@@ -509,14 +509,17 @@ var FusionOrder = /*#__PURE__*/ function() {
|
|
|
509
509
|
*/ settlementExtension, orderInfo, details, extra) {
|
|
510
510
|
var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
|
|
511
511
|
makerAsset: _constants.CHAIN_TO_WRAPPER[chainId],
|
|
512
|
-
receiver: orderInfo.receiver
|
|
512
|
+
receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
|
|
513
513
|
});
|
|
514
514
|
// create temp order to calc order hash
|
|
515
515
|
var _order = FusionOrder.new(settlementExtension, _orderInfo, details, extra);
|
|
516
516
|
var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
|
|
517
517
|
maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
|
|
518
518
|
});
|
|
519
|
-
return new FusionOrder(settlementExtension,
|
|
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);
|
|
520
523
|
}
|
|
521
524
|
},
|
|
522
525
|
{
|
|
@@ -333,6 +333,39 @@ describe('FusionOrder Native', function() {
|
|
|
333
333
|
expect(nativeOrder.isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
334
334
|
expect(_fusionorder.FusionOrder.fromDataAndExtension(nativeOrder.build(), nativeOrder.extension).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
335
335
|
});
|
|
336
|
+
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'));
|
|
338
|
+
var chainId = _constants.NetworkEnum.ETHEREUM;
|
|
339
|
+
var settlementExt = new _limitordersdk.Address('0x2ad5004c60e16e54d5007c80ce329adde5b51ef5');
|
|
340
|
+
var maker = new _limitordersdk.Address('0x962a836519109e162754161000d65d9dc027fa0f');
|
|
341
|
+
var nativeOrder = _fusionorder.FusionOrder.fromNative(chainId, ethOrderFactory, settlementExt, {
|
|
342
|
+
takerAsset: new _limitordersdk.Address('0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'),
|
|
343
|
+
makingAmount: 1000000000000000000n,
|
|
344
|
+
takingAmount: 1420000000n,
|
|
345
|
+
maker: maker
|
|
346
|
+
}, {
|
|
347
|
+
auction: new _index.AuctionDetails({
|
|
348
|
+
duration: 180n,
|
|
349
|
+
startTime: 1673548149n,
|
|
350
|
+
initialRateBump: 50000,
|
|
351
|
+
points: [
|
|
352
|
+
{
|
|
353
|
+
coefficient: 20000,
|
|
354
|
+
delay: 12
|
|
355
|
+
}
|
|
356
|
+
]
|
|
357
|
+
}),
|
|
358
|
+
whitelist: _index1.Whitelist.new(1673548139n, [
|
|
359
|
+
{
|
|
360
|
+
address: new _limitordersdk.Address('0x00000000219ab540356cbb839cbe05303d7705fa'),
|
|
361
|
+
allowFrom: 0n
|
|
362
|
+
}
|
|
363
|
+
]),
|
|
364
|
+
surplus: _surplusparams.SurplusParams.NO_FEE
|
|
365
|
+
});
|
|
366
|
+
expect(nativeOrder.isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
367
|
+
expect(_fusionorder.FusionOrder.fromDataAndExtension(nativeOrder.build(), _limitordersdk.Extension.decode(nativeOrder.extension.encode())).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
368
|
+
});
|
|
336
369
|
it('should correct detect that order is NOT from native asset', function() {
|
|
337
370
|
var ethOrderFactory = new _proxyfactory.ProxyFactory(_limitordersdk.Address.fromBigInt(1n), _limitordersdk.Address.fromBigInt(2n));
|
|
338
371
|
var chainId = _constants.NetworkEnum.ETHEREUM;
|
|
@@ -1,21 +1,6 @@
|
|
|
1
1
|
import { Address, Bps } from '@1inch/limit-order-sdk';
|
|
2
2
|
import { QuoterRequest } from './quoter.request.js';
|
|
3
3
|
describe(__filename, function() {
|
|
4
|
-
it('should return error if native currency', function() {
|
|
5
|
-
expect(function() {
|
|
6
|
-
return QuoterRequest.new({
|
|
7
|
-
fromTokenAddress: Address.NATIVE_CURRENCY.toString(),
|
|
8
|
-
toTokenAddress: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
|
9
|
-
amount: '1000000000000000000000',
|
|
10
|
-
walletAddress: '0x00000000219ab540356cbb839cbe05303d7705fa',
|
|
11
|
-
integratorFee: {
|
|
12
|
-
share: Bps.fromPercent(50),
|
|
13
|
-
receiver: Address.fromBigInt(10n),
|
|
14
|
-
value: new Bps(1n)
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
}).toThrow(/wrap native currency/);
|
|
18
|
-
});
|
|
19
4
|
it('returns error fromTokenAddress or toTokenAddress equals ZERO_ADDRESS', function() {
|
|
20
5
|
expect(function() {
|
|
21
6
|
return QuoterRequest.new({
|
|
@@ -494,14 +494,17 @@ export var FusionOrder = /*#__PURE__*/ function() {
|
|
|
494
494
|
*/ settlementExtension, orderInfo, details, extra) {
|
|
495
495
|
var _orderInfo = _object_spread_props(_object_spread({}, orderInfo), {
|
|
496
496
|
makerAsset: CHAIN_TO_WRAPPER[chainId],
|
|
497
|
-
receiver: orderInfo.receiver
|
|
497
|
+
receiver: orderInfo.receiver && !orderInfo.receiver.isZero() ? orderInfo.receiver : orderInfo.maker
|
|
498
498
|
});
|
|
499
499
|
// create temp order to calc order hash
|
|
500
500
|
var _order = FusionOrder.new(settlementExtension, _orderInfo, details, extra);
|
|
501
501
|
var finalOrderInfo = _object_spread_props(_object_spread({}, _orderInfo), {
|
|
502
502
|
maker: ethOrdersFactory.getProxyAddress(_order.getOrderHash(chainId))
|
|
503
503
|
});
|
|
504
|
-
return new FusionOrder(settlementExtension,
|
|
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);
|
|
505
508
|
}
|
|
506
509
|
},
|
|
507
510
|
{
|
|
@@ -329,6 +329,39 @@ describe('FusionOrder Native', function() {
|
|
|
329
329
|
expect(nativeOrder.isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
330
330
|
expect(FusionOrder.fromDataAndExtension(nativeOrder.build(), nativeOrder.extension).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
331
331
|
});
|
|
332
|
+
it('should correct detect that order is from native asset (no salt)', function() {
|
|
333
|
+
var ethOrderFactory = new ProxyFactory(new Address('0x62c650084e97a0fba2ecf365cc6d8a7722425363'), new Address('0xe8773a43fce4eedb18d0edbaf319059e1ae786af'));
|
|
334
|
+
var chainId = NetworkEnum.ETHEREUM;
|
|
335
|
+
var settlementExt = new Address('0x2ad5004c60e16e54d5007c80ce329adde5b51ef5');
|
|
336
|
+
var maker = new Address('0x962a836519109e162754161000d65d9dc027fa0f');
|
|
337
|
+
var nativeOrder = FusionOrder.fromNative(chainId, ethOrderFactory, settlementExt, {
|
|
338
|
+
takerAsset: new Address('0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'),
|
|
339
|
+
makingAmount: 1000000000000000000n,
|
|
340
|
+
takingAmount: 1420000000n,
|
|
341
|
+
maker: maker
|
|
342
|
+
}, {
|
|
343
|
+
auction: new AuctionDetails({
|
|
344
|
+
duration: 180n,
|
|
345
|
+
startTime: 1673548149n,
|
|
346
|
+
initialRateBump: 50000,
|
|
347
|
+
points: [
|
|
348
|
+
{
|
|
349
|
+
coefficient: 20000,
|
|
350
|
+
delay: 12
|
|
351
|
+
}
|
|
352
|
+
]
|
|
353
|
+
}),
|
|
354
|
+
whitelist: Whitelist.new(1673548139n, [
|
|
355
|
+
{
|
|
356
|
+
address: new Address('0x00000000219ab540356cbb839cbe05303d7705fa'),
|
|
357
|
+
allowFrom: 0n
|
|
358
|
+
}
|
|
359
|
+
]),
|
|
360
|
+
surplus: SurplusParams.NO_FEE
|
|
361
|
+
});
|
|
362
|
+
expect(nativeOrder.isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
363
|
+
expect(FusionOrder.fromDataAndExtension(nativeOrder.build(), Extension.decode(nativeOrder.extension.encode())).isNative(chainId, ethOrderFactory, nativeOrder.nativeSignature(maker))).toEqual(true);
|
|
364
|
+
});
|
|
332
365
|
it('should correct detect that order is NOT from native asset', function() {
|
|
333
366
|
var ethOrderFactory = new ProxyFactory(Address.fromBigInt(1n), Address.fromBigInt(2n));
|
|
334
367
|
var chainId = NetworkEnum.ETHEREUM;
|
package/dist/esm/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@1inch/fusion-sdk","version":"2.3.9-rc.
|
|
1
|
+
{"name":"@1inch/fusion-sdk","version":"2.3.9-rc.6","type":"module"}
|