@1inch/fusion-sdk 2.3.3 → 2.3.5
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/amount-calculator/amount-calculator.js +5 -4
- package/dist/cjs/amount-calculator/amount-calculator.js.map +1 -1
- package/dist/cjs/fusion-order/fees/fees.js +0 -1
- package/dist/cjs/fusion-order/fees/fees.js.map +1 -1
- package/dist/cjs/fusion-order/fusion-extension.js +20 -20
- package/dist/cjs/fusion-order/fusion-extension.js.map +1 -1
- package/dist/cjs/fusion-order/index.js +2 -3
- package/dist/cjs/fusion-order/index.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/amount-calculator/amount-calculator.js +4 -3
- package/dist/esm/amount-calculator/amount-calculator.js.map +1 -1
- package/dist/esm/fusion-order/fees/fees.js +0 -1
- package/dist/esm/fusion-order/fees/fees.js.map +1 -1
- package/dist/esm/fusion-order/fusion-extension.js +21 -21
- package/dist/esm/fusion-order/fusion-extension.js.map +1 -1
- package/dist/esm/fusion-order/index.js +1 -1
- package/dist/esm/fusion-order/index.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/src/fusion-order/fusion-extension.d.ts +4 -3
- package/dist/types/src/fusion-order/index.d.ts +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@ const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
|
5
5
|
const fee_taker_1 = require("@1inch/limit-order-sdk/extensions/fee-taker");
|
|
6
6
|
const auction_calculator_1 = require("./auction-calculator");
|
|
7
7
|
const fusion_order_1 = require("../fusion-order");
|
|
8
|
+
const fees_1 = require("../fusion-order/fees");
|
|
8
9
|
class AmountCalculator {
|
|
9
10
|
constructor(auctionCalculator, feeCalculator, surplus = fusion_order_1.SurplusParams.NO_FEE) {
|
|
10
11
|
this.auctionCalculator = auctionCalculator;
|
|
@@ -13,7 +14,7 @@ class AmountCalculator {
|
|
|
13
14
|
}
|
|
14
15
|
static fromExtension(ext) {
|
|
15
16
|
return new AmountCalculator(auction_calculator_1.AuctionCalculator.fromAuctionData(ext.auctionDetails), ext.extra?.fees
|
|
16
|
-
? new
|
|
17
|
+
? new fee_taker_1.FeeCalculator(ext.extra?.fees, ext.whitelist)
|
|
17
18
|
: undefined, ext.surplus);
|
|
18
19
|
}
|
|
19
20
|
static calcAuctionTakingAmount(baseTakingAmount, rate, fee = limit_order_sdk_1.Bps.ZERO) {
|
|
@@ -21,12 +22,12 @@ class AmountCalculator {
|
|
|
21
22
|
if (fee.isZero()) {
|
|
22
23
|
return withoutFee;
|
|
23
24
|
}
|
|
24
|
-
const numerator =
|
|
25
|
-
return (withoutFee * numerator) /
|
|
25
|
+
const numerator = fees_1.Fees.BASE_1E5 + BigInt(fee.toFraction(fees_1.Fees.BASE_1E5));
|
|
26
|
+
return (withoutFee * numerator) / fees_1.Fees.BASE_1E5;
|
|
26
27
|
}
|
|
27
28
|
static extractFeeAmount(requiredTakingAmount, fee) {
|
|
28
29
|
return (requiredTakingAmount -
|
|
29
|
-
(0, limit_order_sdk_1.mulDiv)(requiredTakingAmount,
|
|
30
|
+
(0, limit_order_sdk_1.mulDiv)(requiredTakingAmount, fees_1.Fees.BASE_1E5, fees_1.Fees.BASE_1E5 + BigInt(fee.toFraction(fees_1.Fees.BASE_1E5)), limit_order_sdk_1.Rounding.Ceil));
|
|
30
31
|
}
|
|
31
32
|
getRequiredTakingAmount(taker, takingAmount, time, blockBaseFee = 0n) {
|
|
32
33
|
const withFee = this.feeCalculator?.getTakingAmount(taker, takingAmount) ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amount-calculator.js","sourceRoot":"","sources":["../../../src/amount-calculator/amount-calculator.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"amount-calculator.js","sourceRoot":"","sources":["../../../src/amount-calculator/amount-calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,6 @@ class Fees {
|
|
|
12
12
|
if (!resolver.fee.isZero() && !integrator.fee.isZero()) {
|
|
13
13
|
(0, assert_1.default)(resolver.receiver.equal(integrator.protocol), 'resolver fee receiver address and integrator fee protocol address must be same');
|
|
14
14
|
}
|
|
15
|
-
(0, assert_1.default)(!(resolver.fee.isZero() && integrator.fee.isZero()), 'at least one fee must be set');
|
|
16
15
|
(0, assert_1.default)(this.integrator.fee.toFraction() < 0.6553, 'max fee is 65.53%');
|
|
17
16
|
(0, assert_1.default)(this.resolver.fee.toFraction() < 0.6553, 'max fee is 65.53%');
|
|
18
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fees.js","sourceRoot":"","sources":["../../../../src/fusion-order/fees/fees.ts"],"names":[],"mappings":";;;;AACA,4DAA2B;AAC3B,iDAA0C;AAC1C,qDAA8C;AAE9C,MAAa,IAAI;IAWb,YACoB,QAAqB,EACrB,UAAyB;QADzB,aAAQ,GAAR,QAAQ,CAAa;QACrB,eAAU,GAAV,UAAU,CAAe;QAEzC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;YACrD,IAAA,gBAAM,EACF,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAC5C,gFAAgF,CACnF,CAAA;QACL,CAAC;
|
|
1
|
+
{"version":3,"file":"fees.js","sourceRoot":"","sources":["../../../../src/fusion-order/fees/fees.ts"],"names":[],"mappings":";;;;AACA,4DAA2B;AAC3B,iDAA0C;AAC1C,qDAA8C;AAE9C,MAAa,IAAI;IAWb,YACoB,QAAqB,EACrB,UAAyB;QADzB,aAAQ,GAAR,QAAQ,CAAa;QACrB,eAAU,GAAV,UAAU,CAAe;QAEzC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;YACrD,IAAA,gBAAM,EACF,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAC5C,gFAAgF,CACnF,CAAA;QACL,CAAC;QAOD,IAAA,gBAAM,EACF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,MAAM,EACzC,mBAAmB,CACtB,CAAA;QACD,IAAA,gBAAM,EACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,MAAM,EACvC,mBAAmB,CACtB,CAAA;IACL,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE;YAC/B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ;YACxB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAA;IAClC,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAgB;QAC/B,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,8BAAa,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,GAAkB;QACnC,OAAO,IAAI,IAAI,CAAC,0BAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1C,CAAC;;AAjDL,oBAkDC;AA9CiB,aAAQ,GAAG,OAAQ,CAAA;AAKnB,aAAQ,GAAG,IAAI,CAAA"}
|
|
@@ -8,6 +8,7 @@ const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
|
8
8
|
const auction_details_1 = require("./auction-details");
|
|
9
9
|
const whitelist_1 = require("./whitelist/whitelist");
|
|
10
10
|
const surplus_params_1 = require("./surplus-params");
|
|
11
|
+
const fees_1 = require("./fees");
|
|
11
12
|
const utils_1 = require("../utils");
|
|
12
13
|
class FusionExtension {
|
|
13
14
|
constructor(address, auctionDetails, whitelist, surplus, extra) {
|
|
@@ -66,11 +67,9 @@ class FusionExtension {
|
|
|
66
67
|
fees: undefined
|
|
67
68
|
});
|
|
68
69
|
}
|
|
69
|
-
const fees = new
|
|
70
|
-
?
|
|
71
|
-
: new
|
|
72
|
-
? limit_order_sdk_1.FeeTakerExt.IntegratorFee.ZERO
|
|
73
|
-
: new limit_order_sdk_1.FeeTakerExt.IntegratorFee(integratorFeeRecipient, protocolFeeRecipient, interactionData.fees.integratorFee, interactionData.fees.integratorShare));
|
|
70
|
+
const fees = new fees_1.Fees(new fees_1.ResolverFee(protocolFeeRecipient, interactionData.fees.resolverFee, interactionData.fees.whitelistDiscount), interactionData.fees.integratorFee.isZero()
|
|
71
|
+
? fees_1.IntegratorFee.ZERO
|
|
72
|
+
: new fees_1.IntegratorFee(integratorFeeRecipient, protocolFeeRecipient, interactionData.fees.integratorFee, interactionData.fees.integratorShare));
|
|
74
73
|
return new FusionExtension(settlementContract, auctionDetails, whitelist, surplusParams, {
|
|
75
74
|
makerPermit,
|
|
76
75
|
fees,
|
|
@@ -111,17 +110,18 @@ class FusionExtension {
|
|
|
111
110
|
this.auctionDetails.encodeInto(builder);
|
|
112
111
|
}
|
|
113
112
|
const integrator = {
|
|
114
|
-
fee: this.extra?.fees?.integrator.fee.toFraction(
|
|
115
|
-
share: this.extra?.fees?.integrator.share.toFraction(
|
|
113
|
+
fee: this.extra?.fees?.integrator.fee.toFraction(fees_1.Fees.BASE_1E5) || 0,
|
|
114
|
+
share: this.extra?.fees?.integrator.share.toFraction(fees_1.Fees.BASE_1E2) ||
|
|
115
|
+
0
|
|
116
116
|
};
|
|
117
|
-
const resolverFee = this.extra?.fees?.resolver.fee.toFraction(
|
|
117
|
+
const resolverFee = this.extra?.fees?.resolver.fee.toFraction(fees_1.Fees.BASE_1E5) || 0;
|
|
118
118
|
const whitelistDiscount = this.extra?.fees?.resolver.whitelistDiscount || limit_order_sdk_1.Bps.ZERO;
|
|
119
119
|
builder
|
|
120
120
|
.addUint16(BigInt(integrator.fee))
|
|
121
121
|
.addUint8(BigInt(integrator.share))
|
|
122
122
|
.addUint16(BigInt(resolverFee))
|
|
123
|
-
.addUint8(BigInt(Number(
|
|
124
|
-
whitelistDiscount.toFraction(
|
|
123
|
+
.addUint8(BigInt(Number(fees_1.Fees.BASE_1E2) -
|
|
124
|
+
whitelistDiscount.toFraction(fees_1.Fees.BASE_1E2)));
|
|
125
125
|
if (forAmountGetters) {
|
|
126
126
|
builder.addUint8(BigInt(this.whitelist.whitelist.length));
|
|
127
127
|
this.whitelist.whitelist.forEach((i) => {
|
|
@@ -134,15 +134,15 @@ class FusionExtension {
|
|
|
134
134
|
return builder.asHex();
|
|
135
135
|
}
|
|
136
136
|
getFeesForTaker(taker) {
|
|
137
|
-
const whitelistDiscount = this.extra?.fees?.resolver.whitelistDiscount.toFraction(
|
|
137
|
+
const whitelistDiscount = this.extra?.fees?.resolver.whitelistDiscount.toFraction(fees_1.Fees.BASE_1E2) || 0;
|
|
138
138
|
const discountNumerator = this.whitelist.isWhitelisted(taker)
|
|
139
|
-
? (Number(
|
|
140
|
-
Number(
|
|
139
|
+
? (Number(fees_1.Fees.BASE_1E2) - whitelistDiscount) /
|
|
140
|
+
Number(fees_1.Fees.BASE_1E2)
|
|
141
141
|
: 1;
|
|
142
142
|
const resolverFee = discountNumerator *
|
|
143
|
-
(this.extra?.fees?.resolver.fee.toFraction(
|
|
143
|
+
(this.extra?.fees?.resolver.fee.toFraction(fees_1.Fees.BASE_1E5) || 0);
|
|
144
144
|
const resolverFeeBN = BigInt(resolverFee);
|
|
145
|
-
const integratorFeeBN = BigInt(this.extra?.fees?.integrator.fee.toFraction(
|
|
145
|
+
const integratorFeeBN = BigInt(this.extra?.fees?.integrator.fee.toFraction(fees_1.Fees.BASE_1E5) || 0);
|
|
146
146
|
return {
|
|
147
147
|
resolverFee: resolverFeeBN,
|
|
148
148
|
integratorFee: integratorFeeBN
|
|
@@ -150,17 +150,17 @@ class FusionExtension {
|
|
|
150
150
|
}
|
|
151
151
|
getTakingAmountWithFee(taker, orderTakingAmount) {
|
|
152
152
|
const fees = this.getFeesForTaker(taker);
|
|
153
|
-
return (0, limit_order_sdk_1.mulDiv)(orderTakingAmount,
|
|
153
|
+
return (0, limit_order_sdk_1.mulDiv)(orderTakingAmount, fees_1.Fees.BASE_1E5 + fees.resolverFee + fees.integratorFee, fees_1.Fees.BASE_1E5, limit_order_sdk_1.Rounding.Ceil);
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
exports.FusionExtension = FusionExtension;
|
|
157
157
|
FusionExtension.CUSTOM_RECEIVER_FLAG_BIT = 0n;
|
|
158
158
|
function parseAmountData(iter) {
|
|
159
159
|
const fees = {
|
|
160
|
-
integratorFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()),
|
|
161
|
-
integratorShare: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint8()),
|
|
162
|
-
resolverFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()),
|
|
163
|
-
whitelistDiscount: limit_order_sdk_1.Bps.fromFraction(Number(
|
|
160
|
+
integratorFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()), fees_1.Fees.BASE_1E5),
|
|
161
|
+
integratorShare: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint8()), fees_1.Fees.BASE_1E2),
|
|
162
|
+
resolverFee: limit_order_sdk_1.Bps.fromFraction(Number(iter.nextUint16()), fees_1.Fees.BASE_1E5),
|
|
163
|
+
whitelistDiscount: limit_order_sdk_1.Bps.fromFraction(Number(fees_1.Fees.BASE_1E2) - Number(iter.nextUint8()), fees_1.Fees.BASE_1E2)
|
|
164
164
|
};
|
|
165
165
|
return {
|
|
166
166
|
fees
|
|
@@ -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":"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"}
|
|
@@ -1,14 +1,13 @@
|
|
|
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
7
|
tslib_1.__exportStar(require("./whitelist"), exports);
|
|
8
8
|
tslib_1.__exportStar(require("./fusion-extension"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./fees"), exports);
|
|
9
10
|
var constants_1 = require("./constants");
|
|
10
11
|
Object.defineProperty(exports, "CHAIN_TO_WRAPPER", { enumerable: true, get: function () { return constants_1.CHAIN_TO_WRAPPER; } });
|
|
11
|
-
var limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
12
|
-
Object.defineProperty(exports, "FeeTakerExt", { enumerable: true, get: function () { return limit_order_sdk_1.FeeTakerExt; } });
|
|
13
12
|
tslib_1.__exportStar(require("./surplus-params"), exports);
|
|
14
13
|
//# 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,sDAA2B;AAC3B,6DAAkC;AAClC,yCAA4C;AAApC,6GAAA,gBAAgB,OAAA;AACxB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fusion-order/index.ts"],"names":[],"mappings":";;;;AAAA,yDAA8B;AAC9B,4DAAiC;AACjC,sDAA2B;AAC3B,6DAAkC;AAClC,iDAAsB;AACtB,yCAA4C;AAApC,6GAAA,gBAAgB,OAAA;AACxB,2DAAgC"}
|