@1inch/fusion-sdk 2.1.4 → 2.1.5-rc.1

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 (485) hide show
  1. package/dist/cjs/api/fusion-api.js.map +1 -0
  2. package/dist/cjs/api/index.js +11 -0
  3. package/dist/cjs/api/index.js.map +1 -0
  4. package/dist/cjs/api/orders/index.js +7 -0
  5. package/dist/cjs/api/orders/index.js.map +1 -0
  6. package/dist/{api → cjs/api}/orders/orders.api.js +2 -2
  7. package/dist/cjs/api/orders/orders.api.js.map +1 -0
  8. package/dist/cjs/api/orders/orders.request.js.map +1 -0
  9. package/dist/cjs/api/orders/types.js.map +1 -0
  10. package/dist/cjs/api/pagination.js.map +1 -0
  11. package/dist/cjs/api/params.js.map +1 -0
  12. package/dist/cjs/api/quoter/index.js +10 -0
  13. package/dist/cjs/api/quoter/index.js.map +1 -0
  14. package/dist/cjs/api/quoter/preset.js.map +1 -0
  15. package/dist/cjs/api/quoter/quote/index.js +7 -0
  16. package/dist/cjs/api/quoter/quote/index.js.map +1 -0
  17. package/dist/cjs/api/quoter/quote/order-params.js.map +1 -0
  18. package/dist/cjs/api/quoter/quote/quote.js.map +1 -0
  19. package/dist/cjs/api/quoter/quote/types.js.map +1 -0
  20. package/dist/cjs/api/quoter/quoter-custom-preset.request.js.map +1 -0
  21. package/dist/cjs/api/quoter/quoter.api.js.map +1 -0
  22. package/dist/cjs/api/quoter/quoter.request.js.map +1 -0
  23. package/dist/cjs/api/quoter/types.js.map +1 -0
  24. package/dist/cjs/api/relayer/index.js +7 -0
  25. package/dist/cjs/api/relayer/index.js.map +1 -0
  26. package/dist/cjs/api/relayer/relayer.api.js.map +1 -0
  27. package/dist/cjs/api/relayer/relayer.request.js.map +1 -0
  28. package/dist/{connector/ws → cjs/api/relayer}/types.js.map +1 -1
  29. package/dist/{api → cjs/api}/types.js.map +1 -1
  30. package/dist/{auction-calculator → cjs/auction-calculator}/auction-calculator.js +1 -21
  31. package/dist/cjs/auction-calculator/auction-calculator.js.map +1 -0
  32. package/dist/{auction-calculator → cjs/auction-calculator}/constants.js +1 -1
  33. package/dist/cjs/auction-calculator/constants.js.map +1 -0
  34. package/dist/cjs/auction-calculator/index.js +6 -0
  35. package/dist/cjs/auction-calculator/index.js.map +1 -0
  36. package/dist/cjs/connector/blockchain/blockchain-provider.connector.js.map +1 -0
  37. package/dist/cjs/connector/blockchain/index.js +7 -0
  38. package/dist/cjs/connector/blockchain/index.js.map +1 -0
  39. package/dist/cjs/connector/blockchain/private-key-provider.connector.js.map +1 -0
  40. package/dist/cjs/connector/blockchain/web3-provider-connector.js.map +1 -0
  41. package/dist/{connector → cjs/connector}/http/axios-provider.connector.js +2 -24
  42. package/dist/cjs/connector/http/axios-provider.connector.js.map +1 -0
  43. package/dist/cjs/connector/http/http-provider.connector.js.map +1 -0
  44. package/dist/cjs/connector/http/index.js +6 -0
  45. package/dist/cjs/connector/http/index.js.map +1 -0
  46. package/dist/cjs/connector/index.js +7 -0
  47. package/dist/cjs/connector/index.js.map +1 -0
  48. package/dist/cjs/connector/ws/index.js +7 -0
  49. package/dist/cjs/connector/ws/index.js.map +1 -0
  50. package/dist/cjs/connector/ws/types.js.map +1 -0
  51. package/dist/{connector → cjs/connector}/ws/websocket-client.connector.js +2 -6
  52. package/dist/cjs/connector/ws/websocket-client.connector.js.map +1 -0
  53. package/dist/cjs/connector/ws/websocket-provider.connector.js.map +1 -0
  54. package/dist/cjs/constants.js.map +1 -0
  55. package/dist/cjs/errors.js.map +1 -0
  56. package/dist/{fusion-order → cjs/fusion-order}/auction-details/auction-details.js +2 -22
  57. package/dist/cjs/fusion-order/auction-details/auction-details.js.map +1 -0
  58. package/dist/cjs/fusion-order/auction-details/index.js +6 -0
  59. package/dist/cjs/fusion-order/auction-details/index.js.map +1 -0
  60. package/dist/cjs/fusion-order/auction-details/types.js.map +1 -0
  61. package/dist/cjs/fusion-order/constants.js.map +1 -0
  62. package/dist/{fusion-order → cjs/fusion-order}/fusion-extension.js +5 -9
  63. package/dist/cjs/fusion-order/fusion-extension.js.map +1 -0
  64. package/dist/{fusion-order → cjs/fusion-order}/fusion-order.js +12 -70
  65. package/dist/cjs/fusion-order/fusion-order.js.map +1 -0
  66. package/dist/cjs/fusion-order/index.js +11 -0
  67. package/dist/cjs/fusion-order/index.js.map +1 -0
  68. package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js +6 -0
  69. package/dist/cjs/fusion-order/settlement-post-interaction-data/index.js.map +1 -0
  70. package/dist/{fusion-order → cjs/fusion-order}/settlement-post-interaction-data/settlement-post-interaction-data.js +3 -45
  71. package/dist/cjs/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -0
  72. package/dist/cjs/fusion-order/settlement-post-interaction-data/types.js.map +1 -0
  73. package/dist/cjs/fusion-order/source-track.js.map +1 -0
  74. package/dist/{index.js → cjs/index.js} +14 -25
  75. package/dist/cjs/index.js.map +1 -0
  76. package/dist/{sdk → cjs/sdk}/encoders/cancel-order.encoder.js +3 -5
  77. package/dist/cjs/sdk/encoders/cancel-order.encoder.js.map +1 -0
  78. package/dist/cjs/sdk/encoders/index.js +5 -0
  79. package/dist/cjs/sdk/encoders/index.js.map +1 -0
  80. package/dist/cjs/sdk/index.js +8 -0
  81. package/dist/cjs/sdk/index.js.map +1 -0
  82. package/dist/cjs/sdk/sdk.js.map +1 -0
  83. package/dist/{sdk → cjs/sdk}/types.js.map +1 -1
  84. package/dist/cjs/sdk/utils.js.map +1 -0
  85. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  86. package/dist/cjs/utils/amounts.js +13 -0
  87. package/dist/cjs/utils/amounts.js.map +1 -0
  88. package/dist/cjs/utils/time.js.map +1 -0
  89. package/dist/cjs/utils.js.map +1 -0
  90. package/dist/{validations.js → cjs/validations.js} +0 -4
  91. package/dist/cjs/validations.js.map +1 -0
  92. package/dist/cjs/ws-api/active-websocket-orders-api.js.map +1 -0
  93. package/dist/cjs/ws-api/constants.js.map +1 -0
  94. package/dist/cjs/ws-api/index.js +9 -0
  95. package/dist/cjs/ws-api/index.js.map +1 -0
  96. package/dist/cjs/ws-api/rpc-websocket-api.js.map +1 -0
  97. package/dist/{api/relayer → cjs/ws-api}/types.js.map +1 -1
  98. package/dist/cjs/ws-api/url.js.map +1 -0
  99. package/dist/cjs/ws-api/ws-api.js.map +1 -0
  100. package/dist/esm/abi/AggregationRouterV6.abi.json +1186 -0
  101. package/dist/esm/api/fusion-api.js +54 -0
  102. package/dist/esm/api/fusion-api.js.map +1 -0
  103. package/dist/esm/api/index.js +8 -0
  104. package/dist/esm/api/index.js.map +1 -0
  105. package/dist/esm/api/orders/index.js +4 -0
  106. package/dist/esm/api/orders/index.js.map +1 -0
  107. package/dist/esm/api/orders/orders.api.js +39 -0
  108. package/dist/esm/api/orders/orders.api.js.map +1 -0
  109. package/dist/esm/api/orders/orders.request.js +71 -0
  110. package/dist/esm/api/orders/orders.request.js.map +1 -0
  111. package/dist/esm/api/orders/types.js +13 -0
  112. package/dist/esm/api/orders/types.js.map +1 -0
  113. package/dist/esm/api/pagination.js +16 -0
  114. package/dist/esm/api/pagination.js.map +1 -0
  115. package/dist/esm/api/params.js +23 -0
  116. package/dist/esm/api/params.js.map +1 -0
  117. package/dist/esm/api/quoter/index.js +7 -0
  118. package/dist/esm/api/quoter/index.js.map +1 -0
  119. package/dist/esm/api/quoter/preset.js +38 -0
  120. package/dist/esm/api/quoter/preset.js.map +1 -0
  121. package/dist/esm/api/quoter/quote/index.js +4 -0
  122. package/dist/esm/api/quoter/quote/index.js.map +1 -0
  123. package/dist/esm/api/quoter/quote/order-params.js +22 -0
  124. package/dist/esm/api/quoter/quote/order-params.js.map +1 -0
  125. package/dist/esm/api/quoter/quote/quote.js +99 -0
  126. package/dist/esm/api/quoter/quote/quote.js.map +1 -0
  127. package/dist/esm/api/quoter/quote/types.js +2 -0
  128. package/dist/esm/api/quoter/quote/types.js.map +1 -0
  129. package/dist/esm/api/quoter/quoter-custom-preset.request.js +61 -0
  130. package/dist/esm/api/quoter/quoter-custom-preset.request.js.map +1 -0
  131. package/dist/esm/api/quoter/quoter.api.js +31 -0
  132. package/dist/esm/api/quoter/quoter.api.js.map +1 -0
  133. package/dist/esm/api/quoter/quoter.request.js +47 -0
  134. package/dist/esm/api/quoter/quoter.request.js.map +1 -0
  135. package/dist/esm/api/quoter/types.js +8 -0
  136. package/dist/esm/api/quoter/types.js.map +1 -0
  137. package/dist/esm/api/relayer/index.js +4 -0
  138. package/dist/esm/api/relayer/index.js.map +1 -0
  139. package/dist/esm/api/relayer/relayer.api.js +20 -0
  140. package/dist/esm/api/relayer/relayer.api.js.map +1 -0
  141. package/dist/esm/api/relayer/relayer.request.js +20 -0
  142. package/dist/esm/api/relayer/relayer.request.js.map +1 -0
  143. package/dist/esm/api/relayer/types.js +2 -0
  144. package/dist/esm/api/relayer/types.js.map +1 -0
  145. package/dist/esm/api/types.js +2 -0
  146. package/dist/{ws-api → esm/api}/types.js.map +1 -1
  147. package/dist/esm/auction-calculator/auction-calculator.js +84 -0
  148. package/dist/esm/auction-calculator/auction-calculator.js.map +1 -0
  149. package/dist/esm/auction-calculator/constants.js +2 -0
  150. package/dist/esm/auction-calculator/constants.js.map +1 -0
  151. package/dist/esm/auction-calculator/index.js +3 -0
  152. package/dist/esm/auction-calculator/index.js.map +1 -0
  153. package/dist/esm/connector/blockchain/blockchain-provider.connector.js +2 -0
  154. package/dist/esm/connector/blockchain/blockchain-provider.connector.js.map +1 -0
  155. package/dist/esm/connector/blockchain/index.js +4 -0
  156. package/dist/esm/connector/blockchain/index.js.map +1 -0
  157. package/dist/esm/connector/blockchain/private-key-provider.connector.js +21 -0
  158. package/dist/esm/connector/blockchain/private-key-provider.connector.js.map +1 -0
  159. package/dist/esm/connector/blockchain/web3-provider-connector.js +24 -0
  160. package/dist/esm/connector/blockchain/web3-provider-connector.js.map +1 -0
  161. package/dist/esm/connector/http/axios-provider.connector.js +44 -0
  162. package/dist/esm/connector/http/axios-provider.connector.js.map +1 -0
  163. package/dist/esm/connector/http/http-provider.connector.js +2 -0
  164. package/dist/esm/connector/http/http-provider.connector.js.map +1 -0
  165. package/dist/esm/connector/http/index.js +3 -0
  166. package/dist/esm/connector/http/index.js.map +1 -0
  167. package/dist/esm/connector/index.js +4 -0
  168. package/dist/esm/connector/index.js.map +1 -0
  169. package/dist/esm/connector/ws/index.js +4 -0
  170. package/dist/esm/connector/ws/index.js.map +1 -0
  171. package/dist/esm/connector/ws/types.js +2 -0
  172. package/dist/esm/connector/ws/types.js.map +1 -0
  173. package/dist/esm/connector/ws/websocket-client.connector.js +74 -0
  174. package/dist/esm/connector/ws/websocket-client.connector.js.map +1 -0
  175. package/dist/esm/connector/ws/websocket-provider.connector.js +2 -0
  176. package/dist/esm/connector/ws/websocket-provider.connector.js.map +1 -0
  177. package/dist/esm/constants.js +23 -0
  178. package/dist/esm/constants.js.map +1 -0
  179. package/dist/esm/errors.js +6 -0
  180. package/dist/esm/errors.js.map +1 -0
  181. package/dist/esm/fusion-order/auction-details/auction-details.js +66 -0
  182. package/dist/esm/fusion-order/auction-details/auction-details.js.map +1 -0
  183. package/dist/esm/fusion-order/auction-details/index.js +3 -0
  184. package/dist/esm/fusion-order/auction-details/index.js.map +1 -0
  185. package/dist/esm/fusion-order/auction-details/types.js +2 -0
  186. package/dist/esm/fusion-order/auction-details/types.js.map +1 -0
  187. package/dist/esm/fusion-order/constants.js +15 -0
  188. package/dist/esm/fusion-order/constants.js.map +1 -0
  189. package/dist/esm/fusion-order/fusion-extension.js +40 -0
  190. package/dist/esm/fusion-order/fusion-extension.js.map +1 -0
  191. package/dist/esm/fusion-order/fusion-order.js +192 -0
  192. package/dist/esm/fusion-order/fusion-order.js.map +1 -0
  193. package/dist/esm/fusion-order/index.js +6 -0
  194. package/dist/esm/fusion-order/index.js.map +1 -0
  195. package/dist/esm/fusion-order/settlement-post-interaction-data/index.js +3 -0
  196. package/dist/esm/fusion-order/settlement-post-interaction-data/index.js.map +1 -0
  197. package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +148 -0
  198. package/dist/esm/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -0
  199. package/dist/esm/fusion-order/settlement-post-interaction-data/types.js +2 -0
  200. package/dist/esm/fusion-order/settlement-post-interaction-data/types.js.map +1 -0
  201. package/dist/esm/fusion-order/source-track.js +25 -0
  202. package/dist/esm/fusion-order/source-track.js.map +1 -0
  203. package/dist/esm/index.js +14 -0
  204. package/dist/esm/index.js.map +1 -0
  205. package/dist/esm/sdk/encoders/cancel-order.encoder.js +13 -0
  206. package/dist/esm/sdk/encoders/cancel-order.encoder.js.map +1 -0
  207. package/dist/esm/sdk/encoders/index.js +2 -0
  208. package/dist/esm/sdk/encoders/index.js.map +1 -0
  209. package/dist/esm/sdk/index.js +5 -0
  210. package/dist/esm/sdk/index.js.map +1 -0
  211. package/dist/esm/sdk/sdk.js +132 -0
  212. package/dist/esm/sdk/sdk.js.map +1 -0
  213. package/dist/esm/sdk/types.js +2 -0
  214. package/dist/esm/sdk/types.js.map +1 -0
  215. package/dist/esm/sdk/utils.js +13 -0
  216. package/dist/esm/sdk/utils.js.map +1 -0
  217. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
  218. package/dist/esm/utils/amounts.js +8 -0
  219. package/dist/esm/utils/amounts.js.map +1 -0
  220. package/dist/esm/utils/time.js +4 -0
  221. package/dist/esm/utils/time.js.map +1 -0
  222. package/dist/esm/utils.js +13 -0
  223. package/dist/esm/utils.js.map +1 -0
  224. package/dist/esm/validations.js +21 -0
  225. package/dist/esm/validations.js.map +1 -0
  226. package/dist/esm/ws-api/active-websocket-orders-api.js +56 -0
  227. package/dist/esm/ws-api/active-websocket-orders-api.js.map +1 -0
  228. package/dist/esm/ws-api/constants.js +9 -0
  229. package/dist/esm/ws-api/constants.js.map +1 -0
  230. package/dist/esm/ws-api/index.js +6 -0
  231. package/dist/esm/ws-api/index.js.map +1 -0
  232. package/dist/esm/ws-api/rpc-websocket-api.js +42 -0
  233. package/dist/esm/ws-api/rpc-websocket-api.js.map +1 -0
  234. package/dist/esm/ws-api/types.js +2 -0
  235. package/dist/esm/ws-api/types.js.map +1 -0
  236. package/dist/esm/ws-api/url.js +7 -0
  237. package/dist/esm/ws-api/url.js.map +1 -0
  238. package/dist/esm/ws-api/ws-api.js +56 -0
  239. package/dist/esm/ws-api/ws-api.js.map +1 -0
  240. package/dist/{api → types/src/api}/quoter/quote/quote.d.ts +0 -4
  241. package/dist/{api → types/src/api}/quoter/quote/types.d.ts +0 -4
  242. package/dist/{auction-calculator → types/src/auction-calculator}/auction-calculator.d.ts +0 -20
  243. package/dist/types/src/fusion-order/auction-details/auction-details.d.ts +22 -0
  244. package/dist/types/src/fusion-order/auction-details/types.d.ts +8 -0
  245. package/dist/{fusion-order → types/src/fusion-order}/fusion-extension.d.ts +1 -5
  246. package/dist/types/src/fusion-order/fusion-order.d.ts +66 -0
  247. package/dist/types/src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.d.ts +22 -0
  248. package/dist/{fusion-order → types/src/fusion-order}/settlement-post-interaction-data/types.d.ts +0 -8
  249. package/dist/{index.d.ts → types/src/index.d.ts} +2 -1
  250. package/dist/{sdk → types/src/sdk}/types.d.ts +0 -11
  251. package/dist/types/src/utils/amounts.d.ts +2 -0
  252. package/dist/{validations.d.ts → types/src/validations.d.ts} +0 -4
  253. package/dist/types/tsconfig.types.tsbuildinfo +1 -0
  254. package/package.json +21 -16
  255. package/dist/api/fusion-api.js.map +0 -1
  256. package/dist/api/index.js +0 -24
  257. package/dist/api/index.js.map +0 -1
  258. package/dist/api/orders/index.js +0 -20
  259. package/dist/api/orders/index.js.map +0 -1
  260. package/dist/api/orders/order-api.spec.d.ts +0 -1
  261. package/dist/api/orders/order-api.spec.js +0 -499
  262. package/dist/api/orders/order-api.spec.js.map +0 -1
  263. package/dist/api/orders/orders.api.js.map +0 -1
  264. package/dist/api/orders/orders.request.js.map +0 -1
  265. package/dist/api/orders/types.js.map +0 -1
  266. package/dist/api/pagination.js.map +0 -1
  267. package/dist/api/pagination.spec.d.ts +0 -1
  268. package/dist/api/pagination.spec.js +0 -28
  269. package/dist/api/pagination.spec.js.map +0 -1
  270. package/dist/api/params.js.map +0 -1
  271. package/dist/api/quoter/index.js +0 -23
  272. package/dist/api/quoter/index.js.map +0 -1
  273. package/dist/api/quoter/preset.js.map +0 -1
  274. package/dist/api/quoter/quote/index.js +0 -20
  275. package/dist/api/quoter/quote/index.js.map +0 -1
  276. package/dist/api/quoter/quote/order-params.js.map +0 -1
  277. package/dist/api/quoter/quote/quote.js.map +0 -1
  278. package/dist/api/quoter/quote/types.js.map +0 -1
  279. package/dist/api/quoter/quoter-custom-preset.request.js.map +0 -1
  280. package/dist/api/quoter/quoter-custom-preset.request.spec.d.ts +0 -1
  281. package/dist/api/quoter/quoter-custom-preset.request.spec.js +0 -94
  282. package/dist/api/quoter/quoter-custom-preset.request.spec.js.map +0 -1
  283. package/dist/api/quoter/quoter.api.js.map +0 -1
  284. package/dist/api/quoter/quoter.api.spec.d.ts +0 -1
  285. package/dist/api/quoter/quoter.api.spec.js +0 -177
  286. package/dist/api/quoter/quoter.api.spec.js.map +0 -1
  287. package/dist/api/quoter/quoter.request.js.map +0 -1
  288. package/dist/api/quoter/quoter.request.spec.d.ts +0 -1
  289. package/dist/api/quoter/quoter.request.spec.js +0 -68
  290. package/dist/api/quoter/quoter.request.spec.js.map +0 -1
  291. package/dist/api/quoter/types.js.map +0 -1
  292. package/dist/api/relayer/index.js +0 -20
  293. package/dist/api/relayer/index.js.map +0 -1
  294. package/dist/api/relayer/relayer.api.js.map +0 -1
  295. package/dist/api/relayer/relayer.api.spec.d.ts +0 -1
  296. package/dist/api/relayer/relayer.api.spec.js +0 -81
  297. package/dist/api/relayer/relayer.api.spec.js.map +0 -1
  298. package/dist/api/relayer/relayer.request.js.map +0 -1
  299. package/dist/auction-calculator/auction-calculator.js.map +0 -1
  300. package/dist/auction-calculator/auction-calculator.spec.d.ts +0 -1
  301. package/dist/auction-calculator/auction-calculator.spec.js +0 -60
  302. package/dist/auction-calculator/auction-calculator.spec.js.map +0 -1
  303. package/dist/auction-calculator/constants.js.map +0 -1
  304. package/dist/auction-calculator/index.js +0 -19
  305. package/dist/auction-calculator/index.js.map +0 -1
  306. package/dist/connector/blockchain/blockchain-provider.connector.js.map +0 -1
  307. package/dist/connector/blockchain/index.js +0 -20
  308. package/dist/connector/blockchain/index.js.map +0 -1
  309. package/dist/connector/blockchain/private-key-provider.connector.js.map +0 -1
  310. package/dist/connector/blockchain/private-key-provider.connector.spec.d.ts +0 -1
  311. package/dist/connector/blockchain/private-key-provider.connector.spec.js +0 -44
  312. package/dist/connector/blockchain/private-key-provider.connector.spec.js.map +0 -1
  313. package/dist/connector/blockchain/web3-provider-connector.js.map +0 -1
  314. package/dist/connector/blockchain/web3-provider.connector.spec.d.ts +0 -1
  315. package/dist/connector/blockchain/web3-provider.connector.spec.js +0 -47
  316. package/dist/connector/blockchain/web3-provider.connector.spec.js.map +0 -1
  317. package/dist/connector/http/axios-provider.connector.js.map +0 -1
  318. package/dist/connector/http/axios-provider.connector.spec.d.ts +0 -1
  319. package/dist/connector/http/axios-provider.connector.spec.js +0 -39
  320. package/dist/connector/http/axios-provider.connector.spec.js.map +0 -1
  321. package/dist/connector/http/http-provider.connector.js.map +0 -1
  322. package/dist/connector/http/index.js +0 -19
  323. package/dist/connector/http/index.js.map +0 -1
  324. package/dist/connector/index.js +0 -20
  325. package/dist/connector/index.js.map +0 -1
  326. package/dist/connector/ws/index.js +0 -20
  327. package/dist/connector/ws/index.js.map +0 -1
  328. package/dist/connector/ws/websocket-client.connector.js.map +0 -1
  329. package/dist/connector/ws/websocket-provider.connector.js.map +0 -1
  330. package/dist/constants.js.map +0 -1
  331. package/dist/errors.js.map +0 -1
  332. package/dist/fusion-order/auction-details/auction-details.d.ts +0 -54
  333. package/dist/fusion-order/auction-details/auction-details.js.map +0 -1
  334. package/dist/fusion-order/auction-details/auction-details.spec.d.ts +0 -1
  335. package/dist/fusion-order/auction-details/auction-details.spec.js +0 -24
  336. package/dist/fusion-order/auction-details/auction-details.spec.js.map +0 -1
  337. package/dist/fusion-order/auction-details/index.js +0 -19
  338. package/dist/fusion-order/auction-details/index.js.map +0 -1
  339. package/dist/fusion-order/auction-details/types.d.ts +0 -23
  340. package/dist/fusion-order/auction-details/types.js.map +0 -1
  341. package/dist/fusion-order/constants.js.map +0 -1
  342. package/dist/fusion-order/fusion-extension.js.map +0 -1
  343. package/dist/fusion-order/fusion-extension.spec.d.ts +0 -1
  344. package/dist/fusion-order/fusion-extension.spec.js +0 -75
  345. package/dist/fusion-order/fusion-extension.spec.js.map +0 -1
  346. package/dist/fusion-order/fusion-order.d.ts +0 -127
  347. package/dist/fusion-order/fusion-order.js.map +0 -1
  348. package/dist/fusion-order/fusion-order.spec.d.ts +0 -1
  349. package/dist/fusion-order/fusion-order.spec.js +0 -161
  350. package/dist/fusion-order/fusion-order.spec.js.map +0 -1
  351. package/dist/fusion-order/index.js +0 -24
  352. package/dist/fusion-order/index.js.map +0 -1
  353. package/dist/fusion-order/settlement-post-interaction-data/index.js +0 -19
  354. package/dist/fusion-order/settlement-post-interaction-data/index.js.map +0 -1
  355. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.d.ts +0 -54
  356. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +0 -1
  357. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.d.ts +0 -1
  358. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.js +0 -120
  359. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.spec.js.map +0 -1
  360. package/dist/fusion-order/settlement-post-interaction-data/types.js.map +0 -1
  361. package/dist/fusion-order/source-track.js.map +0 -1
  362. package/dist/index.js.map +0 -1
  363. package/dist/sdk/encoders/cancel-order.encoder.js.map +0 -1
  364. package/dist/sdk/encoders/index.js +0 -18
  365. package/dist/sdk/encoders/index.js.map +0 -1
  366. package/dist/sdk/index.js +0 -21
  367. package/dist/sdk/index.js.map +0 -1
  368. package/dist/sdk/sdk.js.map +0 -1
  369. package/dist/sdk/sdk.spec.d.ts +0 -1
  370. package/dist/sdk/sdk.spec.js +0 -82
  371. package/dist/sdk/sdk.spec.js.map +0 -1
  372. package/dist/sdk/utils.js.map +0 -1
  373. package/dist/utils/amounts.d.ts +0 -18
  374. package/dist/utils/amounts.js +0 -29
  375. package/dist/utils/amounts.js.map +0 -1
  376. package/dist/utils/time.js.map +0 -1
  377. package/dist/utils.js.map +0 -1
  378. package/dist/validations.js.map +0 -1
  379. package/dist/ws-api/active-websocket-orders-api.js.map +0 -1
  380. package/dist/ws-api/constants.js.map +0 -1
  381. package/dist/ws-api/index.js +0 -22
  382. package/dist/ws-api/index.js.map +0 -1
  383. package/dist/ws-api/rpc-websocket-api.js.map +0 -1
  384. package/dist/ws-api/url.js.map +0 -1
  385. package/dist/ws-api/ws-api.js.map +0 -1
  386. package/dist/ws-api/ws.spec.d.ts +0 -1
  387. package/dist/ws-api/ws.spec.js +0 -695
  388. package/dist/ws-api/ws.spec.js.map +0 -1
  389. /package/dist/{abi → cjs/abi}/AggregationRouterV6.abi.json +0 -0
  390. /package/dist/{api → cjs/api}/fusion-api.js +0 -0
  391. /package/dist/{api → cjs/api}/orders/orders.request.js +0 -0
  392. /package/dist/{api → cjs/api}/orders/types.js +0 -0
  393. /package/dist/{api → cjs/api}/pagination.js +0 -0
  394. /package/dist/{api → cjs/api}/params.js +0 -0
  395. /package/dist/{api → cjs/api}/quoter/preset.js +0 -0
  396. /package/dist/{api → cjs/api}/quoter/quote/order-params.js +0 -0
  397. /package/dist/{api → cjs/api}/quoter/quote/quote.js +0 -0
  398. /package/dist/{api → cjs/api}/quoter/quote/types.js +0 -0
  399. /package/dist/{api → cjs/api}/quoter/quoter-custom-preset.request.js +0 -0
  400. /package/dist/{api → cjs/api}/quoter/quoter.api.js +0 -0
  401. /package/dist/{api → cjs/api}/quoter/quoter.request.js +0 -0
  402. /package/dist/{api → cjs/api}/quoter/types.js +0 -0
  403. /package/dist/{api → cjs/api}/relayer/relayer.api.js +0 -0
  404. /package/dist/{api → cjs/api}/relayer/relayer.request.js +0 -0
  405. /package/dist/{api → cjs/api}/relayer/types.js +0 -0
  406. /package/dist/{api → cjs/api}/types.js +0 -0
  407. /package/dist/{connector → cjs/connector}/blockchain/blockchain-provider.connector.js +0 -0
  408. /package/dist/{connector → cjs/connector}/blockchain/private-key-provider.connector.js +0 -0
  409. /package/dist/{connector → cjs/connector}/blockchain/web3-provider-connector.js +0 -0
  410. /package/dist/{connector → cjs/connector}/http/http-provider.connector.js +0 -0
  411. /package/dist/{connector → cjs/connector}/ws/types.js +0 -0
  412. /package/dist/{connector → cjs/connector}/ws/websocket-provider.connector.js +0 -0
  413. /package/dist/{constants.js → cjs/constants.js} +0 -0
  414. /package/dist/{errors.js → cjs/errors.js} +0 -0
  415. /package/dist/{fusion-order → cjs/fusion-order}/auction-details/types.js +0 -0
  416. /package/dist/{fusion-order → cjs/fusion-order}/constants.js +0 -0
  417. /package/dist/{fusion-order → cjs/fusion-order}/settlement-post-interaction-data/types.js +0 -0
  418. /package/dist/{fusion-order → cjs/fusion-order}/source-track.js +0 -0
  419. /package/dist/{sdk → cjs/sdk}/sdk.js +0 -0
  420. /package/dist/{sdk → cjs/sdk}/types.js +0 -0
  421. /package/dist/{sdk → cjs/sdk}/utils.js +0 -0
  422. /package/dist/{utils → cjs/utils}/time.js +0 -0
  423. /package/dist/{utils.js → cjs/utils.js} +0 -0
  424. /package/dist/{ws-api → cjs/ws-api}/active-websocket-orders-api.js +0 -0
  425. /package/dist/{ws-api → cjs/ws-api}/constants.js +0 -0
  426. /package/dist/{ws-api → cjs/ws-api}/rpc-websocket-api.js +0 -0
  427. /package/dist/{ws-api → cjs/ws-api}/types.js +0 -0
  428. /package/dist/{ws-api → cjs/ws-api}/url.js +0 -0
  429. /package/dist/{ws-api → cjs/ws-api}/ws-api.js +0 -0
  430. /package/dist/{api → types/src/api}/fusion-api.d.ts +0 -0
  431. /package/dist/{api → types/src/api}/index.d.ts +0 -0
  432. /package/dist/{api → types/src/api}/orders/index.d.ts +0 -0
  433. /package/dist/{api → types/src/api}/orders/orders.api.d.ts +0 -0
  434. /package/dist/{api → types/src/api}/orders/orders.request.d.ts +0 -0
  435. /package/dist/{api → types/src/api}/orders/types.d.ts +0 -0
  436. /package/dist/{api → types/src/api}/pagination.d.ts +0 -0
  437. /package/dist/{api → types/src/api}/params.d.ts +0 -0
  438. /package/dist/{api → types/src/api}/quoter/index.d.ts +0 -0
  439. /package/dist/{api → types/src/api}/quoter/preset.d.ts +0 -0
  440. /package/dist/{api → types/src/api}/quoter/quote/index.d.ts +0 -0
  441. /package/dist/{api → types/src/api}/quoter/quote/order-params.d.ts +0 -0
  442. /package/dist/{api → types/src/api}/quoter/quoter-custom-preset.request.d.ts +0 -0
  443. /package/dist/{api → types/src/api}/quoter/quoter.api.d.ts +0 -0
  444. /package/dist/{api → types/src/api}/quoter/quoter.request.d.ts +0 -0
  445. /package/dist/{api → types/src/api}/quoter/types.d.ts +0 -0
  446. /package/dist/{api → types/src/api}/relayer/index.d.ts +0 -0
  447. /package/dist/{api → types/src/api}/relayer/relayer.api.d.ts +0 -0
  448. /package/dist/{api → types/src/api}/relayer/relayer.request.d.ts +0 -0
  449. /package/dist/{api → types/src/api}/relayer/types.d.ts +0 -0
  450. /package/dist/{api → types/src/api}/types.d.ts +0 -0
  451. /package/dist/{auction-calculator → types/src/auction-calculator}/constants.d.ts +0 -0
  452. /package/dist/{auction-calculator → types/src/auction-calculator}/index.d.ts +0 -0
  453. /package/dist/{connector → types/src/connector}/blockchain/blockchain-provider.connector.d.ts +0 -0
  454. /package/dist/{connector → types/src/connector}/blockchain/index.d.ts +0 -0
  455. /package/dist/{connector → types/src/connector}/blockchain/private-key-provider.connector.d.ts +0 -0
  456. /package/dist/{connector → types/src/connector}/blockchain/web3-provider-connector.d.ts +0 -0
  457. /package/dist/{connector → types/src/connector}/http/axios-provider.connector.d.ts +0 -0
  458. /package/dist/{connector → types/src/connector}/http/http-provider.connector.d.ts +0 -0
  459. /package/dist/{connector → types/src/connector}/http/index.d.ts +0 -0
  460. /package/dist/{connector → types/src/connector}/index.d.ts +0 -0
  461. /package/dist/{connector → types/src/connector}/ws/index.d.ts +0 -0
  462. /package/dist/{connector → types/src/connector}/ws/types.d.ts +0 -0
  463. /package/dist/{connector → types/src/connector}/ws/websocket-client.connector.d.ts +0 -0
  464. /package/dist/{connector → types/src/connector}/ws/websocket-provider.connector.d.ts +0 -0
  465. /package/dist/{constants.d.ts → types/src/constants.d.ts} +0 -0
  466. /package/dist/{errors.d.ts → types/src/errors.d.ts} +0 -0
  467. /package/dist/{fusion-order → types/src/fusion-order}/auction-details/index.d.ts +0 -0
  468. /package/dist/{fusion-order → types/src/fusion-order}/constants.d.ts +0 -0
  469. /package/dist/{fusion-order → types/src/fusion-order}/index.d.ts +0 -0
  470. /package/dist/{fusion-order → types/src/fusion-order}/settlement-post-interaction-data/index.d.ts +0 -0
  471. /package/dist/{fusion-order → types/src/fusion-order}/source-track.d.ts +0 -0
  472. /package/dist/{sdk → types/src/sdk}/encoders/cancel-order.encoder.d.ts +0 -0
  473. /package/dist/{sdk → types/src/sdk}/encoders/index.d.ts +0 -0
  474. /package/dist/{sdk → types/src/sdk}/index.d.ts +0 -0
  475. /package/dist/{sdk → types/src/sdk}/sdk.d.ts +0 -0
  476. /package/dist/{sdk → types/src/sdk}/utils.d.ts +0 -0
  477. /package/dist/{utils → types/src/utils}/time.d.ts +0 -0
  478. /package/dist/{utils.d.ts → types/src/utils.d.ts} +0 -0
  479. /package/dist/{ws-api → types/src/ws-api}/active-websocket-orders-api.d.ts +0 -0
  480. /package/dist/{ws-api → types/src/ws-api}/constants.d.ts +0 -0
  481. /package/dist/{ws-api → types/src/ws-api}/index.d.ts +0 -0
  482. /package/dist/{ws-api → types/src/ws-api}/rpc-websocket-api.d.ts +0 -0
  483. /package/dist/{ws-api → types/src/ws-api}/types.d.ts +0 -0
  484. /package/dist/{ws-api → types/src/ws-api}/url.d.ts +0 -0
  485. /package/dist/{ws-api → types/src/ws-api}/ws-api.d.ts +0 -0
@@ -0,0 +1,40 @@
1
+ import { Address, Extension, ExtensionBuilder, Interaction } from '@1inch/limit-order-sdk';
2
+ import assert from 'assert';
3
+ import { AuctionDetails } from './auction-details';
4
+ import { SettlementPostInteractionData } from './settlement-post-interaction-data';
5
+ export class FusionExtension {
6
+ constructor(address, auctionDetails, postInteractionData, makerPermit) {
7
+ this.address = address;
8
+ this.auctionDetails = auctionDetails;
9
+ this.postInteractionData = postInteractionData;
10
+ this.makerPermit = makerPermit;
11
+ this.builder = new ExtensionBuilder();
12
+ const detailsBytes = this.auctionDetails.encode();
13
+ this.builder
14
+ .withMakingAmountData(this.address, detailsBytes)
15
+ .withTakingAmountData(this.address, detailsBytes)
16
+ .withPostInteraction(new Interaction(this.address, this.postInteractionData.encode()));
17
+ if (makerPermit) {
18
+ this.builder.withMakerPermit(makerPermit.target, makerPermit.data);
19
+ }
20
+ }
21
+ static decode(bytes) {
22
+ const extension = Extension.decode(bytes);
23
+ return FusionExtension.fromExtension(extension);
24
+ }
25
+ static fromExtension(extension) {
26
+ const settlementContract = Address.fromFirstBytes(extension.makingAmountData);
27
+ assert(Address.fromFirstBytes(extension.takingAmountData).equal(settlementContract) &&
28
+ Address.fromFirstBytes(extension.postInteraction).equal(settlementContract), 'Invalid extension, all calls should be to the same address');
29
+ const auctionDetails = AuctionDetails.fromExtension(extension);
30
+ const postInteractionData = SettlementPostInteractionData.fromExtension(extension);
31
+ const permit = extension.hasMakerPermit
32
+ ? Interaction.decode(extension.makerPermit)
33
+ : undefined;
34
+ return new FusionExtension(settlementContract, auctionDetails, postInteractionData, permit);
35
+ }
36
+ build() {
37
+ return this.builder.build();
38
+ }
39
+ }
40
+ //# sourceMappingURL=fusion-extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fusion-extension.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-extension.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,SAAS,EACT,gBAAgB,EAChB,WAAW,EACd,MAAM,wBAAwB,CAAA;AAC/B,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAC,6BAA6B,EAAC,MAAM,oCAAoC,CAAA;AAEhF,MAAM,OAAO,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,gBAAgB,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,WAAW,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,SAAS,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,OAAO,CAAC,cAAc,CAC7C,SAAS,CAAC,gBAAgB,CAC7B,CAAA;QAED,MAAM,CACF,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,KAAK,CACpD,kBAAkB,CACrB;YACG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,KAAK,CACnD,kBAAkB,CACrB,EACL,4DAA4D,CAC/D,CAAA;QAED,MAAM,cAAc,GAAG,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAE9D,MAAM,mBAAmB,GACrB,6BAA6B,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAE1D,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc;YACnC,CAAC,CAAC,WAAW,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"}
@@ -0,0 +1,192 @@
1
+ import { Address, Interaction, LimitOrder, MakerTraits } from '@1inch/limit-order-sdk';
2
+ import assert from 'assert';
3
+ import { FusionExtension } from './fusion-extension';
4
+ import { AuctionDetails } from './auction-details';
5
+ import { SettlementPostInteractionData } from './settlement-post-interaction-data';
6
+ import { injectTrackCode } from './source-track';
7
+ import { AuctionCalculator } from '../auction-calculator';
8
+ import { ZX } from '../constants';
9
+ import { calcTakingAmount } from '../utils/amounts';
10
+ import { now } from '../utils/time';
11
+ export class FusionOrder {
12
+ constructor(settlementExtensionContract, orderInfo, auctionDetails, postInteractionData, extra = FusionOrder.defaultExtra, extension = new FusionExtension(settlementExtensionContract, auctionDetails, postInteractionData, extra.permit
13
+ ? new Interaction(orderInfo.makerAsset, extra.permit)
14
+ : undefined)) {
15
+ this.settlementExtensionContract = settlementExtensionContract;
16
+ const allowPartialFills = extra.allowPartialFills ??
17
+ FusionOrder.defaultExtra.allowPartialFills;
18
+ const allowMultipleFills = extra.allowMultipleFills ??
19
+ FusionOrder.defaultExtra.allowMultipleFills;
20
+ const unwrapWETH = extra.unwrapWETH ?? FusionOrder.defaultExtra.unwrapWETH;
21
+ const enablePermit2 = extra.enablePermit2 ?? FusionOrder.defaultExtra.enablePermit2;
22
+ const orderExpirationDelay = extra.orderExpirationDelay ??
23
+ FusionOrder.defaultExtra.orderExpirationDelay;
24
+ const deadline = auctionDetails.startTime +
25
+ auctionDetails.duration +
26
+ orderExpirationDelay;
27
+ const makerTraits = MakerTraits.default()
28
+ .withExpiration(deadline)
29
+ .setPartialFills(allowPartialFills)
30
+ .setMultipleFills(allowMultipleFills)
31
+ .enablePostInteraction();
32
+ if (makerTraits.isBitInvalidatorMode()) {
33
+ assert(extra.nonce !== undefined, 'Nonce required, when partial fill or multiple fill disallowed');
34
+ }
35
+ if (unwrapWETH) {
36
+ makerTraits.enableNativeUnwrap();
37
+ }
38
+ if (enablePermit2) {
39
+ makerTraits.enablePermit2();
40
+ }
41
+ if (extra.nonce !== undefined) {
42
+ makerTraits.withNonce(extra.nonce);
43
+ }
44
+ const receiver = postInteractionData.integratorFee?.ratio
45
+ ? settlementExtensionContract
46
+ : orderInfo.receiver;
47
+ const builtExtension = extension.build();
48
+ const salt = LimitOrder.buildSalt(builtExtension, orderInfo.salt);
49
+ const saltWithInjectedTrackCode = orderInfo.salt
50
+ ? salt
51
+ : injectTrackCode(salt, extra.source);
52
+ this.inner = new LimitOrder({
53
+ ...orderInfo,
54
+ receiver,
55
+ salt: saltWithInjectedTrackCode
56
+ }, makerTraits, builtExtension);
57
+ this.fusionExtension = extension;
58
+ }
59
+ get extension() {
60
+ return this.inner.extension;
61
+ }
62
+ get maker() {
63
+ return this.inner.maker;
64
+ }
65
+ get takerAsset() {
66
+ return this.inner.takerAsset;
67
+ }
68
+ get makerAsset() {
69
+ return this.inner.makerAsset;
70
+ }
71
+ get takingAmount() {
72
+ return this.inner.takingAmount;
73
+ }
74
+ get makingAmount() {
75
+ return this.inner.makingAmount;
76
+ }
77
+ get receiver() {
78
+ return this.inner.receiver;
79
+ }
80
+ get deadline() {
81
+ return this.inner.makerTraits.expiration() || 0n;
82
+ }
83
+ get auctionStartTime() {
84
+ return this.fusionExtension.auctionDetails.startTime;
85
+ }
86
+ get auctionEndTime() {
87
+ const { startTime, duration } = this.fusionExtension.auctionDetails;
88
+ return startTime + duration;
89
+ }
90
+ get isBitInvalidatorMode() {
91
+ return this.inner.makerTraits.isBitInvalidatorMode();
92
+ }
93
+ get partialFillAllowed() {
94
+ return this.inner.makerTraits.isPartialFillAllowed();
95
+ }
96
+ get multipleFillsAllowed() {
97
+ return this.inner.makerTraits.isMultipleFillsAllowed();
98
+ }
99
+ get nonce() {
100
+ return this.inner.makerTraits.nonceOrEpoch();
101
+ }
102
+ get salt() {
103
+ return this.inner.salt;
104
+ }
105
+ static new(settlementExtension, orderInfo, details, extra) {
106
+ return new FusionOrder(settlementExtension, orderInfo, details.auction, SettlementPostInteractionData.new({
107
+ bankFee: details.fees?.bankFee || 0n,
108
+ integratorFee: details.fees?.integratorFee,
109
+ whitelist: details.whitelist,
110
+ resolvingStartTime: details.resolvingStartTime ?? now(),
111
+ customReceiver: orderInfo.receiver
112
+ }), extra);
113
+ }
114
+ static fromDataAndExtension(order, extension) {
115
+ const settlementContract = Address.fromFirstBytes(extension.makingAmountData);
116
+ assert(Address.fromFirstBytes(extension.takingAmountData).equal(settlementContract) &&
117
+ Address.fromFirstBytes(extension.postInteraction).equal(settlementContract), 'Invalid extension, all calls should be to the same address');
118
+ const makerTraits = new MakerTraits(BigInt(order.makerTraits));
119
+ assert(!makerTraits.isPrivate(), 'fusion order can not be private');
120
+ assert(makerTraits.hasPostInteraction(), 'post-interaction must be enabled');
121
+ const auctionDetails = AuctionDetails.fromExtension(extension);
122
+ const postInteractionData = SettlementPostInteractionData.fromExtension(extension);
123
+ const deadline = makerTraits.expiration();
124
+ const orderExpirationDelay = deadline === null
125
+ ? undefined
126
+ : deadline - auctionDetails.startTime - auctionDetails.duration;
127
+ return new FusionOrder(settlementContract, {
128
+ salt: BigInt(order.salt) >> 160n,
129
+ maker: new Address(order.maker),
130
+ receiver: new Address(order.receiver),
131
+ makerAsset: new Address(order.makerAsset),
132
+ takerAsset: new Address(order.takerAsset),
133
+ makingAmount: BigInt(order.makingAmount),
134
+ takingAmount: BigInt(order.takingAmount)
135
+ }, auctionDetails, postInteractionData, {
136
+ allowMultipleFills: makerTraits.isMultipleFillsAllowed(),
137
+ allowPartialFills: makerTraits.isPartialFillAllowed(),
138
+ enablePermit2: makerTraits.isPermit2(),
139
+ nonce: makerTraits.nonceOrEpoch(),
140
+ permit: extension.makerPermit === ZX
141
+ ? undefined
142
+ : Interaction.decode(extension.makerPermit).data,
143
+ unwrapWETH: makerTraits.isNativeUnwrapEnabled(),
144
+ orderExpirationDelay
145
+ });
146
+ }
147
+ build() {
148
+ return this.inner.build();
149
+ }
150
+ getOrderHash(chainId) {
151
+ return this.inner.getOrderHash(chainId);
152
+ }
153
+ getTypedData(chainId) {
154
+ return this.inner.getTypedData(chainId);
155
+ }
156
+ getCalculator() {
157
+ return AuctionCalculator.fromAuctionData(this.fusionExtension.postInteractionData, this.fusionExtension.auctionDetails);
158
+ }
159
+ calcTakingAmount(makingAmount, time, blockBaseFee = 0n) {
160
+ const takingAmount = calcTakingAmount(makingAmount, this.makingAmount, this.takingAmount);
161
+ const calculator = this.getCalculator();
162
+ const bump = calculator.calcRateBump(time, blockBaseFee);
163
+ return calculator.calcAuctionTakingAmount(takingAmount, bump);
164
+ }
165
+ canExecuteAt(executor, executionTime) {
166
+ return this.fusionExtension.postInteractionData.canExecuteAt(executor, executionTime);
167
+ }
168
+ isExpiredAt(time) {
169
+ return time > this.deadline;
170
+ }
171
+ getResolverFee(filledMakingAmount) {
172
+ return ((this.fusionExtension.postInteractionData.bankFee *
173
+ FusionOrder._ORDER_FEE_BASE_POINTS *
174
+ filledMakingAmount) /
175
+ this.makingAmount);
176
+ }
177
+ isExclusiveResolver(wallet) {
178
+ return this.fusionExtension.postInteractionData.isExclusiveResolver(wallet);
179
+ }
180
+ isExclusivityPeriod(time = now()) {
181
+ return this.fusionExtension.postInteractionData.isExclusivityPeriod(time);
182
+ }
183
+ }
184
+ FusionOrder._ORDER_FEE_BASE_POINTS = 10n ** 15n;
185
+ FusionOrder.defaultExtra = {
186
+ allowPartialFills: true,
187
+ allowMultipleFills: true,
188
+ unwrapWETH: false,
189
+ enablePermit2: false,
190
+ orderExpirationDelay: 12n
191
+ };
192
+ //# sourceMappingURL=fusion-order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fusion-order.js","sourceRoot":"","sources":["../../../src/fusion-order/fusion-order.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export * from './fusion-order';
2
+ export * from './auction-details';
3
+ export * from './settlement-post-interaction-data';
4
+ export * from './fusion-extension';
5
+ export { CHAIN_TO_WRAPPER } from './constants';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fusion-order/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAC,gBAAgB,EAAC,MAAM,aAAa,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './settlement-post-interaction-data';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,148 @@
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
@@ -0,0 +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":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/fusion-order/settlement-post-interaction-data/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import { BitMask, BN } from '@1inch/byte-utils';
2
+ import { id } from 'ethers';
3
+ import { add0x } from '../utils';
4
+ import { isHexString } from '../validations';
5
+ const TRACK_CODE_MASK = new BitMask(224n, 256n);
6
+ function getTrackCodeForSource(source) {
7
+ if (!isHexString(source)) {
8
+ return createId(source);
9
+ }
10
+ if (source.length === 10) {
11
+ return BigInt(source);
12
+ }
13
+ if (source.length === 66) {
14
+ return BigInt(source.substring(0, 10));
15
+ }
16
+ return createId(source);
17
+ }
18
+ function createId(source) {
19
+ return BigInt(add0x(id(source).slice(0, 10)));
20
+ }
21
+ export function injectTrackCode(salt, source) {
22
+ const track = source ? getTrackCodeForSource(source) : 0n;
23
+ return new BN(salt).setMask(TRACK_CODE_MASK, track).value;
24
+ }
25
+ //# 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,OAAO,EAAC,OAAO,EAAE,EAAE,EAAC,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAC,EAAE,EAAC,MAAM,QAAQ,CAAA;AACzB,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAE1C,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAE/C,SAAS,qBAAqB,CAAC,MAAc;IACzC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE;QACtB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAA;KAC1B;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,EAAE;QACtB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;KACxB;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,EAAE;QACtB,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;KACzC;IAED,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAA;AAC3B,CAAC;AAED,SAAS,QAAQ,CAAC,MAAc;IAC5B,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,MAAM,UAAU,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"}
@@ -0,0 +1,14 @@
1
+ export { Address, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder, AmountMode, getLimitOrderV4Domain, LimitOrderContract, MakerTraits } from '@1inch/limit-order-sdk';
2
+ export * from './fusion-order/index';
3
+ export * from './auction-calculator/index';
4
+ export * from './connector/index';
5
+ export * from './sdk/index';
6
+ export * from './constants';
7
+ export * from './utils';
8
+ export * from './utils/amounts';
9
+ export * from './utils/time';
10
+ export * from './validations';
11
+ export * from './ws-api';
12
+ export * from './errors';
13
+ export { QuoterRequest, RelayerRequest, QuoterCustomPresetRequest, PresetEnum, Preset, Quote, OrderStatus } from './api';
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EAEP,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAGlB,WAAW,EACd,MAAM,wBAAwB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,OAAO,EACH,aAAa,EAEb,cAAc,EACd,yBAAyB,EACzB,UAAU,EACV,MAAM,EACN,KAAK,EAEL,WAAW,EACd,MAAM,OAAO,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { Interface } from 'ethers';
2
+ import assert from 'assert';
3
+ import LimitOrderABI from '../../abi/AggregationRouterV6.abi.json';
4
+ import { isHexBytes } from '../../validations';
5
+ const lopAbi = new Interface(LimitOrderABI);
6
+ export function encodeCancelOrder(hash, makerTraits) {
7
+ assert(isHexBytes(hash), 'Invalid order hash');
8
+ return lopAbi.encodeFunctionData('cancelOrder', [
9
+ makerTraits.asBigInt(),
10
+ hash
11
+ ]);
12
+ }
13
+ //# sourceMappingURL=cancel-order.encoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel-order.encoder.js","sourceRoot":"","sources":["../../../../src/sdk/encoders/cancel-order.encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,QAAQ,CAAA;AAEhC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,aAAa,MAAM,wCAAwC,CAAA;AAClE,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAA;AAE5C,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,aAAa,CAAC,CAAA;AAE3C,MAAM,UAAU,iBAAiB,CAC7B,IAAY,EACZ,WAAwB;IAExB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAA;IAE9C,OAAO,MAAM,CAAC,kBAAkB,CAAC,aAAa,EAAE;QAC5C,WAAW,CAAC,QAAQ,EAAE;QACtB,IAAI;KACP,CAAC,CAAA;AACN,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './cancel-order.encoder';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sdk/encoders/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA"}
@@ -0,0 +1,5 @@
1
+ export * from './sdk';
2
+ export * from './types';
3
+ export * from './encoders';
4
+ export * from './utils';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}