@1inch/fusion-sdk 1.0.1-rc.4 → 1.0.1-rc.40
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/api/orders/order-api.spec.js +6 -5
- package/dist/api/orders/order-api.spec.js.map +1 -1
- package/dist/api/orders/orders.api.d.ts +1 -0
- package/dist/api/orders/orders.api.js +4 -3
- package/dist/api/orders/orders.api.js.map +1 -1
- package/dist/api/orders/types.d.ts +2 -0
- package/dist/api/orders/types.js.map +1 -1
- package/dist/api/quoter/quote/order-params.d.ts +1 -0
- package/dist/api/quoter/quote/order-params.js +1 -0
- package/dist/api/quoter/quote/order-params.js.map +1 -1
- package/dist/api/quoter/quote/quote.d.ts +5 -1
- package/dist/api/quoter/quote/quote.js +18 -10
- package/dist/api/quoter/quote/quote.js.map +1 -1
- package/dist/api/quoter/quote/types.d.ts +5 -0
- package/dist/api/quoter/quoter.api.d.ts +1 -0
- package/dist/api/quoter/quoter.api.js +3 -2
- package/dist/api/quoter/quoter.api.js.map +1 -1
- package/dist/api/quoter/quoter.api.spec.js +21 -6
- package/dist/api/quoter/quoter.api.spec.js.map +1 -1
- package/dist/api/quoter/quoter.request.d.ts +1 -0
- package/dist/api/quoter/quoter.request.js +3 -1
- package/dist/api/quoter/quoter.request.js.map +1 -1
- package/dist/api/quoter/types.d.ts +4 -3
- package/dist/api/quoter/types.js.map +1 -1
- package/dist/api/relayer/relayer.api.d.ts +1 -0
- package/dist/api/relayer/relayer.api.js +3 -2
- package/dist/api/relayer/relayer.api.js.map +1 -1
- package/dist/api/relayer/relayer.api.spec.js +8 -5
- package/dist/api/relayer/relayer.api.spec.js.map +1 -1
- package/dist/api/relayer/relayer.request.d.ts +1 -0
- package/dist/api/relayer/relayer.request.js +3 -1
- package/dist/api/relayer/relayer.request.js.map +1 -1
- package/dist/api/relayer/types.d.ts +1 -0
- package/dist/auction-calculator/auction-calculator.d.ts +23 -4
- package/dist/auction-calculator/auction-calculator.js +40 -6
- package/dist/auction-calculator/auction-calculator.js.map +1 -1
- package/dist/auction-calculator/auction-calculator.spec.js +7 -5
- package/dist/auction-calculator/auction-calculator.spec.js.map +1 -1
- package/dist/auction-calculator/calc.d.ts +8 -0
- package/dist/auction-calculator/calc.js +8 -0
- package/dist/auction-calculator/calc.js.map +1 -1
- package/dist/auction-calculator/constants.js +1 -1
- package/dist/auction-calculator/constants.js.map +1 -1
- package/dist/connector/blockchain/private-key-provider.connector.js +2 -0
- package/dist/connector/blockchain/private-key-provider.connector.js.map +1 -1
- package/dist/connector/ws/websocket-client.connector.js +2 -0
- package/dist/connector/ws/websocket-client.connector.js.map +1 -1
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +2 -1
- package/dist/constants.js.map +1 -1
- package/dist/fusion-order/auction-details/auction-details.d.ts +29 -0
- package/dist/fusion-order/auction-details/auction-details.js +21 -0
- package/dist/fusion-order/auction-details/auction-details.js.map +1 -1
- package/dist/fusion-order/auction-details/types.d.ts +12 -0
- package/dist/fusion-order/fusion-extension.d.ts +12 -4
- package/dist/fusion-order/fusion-extension.js +37 -9
- package/dist/fusion-order/fusion-extension.js.map +1 -1
- package/dist/fusion-order/fusion-extension.spec.d.ts +1 -0
- package/dist/fusion-order/fusion-extension.spec.js +75 -0
- package/dist/fusion-order/fusion-extension.spec.js.map +1 -0
- package/dist/fusion-order/fusion-order.d.ts +83 -3
- package/dist/fusion-order/fusion-order.js +124 -23
- package/dist/fusion-order/fusion-order.js.map +1 -1
- package/dist/fusion-order/fusion-order.spec.js +69 -5
- package/dist/fusion-order/fusion-order.spec.js.map +1 -1
- package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.d.ts +38 -1
- package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +125 -46
- package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -1
- package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.js +95 -8
- package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.js.map +1 -1
- package/dist/fusion-order/settlement-post-interaction-data/types.d.ts +12 -3
- package/dist/fusion-order/source-track.d.ts +1 -0
- package/dist/fusion-order/source-track.js +16 -0
- package/dist/fusion-order/source-track.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +11 -2
- package/dist/index.js.map +1 -1
- package/dist/sdk/sdk.js +12 -10
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/types.d.ts +14 -0
- package/dist/sdk/utils.js +5 -2
- package/dist/sdk/utils.js.map +1 -1
- package/dist/utils/amounts.d.ts +17 -1
- package/dist/utils/amounts.js +19 -3
- package/dist/utils/amounts.js.map +1 -1
- package/dist/utils/time.d.ts +1 -0
- package/dist/utils/time.js +8 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/validations.d.ts +4 -0
- package/dist/validations.js +4 -0
- package/dist/validations.js.map +1 -1
- package/dist/ws-api/ws-api.d.ts +1 -0
- package/dist/ws-api/ws-api.js +2 -1
- package/dist/ws-api/ws-api.js.map +1 -1
- package/dist/ws-api/ws.spec.js +9 -8
- package/dist/ws-api/ws.spec.js.map +1 -1
- package/package.json +31 -24
- package/dist/limit-order-contract/index.d.ts +0 -1
- package/dist/limit-order-contract/index.js +0 -6
- package/dist/limit-order-contract/index.js.map +0 -1
package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js
CHANGED
|
@@ -4,102 +4,181 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SettlementPostInteractionData = void 0;
|
|
7
|
-
const ethers_1 = require("ethers");
|
|
8
7
|
const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
9
8
|
const byte_utils_1 = require("@1inch/byte-utils");
|
|
10
9
|
const assert_1 = __importDefault(require("assert"));
|
|
11
10
|
const validations_1 = require("../../validations");
|
|
12
11
|
const utils_1 = require("../../utils");
|
|
12
|
+
const constants_1 = require("../../constants");
|
|
13
13
|
class SettlementPostInteractionData {
|
|
14
14
|
constructor(data) {
|
|
15
15
|
this.whitelist = data.whitelist;
|
|
16
16
|
this.integratorFee = data?.integratorFee;
|
|
17
|
-
this.bankFee = data.bankFee;
|
|
18
|
-
this.
|
|
17
|
+
this.bankFee = data.bankFee || 0n;
|
|
18
|
+
this.resolvingStartTime = data.resolvingStartTime;
|
|
19
|
+
this.customReceiver = data.customReceiver;
|
|
20
|
+
if (this.integratorFee?.ratio) {
|
|
21
|
+
(0, assert_1.default)(!this.integratorFee.receiver.isZero(), 'Fee receiver can not be zero when fee set');
|
|
22
|
+
}
|
|
19
23
|
}
|
|
20
24
|
static new(data) {
|
|
25
|
+
(0, assert_1.default)(data.whitelist.length, 'Whitelist can not be empty');
|
|
26
|
+
// transform timestamps to cumulative delays
|
|
27
|
+
let sumDelay = 0n;
|
|
28
|
+
const whitelist = data.whitelist
|
|
29
|
+
.map((d) => ({
|
|
30
|
+
addressHalf: d.address.toString().slice(-20),
|
|
31
|
+
allowFrom: d.allowFrom < data.resolvingStartTime
|
|
32
|
+
? data.resolvingStartTime
|
|
33
|
+
: d.allowFrom
|
|
34
|
+
}))
|
|
35
|
+
.sort((a, b) => Number(a.allowFrom - b.allowFrom)) // ASC
|
|
36
|
+
.map((val) => {
|
|
37
|
+
const delay = val.allowFrom - data.resolvingStartTime - sumDelay;
|
|
38
|
+
sumDelay += delay;
|
|
39
|
+
(0, assert_1.default)(delay < constants_1.UINT_16_MAX, 'Too big diff between timestamps');
|
|
40
|
+
return {
|
|
41
|
+
delay,
|
|
42
|
+
addressHalf: val.addressHalf
|
|
43
|
+
};
|
|
44
|
+
});
|
|
21
45
|
return new SettlementPostInteractionData({
|
|
22
46
|
...data,
|
|
23
|
-
whitelist
|
|
24
|
-
addressHalf: d.address.toString().slice(-20),
|
|
25
|
-
delay: d.delay
|
|
26
|
-
}))
|
|
47
|
+
whitelist
|
|
27
48
|
});
|
|
28
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Construct `SettlementPostInteractionData` from bytes
|
|
52
|
+
* @param data bytes with 0x prefix in next format:
|
|
53
|
+
* - [uint32 feeBank] only when first bit of `bitMask` enabled
|
|
54
|
+
* - [uint16 integratorFeeRation, uint160 integratorFeeReceiver, [uint160 customReceiver]] only when second bit of `bitMask` enabled
|
|
55
|
+
* - uint32 auctionStartTime
|
|
56
|
+
* - (bytes10 last10bytesOfAddress, uint16 auctionDelay) * N whitelist info
|
|
57
|
+
* - uint8 bitMask:
|
|
58
|
+
* 0b0000_0001 - fee bank mask
|
|
59
|
+
* 0b0000_0010 - integrator fee mask
|
|
60
|
+
* 0b0000_0100 - is custom receiver present (only used when integrator fee enabled)
|
|
61
|
+
* 0b1111_1000 - resolvers count mask
|
|
62
|
+
*
|
|
63
|
+
* All data is tight packed
|
|
64
|
+
* @see SettlementPostInteractionData.encode
|
|
65
|
+
*/
|
|
29
66
|
static decode(data) {
|
|
30
67
|
(0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Post interaction data must be valid bytes string');
|
|
31
68
|
const iter = byte_utils_1.BytesIter.BigInt(data);
|
|
32
|
-
const
|
|
69
|
+
const flags = new byte_utils_1.BN(iter.nextByte(byte_utils_1.BytesIter.SIDE.Back));
|
|
33
70
|
let bankFee = 0n;
|
|
34
71
|
let integratorFee;
|
|
35
|
-
|
|
72
|
+
let customReceiver;
|
|
73
|
+
// fee bank presented
|
|
74
|
+
if (flags.getBit(0n)) {
|
|
36
75
|
bankFee = iter.nextUint32();
|
|
37
76
|
}
|
|
38
|
-
|
|
77
|
+
// integrator fee presented
|
|
78
|
+
if (flags.getBit(1n)) {
|
|
79
|
+
const integratorFeeRatio = iter.nextUint16();
|
|
39
80
|
const integratorAddress = iter.nextUint160();
|
|
40
|
-
const integratorFeeRatio = iter.nextUint32();
|
|
41
81
|
integratorFee = {
|
|
42
82
|
ratio: integratorFeeRatio,
|
|
43
83
|
receiver: limit_order_sdk_1.Address.fromBigInt(integratorAddress)
|
|
44
84
|
};
|
|
85
|
+
// custom receiver presented
|
|
86
|
+
if (flags.getBit(2n)) {
|
|
87
|
+
customReceiver = limit_order_sdk_1.Address.fromBigInt(iter.nextUint160());
|
|
88
|
+
}
|
|
45
89
|
}
|
|
46
|
-
const
|
|
90
|
+
const resolvingStartTime = iter.nextUint32();
|
|
47
91
|
const whitelist = [];
|
|
48
92
|
while (!iter.isEmpty()) {
|
|
49
93
|
const addressHalf = iter
|
|
50
94
|
.nextBytes(10)
|
|
51
95
|
.toString(16)
|
|
52
96
|
.padStart(20, '0');
|
|
53
|
-
const
|
|
97
|
+
const delay = iter.nextUint16();
|
|
54
98
|
whitelist.push({
|
|
55
99
|
addressHalf,
|
|
56
|
-
delay
|
|
100
|
+
delay
|
|
57
101
|
});
|
|
58
102
|
}
|
|
59
103
|
return new SettlementPostInteractionData({
|
|
60
104
|
integratorFee,
|
|
61
105
|
bankFee,
|
|
62
|
-
|
|
63
|
-
whitelist
|
|
106
|
+
resolvingStartTime,
|
|
107
|
+
whitelist,
|
|
108
|
+
customReceiver
|
|
64
109
|
});
|
|
65
110
|
}
|
|
111
|
+
static fromExtension(extension) {
|
|
112
|
+
return SettlementPostInteractionData.decode((0, utils_1.add0x)(extension.postInteraction.slice(42)));
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Serialize post-interaction data to bytes
|
|
116
|
+
*/
|
|
66
117
|
encode() {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
118
|
+
/**
|
|
119
|
+
* 0b0000_0001 - fee bank mask
|
|
120
|
+
* 0b0000_0010 - integrator fee mask
|
|
121
|
+
* 0b0000_0100 - is custom receiver present
|
|
122
|
+
* 0b1111_1000 - resolvers count mask
|
|
123
|
+
*/
|
|
124
|
+
let bitMask = new byte_utils_1.BN(0n);
|
|
125
|
+
const bytes = new byte_utils_1.BytesBuilder();
|
|
126
|
+
// Add bank fee if exists
|
|
72
127
|
if (this.bankFee) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
type: 'uint32',
|
|
76
|
-
value: ethers_1.ethers.solidityPacked(['uint32'], [this.bankFee])
|
|
77
|
-
});
|
|
128
|
+
bitMask = bitMask.setBit(0n, 1);
|
|
129
|
+
bytes.addUint32(this.bankFee);
|
|
78
130
|
}
|
|
131
|
+
// add integrator fee if exists
|
|
79
132
|
if (this.integratorFee?.ratio) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
133
|
+
bitMask = bitMask.setBit(1n, 1);
|
|
134
|
+
bytes
|
|
135
|
+
.addUint16(this.integratorFee.ratio)
|
|
136
|
+
.addAddress(this.integratorFee.receiver.toString());
|
|
137
|
+
if (this.customReceiver && !this.customReceiver.isZero()) {
|
|
138
|
+
bitMask = bitMask.setBit(2n, 1);
|
|
139
|
+
bytes.addAddress(this.customReceiver.toString());
|
|
140
|
+
}
|
|
88
141
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
value: this.auctionStartTime
|
|
92
|
-
});
|
|
142
|
+
bytes.addUint32(this.resolvingStartTime);
|
|
143
|
+
// whitelist data
|
|
93
144
|
for (const wl of this.whitelist) {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
145
|
+
bytes.addBytes((0, utils_1.add0x)(wl.addressHalf)).addUint16(wl.delay);
|
|
146
|
+
}
|
|
147
|
+
bitMask = bitMask.setMask(new byte_utils_1.BitMask(3n, 8n), BigInt(this.whitelist.length));
|
|
148
|
+
bytes.addUint8(bitMask.value);
|
|
149
|
+
return bytes.asHex();
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Check whether address allowed to execute order at the given time
|
|
153
|
+
*
|
|
154
|
+
* @param executor address of executor
|
|
155
|
+
* @param executionTime timestamp in sec at which order planning to execute
|
|
156
|
+
*/
|
|
157
|
+
canExecuteAt(executor, executionTime) {
|
|
158
|
+
const addressHalf = executor.toString().slice(-20);
|
|
159
|
+
let allowedFrom = this.resolvingStartTime;
|
|
160
|
+
for (const whitelist of this.whitelist) {
|
|
161
|
+
allowedFrom += whitelist.delay;
|
|
162
|
+
if (addressHalf === whitelist.addressHalf) {
|
|
163
|
+
return executionTime >= allowedFrom;
|
|
164
|
+
}
|
|
165
|
+
else if (executionTime < allowedFrom) {
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return false;
|
|
170
|
+
}
|
|
171
|
+
isExclusiveResolver(wallet) {
|
|
172
|
+
const addressHalf = wallet.toString().slice(-20);
|
|
173
|
+
// only one resolver, so check if it is the passed address
|
|
174
|
+
if (this.whitelist.length === 1) {
|
|
175
|
+
return addressHalf === this.whitelist[0].addressHalf;
|
|
176
|
+
}
|
|
177
|
+
// more than 1 address can fill at the same time, no exclusivity
|
|
178
|
+
if (this.whitelist[0].delay === this.whitelist[1].delay) {
|
|
179
|
+
return false;
|
|
101
180
|
}
|
|
102
|
-
return
|
|
181
|
+
return addressHalf === this.whitelist[0].addressHalf;
|
|
103
182
|
}
|
|
104
183
|
}
|
|
105
184
|
exports.SettlementPostInteractionData = SettlementPostInteractionData;
|
package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settlement-post-interaction-data.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"settlement-post-interaction-data.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.ts"],"names":[],"mappings":"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"}
|
package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.js
CHANGED
|
@@ -1,33 +1,120 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
4
|
+
const byte_utils_1 = require("@1inch/byte-utils");
|
|
4
5
|
const settlement_post_interaction_data_1 = require("./settlement-post-interaction-data");
|
|
5
6
|
const utils_1 = require("../../sdk/utils");
|
|
6
|
-
describe('
|
|
7
|
+
describe('SettlementPostInteractionData', () => {
|
|
8
|
+
it('Should encode/decode with bank fee and whitelist', () => {
|
|
9
|
+
const data = settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
10
|
+
bankFee: 1n,
|
|
11
|
+
resolvingStartTime: 1708117482n,
|
|
12
|
+
whitelist: [
|
|
13
|
+
{
|
|
14
|
+
address: limit_order_sdk_1.Address.ZERO_ADDRESS,
|
|
15
|
+
allowFrom: 0n
|
|
16
|
+
}
|
|
17
|
+
]
|
|
18
|
+
});
|
|
19
|
+
const encoded = data.encode();
|
|
20
|
+
expect((0, byte_utils_1.getBytesCount)(encoded)).toEqual(21n);
|
|
21
|
+
expect(settlement_post_interaction_data_1.SettlementPostInteractionData.decode(encoded)).toStrictEqual(data);
|
|
22
|
+
});
|
|
7
23
|
it('Should encode/decode with no fees and whitelist', () => {
|
|
8
24
|
const data = settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
25
|
+
resolvingStartTime: 1708117482n,
|
|
26
|
+
whitelist: [
|
|
27
|
+
{
|
|
28
|
+
address: limit_order_sdk_1.Address.ZERO_ADDRESS,
|
|
29
|
+
allowFrom: 0n
|
|
30
|
+
}
|
|
31
|
+
]
|
|
12
32
|
});
|
|
13
|
-
|
|
33
|
+
const encoded = data.encode();
|
|
34
|
+
expect((0, byte_utils_1.getBytesCount)(encoded)).toEqual(17n);
|
|
35
|
+
expect(settlement_post_interaction_data_1.SettlementPostInteractionData.decode(encoded)).toStrictEqual(data);
|
|
14
36
|
});
|
|
15
37
|
it('Should encode/decode with fees and whitelist', () => {
|
|
16
38
|
const data = settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
17
39
|
bankFee: 0n,
|
|
18
|
-
|
|
40
|
+
resolvingStartTime: 1708117482n,
|
|
19
41
|
whitelist: [
|
|
20
42
|
{
|
|
21
43
|
address: limit_order_sdk_1.Address.ZERO_ADDRESS,
|
|
22
|
-
|
|
44
|
+
allowFrom: 0n
|
|
23
45
|
}
|
|
24
46
|
],
|
|
25
47
|
integratorFee: {
|
|
26
|
-
receiver: limit_order_sdk_1.Address.
|
|
48
|
+
receiver: limit_order_sdk_1.Address.fromBigInt(1n),
|
|
27
49
|
ratio: (0, utils_1.bpsToRatioFormat)(10)
|
|
28
50
|
}
|
|
29
51
|
});
|
|
30
52
|
expect(settlement_post_interaction_data_1.SettlementPostInteractionData.decode(data.encode())).toStrictEqual(data);
|
|
31
53
|
});
|
|
54
|
+
it('Should encode/decode with fees, custom receiver and whitelist', () => {
|
|
55
|
+
const data = settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
56
|
+
bankFee: 0n,
|
|
57
|
+
resolvingStartTime: 1708117482n,
|
|
58
|
+
whitelist: [
|
|
59
|
+
{
|
|
60
|
+
address: limit_order_sdk_1.Address.ZERO_ADDRESS,
|
|
61
|
+
allowFrom: 0n
|
|
62
|
+
}
|
|
63
|
+
],
|
|
64
|
+
integratorFee: {
|
|
65
|
+
receiver: limit_order_sdk_1.Address.fromBigInt(1n),
|
|
66
|
+
ratio: (0, utils_1.bpsToRatioFormat)(10)
|
|
67
|
+
},
|
|
68
|
+
customReceiver: limit_order_sdk_1.Address.fromBigInt(1337n)
|
|
69
|
+
});
|
|
70
|
+
expect(settlement_post_interaction_data_1.SettlementPostInteractionData.decode(data.encode())).toStrictEqual(data);
|
|
71
|
+
});
|
|
72
|
+
it('Should generate correct whitelist', () => {
|
|
73
|
+
const start = 1708117482n;
|
|
74
|
+
const data = settlement_post_interaction_data_1.SettlementPostInteractionData.new({
|
|
75
|
+
resolvingStartTime: start,
|
|
76
|
+
whitelist: [
|
|
77
|
+
{
|
|
78
|
+
address: limit_order_sdk_1.Address.fromBigInt(2n),
|
|
79
|
+
allowFrom: start + 1000n
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
address: limit_order_sdk_1.Address.ZERO_ADDRESS,
|
|
83
|
+
allowFrom: start - 10n // should be set to start
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
address: limit_order_sdk_1.Address.fromBigInt(1n),
|
|
87
|
+
allowFrom: start + 10n
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
address: limit_order_sdk_1.Address.fromBigInt(3n),
|
|
91
|
+
allowFrom: start + 10n
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
});
|
|
95
|
+
expect(data.whitelist).toStrictEqual([
|
|
96
|
+
{
|
|
97
|
+
addressHalf: limit_order_sdk_1.Address.ZERO_ADDRESS.toString().slice(-20),
|
|
98
|
+
delay: 0n
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
addressHalf: limit_order_sdk_1.Address.fromBigInt(1n).toString().slice(-20),
|
|
102
|
+
delay: 10n
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
addressHalf: limit_order_sdk_1.Address.fromBigInt(3n).toString().slice(-20),
|
|
106
|
+
delay: 0n
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
addressHalf: limit_order_sdk_1.Address.fromBigInt(2n).toString().slice(-20),
|
|
110
|
+
delay: 990n
|
|
111
|
+
}
|
|
112
|
+
]);
|
|
113
|
+
expect(data.canExecuteAt(limit_order_sdk_1.Address.fromBigInt(1n), start + 10n)).toEqual(true);
|
|
114
|
+
expect(data.canExecuteAt(limit_order_sdk_1.Address.fromBigInt(1n), start + 9n)).toEqual(false);
|
|
115
|
+
expect(data.canExecuteAt(limit_order_sdk_1.Address.fromBigInt(3n), start + 10n)).toEqual(true);
|
|
116
|
+
expect(data.canExecuteAt(limit_order_sdk_1.Address.fromBigInt(3n), start + 9n)).toEqual(false);
|
|
117
|
+
expect(data.canExecuteAt(limit_order_sdk_1.Address.fromBigInt(2n), start + 50n)).toEqual(false);
|
|
118
|
+
});
|
|
32
119
|
});
|
|
33
120
|
//# sourceMappingURL=settlement-post-interaction-data.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settlement-post-interaction-data.spec.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.ts"],"names":[],"mappings":";;AAAA,4DAA8C;AAC9C,yFAAgF;AAChF,2CAAgD;AAEhD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"settlement-post-interaction-data.spec.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,24 @@
|
|
|
1
1
|
import { Address } from '@1inch/limit-order-sdk';
|
|
2
2
|
export type AuctionWhitelistItem = {
|
|
3
3
|
address: Address;
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Timestamp in sec at which address can start resolving
|
|
6
|
+
*/
|
|
7
|
+
allowFrom: bigint;
|
|
5
8
|
};
|
|
6
9
|
export type SettlementSuffixData = {
|
|
7
10
|
whitelist: AuctionWhitelistItem[];
|
|
8
11
|
integratorFee?: IntegratorFee;
|
|
9
|
-
bankFee
|
|
10
|
-
|
|
12
|
+
bankFee?: bigint;
|
|
13
|
+
resolvingStartTime: bigint;
|
|
14
|
+
customReceiver?: Address;
|
|
11
15
|
};
|
|
12
16
|
export type IntegratorFee = {
|
|
17
|
+
/**
|
|
18
|
+
* In pbs multiplied by precision
|
|
19
|
+
*
|
|
20
|
+
* @see bpsToRatioFormat
|
|
21
|
+
*/
|
|
13
22
|
ratio: bigint;
|
|
14
23
|
receiver: Address;
|
|
15
24
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function injectTrackCode(salt: bigint, source?: string): bigint;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.injectTrackCode = void 0;
|
|
4
|
+
const byte_utils_1 = require("@1inch/byte-utils");
|
|
5
|
+
const ethers_1 = require("ethers");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
const TRACK_CODE_MASK = new byte_utils_1.BitMask(224n, 256n);
|
|
8
|
+
function getTrackCodeForSource(source) {
|
|
9
|
+
return BigInt((0, utils_1.add0x)((0, ethers_1.id)(source).slice(0, 10)));
|
|
10
|
+
}
|
|
11
|
+
function injectTrackCode(salt, source) {
|
|
12
|
+
const track = source ? getTrackCodeForSource(source) : 0n;
|
|
13
|
+
return new byte_utils_1.BN(salt).setMask(TRACK_CODE_MASK, track).value;
|
|
14
|
+
}
|
|
15
|
+
exports.injectTrackCode = injectTrackCode;
|
|
16
|
+
//# sourceMappingURL=source-track.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-track.js","sourceRoot":"","sources":["../../src/fusion-order/source-track.ts"],"names":[],"mappings":";;;AAAA,kDAA6C;AAC7C,mCAAyB;AACzB,oCAA8B;AAE9B,MAAM,eAAe,GAAG,IAAI,oBAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAE/C,SAAS,qBAAqB,CAAC,MAAc;IACzC,OAAO,MAAM,CAAC,IAAA,aAAK,EAAC,IAAA,WAAE,EAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,SAAgB,eAAe,CAAC,IAAY,EAAE,MAAe;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEzD,OAAO,IAAI,eAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,KAAK,CAAA;AAC7D,CAAC;AAJD,0CAIC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { Address, LimitOrderV4Struct, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder } from '@1inch/limit-order-sdk';
|
|
1
|
+
export { Address, LimitOrderV4Struct, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract } from '@1inch/limit-order-sdk';
|
|
2
2
|
export * from './fusion-order/index';
|
|
3
3
|
export * from './auction-calculator/index';
|
|
4
4
|
export * from './connector/index';
|
|
@@ -9,4 +9,4 @@ export * from './utils/amounts';
|
|
|
9
9
|
export * from './validations';
|
|
10
10
|
export * from './ws-api';
|
|
11
11
|
export * from './errors';
|
|
12
|
-
export
|
|
12
|
+
export { QuoterRequest, QuoterResponse, RelayerRequest, QuoterCustomPresetRequest, PresetEnum, Preset, Quote } from './api';
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.ExtensionBuilder = exports.TakerTraits = exports.Interaction = exports.getLimitOrderContract = exports.randBigInt = exports.Extension = exports.Address = void 0;
|
|
17
|
+
exports.Quote = exports.Preset = exports.PresetEnum = exports.QuoterCustomPresetRequest = exports.RelayerRequest = exports.QuoterRequest = exports.LimitOrderContract = exports.getLimitOrderV4Domain = exports.AmountMode = exports.ExtensionBuilder = exports.TakerTraits = exports.Interaction = exports.getLimitOrderContract = exports.randBigInt = exports.Extension = exports.Address = void 0;
|
|
18
18
|
var limit_order_sdk_1 = require("@1inch/limit-order-sdk");
|
|
19
19
|
Object.defineProperty(exports, "Address", { enumerable: true, get: function () { return limit_order_sdk_1.Address; } });
|
|
20
20
|
Object.defineProperty(exports, "Extension", { enumerable: true, get: function () { return limit_order_sdk_1.Extension; } });
|
|
@@ -23,6 +23,9 @@ Object.defineProperty(exports, "getLimitOrderContract", { enumerable: true, get:
|
|
|
23
23
|
Object.defineProperty(exports, "Interaction", { enumerable: true, get: function () { return limit_order_sdk_1.Interaction; } });
|
|
24
24
|
Object.defineProperty(exports, "TakerTraits", { enumerable: true, get: function () { return limit_order_sdk_1.TakerTraits; } });
|
|
25
25
|
Object.defineProperty(exports, "ExtensionBuilder", { enumerable: true, get: function () { return limit_order_sdk_1.ExtensionBuilder; } });
|
|
26
|
+
Object.defineProperty(exports, "AmountMode", { enumerable: true, get: function () { return limit_order_sdk_1.AmountMode; } });
|
|
27
|
+
Object.defineProperty(exports, "getLimitOrderV4Domain", { enumerable: true, get: function () { return limit_order_sdk_1.getLimitOrderV4Domain; } });
|
|
28
|
+
Object.defineProperty(exports, "LimitOrderContract", { enumerable: true, get: function () { return limit_order_sdk_1.LimitOrderContract; } });
|
|
26
29
|
__exportStar(require("./fusion-order/index"), exports);
|
|
27
30
|
__exportStar(require("./auction-calculator/index"), exports);
|
|
28
31
|
__exportStar(require("./connector/index"), exports);
|
|
@@ -33,5 +36,11 @@ __exportStar(require("./utils/amounts"), exports);
|
|
|
33
36
|
__exportStar(require("./validations"), exports);
|
|
34
37
|
__exportStar(require("./ws-api"), exports);
|
|
35
38
|
__exportStar(require("./errors"), exports);
|
|
36
|
-
|
|
39
|
+
var api_1 = require("./api");
|
|
40
|
+
Object.defineProperty(exports, "QuoterRequest", { enumerable: true, get: function () { return api_1.QuoterRequest; } });
|
|
41
|
+
Object.defineProperty(exports, "RelayerRequest", { enumerable: true, get: function () { return api_1.RelayerRequest; } });
|
|
42
|
+
Object.defineProperty(exports, "QuoterCustomPresetRequest", { enumerable: true, get: function () { return api_1.QuoterCustomPresetRequest; } });
|
|
43
|
+
Object.defineProperty(exports, "PresetEnum", { enumerable: true, get: function () { return api_1.PresetEnum; } });
|
|
44
|
+
Object.defineProperty(exports, "Preset", { enumerable: true, get: function () { return api_1.Preset; } });
|
|
45
|
+
Object.defineProperty(exports, "Quote", { enumerable: true, get: function () { return api_1.Quote; } });
|
|
37
46
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAY+B;AAX3B,0GAAA,OAAO,OAAA;AAEP,4GAAA,SAAS,OAAA;AACT,6GAAA,UAAU,OAAA;AACV,wHAAA,qBAAqB,OAAA;AACrB,8GAAA,WAAW,OAAA;AACX,8GAAA,WAAW,OAAA;AACX,mHAAA,gBAAgB,OAAA;AAChB,6GAAA,UAAU,OAAA;AACV,wHAAA,qBAAqB,OAAA;AACrB,qHAAA,kBAAkB,OAAA;AAEtB,uDAAoC;AACpC,6DAA0C;AAC1C,oDAAiC;AACjC,8CAA2B;AAC3B,8CAA2B;AAC3B,0CAAuB;AACvB,kDAA+B;AAC/B,gDAA6B;AAC7B,2CAAwB;AACxB,2CAAwB;AACxB,6BAQc;AAPV,oGAAA,aAAa,OAAA;AAEb,qGAAA,cAAc,OAAA;AACd,gHAAA,yBAAyB,OAAA;AACzB,iGAAA,UAAU,OAAA;AACV,6FAAA,MAAM,OAAA;AACN,4FAAA,KAAK,OAAA"}
|
package/dist/sdk/sdk.js
CHANGED
|
@@ -36,7 +36,8 @@ class FusionSDK {
|
|
|
36
36
|
permit: params.permit,
|
|
37
37
|
enableEstimate: false,
|
|
38
38
|
fee: params?.takingFeeBps,
|
|
39
|
-
source: params.source
|
|
39
|
+
source: params.source,
|
|
40
|
+
isPermit2: params.isPermit2
|
|
40
41
|
});
|
|
41
42
|
return this.api.getQuote(request);
|
|
42
43
|
}
|
|
@@ -49,7 +50,8 @@ class FusionSDK {
|
|
|
49
50
|
permit: params.permit,
|
|
50
51
|
enableEstimate: false,
|
|
51
52
|
fee: params?.takingFeeBps,
|
|
52
|
-
source: params.source
|
|
53
|
+
source: params.source,
|
|
54
|
+
isPermit2: params.isPermit2
|
|
53
55
|
});
|
|
54
56
|
const bodyRequest = api_1.QuoterCustomPresetRequest.new({
|
|
55
57
|
customPreset: body.customPreset
|
|
@@ -67,13 +69,11 @@ class FusionSDK {
|
|
|
67
69
|
: undefined,
|
|
68
70
|
preset: params.preset,
|
|
69
71
|
nonce: params.nonce,
|
|
70
|
-
permit: params.permit,
|
|
71
72
|
takingFeeReceiver: params.fee?.takingFeeReceiver,
|
|
72
73
|
allowPartialFills: params.allowPartialFills,
|
|
73
74
|
allowMultipleFills: params.allowMultipleFills
|
|
74
75
|
});
|
|
75
|
-
const
|
|
76
|
-
const hash = order.getOrderHash(domain);
|
|
76
|
+
const hash = order.getOrderHash(this.config.network);
|
|
77
77
|
return { order, hash, quoteId: quote.quoteId };
|
|
78
78
|
}
|
|
79
79
|
async submitOrder(order, quoteId) {
|
|
@@ -81,19 +81,20 @@ class FusionSDK {
|
|
|
81
81
|
throw new Error('blockchainProvider has not set to config');
|
|
82
82
|
}
|
|
83
83
|
const orderStruct = order.build();
|
|
84
|
-
const
|
|
85
|
-
const signature = await this.config.blockchainProvider.signTypedData(orderStruct.maker, order.getTypedData(domain));
|
|
84
|
+
const signature = await this.config.blockchainProvider.signTypedData(orderStruct.maker, order.getTypedData(this.config.network));
|
|
86
85
|
const relayerRequest = api_1.RelayerRequest.new({
|
|
87
86
|
order: orderStruct,
|
|
88
87
|
signature,
|
|
89
|
-
quoteId
|
|
88
|
+
quoteId,
|
|
89
|
+
extension: order.extension.encode()
|
|
90
90
|
});
|
|
91
91
|
await this.api.submitOrder(relayerRequest);
|
|
92
92
|
return {
|
|
93
93
|
order: orderStruct,
|
|
94
94
|
signature,
|
|
95
95
|
quoteId,
|
|
96
|
-
orderHash: order.getOrderHash(
|
|
96
|
+
orderHash: order.getOrderHash(this.config.network),
|
|
97
|
+
extension: relayerRequest.extension
|
|
97
98
|
};
|
|
98
99
|
}
|
|
99
100
|
async placeOrder(params) {
|
|
@@ -118,7 +119,8 @@ class FusionSDK {
|
|
|
118
119
|
permit: params.permit,
|
|
119
120
|
enableEstimate: true,
|
|
120
121
|
fee: params.fee?.takingFeeBps,
|
|
121
|
-
source: params.source
|
|
122
|
+
source: params.source,
|
|
123
|
+
isPermit2: params.isPermit2
|
|
122
124
|
});
|
|
123
125
|
if (!params.customPreset) {
|
|
124
126
|
return this.api.getQuote(quoterRequest);
|
package/dist/sdk/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk/sdk.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk/sdk.ts"],"names":[],"mappings":";;;AAAA,4DAA2D;AAS3D,yCAA4C;AAC5C,gCAMe;AACf,0CASsB;AAGtB,MAAa,SAAS;IAGlB,YAA6B,MAA6B;QAA7B,WAAM,GAAN,MAAM,CAAuB;QACtD,IAAI,CAAC,GAAG,GAAG,eAAS,CAAC,GAAG,CAAC;YACrB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,OAAO,EAAE,MAAM,CAAC,OAAO;SAC1B,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAClB,IAAI,EACJ,KAAK,KACsB,EAAE;QAC7B,MAAM,OAAO,GAAG,4BAAmB,CAAC,GAAG,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,CAAA;QAEtD,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAiB;QAClC,MAAM,OAAO,GAAG,2BAAkB,CAAC,GAAG,CAAC,EAAC,SAAS,EAAC,CAAC,CAAA;QAEnD,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,EACnB,KAAK,EACL,IAAI,EACJ,OAAO,EACW;QAClB,MAAM,OAAO,GAAG,6BAAoB,CAAC,GAAG,CAAC,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAC,CAAC,CAAA;QAEhE,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAmB;QAC9B,MAAM,OAAO,GAAG,mBAAa,CAAC,GAAG,CAAC;YAC9B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,aAAa,EAAE,yBAAO,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,cAAc,EAAE,KAAK;YACrB,GAAG,EAAE,MAAM,EAAE,YAAY;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;SAC9B,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC1B,MAAmB,EACnB,IAA6B;QAE7B,MAAM,aAAa,GAAG,mBAAa,CAAC,GAAG,CAAC;YACpC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,aAAa,EAAE,yBAAO,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,cAAc,EAAE,KAAK;YACrB,GAAG,EAAE,MAAM,EAAE,YAAY;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;SAC9B,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,+BAAyB,CAAC,GAAG,CAAC;YAC9C,YAAY,EAAE,IAAI,CAAC,YAAY;SAClC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAA;IACxE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAmB;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QAE/C,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;SACrD;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;YAClC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACrB,CAAC,CAAC,IAAI,yBAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAC9B,CAAC,CAAC,SAAS;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,iBAAiB,EAAE,MAAM,CAAC,GAAG,EAAE,iBAAiB;YAChD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;SAChD,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAEpD,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAC,CAAA;IAChD,CAAC;IAEM,KAAK,CAAC,WAAW,CACpB,KAAkB,EAClB,OAAe;QAEf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC9D;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAEjC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,aAAa,CAChE,WAAW,CAAC,KAAK,EACjB,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAC1C,CAAA;QAED,MAAM,cAAc,GAAG,oBAAc,CAAC,GAAG,CAAC;YACtC,KAAK,EAAE,WAAW;YAClB,SAAS;YACT,OAAO;YACP,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE;SACtC,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;QAE1C,OAAO;YACH,KAAK,EAAE,WAAW;YAClB,SAAS;YACT,OAAO;YACP,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YAClD,SAAS,EAAE,cAAc,CAAC,SAAS;SACtC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAmB;QAChC,MAAM,EAAC,KAAK,EAAE,OAAO,EAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAEvD,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,SAAiB;QAC5C,MAAM,eAAe,GAAG,2BAAkB,CAAC,GAAG,CAAC,EAAC,SAAS,EAAC,CAAC,CAAA;QAC3D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QAEhE,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,KAAK,CACX,kDAAkD,SAAS,EAAE,CAChE,CAAA;SACJ;QAED,MAAM,EAAC,KAAK,EAAC,GAAG,SAAS,CAAA;QAEzB,OAAO,IAAA,4BAAiB,EACpB,SAAS,EACT,IAAI,6BAAW,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAC7C,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAmB;QAC5C,MAAM,aAAa,GAAG,mBAAa,CAAC,GAAG,CAAC;YACpC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,cAAc,EAAE,IAAI;YACpB,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,YAAY;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YACtB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;SAC1C;QAED,MAAM,iCAAiC,GAAG,+BAAyB,CAAC,GAAG,CACnE;YACI,YAAY,EAAE,MAAM,CAAC,YAAY;SACpC,CACJ,CAAA;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,wBAAwB,CACpC,aAAa,EACb,iCAAiC,CACpC,CAAA;IACL,CAAC;CACJ;AAxLD,8BAwLC"}
|
package/dist/sdk/types.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export type QuoteParams = {
|
|
|
17
17
|
permit?: string;
|
|
18
18
|
takingFeeBps?: number;
|
|
19
19
|
source?: string;
|
|
20
|
+
isPermit2?: boolean;
|
|
20
21
|
};
|
|
21
22
|
export type QuoteCustomPresetParams = {
|
|
22
23
|
customPreset: CustomPreset;
|
|
@@ -29,11 +30,23 @@ export type OrderParams = {
|
|
|
29
30
|
permit?: string;
|
|
30
31
|
receiver?: string;
|
|
31
32
|
preset?: PresetEnum;
|
|
33
|
+
/**
|
|
34
|
+
* Unique for `walletAddress` can be serial or random generated
|
|
35
|
+
*
|
|
36
|
+
* @see randBigInt
|
|
37
|
+
*/
|
|
32
38
|
nonce?: bigint;
|
|
33
39
|
fee?: TakingFeeInfo;
|
|
34
40
|
source?: string;
|
|
41
|
+
isPermit2?: boolean;
|
|
35
42
|
customPreset?: CustomPreset;
|
|
43
|
+
/**
|
|
44
|
+
* true by default
|
|
45
|
+
*/
|
|
36
46
|
allowPartialFills?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* true by default
|
|
49
|
+
*/
|
|
37
50
|
allowMultipleFills?: boolean;
|
|
38
51
|
};
|
|
39
52
|
export type TakingFeeInfo = {
|
|
@@ -45,6 +58,7 @@ export type OrderInfo = {
|
|
|
45
58
|
signature: string;
|
|
46
59
|
quoteId: string;
|
|
47
60
|
orderHash: string;
|
|
61
|
+
extension: string;
|
|
48
62
|
};
|
|
49
63
|
export type PreparedOrder = {
|
|
50
64
|
order: FusionOrder;
|