@1inch/fusion-sdk 2.1.8-rc.0 → 2.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/amount-calculator/amount-calculator.js +42 -0
  3. package/dist/cjs/amount-calculator/amount-calculator.js.map +1 -0
  4. package/dist/cjs/{auction-calculator → amount-calculator/auction-calculator}/auction-calculator.js +16 -17
  5. package/dist/cjs/amount-calculator/auction-calculator/auction-calculator.js.map +1 -0
  6. package/dist/cjs/{auction-calculator → amount-calculator/auction-calculator}/index.js +0 -1
  7. package/dist/cjs/amount-calculator/auction-calculator/index.js.map +1 -0
  8. package/dist/cjs/api/orders/orders.api.js.map +1 -1
  9. package/dist/cjs/api/orders/orders.request.js.map +1 -1
  10. package/dist/cjs/api/orders/types.js +1 -1
  11. package/dist/cjs/api/orders/types.js.map +1 -1
  12. package/dist/cjs/api/pagination.js.map +1 -1
  13. package/dist/cjs/api/params.js +1 -2
  14. package/dist/cjs/api/params.js.map +1 -1
  15. package/dist/cjs/api/quoter/quote/order-params.js.map +1 -1
  16. package/dist/cjs/api/quoter/quote/quote.js +8 -17
  17. package/dist/cjs/api/quoter/quote/quote.js.map +1 -1
  18. package/dist/cjs/api/quoter/quoter-custom-preset.request.js +1 -1
  19. package/dist/cjs/api/quoter/quoter-custom-preset.request.js.map +1 -1
  20. package/dist/cjs/api/quoter/quoter.api.js.map +1 -1
  21. package/dist/cjs/api/quoter/quoter.request.js.map +1 -1
  22. package/dist/cjs/api/quoter/types.js +1 -1
  23. package/dist/cjs/api/quoter/types.js.map +1 -1
  24. package/dist/cjs/connector/http/axios-provider.connector.js.map +1 -1
  25. package/dist/cjs/connector/ws/websocket-client.connector.js.map +1 -1
  26. package/dist/cjs/constants.js +1 -2
  27. package/dist/cjs/constants.js.map +1 -1
  28. package/dist/cjs/fusion-order/auction-details/auction-details.js +18 -10
  29. package/dist/cjs/fusion-order/auction-details/auction-details.js.map +1 -1
  30. package/dist/cjs/fusion-order/constants.js +1 -2
  31. package/dist/cjs/fusion-order/constants.js.map +1 -1
  32. package/dist/cjs/fusion-order/fusion-extension.js +114 -18
  33. package/dist/cjs/fusion-order/fusion-extension.js.map +1 -1
  34. package/dist/cjs/fusion-order/fusion-order.js +42 -34
  35. package/dist/cjs/fusion-order/fusion-order.js.map +1 -1
  36. package/dist/cjs/fusion-order/index.js +4 -2
  37. package/dist/cjs/fusion-order/index.js.map +1 -1
  38. package/dist/cjs/fusion-order/source-track.js +1 -2
  39. package/dist/cjs/fusion-order/source-track.js.map +1 -1
  40. package/dist/cjs/fusion-order/whitelist/index.js +5 -0
  41. package/dist/cjs/fusion-order/whitelist/index.js.map +1 -0
  42. package/dist/cjs/fusion-order/whitelist/types.js.map +1 -0
  43. package/dist/cjs/fusion-order/whitelist/whitelist.js +118 -0
  44. package/dist/cjs/fusion-order/whitelist/whitelist.js.map +1 -0
  45. package/dist/cjs/index.js +1 -1
  46. package/dist/cjs/index.js.map +1 -1
  47. package/dist/cjs/sdk/encoders/cancel-order.encoder.js +1 -2
  48. package/dist/cjs/sdk/encoders/cancel-order.encoder.js.map +1 -1
  49. package/dist/cjs/sdk/sdk.js.map +1 -1
  50. package/dist/cjs/sdk/utils.js +2 -3
  51. package/dist/cjs/sdk/utils.js.map +1 -1
  52. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  53. package/dist/cjs/utils/amounts.js +2 -3
  54. package/dist/cjs/utils/amounts.js.map +1 -1
  55. package/dist/cjs/utils/time.js +1 -2
  56. package/dist/cjs/utils/time.js.map +1 -1
  57. package/dist/cjs/utils/types.js +3 -0
  58. package/dist/cjs/utils/types.js.map +1 -0
  59. package/dist/cjs/utils.js +2 -3
  60. package/dist/cjs/utils.js.map +1 -1
  61. package/dist/cjs/validations.js +5 -6
  62. package/dist/cjs/validations.js.map +1 -1
  63. package/dist/cjs/ws-api/active-websocket-orders-api.js.map +1 -1
  64. package/dist/cjs/ws-api/rpc-websocket-api.js.map +1 -1
  65. package/dist/cjs/ws-api/url.js +1 -2
  66. package/dist/cjs/ws-api/url.js.map +1 -1
  67. package/dist/cjs/ws-api/ws-api.js.map +1 -1
  68. package/dist/esm/amount-calculator/amount-calculator.js +38 -0
  69. package/dist/esm/amount-calculator/amount-calculator.js.map +1 -0
  70. package/dist/esm/{auction-calculator → amount-calculator/auction-calculator}/auction-calculator.js +16 -17
  71. package/dist/esm/amount-calculator/auction-calculator/auction-calculator.js.map +1 -0
  72. package/dist/esm/amount-calculator/auction-calculator/index.js +2 -0
  73. package/dist/esm/amount-calculator/auction-calculator/index.js.map +1 -0
  74. package/dist/esm/api/orders/orders.api.js.map +1 -1
  75. package/dist/esm/api/orders/orders.request.js.map +1 -1
  76. package/dist/esm/api/pagination.js.map +1 -1
  77. package/dist/esm/api/params.js.map +1 -1
  78. package/dist/esm/api/quoter/quote/order-params.js.map +1 -1
  79. package/dist/esm/api/quoter/quote/quote.js +9 -18
  80. package/dist/esm/api/quoter/quote/quote.js.map +1 -1
  81. package/dist/esm/api/quoter/quoter-custom-preset.request.js +1 -1
  82. package/dist/esm/api/quoter/quoter-custom-preset.request.js.map +1 -1
  83. package/dist/esm/api/quoter/quoter.api.js.map +1 -1
  84. package/dist/esm/api/quoter/quoter.request.js.map +1 -1
  85. package/dist/esm/connector/http/axios-provider.connector.js.map +1 -1
  86. package/dist/esm/connector/ws/websocket-client.connector.js.map +1 -1
  87. package/dist/esm/constants.js +0 -1
  88. package/dist/esm/constants.js.map +1 -1
  89. package/dist/esm/fusion-order/auction-details/auction-details.js +19 -11
  90. package/dist/esm/fusion-order/auction-details/auction-details.js.map +1 -1
  91. package/dist/esm/fusion-order/constants.js +1 -2
  92. package/dist/esm/fusion-order/constants.js.map +1 -1
  93. package/dist/esm/fusion-order/fusion-extension.js +115 -19
  94. package/dist/esm/fusion-order/fusion-extension.js.map +1 -1
  95. package/dist/esm/fusion-order/fusion-order.js +42 -34
  96. package/dist/esm/fusion-order/fusion-order.js.map +1 -1
  97. package/dist/esm/fusion-order/index.js +2 -1
  98. package/dist/esm/fusion-order/index.js.map +1 -1
  99. package/dist/esm/fusion-order/source-track.js.map +1 -1
  100. package/dist/esm/fusion-order/whitelist/index.js +2 -0
  101. package/dist/esm/fusion-order/whitelist/index.js.map +1 -0
  102. package/dist/esm/fusion-order/whitelist/types.js.map +1 -0
  103. package/dist/esm/fusion-order/whitelist/whitelist.js +113 -0
  104. package/dist/esm/fusion-order/whitelist/whitelist.js.map +1 -0
  105. package/dist/esm/index.js +1 -1
  106. package/dist/esm/index.js.map +1 -1
  107. package/dist/esm/sdk/sdk.js.map +1 -1
  108. package/dist/esm/sdk/utils.js.map +1 -1
  109. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  110. package/dist/esm/utils/types.js +2 -0
  111. package/dist/esm/utils/types.js.map +1 -0
  112. package/dist/esm/utils.js.map +1 -1
  113. package/dist/esm/validations.js +1 -1
  114. package/dist/esm/validations.js.map +1 -1
  115. package/dist/esm/ws-api/active-websocket-orders-api.js.map +1 -1
  116. package/dist/esm/ws-api/rpc-websocket-api.js.map +1 -1
  117. package/dist/esm/ws-api/url.js.map +1 -1
  118. package/dist/esm/ws-api/ws-api.js.map +1 -1
  119. package/dist/types/src/amount-calculator/amount-calculator.d.ts +16 -0
  120. package/dist/types/src/{auction-calculator → amount-calculator/auction-calculator}/auction-calculator.d.ts +6 -6
  121. package/dist/types/src/{auction-calculator → amount-calculator/auction-calculator}/index.d.ts +0 -1
  122. package/dist/types/src/api/quoter/quote/quote.d.ts +1 -1
  123. package/dist/types/src/constants.d.ts +1 -2
  124. package/dist/types/src/fusion-order/auction-details/auction-details.d.ts +3 -0
  125. package/dist/types/src/fusion-order/constants.d.ts +0 -1
  126. package/dist/types/src/fusion-order/fusion-extension.d.ts +18 -6
  127. package/dist/types/src/fusion-order/fusion-order.d.ts +14 -12
  128. package/dist/types/src/fusion-order/index.d.ts +2 -1
  129. package/dist/types/src/fusion-order/whitelist/index.d.ts +1 -0
  130. package/dist/types/src/fusion-order/whitelist/types.d.ts +4 -0
  131. package/dist/types/src/fusion-order/whitelist/whitelist.d.ts +25 -0
  132. package/dist/types/src/index.d.ts +1 -1
  133. package/dist/types/src/utils/types.d.ts +3 -0
  134. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  135. package/package.json +28 -26
  136. package/dist/cjs/auction-calculator/auction-calculator.js.map +0 -1
  137. package/dist/cjs/auction-calculator/constants.js +0 -5
  138. package/dist/cjs/auction-calculator/constants.js.map +0 -1
  139. package/dist/cjs/auction-calculator/index.js.map +0 -1
  140. package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js +0 -6
  141. package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js.map +0 -1
  142. package/dist/cjs/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +0 -153
  143. package/dist/cjs/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +0 -1
  144. package/dist/cjs/fusion-order/settlement-post-interaction-data/types.js.map +0 -1
  145. package/dist/esm/auction-calculator/auction-calculator.js.map +0 -1
  146. package/dist/esm/auction-calculator/constants.js +0 -2
  147. package/dist/esm/auction-calculator/constants.js.map +0 -1
  148. package/dist/esm/auction-calculator/index.js +0 -3
  149. package/dist/esm/auction-calculator/index.js.map +0 -1
  150. package/dist/esm/fusion-order/settlement-post-interaction-data/index.js +0 -3
  151. package/dist/esm/fusion-order/settlement-post-interaction-data/index.js.map +0 -1
  152. package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +0 -148
  153. package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +0 -1
  154. package/dist/esm/fusion-order/settlement-post-interaction-data/types.js.map +0 -1
  155. package/dist/types/src/auction-calculator/constants.d.ts +0 -1
  156. package/dist/types/src/fusion-order/settlement-post-interaction-data/index.d.ts +0 -2
  157. package/dist/types/src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.d.ts +0 -22
  158. package/dist/types/src/fusion-order/settlement-post-interaction-data/types.d.ts +0 -16
  159. /package/dist/cjs/fusion-order/{settlement-post-interaction-data → whitelist}/types.js +0 -0
  160. /package/dist/esm/fusion-order/{settlement-post-interaction-data → whitelist}/types.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1inch/fusion-sdk",
3
- "version": "2.1.8-rc.0",
3
+ "version": "2.1.9",
4
4
  "description": "1inch Fusion SDK",
5
5
  "author": "@1inch",
6
6
  "private": false,
@@ -18,40 +18,41 @@
18
18
  "url": "ssh://git@github.com:1inch/fusion-sdk.git"
19
19
  },
20
20
  "dependencies": {
21
- "@1inch/byte-utils": "2.3.0",
22
- "@1inch/limit-order-sdk": "^4.9.3-rc.1",
23
- "ethers": "^6.13.1",
24
- "tslib": "^2.6.3",
25
- "ws": "^8.17.1"
21
+ "@1inch/byte-utils": "3",
22
+ "@1inch/limit-order-sdk": "4.11.3",
23
+ "ethers": "^6.13.5",
24
+ "tslib": "^2.8.1",
25
+ "ws": "^8.18.0"
26
26
  },
27
27
  "devDependencies": {
28
- "@1inch/eslint-config": "1.5.1",
29
- "@1inch/tsconfig": "1.0.7",
30
- "@swc/core": "1.5.25",
31
- "@swc/jest": "0.2.36",
32
- "@types/jest": "29.5.12",
28
+ "@1inch/eslint-config": "3.0.6",
29
+ "@1inch/tsconfig": "1.0.8",
30
+ "@swc/core": "1.10.9",
31
+ "@swc/jest": "0.2.37",
32
+ "@types/jest": "29.5.14",
33
33
  "@types/prompts": "^2.4.9",
34
34
  "@types/ws": "^8.5.10",
35
- "@typescript-eslint/eslint-plugin": "~5.59.11",
36
- "@typescript-eslint/parser": "~5.51.0",
35
+ "@typescript-eslint/eslint-plugin": "^8.21.0",
36
+ "@typescript-eslint/parser": "^8.21.0",
37
37
  "axios": "^1.7.2",
38
- "eslint": "8.41.0",
39
- "eslint-config-prettier": "~8.3.0",
38
+ "eslint": "~9.18.0",
39
+ "eslint-config-prettier": "^10.0.1",
40
40
  "eslint-config-standard": "^17.1.0",
41
- "eslint-import-resolver-typescript": "3.5.5",
42
- "eslint-plugin-import": "~2.26.0",
43
- "eslint-plugin-n": "^16.6.2",
44
- "eslint-plugin-prettier": "^4.2.1",
45
- "eslint-plugin-promise": "^6.2.0",
46
- "eslint-plugin-unused-imports": "^2.0.0",
41
+ "eslint-import-resolver-typescript": "^3.6.3",
42
+ "eslint-plugin-import": "^2.30.0",
43
+ "eslint-plugin-n": "^17.10.2",
44
+ "eslint-plugin-prettier": "^5.2.1",
45
+ "eslint-plugin-promise": "^7.2.1",
46
+ "eslint-plugin-unused-imports": "^4.1.4",
47
47
  "generate-changelog": "^1.8.0",
48
48
  "jest": "^29.7.0",
49
- "prettier": "^2.8.8",
49
+ "prettier": "^3.3.3",
50
+ "testcontainers": "10.17.1",
50
51
  "ts-loader": "^9.5.1",
51
52
  "ts-mockito": "^2.6.1",
52
53
  "ts-node": "^10.9.2",
53
54
  "tslib": "2.6.3",
54
- "typescript": "4.9.4"
55
+ "typescript": "5.7.3"
55
56
  },
56
57
  "peerDependencies": {
57
58
  "assert": "^2.0.0",
@@ -66,7 +67,7 @@
66
67
  }
67
68
  },
68
69
  "volta": {
69
- "node": "18.16.0"
70
+ "node": "22.13.1"
70
71
  },
71
72
  "scripts": {
72
73
  "build": "npm run build:esm && npm run build:cjs && npm run build:types",
@@ -75,9 +76,10 @@
75
76
  "build:types": "tsc --project tsconfig.types.json",
76
77
  "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
77
78
  "lint:ci": "eslint \"{src,apps,libs,test}/**/*.ts\"",
78
- "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --ignore-path .eslintignore --fix",
79
+ "lint": "eslint \"{src,apps,libs,test}/**/*.ts\"",
79
80
  "lint:types": "tsc --noEmit",
80
- "test": "jest",
81
+ "test": "TZ=UTC jest",
82
+ "test:integration": "TZ=UTC forge build && jest -c jest.integration.config.js",
81
83
  "test:watch": "jest --watch",
82
84
  "changelog:generate": "changelog generate -a"
83
85
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"auction-calculator.js","sourceRoot":"","sources":["../../../src/auction-calculator/auction-calculator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RATE_BUMP_DENOMINATOR = void 0;
4
- exports.RATE_BUMP_DENOMINATOR = 10000000n;
5
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/auction-calculator/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,SAAW,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auction-calculator/index.ts"],"names":[],"mappings":";;;AAAA,+DAAoC;AACpC,sDAA2B"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./settlement-post-interaction-data"), exports);
5
- tslib_1.__exportStar(require("./types"), exports);
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/fusion-order/settlement-post-interaction-data/index.ts"],"names":[],"mappings":";;;AAAA,6EAAkD;AAClD,kDAAuB"}
@@ -1,153 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SettlementPostInteractionData = void 0;
4
- const tslib_1 = require("tslib");
5
- const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
6
- const byte_utils_1 = require("@1inch/byte-utils");
7
- const assert_1 = tslib_1.__importDefault(require("assert"));
8
- const validations_1 = require("../../validations");
9
- const utils_1 = require("../../utils");
10
- const constants_1 = require("../../constants");
11
- const time_1 = require("../../utils/time");
12
- class SettlementPostInteractionData {
13
- constructor(data) {
14
- this.whitelist = data.whitelist;
15
- this.integratorFee = data?.integratorFee;
16
- this.bankFee = data.bankFee || 0n;
17
- this.resolvingStartTime = data.resolvingStartTime;
18
- this.customReceiver = data.customReceiver;
19
- if (this.integratorFee?.ratio) {
20
- (0, assert_1.default)(!this.integratorFee.receiver.isZero(), 'Fee receiver can not be zero when fee set');
21
- }
22
- }
23
- static new(data) {
24
- (0, assert_1.default)(data.whitelist.length, 'Whitelist can not be empty');
25
- let sumDelay = 0n;
26
- const whitelist = data.whitelist
27
- .map((d) => ({
28
- addressHalf: d.address.toString().slice(-20),
29
- allowFrom: d.allowFrom < data.resolvingStartTime
30
- ? data.resolvingStartTime
31
- : d.allowFrom
32
- }))
33
- .sort((a, b) => Number(a.allowFrom - b.allowFrom))
34
- .map((val) => {
35
- const delay = val.allowFrom - data.resolvingStartTime - sumDelay;
36
- sumDelay += delay;
37
- (0, assert_1.default)(delay < constants_1.UINT_16_MAX, 'Too big diff between timestamps');
38
- return {
39
- delay,
40
- addressHalf: val.addressHalf
41
- };
42
- });
43
- return new SettlementPostInteractionData({
44
- ...data,
45
- whitelist
46
- });
47
- }
48
- static decode(data) {
49
- (0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Post interaction data must be valid bytes string');
50
- const iter = byte_utils_1.BytesIter.BigInt(data);
51
- const flags = new byte_utils_1.BN(iter.nextByte(byte_utils_1.BytesIter.SIDE.Back));
52
- let bankFee = 0n;
53
- let integratorFee;
54
- let customReceiver;
55
- if (flags.getBit(0n)) {
56
- bankFee = iter.nextUint32();
57
- }
58
- if (flags.getBit(1n)) {
59
- const integratorFeeRatio = iter.nextUint16();
60
- const integratorAddress = iter.nextUint160();
61
- integratorFee = {
62
- ratio: integratorFeeRatio,
63
- receiver: limit_order_sdk_1.Address.fromBigInt(integratorAddress)
64
- };
65
- if (flags.getBit(2n)) {
66
- customReceiver = limit_order_sdk_1.Address.fromBigInt(iter.nextUint160());
67
- }
68
- }
69
- const resolvingStartTime = iter.nextUint32();
70
- const whitelist = [];
71
- while (!iter.isEmpty()) {
72
- const addressHalf = iter
73
- .nextBytes(10)
74
- .toString(16)
75
- .padStart(20, '0');
76
- const delay = iter.nextUint16();
77
- whitelist.push({
78
- addressHalf,
79
- delay
80
- });
81
- }
82
- return new SettlementPostInteractionData({
83
- integratorFee,
84
- bankFee,
85
- resolvingStartTime,
86
- whitelist,
87
- customReceiver
88
- });
89
- }
90
- static fromExtension(extension) {
91
- return SettlementPostInteractionData.decode((0, utils_1.add0x)(extension.postInteraction.slice(42)));
92
- }
93
- encode() {
94
- let bitMask = new byte_utils_1.BN(0n);
95
- const bytes = new byte_utils_1.BytesBuilder();
96
- if (this.bankFee) {
97
- bitMask = bitMask.setBit(0n, 1);
98
- bytes.addUint32(this.bankFee);
99
- }
100
- if (this.integratorFee?.ratio) {
101
- bitMask = bitMask.setBit(1n, 1);
102
- bytes
103
- .addUint16(this.integratorFee.ratio)
104
- .addAddress(this.integratorFee.receiver.toString());
105
- if (this.customReceiver && !this.customReceiver.isZero()) {
106
- bitMask = bitMask.setBit(2n, 1);
107
- bytes.addAddress(this.customReceiver.toString());
108
- }
109
- }
110
- bytes.addUint32(this.resolvingStartTime);
111
- for (const wl of this.whitelist) {
112
- bytes.addBytes((0, utils_1.add0x)(wl.addressHalf)).addUint16(wl.delay);
113
- }
114
- bitMask = bitMask.setMask(new byte_utils_1.BitMask(3n, 8n), BigInt(this.whitelist.length));
115
- bytes.addUint8(bitMask.value);
116
- return bytes.asHex();
117
- }
118
- canExecuteAt(executor, executionTime) {
119
- const addressHalf = executor.toString().slice(-20);
120
- let allowedFrom = this.resolvingStartTime;
121
- for (const whitelist of this.whitelist) {
122
- allowedFrom += whitelist.delay;
123
- if (addressHalf === whitelist.addressHalf) {
124
- return executionTime >= allowedFrom;
125
- }
126
- else if (executionTime < allowedFrom) {
127
- return false;
128
- }
129
- }
130
- return false;
131
- }
132
- isExclusivityPeriod(time = (0, time_1.now)()) {
133
- if (this.whitelist.length === 1) {
134
- return true;
135
- }
136
- if (this.whitelist[0].delay === this.whitelist[1].delay) {
137
- return false;
138
- }
139
- return time <= this.resolvingStartTime + this.whitelist[1].delay;
140
- }
141
- isExclusiveResolver(wallet) {
142
- const addressHalf = wallet.toString().slice(-20);
143
- if (this.whitelist.length === 1) {
144
- return addressHalf === this.whitelist[0].addressHalf;
145
- }
146
- if (this.whitelist[0].delay === this.whitelist[1].delay) {
147
- return false;
148
- }
149
- return addressHalf === this.whitelist[0].addressHalf;
150
- }
151
- }
152
- exports.SettlementPostInteractionData = SettlementPostInteractionData;
153
- //# sourceMappingURL=settlement-post-interaction-data.js.map
@@ -1 +0,0 @@
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,4DAAyD;AACzD,kDAAsE;AACtE,4DAA2B;AAE3B,mDAA4C;AAC5C,uCAAiC;AACjC,+CAA2C;AAC3C,2CAAoC;AAEpC,MAAa,6BAA6B;IAWtC,YAAoB,IAMnB;QACG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,EAAE,aAAa,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;QACjC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAA;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;QAEzC,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;YAC3B,IAAA,gBAAM,EACF,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,EACrC,2CAA2C,CAC9C,CAAA;SACJ;IACL,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,IAA0B;QACjC,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAA;QAG3D,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC5C,SAAS,EACL,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB;gBACjC,CAAC,CAAC,IAAI,CAAC,kBAAkB;gBACzB,CAAC,CAAC,CAAC,CAAC,SAAS;SACxB,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;aACjD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAChE,QAAQ,IAAI,KAAK,CAAA;YAEjB,IAAA,gBAAM,EAAC,KAAK,GAAG,uBAAW,EAAE,iCAAiC,CAAC,CAAA;YAE9D,OAAO;gBACH,KAAK;gBACL,WAAW,EAAE,GAAG,CAAC,WAAW;aAC/B,CAAA;QACL,CAAC,CAAC,CAAA;QAEN,OAAO,IAAI,6BAA6B,CAAC;YACrC,GAAG,IAAI;YACP,SAAS;SACZ,CAAC,CAAA;IACN,CAAC;IAkBD,MAAM,CAAC,MAAM,CAAC,IAAY;QACtB,IAAA,gBAAM,EACF,IAAA,wBAAU,EAAC,IAAI,CAAC,EAChB,kDAAkD,CACrD,CAAA;QAED,MAAM,IAAI,GAAG,sBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEnC,MAAM,KAAK,GAAG,IAAI,eAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACxD,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,IAAI,aAAwC,CAAA;QAC5C,IAAI,cAAmC,CAAA;QAGvC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAClB,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;SAC9B;QAGD,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAClB,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;YAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;YAE5C,aAAa,GAAG;gBACZ,KAAK,EAAE,kBAAkB;gBACzB,QAAQ,EAAE,yBAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC;aAClD,CAAA;YAGD,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;gBAClB,cAAc,GAAG,yBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;aAC1D;SACJ;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAE5C,MAAM,SAAS,GAAG,EAAqB,CAAA;QAEvC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,WAAW,GAAG,IAAI;iBACnB,SAAS,CAAC,EAAE,CAAC;iBACb,QAAQ,CAAC,EAAE,CAAC;iBACZ,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;YAE/B,SAAS,CAAC,IAAI,CAAC;gBACX,WAAW;gBACX,KAAK;aACR,CAAC,CAAA;SACL;QAED,OAAO,IAAI,6BAA6B,CAAC;YACrC,aAAa;YACb,OAAO;YACP,kBAAkB;YAClB,SAAS;YACT,cAAc;SACjB,CAAC,CAAA;IACN,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,SAAoB;QACrC,OAAO,6BAA6B,CAAC,MAAM,CACvC,IAAA,aAAK,EAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAC7C,CAAA;IACL,CAAC;IAKM,MAAM;QAOT,IAAI,OAAO,GAAG,IAAI,eAAE,CAAC,EAAE,CAAC,CAAA;QAExB,MAAM,KAAK,GAAG,IAAI,yBAAY,EAAE,CAAA;QAGhC,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/B,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SAChC;QAGD,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;YAC3B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/B,KAAK;iBACA,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;iBACnC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;YAEvD,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE;gBACtD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBAC/B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;aACnD;SACJ;QAED,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;QAGxC,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7B,KAAK,CAAC,QAAQ,CAAC,IAAA,aAAK,EAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;SAC5D;QAED,OAAO,GAAG,OAAO,CAAC,OAAO,CACrB,IAAI,oBAAO,CAAC,EAAE,EAAE,EAAE,CAAC,EACnB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAChC,CAAA;QAED,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAE7B,OAAO,KAAK,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAQM,YAAY,CAAC,QAAiB,EAAE,aAAqB;QACxD,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA;QAElD,IAAI,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAA;QAEzC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE;YACpC,WAAW,IAAI,SAAS,CAAC,KAAK,CAAA;YAE9B,IAAI,WAAW,KAAK,SAAS,CAAC,WAAW,EAAE;gBACvC,OAAO,aAAa,IAAI,WAAW,CAAA;aACtC;iBAAM,IAAI,aAAa,GAAG,WAAW,EAAE;gBACpC,OAAO,KAAK,CAAA;aACf;SACJ;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,mBAAmB,CAAC,IAAI,GAAG,IAAA,UAAG,GAAE;QACnC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAA;SACd;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YACrD,OAAO,KAAK,CAAA;SACf;QAED,OAAO,IAAI,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACpE,CAAC;IAEM,mBAAmB,CAAC,MAAe;QACtC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA;QAGhD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,WAAW,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;SACvD;QAGD,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YACrD,OAAO,KAAK,CAAA;SACf;QAED,OAAO,WAAW,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;IACxD,CAAC;CACJ;AAvPD,sEAuPC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/fusion-order/settlement-post-interaction-data/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auction-calculator.js","sourceRoot":"","sources":["../../../src/auction-calculator/auction-calculator.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export const RATE_BUMP_DENOMINATOR = 10000000n;
2
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/auction-calculator/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG,SAAW,CAAA"}
@@ -1,3 +0,0 @@
1
- export * from './auction-calculator';
2
- export * from './constants';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auction-calculator/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA"}
@@ -1,3 +0,0 @@
1
- export * from './settlement-post-interaction-data';
2
- export * from './types';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/fusion-order/settlement-post-interaction-data/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,SAAS,CAAA"}
@@ -1,148 +0,0 @@
1
- import { Address } from '@1inch/limit-order-sdk';
2
- import { BitMask, BN, BytesBuilder, BytesIter } from '@1inch/byte-utils';
3
- import assert from 'assert';
4
- import { isHexBytes } from '../../validations';
5
- import { add0x } from '../../utils';
6
- import { UINT_16_MAX } from '../../constants';
7
- import { now } from '../../utils/time';
8
- export class SettlementPostInteractionData {
9
- constructor(data) {
10
- this.whitelist = data.whitelist;
11
- this.integratorFee = data?.integratorFee;
12
- this.bankFee = data.bankFee || 0n;
13
- this.resolvingStartTime = data.resolvingStartTime;
14
- this.customReceiver = data.customReceiver;
15
- if (this.integratorFee?.ratio) {
16
- assert(!this.integratorFee.receiver.isZero(), 'Fee receiver can not be zero when fee set');
17
- }
18
- }
19
- static new(data) {
20
- assert(data.whitelist.length, 'Whitelist can not be empty');
21
- let sumDelay = 0n;
22
- const whitelist = data.whitelist
23
- .map((d) => ({
24
- addressHalf: d.address.toString().slice(-20),
25
- allowFrom: d.allowFrom < data.resolvingStartTime
26
- ? data.resolvingStartTime
27
- : d.allowFrom
28
- }))
29
- .sort((a, b) => Number(a.allowFrom - b.allowFrom))
30
- .map((val) => {
31
- const delay = val.allowFrom - data.resolvingStartTime - sumDelay;
32
- sumDelay += delay;
33
- assert(delay < UINT_16_MAX, 'Too big diff between timestamps');
34
- return {
35
- delay,
36
- addressHalf: val.addressHalf
37
- };
38
- });
39
- return new SettlementPostInteractionData({
40
- ...data,
41
- whitelist
42
- });
43
- }
44
- static decode(data) {
45
- assert(isHexBytes(data), 'Post interaction data must be valid bytes string');
46
- const iter = BytesIter.BigInt(data);
47
- const flags = new BN(iter.nextByte(BytesIter.SIDE.Back));
48
- let bankFee = 0n;
49
- let integratorFee;
50
- let customReceiver;
51
- if (flags.getBit(0n)) {
52
- bankFee = iter.nextUint32();
53
- }
54
- if (flags.getBit(1n)) {
55
- const integratorFeeRatio = iter.nextUint16();
56
- const integratorAddress = iter.nextUint160();
57
- integratorFee = {
58
- ratio: integratorFeeRatio,
59
- receiver: Address.fromBigInt(integratorAddress)
60
- };
61
- if (flags.getBit(2n)) {
62
- customReceiver = Address.fromBigInt(iter.nextUint160());
63
- }
64
- }
65
- const resolvingStartTime = iter.nextUint32();
66
- const whitelist = [];
67
- while (!iter.isEmpty()) {
68
- const addressHalf = iter
69
- .nextBytes(10)
70
- .toString(16)
71
- .padStart(20, '0');
72
- const delay = iter.nextUint16();
73
- whitelist.push({
74
- addressHalf,
75
- delay
76
- });
77
- }
78
- return new SettlementPostInteractionData({
79
- integratorFee,
80
- bankFee,
81
- resolvingStartTime,
82
- whitelist,
83
- customReceiver
84
- });
85
- }
86
- static fromExtension(extension) {
87
- return SettlementPostInteractionData.decode(add0x(extension.postInteraction.slice(42)));
88
- }
89
- encode() {
90
- let bitMask = new BN(0n);
91
- const bytes = new BytesBuilder();
92
- if (this.bankFee) {
93
- bitMask = bitMask.setBit(0n, 1);
94
- bytes.addUint32(this.bankFee);
95
- }
96
- if (this.integratorFee?.ratio) {
97
- bitMask = bitMask.setBit(1n, 1);
98
- bytes
99
- .addUint16(this.integratorFee.ratio)
100
- .addAddress(this.integratorFee.receiver.toString());
101
- if (this.customReceiver && !this.customReceiver.isZero()) {
102
- bitMask = bitMask.setBit(2n, 1);
103
- bytes.addAddress(this.customReceiver.toString());
104
- }
105
- }
106
- bytes.addUint32(this.resolvingStartTime);
107
- for (const wl of this.whitelist) {
108
- bytes.addBytes(add0x(wl.addressHalf)).addUint16(wl.delay);
109
- }
110
- bitMask = bitMask.setMask(new BitMask(3n, 8n), BigInt(this.whitelist.length));
111
- bytes.addUint8(bitMask.value);
112
- return bytes.asHex();
113
- }
114
- canExecuteAt(executor, executionTime) {
115
- const addressHalf = executor.toString().slice(-20);
116
- let allowedFrom = this.resolvingStartTime;
117
- for (const whitelist of this.whitelist) {
118
- allowedFrom += whitelist.delay;
119
- if (addressHalf === whitelist.addressHalf) {
120
- return executionTime >= allowedFrom;
121
- }
122
- else if (executionTime < allowedFrom) {
123
- return false;
124
- }
125
- }
126
- return false;
127
- }
128
- isExclusivityPeriod(time = now()) {
129
- if (this.whitelist.length === 1) {
130
- return true;
131
- }
132
- if (this.whitelist[0].delay === this.whitelist[1].delay) {
133
- return false;
134
- }
135
- return time <= this.resolvingStartTime + this.whitelist[1].delay;
136
- }
137
- isExclusiveResolver(wallet) {
138
- const addressHalf = wallet.toString().slice(-20);
139
- if (this.whitelist.length === 1) {
140
- return addressHalf === this.whitelist[0].addressHalf;
141
- }
142
- if (this.whitelist[0].delay === this.whitelist[1].delay) {
143
- return false;
144
- }
145
- return addressHalf === this.whitelist[0].addressHalf;
146
- }
147
- }
148
- //# sourceMappingURL=settlement-post-interaction-data.js.map
@@ -1 +0,0 @@
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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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/fusion-order/settlement-post-interaction-data/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- export declare const RATE_BUMP_DENOMINATOR = 10000000n;
@@ -1,2 +0,0 @@
1
- export * from './settlement-post-interaction-data';
2
- export * from './types';
@@ -1,22 +0,0 @@
1
- import { Address, Extension } from '@1inch/limit-order-sdk';
2
- import { IntegratorFee, SettlementSuffixData } from './types';
3
- export declare class SettlementPostInteractionData {
4
- readonly whitelist: WhitelistItem[];
5
- readonly integratorFee?: IntegratorFee;
6
- readonly bankFee: bigint;
7
- readonly resolvingStartTime: bigint;
8
- readonly customReceiver?: Address;
9
- private constructor();
10
- static new(data: SettlementSuffixData): SettlementPostInteractionData;
11
- static decode(data: string): SettlementPostInteractionData;
12
- static fromExtension(extension: Extension): SettlementPostInteractionData;
13
- encode(): string;
14
- canExecuteAt(executor: Address, executionTime: bigint): boolean;
15
- isExclusivityPeriod(time?: bigint): boolean;
16
- isExclusiveResolver(wallet: Address): boolean;
17
- }
18
- type WhitelistItem = {
19
- addressHalf: string;
20
- delay: bigint;
21
- };
22
- export {};
@@ -1,16 +0,0 @@
1
- import { Address } from '@1inch/limit-order-sdk';
2
- export type AuctionWhitelistItem = {
3
- address: Address;
4
- allowFrom: bigint;
5
- };
6
- export type SettlementSuffixData = {
7
- whitelist: AuctionWhitelistItem[];
8
- integratorFee?: IntegratorFee;
9
- bankFee?: bigint;
10
- resolvingStartTime: bigint;
11
- customReceiver?: Address;
12
- };
13
- export type IntegratorFee = {
14
- ratio: bigint;
15
- receiver: Address;
16
- };