@1inch/fusion-sdk 2.1.11-rc.1 → 2.1.11-rc.3
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/README.md +2 -0
- package/dist/cjs/api/orders/orders.api.js +3 -4
- package/dist/cjs/api/orders/orders.api.js.map +1 -1
- package/dist/cjs/api/orders/orders.request.js.map +1 -1
- package/dist/cjs/api/orders/types.js +1 -1
- package/dist/cjs/api/orders/types.js.map +1 -1
- package/dist/cjs/api/pagination.js.map +1 -1
- package/dist/cjs/api/params.js +5 -8
- package/dist/cjs/api/params.js.map +1 -1
- package/dist/cjs/api/quoter/quote/order-params.js.map +1 -1
- package/dist/cjs/api/quoter/quote/quote.js +39 -27
- package/dist/cjs/api/quoter/quote/quote.js.map +1 -1
- package/dist/cjs/api/quoter/quoter-custom-preset.request.js +1 -1
- package/dist/cjs/api/quoter/quoter-custom-preset.request.js.map +1 -1
- package/dist/cjs/api/quoter/quoter.api.js.map +1 -1
- package/dist/cjs/api/quoter/quoter.request.js +3 -6
- package/dist/cjs/api/quoter/quoter.request.js.map +1 -1
- package/dist/cjs/api/quoter/types.js +1 -1
- package/dist/cjs/api/quoter/types.js.map +1 -1
- package/dist/cjs/{amount-calculator/auction-calculator → auction-calculator}/auction-calculator.js +10 -14
- package/dist/cjs/auction-calculator/auction-calculator.js.map +1 -0
- package/dist/cjs/auction-calculator/constants.js +5 -0
- package/dist/cjs/auction-calculator/constants.js.map +1 -0
- package/dist/cjs/{amount-calculator/auction-calculator → auction-calculator}/index.js +1 -0
- package/dist/cjs/auction-calculator/index.js.map +1 -0
- package/dist/cjs/auction-calculator/utils.js +17 -0
- package/dist/cjs/auction-calculator/utils.js.map +1 -0
- package/dist/cjs/connector/http/axios-provider.connector.js.map +1 -1
- package/dist/cjs/connector/ws/websocket-client.connector.js.map +1 -1
- package/dist/cjs/constants.js +3 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/fusion-order/auction-details/auction-details.js +10 -18
- package/dist/cjs/fusion-order/auction-details/auction-details.js.map +1 -1
- package/dist/cjs/fusion-order/cancellation-auction.js +20 -0
- package/dist/cjs/fusion-order/cancellation-auction.js.map +1 -0
- package/dist/cjs/fusion-order/constants.js +3 -1
- package/dist/cjs/fusion-order/constants.js.map +1 -1
- package/dist/cjs/fusion-order/fusion-extension.js +18 -137
- package/dist/cjs/fusion-order/fusion-extension.js.map +1 -1
- package/dist/cjs/fusion-order/fusion-order.js +64 -53
- package/dist/cjs/fusion-order/fusion-order.js.map +1 -1
- package/dist/cjs/fusion-order/index.js +3 -4
- package/dist/cjs/fusion-order/index.js.map +1 -1
- package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js +6 -0
- package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js.map +1 -0
- package/dist/cjs/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +153 -0
- package/dist/cjs/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -0
- package/dist/cjs/fusion-order/settlement-post-interaction-data/types.js.map +1 -0
- package/dist/cjs/fusion-order/source-track.js +2 -1
- package/dist/cjs/fusion-order/source-track.js.map +1 -1
- package/dist/cjs/{utils → fusion-order}/types.js.map +1 -1
- package/dist/cjs/index.js +5 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/sdk/encoders/cancel-order.encoder.js +2 -1
- package/dist/cjs/sdk/encoders/cancel-order.encoder.js.map +1 -1
- package/dist/cjs/sdk/sdk.js +34 -25
- package/dist/cjs/sdk/sdk.js.map +1 -1
- package/dist/cjs/sdk/utils.js +3 -2
- package/dist/cjs/sdk/utils.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/cjs/utils/amounts.js +3 -2
- package/dist/cjs/utils/amounts.js.map +1 -1
- package/dist/cjs/utils/time.js +2 -1
- package/dist/cjs/utils/time.js.map +1 -1
- package/dist/cjs/utils.js +3 -2
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/validations.js +6 -5
- package/dist/cjs/validations.js.map +1 -1
- package/dist/cjs/ws-api/active-websocket-orders-api.js.map +1 -1
- package/dist/cjs/ws-api/rpc-websocket-api.js.map +1 -1
- package/dist/cjs/ws-api/url.js +2 -1
- package/dist/cjs/ws-api/url.js.map +1 -1
- package/dist/cjs/ws-api/ws-api.js.map +1 -1
- package/dist/esm/api/orders/orders.api.js +3 -4
- package/dist/esm/api/orders/orders.api.js.map +1 -1
- package/dist/esm/api/orders/orders.request.js.map +1 -1
- package/dist/esm/api/pagination.js.map +1 -1
- package/dist/esm/api/params.js +3 -7
- package/dist/esm/api/params.js.map +1 -1
- package/dist/esm/api/quoter/quote/order-params.js.map +1 -1
- package/dist/esm/api/quoter/quote/quote.js +40 -29
- package/dist/esm/api/quoter/quote/quote.js.map +1 -1
- package/dist/esm/api/quoter/quoter-custom-preset.request.js +1 -1
- package/dist/esm/api/quoter/quoter-custom-preset.request.js.map +1 -1
- package/dist/esm/api/quoter/quoter.api.js.map +1 -1
- package/dist/esm/api/quoter/quoter.request.js +3 -6
- package/dist/esm/api/quoter/quoter.request.js.map +1 -1
- package/dist/esm/api/quoter/types.js.map +1 -1
- package/dist/esm/{amount-calculator/auction-calculator → auction-calculator}/auction-calculator.js +10 -14
- package/dist/esm/auction-calculator/auction-calculator.js.map +1 -0
- package/dist/esm/auction-calculator/constants.js +2 -0
- package/dist/esm/auction-calculator/constants.js.map +1 -0
- package/dist/esm/auction-calculator/index.js +3 -0
- package/dist/esm/auction-calculator/index.js.map +1 -0
- package/dist/esm/auction-calculator/utils.js +13 -0
- package/dist/esm/auction-calculator/utils.js.map +1 -0
- package/dist/esm/connector/http/axios-provider.connector.js.map +1 -1
- package/dist/esm/connector/ws/websocket-client.connector.js.map +1 -1
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/fusion-order/auction-details/auction-details.js +11 -19
- package/dist/esm/fusion-order/auction-details/auction-details.js.map +1 -1
- package/dist/esm/fusion-order/cancellation-auction.js +15 -0
- package/dist/esm/fusion-order/cancellation-auction.js.map +1 -0
- package/dist/esm/fusion-order/constants.js +3 -1
- package/dist/esm/fusion-order/constants.js.map +1 -1
- package/dist/esm/fusion-order/fusion-extension.js +19 -138
- package/dist/esm/fusion-order/fusion-extension.js.map +1 -1
- package/dist/esm/fusion-order/fusion-order.js +64 -53
- package/dist/esm/fusion-order/fusion-order.js.map +1 -1
- package/dist/esm/fusion-order/index.js +2 -2
- package/dist/esm/fusion-order/index.js.map +1 -1
- package/dist/esm/fusion-order/settlement-post-interaction-data/index.js +3 -0
- package/dist/esm/fusion-order/settlement-post-interaction-data/index.js.map +1 -0
- package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +148 -0
- package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -0
- package/dist/esm/fusion-order/settlement-post-interaction-data/types.js.map +1 -0
- package/dist/esm/fusion-order/source-track.js.map +1 -1
- package/dist/esm/{utils → fusion-order}/types.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/sdk/sdk.js +34 -25
- package/dist/esm/sdk/sdk.js.map +1 -1
- package/dist/esm/sdk/utils.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/validations.js +1 -1
- package/dist/esm/validations.js.map +1 -1
- package/dist/esm/ws-api/active-websocket-orders-api.js.map +1 -1
- package/dist/esm/ws-api/rpc-websocket-api.js.map +1 -1
- package/dist/esm/ws-api/url.js.map +1 -1
- package/dist/esm/ws-api/ws-api.js.map +1 -1
- package/dist/types/src/api/orders/types.d.ts +0 -1
- package/dist/types/src/api/params.d.ts +1 -1
- package/dist/types/src/api/quoter/quote/quote.d.ts +6 -4
- package/dist/types/src/api/quoter/quote/types.d.ts +2 -11
- package/dist/types/src/api/quoter/quoter.request.d.ts +3 -4
- package/dist/types/src/api/quoter/types.d.ts +4 -11
- package/dist/types/src/{amount-calculator/auction-calculator → auction-calculator}/auction-calculator.d.ts +5 -5
- package/dist/types/src/auction-calculator/constants.d.ts +1 -0
- package/dist/types/src/{amount-calculator/auction-calculator → auction-calculator}/index.d.ts +1 -0
- package/dist/types/src/auction-calculator/utils.d.ts +5 -0
- package/dist/types/src/constants.d.ts +3 -1
- package/dist/types/src/fusion-order/auction-details/auction-details.d.ts +0 -3
- package/dist/types/src/fusion-order/cancellation-auction.d.ts +7 -0
- package/dist/types/src/fusion-order/constants.d.ts +2 -0
- package/dist/types/src/fusion-order/fusion-extension.d.ts +6 -18
- package/dist/types/src/fusion-order/fusion-order.d.ts +15 -39
- package/dist/types/src/fusion-order/index.d.ts +2 -2
- package/dist/types/src/fusion-order/settlement-post-interaction-data/index.d.ts +2 -0
- package/dist/types/src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.d.ts +22 -0
- package/dist/types/src/fusion-order/settlement-post-interaction-data/types.d.ts +16 -0
- package/dist/types/src/fusion-order/types.d.ts +22 -0
- package/dist/types/src/index.d.ts +2 -2
- package/dist/types/src/sdk/sdk.d.ts +3 -0
- package/dist/types/src/sdk/types.d.ts +9 -4
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +22 -23
- package/dist/cjs/amount-calculator/amount-calculator.js +0 -66
- package/dist/cjs/amount-calculator/amount-calculator.js.map +0 -1
- package/dist/cjs/amount-calculator/auction-calculator/auction-calculator.js.map +0 -1
- package/dist/cjs/amount-calculator/auction-calculator/index.js.map +0 -1
- package/dist/cjs/amount-calculator/index.js +0 -10
- package/dist/cjs/amount-calculator/index.js.map +0 -1
- package/dist/cjs/api/version.js +0 -5
- package/dist/cjs/api/version.js.map +0 -1
- package/dist/cjs/fusion-order/whitelist/index.js +0 -5
- package/dist/cjs/fusion-order/whitelist/index.js.map +0 -1
- package/dist/cjs/fusion-order/whitelist/types.js.map +0 -1
- package/dist/cjs/fusion-order/whitelist/whitelist.js +0 -121
- package/dist/cjs/fusion-order/whitelist/whitelist.js.map +0 -1
- package/dist/esm/amount-calculator/amount-calculator.js +0 -62
- package/dist/esm/amount-calculator/amount-calculator.js.map +0 -1
- package/dist/esm/amount-calculator/auction-calculator/auction-calculator.js.map +0 -1
- package/dist/esm/amount-calculator/auction-calculator/index.js +0 -2
- package/dist/esm/amount-calculator/auction-calculator/index.js.map +0 -1
- package/dist/esm/amount-calculator/index.js +0 -4
- package/dist/esm/amount-calculator/index.js.map +0 -1
- package/dist/esm/api/version.js +0 -2
- package/dist/esm/api/version.js.map +0 -1
- package/dist/esm/fusion-order/whitelist/index.js +0 -2
- package/dist/esm/fusion-order/whitelist/index.js.map +0 -1
- package/dist/esm/fusion-order/whitelist/types.js.map +0 -1
- package/dist/esm/fusion-order/whitelist/whitelist.js +0 -116
- package/dist/esm/fusion-order/whitelist/whitelist.js.map +0 -1
- package/dist/types/src/amount-calculator/amount-calculator.d.ts +0 -21
- package/dist/types/src/amount-calculator/index.d.ts +0 -3
- package/dist/types/src/api/version.d.ts +0 -1
- package/dist/types/src/fusion-order/whitelist/index.d.ts +0 -1
- package/dist/types/src/fusion-order/whitelist/types.d.ts +0 -4
- package/dist/types/src/fusion-order/whitelist/whitelist.d.ts +0 -26
- package/dist/types/src/utils/types.d.ts +0 -3
- /package/dist/cjs/fusion-order/{whitelist → settlement-post-interaction-data}/types.js +0 -0
- /package/dist/cjs/{utils → fusion-order}/types.js +0 -0
- /package/dist/esm/fusion-order/{whitelist → settlement-post-interaction-data}/types.js +0 -0
- /package/dist/esm/{utils → fusion-order}/types.js +0 -0
|
@@ -24,56 +24,48 @@ class AuctionDetails {
|
|
|
24
24
|
(0, assert_1.default)(this.duration <= constants_1.UINT_24_MAX);
|
|
25
25
|
(0, assert_1.default)(this.initialRateBump <= constants_1.UINT_24_MAX);
|
|
26
26
|
}
|
|
27
|
-
static
|
|
27
|
+
static decode(data) {
|
|
28
|
+
(0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Invalid auction details data');
|
|
29
|
+
const iter = byte_utils_1.BytesIter.BigInt(data);
|
|
28
30
|
const gasBumpEstimate = iter.nextUint24();
|
|
29
31
|
const gasPriceEstimate = iter.nextUint32();
|
|
30
32
|
const start = iter.nextUint32();
|
|
31
33
|
const duration = iter.nextUint24();
|
|
32
34
|
const rateBump = Number(iter.nextUint24());
|
|
33
35
|
const points = [];
|
|
34
|
-
|
|
35
|
-
while (pointsLen--) {
|
|
36
|
+
while (!iter.isEmpty()) {
|
|
36
37
|
points.push({
|
|
37
38
|
coefficient: Number(iter.nextUint24()),
|
|
38
39
|
delay: Number(iter.nextUint16())
|
|
39
40
|
});
|
|
40
41
|
}
|
|
41
42
|
return new AuctionDetails({
|
|
42
|
-
startTime:
|
|
43
|
-
duration:
|
|
43
|
+
startTime: start,
|
|
44
|
+
duration: duration,
|
|
44
45
|
initialRateBump: rateBump,
|
|
45
46
|
points,
|
|
46
47
|
gasCost: {
|
|
47
|
-
gasBumpEstimate
|
|
48
|
-
gasPriceEstimate
|
|
48
|
+
gasBumpEstimate,
|
|
49
|
+
gasPriceEstimate
|
|
49
50
|
}
|
|
50
51
|
});
|
|
51
52
|
}
|
|
52
|
-
static decode(data) {
|
|
53
|
-
(0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Invalid auction details data');
|
|
54
|
-
const iter = byte_utils_1.BytesIter.BigInt(data);
|
|
55
|
-
return AuctionDetails.decodeFrom(iter);
|
|
56
|
-
}
|
|
57
53
|
static fromExtension(extension) {
|
|
58
54
|
return AuctionDetails.decode((0, utils_1.add0x)(extension.makingAmountData.slice(42)));
|
|
59
55
|
}
|
|
60
56
|
encode() {
|
|
61
|
-
let details = ethers_1.ethers.solidityPacked(['uint24', 'uint32', 'uint32', 'uint24', 'uint24'
|
|
57
|
+
let details = ethers_1.ethers.solidityPacked(['uint24', 'uint32', 'uint32', 'uint24', 'uint24'], [
|
|
62
58
|
this.gasCost.gasBumpEstimate,
|
|
63
59
|
this.gasCost.gasPriceEstimate,
|
|
64
60
|
this.startTime,
|
|
65
61
|
this.duration,
|
|
66
|
-
this.initialRateBump
|
|
67
|
-
this.points.length
|
|
62
|
+
this.initialRateBump
|
|
68
63
|
]);
|
|
69
64
|
for (let i = 0; i < this.points.length; i++) {
|
|
70
65
|
details += (0, utils_1.trim0x)(ethers_1.ethers.solidityPacked(['uint24', 'uint16'], [this.points[i].coefficient, this.points[i].delay]));
|
|
71
66
|
}
|
|
72
67
|
return details;
|
|
73
68
|
}
|
|
74
|
-
encodeInto(builder = new byte_utils_1.BytesBuilder()) {
|
|
75
|
-
return builder.addBytes(this.encode());
|
|
76
|
-
}
|
|
77
69
|
}
|
|
78
70
|
exports.AuctionDetails = AuctionDetails;
|
|
79
71
|
//# sourceMappingURL=auction-details.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auction-details.js","sourceRoot":"","sources":["../../../../src/fusion-order/auction-details/auction-details.ts"],"names":[],"mappings":";;;;AAAA,mCAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"auction-details.js","sourceRoot":"","sources":["../../../../src/fusion-order/auction-details/auction-details.ts"],"names":[],"mappings":";;;;AAAA,mCAA6B;AAC7B,kDAA2C;AAE3C,4DAA2B;AAE3B,mDAA4C;AAC5C,uCAAyC;AACzC,+CAAwD;AAExD,MAAa,cAAc;IAoBvB,YAAY,OAcX;QACG,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAC1C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QACtD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAChC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI;YAC9B,eAAe,EAAE,EAAE;YACnB,gBAAgB,EAAE,EAAE;SACvB,CAAA;QAED,IAAA,gBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,uBAAW,CAAC,CAAA;QACnD,IAAA,gBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,uBAAW,CAAC,CAAA;QACpD,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,IAAI,uBAAW,CAAC,CAAA;QACrC,IAAA,gBAAM,EAAC,IAAI,CAAC,QAAQ,IAAI,uBAAW,CAAC,CAAA;QACpC,IAAA,gBAAM,EAAC,IAAI,CAAC,eAAe,IAAI,uBAAW,CAAC,CAAA;IAC/C,CAAC;IAiBD,MAAM,CAAC,MAAM,CAAC,IAAY;QACtB,IAAA,gBAAM,EAAC,IAAA,wBAAU,EAAC,IAAI,CAAC,EAAE,8BAA8B,CAAC,CAAA;QACxD,MAAM,IAAI,GAAG,sBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEnC,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QAC1C,MAAM,MAAM,GAAG,EAAoB,CAAA;QAEnC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,CAAC,IAAI,CAAC;gBACR,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;aACnC,CAAC,CAAA;SACL;QAED,OAAO,IAAI,cAAc,CAAC;YACtB,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,QAAQ;YAClB,eAAe,EAAE,QAAQ;YACzB,MAAM;YACN,OAAO,EAAE;gBACL,eAAe;gBACf,gBAAgB;aACnB;SACJ,CAAC,CAAA;IACN,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAAoB;QACrC,OAAO,cAAc,CAAC,MAAM,CACxB,IAAA,aAAK,EAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAC9C,CAAA;IACL,CAAC;IAKM,MAAM;QACT,IAAI,OAAO,GAAG,eAAM,CAAC,cAAc,CAC/B,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAClD;YACI,IAAI,CAAC,OAAO,CAAC,eAAe;YAC5B,IAAI,CAAC,OAAO,CAAC,gBAAgB;YAC7B,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,eAAe;SACvB,CACJ,CAAA;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,OAAO,IAAI,IAAA,cAAM,EACb,eAAM,CAAC,cAAc,CACjB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACpB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CACrD,CACJ,CAAA;SACJ;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;CACJ;AAhID,wCAgIC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CancellationAuction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const byte_utils_1 = require("@1inch/byte-utils");
|
|
6
|
+
const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
7
|
+
class CancellationAuction {
|
|
8
|
+
constructor(duration, maxRewardBps) {
|
|
9
|
+
this.duration = duration;
|
|
10
|
+
this.maxRewardBps = maxRewardBps;
|
|
11
|
+
(0, assert_1.default)(duration <= byte_utils_1.UINT_32_MAX, 'max cancellation auction duration must be <= UINT_32_MAX');
|
|
12
|
+
(0, assert_1.default)(maxRewardBps <= byte_utils_1.UINT_16_MAX, 'max cancellation auction maxRewardBps must be <= UINT_16_MAX');
|
|
13
|
+
}
|
|
14
|
+
build() {
|
|
15
|
+
return (this.duration << 16n) | this.maxRewardBps;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.CancellationAuction = CancellationAuction;
|
|
19
|
+
CancellationAuction.ZERO = new CancellationAuction(0n, 0n);
|
|
20
|
+
//# sourceMappingURL=cancellation-auction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cancellation-auction.js","sourceRoot":"","sources":["../../../src/fusion-order/cancellation-auction.ts"],"names":[],"mappings":";;;;AAAA,kDAA0D;AAC1D,4DAA2B;AAE3B,MAAa,mBAAmB;IAG5B,YACoB,QAAgB,EAYhB,YAAoB;QAZpB,aAAQ,GAAR,QAAQ,CAAQ;QAYhB,iBAAY,GAAZ,YAAY,CAAQ;QAEpC,IAAA,gBAAM,EACF,QAAQ,IAAI,wBAAW,EACvB,0DAA0D,CAC7D,CAAA;QAED,IAAA,gBAAM,EACF,YAAY,IAAI,wBAAW,EAC3B,8DAA8D,CACjE,CAAA;IACL,CAAC;IAEM,KAAK;QACR,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAA;IACrD,CAAC;;AA/BL,kDAgCC;AA/BU,wBAAI,GAAG,IAAI,mBAAmB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA"}
|
|
@@ -14,6 +14,8 @@ exports.CHAIN_TO_WRAPPER = {
|
|
|
14
14
|
[constants_1.NetworkEnum.OPTIMISM]: new limit_order_sdk_1.Address('0x4200000000000000000000000000000000000006'),
|
|
15
15
|
[constants_1.NetworkEnum.FANTOM]: new limit_order_sdk_1.Address('0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83'),
|
|
16
16
|
[constants_1.NetworkEnum.ZKSYNC]: new limit_order_sdk_1.Address('0x5aea5775959fbc2557cc8789bc1bf90a239d9a91'),
|
|
17
|
-
[constants_1.NetworkEnum.LINEA]: new limit_order_sdk_1.Address('0xe5d7c2a44ffddf6b295a15c148167daaaf5cf34f')
|
|
17
|
+
[constants_1.NetworkEnum.LINEA]: new limit_order_sdk_1.Address('0xe5d7c2a44ffddf6b295a15c148167daaaf5cf34f'),
|
|
18
|
+
[constants_1.NetworkEnum.SONIC]: new limit_order_sdk_1.Address('0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38'),
|
|
19
|
+
[constants_1.NetworkEnum.UNICHAIN]: new limit_order_sdk_1.Address('0x4200000000000000000000000000000000000006')
|
|
18
20
|
};
|
|
19
21
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/fusion-order/constants.ts"],"names":[],"mappings":";;;AAAA,4DAA8C;AAC9C,4CAAwC;AAE3B,QAAA,gBAAgB,GAAG;IAC5B,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,OAAO,CAAC,EAAE,IAAI,yBAAO,CAC9B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,OAAO,CAAC,EAAE,IAAI,yBAAO,CAC9B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,SAAS,CAAC,EAAE,IAAI,yBAAO,CAChC,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,KAAK,CAAC,EAAE,IAAI,yBAAO,CAC5B,4CAA4C,CAC/C;CACJ,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/fusion-order/constants.ts"],"names":[],"mappings":";;;AAAA,4DAA8C;AAC9C,4CAAwC;AAE3B,QAAA,gBAAgB,GAAG;IAC5B,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,OAAO,CAAC,EAAE,IAAI,yBAAO,CAC9B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,OAAO,CAAC,EAAE,IAAI,yBAAO,CAC9B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,SAAS,CAAC,EAAE,IAAI,yBAAO,CAChC,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,MAAM,CAAC,EAAE,IAAI,yBAAO,CAC7B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,KAAK,CAAC,EAAE,IAAI,yBAAO,CAC5B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,KAAK,CAAC,EAAE,IAAI,yBAAO,CAC5B,4CAA4C,CAC/C;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE,IAAI,yBAAO,CAC/B,4CAA4C,CAC/C;CACJ,CAAA"}
|
|
@@ -3,17 +3,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FusionExtension = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
6
|
-
const byte_utils_1 = require("@1inch/byte-utils");
|
|
7
6
|
const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
8
7
|
const auction_details_1 = require("./auction-details");
|
|
9
|
-
const
|
|
10
|
-
const utils_1 = require("../utils");
|
|
8
|
+
const settlement_post_interaction_data_1 = require("./settlement-post-interaction-data");
|
|
11
9
|
class FusionExtension {
|
|
12
|
-
constructor(address, auctionDetails,
|
|
10
|
+
constructor(address, auctionDetails, postInteractionData, makerPermit) {
|
|
13
11
|
this.address = address;
|
|
14
12
|
this.auctionDetails = auctionDetails;
|
|
15
|
-
this.
|
|
16
|
-
this.
|
|
13
|
+
this.postInteractionData = postInteractionData;
|
|
14
|
+
this.makerPermit = makerPermit;
|
|
15
|
+
this.builder = new limit_order_sdk_1.ExtensionBuilder();
|
|
16
|
+
const detailsBytes = this.auctionDetails.encode();
|
|
17
|
+
this.builder
|
|
18
|
+
.withMakingAmountData(this.address, detailsBytes)
|
|
19
|
+
.withTakingAmountData(this.address, detailsBytes)
|
|
20
|
+
.withPostInteraction(new limit_order_sdk_1.Interaction(this.address, this.postInteractionData.encode()));
|
|
21
|
+
if (makerPermit) {
|
|
22
|
+
this.builder.withMakerPermit(makerPermit.target, makerPermit.data);
|
|
23
|
+
}
|
|
17
24
|
}
|
|
18
25
|
static decode(bytes) {
|
|
19
26
|
const extension = limit_order_sdk_1.Extension.decode(bytes);
|
|
@@ -23,142 +30,16 @@ class FusionExtension {
|
|
|
23
30
|
const settlementContract = limit_order_sdk_1.Address.fromFirstBytes(extension.makingAmountData);
|
|
24
31
|
(0, assert_1.default)(limit_order_sdk_1.Address.fromFirstBytes(extension.takingAmountData).equal(settlementContract) &&
|
|
25
32
|
limit_order_sdk_1.Address.fromFirstBytes(extension.postInteraction).equal(settlementContract), 'Invalid extension, all calls should be to the same address');
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
const flags = byte_utils_1.BN.fromHex(interactionBytes.nextUint8());
|
|
30
|
-
const integratorFeeRecipient = new limit_order_sdk_1.Address(interactionBytes.nextUint160());
|
|
31
|
-
const protocolFeeRecipient = new limit_order_sdk_1.Address(interactionBytes.nextUint160());
|
|
32
|
-
const customReceiver = flags.getBit(FusionExtension.CUSTOM_RECEIVER_FLAG_BIT)
|
|
33
|
-
? new limit_order_sdk_1.Address(interactionBytes.nextUint160())
|
|
34
|
-
: undefined;
|
|
35
|
-
const interactionData = parseAmountData(interactionBytes);
|
|
36
|
-
const whitelist = whitelist_1.Whitelist.decodeFrom(interactionBytes);
|
|
37
|
-
const amountBytes = byte_utils_1.BytesIter.HexString(extension.makingAmountData);
|
|
38
|
-
amountBytes.nextUint160();
|
|
39
|
-
const auctionDetails = auction_details_1.AuctionDetails.decodeFrom(amountBytes);
|
|
40
|
-
const amountData = parseAmountData(amountBytes);
|
|
41
|
-
const whitelistAddressLength = Number(amountBytes.nextUint8());
|
|
42
|
-
(0, assert_1.default)(whitelist.length === whitelistAddressLength, 'whitelist addresses must be same in interaction data and in amount data');
|
|
43
|
-
const whitelistAddressesFromAmount = [];
|
|
44
|
-
for (let i = 0; i < whitelistAddressLength; i++) {
|
|
45
|
-
whitelistAddressesFromAmount.push(BigInt(amountBytes.nextBytes(10)).toString(16).padStart(20, '0'));
|
|
46
|
-
}
|
|
47
|
-
const makerPermit = extension.hasMakerPermit
|
|
33
|
+
const auctionDetails = auction_details_1.AuctionDetails.fromExtension(extension);
|
|
34
|
+
const postInteractionData = settlement_post_interaction_data_1.SettlementPostInteractionData.fromExtension(extension);
|
|
35
|
+
const permit = extension.hasMakerPermit
|
|
48
36
|
? limit_order_sdk_1.Interaction.decode(extension.makerPermit)
|
|
49
37
|
: undefined;
|
|
50
|
-
(
|
|
51
|
-
interactionData.fees.integratorFee.value, `invalid extension: integrator fee must be same in interaction data and in amount data`);
|
|
52
|
-
(0, assert_1.default)(amountData.fees.resolverFee.value ===
|
|
53
|
-
interactionData.fees.resolverFee.value, `invalid extension: resolver fee must be same in interaction data and in amount data`);
|
|
54
|
-
(0, assert_1.default)(amountData.fees.whitelistDiscount.equal(interactionData.fees.whitelistDiscount), `invalid extension: whitelistDiscount must be same in interaction data and in amount data`);
|
|
55
|
-
(0, assert_1.default)(amountData.fees.integratorShare.value ===
|
|
56
|
-
interactionData.fees.integratorShare.value, `invalid extension: integrator share must be same in interaction data and in amount data`);
|
|
57
|
-
(0, assert_1.default)(whitelist.whitelist.every(({ addressHalf }, i) => whitelistAddressesFromAmount[i] === addressHalf), 'whitelist addresses must be same in interaction data and in amount data');
|
|
58
|
-
const hasFees = !integratorFeeRecipient.isZero() || !protocolFeeRecipient.isZero();
|
|
59
|
-
if (!hasFees) {
|
|
60
|
-
return new FusionExtension(settlementContract, auctionDetails, whitelist, {
|
|
61
|
-
makerPermit,
|
|
62
|
-
customReceiver,
|
|
63
|
-
fees: undefined
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
const fees = new limit_order_sdk_1.FeeTakerExt.Fees(interactionData.fees.resolverFee.isZero()
|
|
67
|
-
? limit_order_sdk_1.FeeTakerExt.ResolverFee.ZERO
|
|
68
|
-
: new limit_order_sdk_1.FeeTakerExt.ResolverFee(protocolFeeRecipient, interactionData.fees.resolverFee, interactionData.fees.whitelistDiscount), interactionData.fees.integratorFee.isZero()
|
|
69
|
-
? limit_order_sdk_1.FeeTakerExt.IntegratorFee.ZERO
|
|
70
|
-
: new limit_order_sdk_1.FeeTakerExt.IntegratorFee(integratorFeeRecipient, protocolFeeRecipient, interactionData.fees.integratorFee, interactionData.fees.integratorShare));
|
|
71
|
-
return new FusionExtension(settlementContract, auctionDetails, whitelist, {
|
|
72
|
-
makerPermit,
|
|
73
|
-
fees,
|
|
74
|
-
customReceiver
|
|
75
|
-
});
|
|
38
|
+
return new FusionExtension(settlementContract, auctionDetails, postInteractionData, permit);
|
|
76
39
|
}
|
|
77
40
|
build() {
|
|
78
|
-
|
|
79
|
-
const builder = new limit_order_sdk_1.ExtensionBuilder()
|
|
80
|
-
.withMakingAmountData(this.address, amountData)
|
|
81
|
-
.withTakingAmountData(this.address, amountData)
|
|
82
|
-
.withPostInteraction(new limit_order_sdk_1.Interaction(this.address, this.buildInteractionData()));
|
|
83
|
-
if (this.extra?.makerPermit) {
|
|
84
|
-
builder.withMakerPermit(this.extra?.makerPermit.target, this.extra?.makerPermit.data);
|
|
85
|
-
}
|
|
86
|
-
return builder.build();
|
|
87
|
-
}
|
|
88
|
-
buildInteractionData() {
|
|
89
|
-
const customReceiver = this.extra?.customReceiver || limit_order_sdk_1.Address.ZERO_ADDRESS;
|
|
90
|
-
const flags = new byte_utils_1.BN(0n).setBit(FusionExtension.CUSTOM_RECEIVER_FLAG_BIT, Boolean(!customReceiver.isZero()));
|
|
91
|
-
const integratorReceiver = this.extra?.fees?.integrator.integrator || limit_order_sdk_1.Address.ZERO_ADDRESS;
|
|
92
|
-
const protocolReceiver = this.extra?.fees?.protocol || limit_order_sdk_1.Address.ZERO_ADDRESS;
|
|
93
|
-
const builder = new byte_utils_1.BytesBuilder()
|
|
94
|
-
.addUint8(flags)
|
|
95
|
-
.addAddress(integratorReceiver.toString())
|
|
96
|
-
.addAddress(protocolReceiver.toString());
|
|
97
|
-
if (!customReceiver.isZero()) {
|
|
98
|
-
builder.addAddress(customReceiver.toString());
|
|
99
|
-
}
|
|
100
|
-
builder.addBytes(this.buildAmountGetterData(false));
|
|
101
|
-
return builder.asHex();
|
|
102
|
-
}
|
|
103
|
-
buildAmountGetterData(forAmountGetters) {
|
|
104
|
-
const builder = new byte_utils_1.BytesBuilder();
|
|
105
|
-
if (forAmountGetters) {
|
|
106
|
-
this.auctionDetails.encodeInto(builder);
|
|
107
|
-
}
|
|
108
|
-
const integrator = {
|
|
109
|
-
fee: this.extra?.fees?.integrator.fee.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5) || 0,
|
|
110
|
-
share: this.extra?.fees?.integrator.share.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2) || 0
|
|
111
|
-
};
|
|
112
|
-
const resolverFee = this.extra?.fees?.resolver.fee.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5) || 0;
|
|
113
|
-
const whitelistDiscount = this.extra?.fees?.resolver.whitelistDiscount || limit_order_sdk_1.Bps.ZERO;
|
|
114
|
-
builder
|
|
115
|
-
.addUint16(BigInt(integrator.fee))
|
|
116
|
-
.addUint8(BigInt(integrator.share))
|
|
117
|
-
.addUint16(BigInt(resolverFee))
|
|
118
|
-
.addUint8(BigInt(Number(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2) -
|
|
119
|
-
whitelistDiscount.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2)));
|
|
120
|
-
if (forAmountGetters) {
|
|
121
|
-
builder.addUint8(BigInt(this.whitelist.whitelist.length));
|
|
122
|
-
this.whitelist.whitelist.forEach((i) => {
|
|
123
|
-
builder.addBytes((0, utils_1.add0x)(i.addressHalf));
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
this.whitelist.encodeInto(builder);
|
|
128
|
-
}
|
|
129
|
-
return builder.asHex();
|
|
130
|
-
}
|
|
131
|
-
getFeesForTaker(taker) {
|
|
132
|
-
const whitelistDiscount = this.extra?.fees?.resolver.whitelistDiscount.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2) || 0;
|
|
133
|
-
const discountNumerator = this.whitelist.isWhitelisted(taker)
|
|
134
|
-
? (Number(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2) - whitelistDiscount) /
|
|
135
|
-
Number(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2)
|
|
136
|
-
: 1;
|
|
137
|
-
const resolverFee = discountNumerator *
|
|
138
|
-
(this.extra?.fees?.resolver.fee.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5) || 0);
|
|
139
|
-
const resolverFeeBN = BigInt(resolverFee);
|
|
140
|
-
const integratorFeeBN = BigInt(this.extra?.fees?.integrator.fee.toFraction(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5) || 0);
|
|
141
|
-
return {
|
|
142
|
-
resolverFee: resolverFeeBN,
|
|
143
|
-
integratorFee: integratorFeeBN
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
getTakingAmountWithFee(taker, orderTakingAmount) {
|
|
147
|
-
const fees = this.getFeesForTaker(taker);
|
|
148
|
-
return (0, limit_order_sdk_1.mulDiv)(orderTakingAmount, limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5 + fees.resolverFee + fees.integratorFee, limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5, limit_order_sdk_1.Rounding.Ceil);
|
|
41
|
+
return this.builder.build();
|
|
149
42
|
}
|
|
150
43
|
}
|
|
151
44
|
exports.FusionExtension = FusionExtension;
|
|
152
|
-
FusionExtension.CUSTOM_RECEIVER_FLAG_BIT = 0n;
|
|
153
|
-
function parseAmountData(iter) {
|
|
154
|
-
const fees = {
|
|
155
|
-
integratorFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()), limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5),
|
|
156
|
-
integratorShare: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint8()), limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2),
|
|
157
|
-
resolverFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()), limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E5),
|
|
158
|
-
whitelistDiscount: limit_order_sdk_1.Bps.fromFraction(Number(limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2) - Number(iter.nextUint8()), limit_order_sdk_1.FeeTakerExt.Fees.BASE_1E2)
|
|
159
|
-
};
|
|
160
|
-
return {
|
|
161
|
-
fees
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
45
|
//# sourceMappingURL=fusion-extension.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fusion-extension.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-extension.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"fusion-extension.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-extension.ts"],"names":[],"mappings":";;;;AAAA,4DAK+B;AAC/B,4DAA2B;AAE3B,uDAAgD;AAChD,yFAAgF;AAEhF,MAAa,eAAe;IAGxB,YACoB,OAAgB,EAChB,cAA8B,EAC9B,mBAAkD,EAClD,WAAyB;QAHzB,YAAO,GAAP,OAAO,CAAS;QAChB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,wBAAmB,GAAnB,mBAAmB,CAA+B;QAClD,gBAAW,GAAX,WAAW,CAAc;QAN5B,YAAO,GAAG,IAAI,kCAAgB,EAAE,CAAA;QAQ7C,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAA;QAEjD,IAAI,CAAC,OAAO;aACP,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC;aAChD,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC;aAChD,mBAAmB,CAChB,IAAI,6BAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CACnE,CAAA;QAEL,IAAI,WAAW,EAAE;YACb,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;SACrE;IACL,CAAC;IAOM,MAAM,CAAC,MAAM,CAAC,KAAa;QAC9B,MAAM,SAAS,GAAG,2BAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAEzC,OAAO,eAAe,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;IACnD,CAAC;IAKM,MAAM,CAAC,aAAa,CAAC,SAAoB;QAC5C,MAAM,kBAAkB,GAAG,yBAAO,CAAC,cAAc,CAC7C,SAAS,CAAC,gBAAgB,CAC7B,CAAA;QAED,IAAA,gBAAM,EACF,yBAAO,CAAC,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,KAAK,CACpD,kBAAkB,CACrB;YACG,yBAAO,CAAC,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,KAAK,CACnD,kBAAkB,CACrB,EACL,4DAA4D,CAC/D,CAAA;QAED,MAAM,cAAc,GAAG,gCAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAE9D,MAAM,mBAAmB,GACrB,gEAA6B,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAE1D,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc;YACnC,CAAC,CAAC,6BAAW,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAA;QAEf,OAAO,IAAI,eAAe,CACtB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,MAAM,CACT,CAAA;IACL,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IAC/B,CAAC;CACJ;AAxED,0CAwEC"}
|
|
@@ -5,20 +5,17 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
6
6
|
const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
7
7
|
const fusion_extension_1 = require("./fusion-extension");
|
|
8
|
+
const auction_details_1 = require("./auction-details");
|
|
9
|
+
const settlement_post_interaction_data_1 = require("./settlement-post-interaction-data");
|
|
8
10
|
const source_track_1 = require("./source-track");
|
|
9
|
-
const auction_calculator_1 = require("../
|
|
11
|
+
const auction_calculator_1 = require("../auction-calculator");
|
|
10
12
|
const constants_1 = require("../constants");
|
|
11
13
|
const amounts_1 = require("../utils/amounts");
|
|
12
14
|
const time_1 = require("../utils/time");
|
|
13
|
-
const amount_calculator_1 = require("../amount-calculator/amount-calculator");
|
|
14
15
|
class FusionOrder {
|
|
15
|
-
constructor(settlementExtensionContract, orderInfo, auctionDetails,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
: undefined,
|
|
19
|
-
customReceiver: orderInfo.receiver,
|
|
20
|
-
fees: extra?.fees
|
|
21
|
-
})) {
|
|
16
|
+
constructor(settlementExtensionContract, orderInfo, auctionDetails, postInteractionData, extra = FusionOrder.defaultExtra, extension = new fusion_extension_1.FusionExtension(settlementExtensionContract, auctionDetails, postInteractionData, extra.permit
|
|
17
|
+
? new limit_order_sdk_1.Interaction(orderInfo.makerAsset, extra.permit)
|
|
18
|
+
: undefined)) {
|
|
22
19
|
this.settlementExtensionContract = settlementExtensionContract;
|
|
23
20
|
const allowPartialFills = extra.allowPartialFills ??
|
|
24
21
|
FusionOrder.defaultExtra.allowPartialFills;
|
|
@@ -48,7 +45,7 @@ class FusionOrder {
|
|
|
48
45
|
if (extra.nonce !== undefined) {
|
|
49
46
|
makerTraits.withNonce(extra.nonce);
|
|
50
47
|
}
|
|
51
|
-
const receiver =
|
|
48
|
+
const receiver = postInteractionData.integratorFee?.ratio
|
|
52
49
|
? settlementExtensionContract
|
|
53
50
|
: orderInfo.receiver;
|
|
54
51
|
const builtExtension = extension.build();
|
|
@@ -56,11 +53,17 @@ class FusionOrder {
|
|
|
56
53
|
const saltWithInjectedTrackCode = orderInfo.salt
|
|
57
54
|
? salt
|
|
58
55
|
: (0, source_track_1.injectTrackCode)(salt, extra.source);
|
|
56
|
+
if (orderInfo.makerAsset.isNative()) {
|
|
57
|
+
throw new Error('use FusionOrder.fromNative to create order from native asset');
|
|
58
|
+
}
|
|
59
|
+
const optimizeReceiverAddress = extra.optimizeReceiverAddress !== undefined
|
|
60
|
+
? extra.optimizeReceiverAddress
|
|
61
|
+
: FusionOrder.defaultExtra.optimizeReceiverAddress;
|
|
59
62
|
this.inner = new limit_order_sdk_1.LimitOrder({
|
|
60
63
|
...orderInfo,
|
|
61
64
|
receiver,
|
|
62
65
|
salt: saltWithInjectedTrackCode
|
|
63
|
-
}, makerTraits, builtExtension);
|
|
66
|
+
}, makerTraits, builtExtension, { optimizeReceiverAddress });
|
|
64
67
|
this.fusionExtension = extension;
|
|
65
68
|
}
|
|
66
69
|
get extension() {
|
|
@@ -81,13 +84,6 @@ class FusionOrder {
|
|
|
81
84
|
get makingAmount() {
|
|
82
85
|
return this.inner.makingAmount;
|
|
83
86
|
}
|
|
84
|
-
get realReceiver() {
|
|
85
|
-
const hasFee = Boolean(this.fusionExtension.extra?.fees);
|
|
86
|
-
const receiver = hasFee
|
|
87
|
-
? this.fusionExtension.extra?.customReceiver
|
|
88
|
-
: this.inner.receiver;
|
|
89
|
-
return receiver && !receiver.isZero() ? receiver : this.maker;
|
|
90
|
-
}
|
|
91
87
|
get receiver() {
|
|
92
88
|
return this.inner.receiver;
|
|
93
89
|
}
|
|
@@ -117,7 +113,28 @@ class FusionOrder {
|
|
|
117
113
|
return this.inner.salt;
|
|
118
114
|
}
|
|
119
115
|
static new(settlementExtension, orderInfo, details, extra) {
|
|
120
|
-
return new FusionOrder(settlementExtension, orderInfo, details.auction,
|
|
116
|
+
return new FusionOrder(settlementExtension, orderInfo, details.auction, settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
117
|
+
bankFee: details.fees?.bankFee || 0n,
|
|
118
|
+
integratorFee: details.fees?.integratorFee,
|
|
119
|
+
whitelist: details.whitelist,
|
|
120
|
+
resolvingStartTime: details.resolvingStartTime ?? (0, time_1.now)(),
|
|
121
|
+
customReceiver: orderInfo.receiver
|
|
122
|
+
}), extra);
|
|
123
|
+
}
|
|
124
|
+
static isNativeOrder(chainId, ethOrderFactory, order, signature) {
|
|
125
|
+
return limit_order_sdk_1.LimitOrder.isNativeOrder(chainId, ethOrderFactory, order, signature);
|
|
126
|
+
}
|
|
127
|
+
static fromNative(chainId, ethOrdersFactory, settlementExtension, orderInfo, details, extra) {
|
|
128
|
+
const _orderInfo = {
|
|
129
|
+
...orderInfo,
|
|
130
|
+
makerAsset: limit_order_sdk_1.LimitOrder.CHAIN_TO_WRAPPER[chainId],
|
|
131
|
+
receiver: orderInfo.receiver && !orderInfo.receiver.isZero()
|
|
132
|
+
? orderInfo.receiver
|
|
133
|
+
: orderInfo.maker
|
|
134
|
+
};
|
|
135
|
+
const _order = FusionOrder.new(settlementExtension, _orderInfo, details, { ...extra, optimizeReceiverAddress: false });
|
|
136
|
+
_order.inner = limit_order_sdk_1.LimitOrder.fromNative(chainId, ethOrdersFactory, { ..._orderInfo, salt: _order.salt }, _order.inner.makerTraits, _order.inner.extension);
|
|
137
|
+
return _order;
|
|
121
138
|
}
|
|
122
139
|
static fromDataAndExtension(order, extension) {
|
|
123
140
|
const settlementContract = limit_order_sdk_1.Address.fromFirstBytes(extension.makingAmountData);
|
|
@@ -126,7 +143,8 @@ class FusionOrder {
|
|
|
126
143
|
const makerTraits = new limit_order_sdk_1.MakerTraits(BigInt(order.makerTraits));
|
|
127
144
|
(0, assert_1.default)(!makerTraits.isPrivate(), 'fusion order can not be private');
|
|
128
145
|
(0, assert_1.default)(makerTraits.hasPostInteraction(), 'post-interaction must be enabled');
|
|
129
|
-
const
|
|
146
|
+
const auctionDetails = auction_details_1.AuctionDetails.fromExtension(extension);
|
|
147
|
+
const postInteractionData = settlement_post_interaction_data_1.SettlementPostInteractionData.fromExtension(extension);
|
|
130
148
|
const deadline = makerTraits.expiration();
|
|
131
149
|
const orderExpirationDelay = deadline === null
|
|
132
150
|
? undefined
|
|
@@ -134,12 +152,12 @@ class FusionOrder {
|
|
|
134
152
|
return new FusionOrder(settlementContract, {
|
|
135
153
|
salt: BigInt(order.salt) >> 160n,
|
|
136
154
|
maker: new limit_order_sdk_1.Address(order.maker),
|
|
137
|
-
receiver:
|
|
155
|
+
receiver: new limit_order_sdk_1.Address(order.receiver),
|
|
138
156
|
makerAsset: new limit_order_sdk_1.Address(order.makerAsset),
|
|
139
157
|
takerAsset: new limit_order_sdk_1.Address(order.takerAsset),
|
|
140
158
|
makingAmount: BigInt(order.makingAmount),
|
|
141
159
|
takingAmount: BigInt(order.takingAmount)
|
|
142
|
-
}, auctionDetails,
|
|
160
|
+
}, auctionDetails, postInteractionData, {
|
|
143
161
|
allowMultipleFills: makerTraits.isMultipleFillsAllowed(),
|
|
144
162
|
allowPartialFills: makerTraits.isPartialFillAllowed(),
|
|
145
163
|
enablePermit2: makerTraits.isPermit2(),
|
|
@@ -149,9 +167,15 @@ class FusionOrder {
|
|
|
149
167
|
: limit_order_sdk_1.Interaction.decode(extension.makerPermit).data,
|
|
150
168
|
unwrapWETH: makerTraits.isNativeUnwrapEnabled(),
|
|
151
169
|
orderExpirationDelay,
|
|
152
|
-
|
|
170
|
+
optimizeReceiverAddress: true
|
|
153
171
|
});
|
|
154
172
|
}
|
|
173
|
+
isNative(chainId, ethOrderFactory, signature) {
|
|
174
|
+
return this.inner.isNative(chainId, ethOrderFactory, signature);
|
|
175
|
+
}
|
|
176
|
+
nativeSignature(maker) {
|
|
177
|
+
return this.inner.nativeSignature(maker);
|
|
178
|
+
}
|
|
155
179
|
build() {
|
|
156
180
|
return this.inner.build();
|
|
157
181
|
}
|
|
@@ -162,54 +186,41 @@ class FusionOrder {
|
|
|
162
186
|
return this.inner.getTypedData(chainId);
|
|
163
187
|
}
|
|
164
188
|
getCalculator() {
|
|
165
|
-
return auction_calculator_1.AuctionCalculator.fromAuctionData(this.fusionExtension.auctionDetails);
|
|
166
|
-
}
|
|
167
|
-
calcTakingAmount(taker, makingAmount, time, blockBaseFee = 0n) {
|
|
168
|
-
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
169
|
-
return this.getAmountCalculator().getRequiredTakingAmount(taker, takingAmount, time, blockBaseFee);
|
|
170
|
-
}
|
|
171
|
-
getUserReceiveAmount(taker, makingAmount, time, blockBaseFee = 0n) {
|
|
172
|
-
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
173
|
-
return this.getAmountCalculator().getUserTakingAmountAmount(taker, takingAmount, time, blockBaseFee);
|
|
189
|
+
return auction_calculator_1.AuctionCalculator.fromAuctionData(this.fusionExtension.postInteractionData, this.fusionExtension.auctionDetails);
|
|
174
190
|
}
|
|
175
|
-
|
|
191
|
+
calcTakingAmount(makingAmount, time, blockBaseFee = 0n) {
|
|
176
192
|
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
181
|
-
return (this.getAmountCalculator().getIntegratorFee(taker, takingAmount, time, blockBaseFee) ?? 0n);
|
|
182
|
-
}
|
|
183
|
-
getProtocolShareOfIntegratorFee(taker, time, blockBaseFee = 0n, makingAmount = this.makingAmount) {
|
|
184
|
-
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
185
|
-
return (this.getAmountCalculator().getProtocolShareOfIntegratorFee(taker, takingAmount, time, blockBaseFee) ?? 0n);
|
|
186
|
-
}
|
|
187
|
-
getProtocolFee(taker, time, blockBaseFee = 0n, makingAmount = this.makingAmount) {
|
|
188
|
-
const takingAmount = (0, amounts_1.calcTakingAmount)(makingAmount, this.makingAmount, this.takingAmount);
|
|
189
|
-
return (this.getAmountCalculator().getProtocolFee(taker, takingAmount, time, blockBaseFee) ?? 0n);
|
|
193
|
+
const calculator = this.getCalculator();
|
|
194
|
+
const bump = calculator.calcRateBump(time, blockBaseFee);
|
|
195
|
+
return calculator.calcAuctionTakingAmount(takingAmount, bump);
|
|
190
196
|
}
|
|
191
197
|
canExecuteAt(executor, executionTime) {
|
|
192
|
-
return this.fusionExtension.
|
|
198
|
+
return this.fusionExtension.postInteractionData.canExecuteAt(executor, executionTime);
|
|
193
199
|
}
|
|
194
200
|
isExpiredAt(time) {
|
|
195
201
|
return time > this.deadline;
|
|
196
202
|
}
|
|
203
|
+
getResolverFee(filledMakingAmount) {
|
|
204
|
+
return ((this.fusionExtension.postInteractionData.bankFee *
|
|
205
|
+
FusionOrder._ORDER_FEE_BASE_POINTS *
|
|
206
|
+
filledMakingAmount) /
|
|
207
|
+
this.makingAmount);
|
|
208
|
+
}
|
|
197
209
|
isExclusiveResolver(wallet) {
|
|
198
|
-
return this.fusionExtension.
|
|
210
|
+
return this.fusionExtension.postInteractionData.isExclusiveResolver(wallet);
|
|
199
211
|
}
|
|
200
212
|
isExclusivityPeriod(time = (0, time_1.now)()) {
|
|
201
|
-
return this.fusionExtension.
|
|
202
|
-
}
|
|
203
|
-
getAmountCalculator() {
|
|
204
|
-
return amount_calculator_1.AmountCalculator.fromExtension(this.fusionExtension);
|
|
213
|
+
return this.fusionExtension.postInteractionData.isExclusivityPeriod(time);
|
|
205
214
|
}
|
|
206
215
|
}
|
|
207
216
|
exports.FusionOrder = FusionOrder;
|
|
217
|
+
FusionOrder._ORDER_FEE_BASE_POINTS = 10n ** 15n;
|
|
208
218
|
FusionOrder.defaultExtra = {
|
|
209
219
|
allowPartialFills: true,
|
|
210
220
|
allowMultipleFills: true,
|
|
211
221
|
unwrapWETH: false,
|
|
212
222
|
enablePermit2: false,
|
|
213
|
-
orderExpirationDelay: 12n
|
|
223
|
+
orderExpirationDelay: 12n,
|
|
224
|
+
optimizeReceiverAddress: true
|
|
214
225
|
};
|
|
215
226
|
//# sourceMappingURL=fusion-order.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fusion-order.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-order.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"fusion-order.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-order.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.CHAIN_TO_WRAPPER = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
tslib_1.__exportStar(require("./fusion-order"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./auction-details"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./
|
|
7
|
+
tslib_1.__exportStar(require("./settlement-post-interaction-data"), exports);
|
|
8
8
|
tslib_1.__exportStar(require("./fusion-extension"), exports);
|
|
9
9
|
var constants_1 = require("./constants");
|
|
10
10
|
Object.defineProperty(exports, "CHAIN_TO_WRAPPER", { enumerable: true, get: function () { return constants_1.CHAIN_TO_WRAPPER; } });
|
|
11
|
-
|
|
12
|
-
Object.defineProperty(exports, "FeeTakerExt", { enumerable: true, get: function () { return limit_order_sdk_1.FeeTakerExt; } });
|
|
11
|
+
tslib_1.__exportStar(require("./cancellation-auction"), exports);
|
|
13
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fusion-order/index.ts"],"names":[],"mappings":";;;;AAAA,yDAA8B;AAC9B,4DAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fusion-order/index.ts"],"names":[],"mappings":";;;;AAAA,yDAA8B;AAC9B,4DAAiC;AACjC,6EAAkD;AAClD,6DAAkC;AAClC,yCAA4C;AAApC,6GAAA,gBAAgB,OAAA;AACxB,iEAAsC"}
|