@velora-dex/widget 0.1.0-rc.2 → 0.1.0

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 (1201) hide show
  1. package/dist/assets/receipt.svg.js +12 -0
  2. package/dist/assets/receipt.svg.js.map +1 -0
  3. package/dist/assets/vlr.svg.js +4 -0
  4. package/dist/assets/vlr.svg.js.map +1 -0
  5. package/dist/components/ui/accordion.js +23 -15
  6. package/dist/components/ui/accordion.js.map +1 -1
  7. package/dist/components/ui/drawer.js +1 -1
  8. package/dist/components/ui/drawer.js.map +1 -1
  9. package/dist/components/web3/ConnectWallets/index.js +20 -6
  10. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  11. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +6 -1
  12. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  13. package/dist/components/web3/ConnectWallets/walletIcons.js +45 -29
  14. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  15. package/dist/components/widget/AppHeader/Activities/Activities.d.ts +7 -0
  16. package/dist/components/widget/AppHeader/Activities/Activities.d.ts.map +1 -0
  17. package/dist/components/widget/AppHeader/Activities/Activities.js +132 -0
  18. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -0
  19. package/dist/components/widget/AppHeader/Activities/ActivityItems.d.ts +13 -0
  20. package/dist/components/widget/AppHeader/Activities/ActivityItems.d.ts.map +1 -0
  21. package/dist/components/widget/AppHeader/Activities/ActivityItems.js +324 -0
  22. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -0
  23. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +32 -0
  24. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -0
  25. package/dist/components/widget/AppHeader/Activities/Drawers.js +317 -0
  26. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -0
  27. package/dist/components/widget/AppHeader/Activities/assets/eye-crossed.svg.js +12 -0
  28. package/dist/components/widget/AppHeader/Activities/assets/eye-crossed.svg.js.map +1 -0
  29. package/dist/components/widget/AppHeader/Activities/assets/eye.svg.js +12 -0
  30. package/dist/components/widget/AppHeader/Activities/assets/eye.svg.js.map +1 -0
  31. package/dist/components/widget/AppHeader/Activities/hooks.d.ts +33 -0
  32. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -0
  33. package/dist/components/widget/AppHeader/Activities/hooks.js +731 -0
  34. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -0
  35. package/dist/components/widget/AppHeader/Activities/utils.d.ts +21 -0
  36. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -0
  37. package/dist/components/widget/AppHeader/Activities/utils.js +70 -0
  38. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -0
  39. package/dist/components/widget/AppHeader/ActivityButton.d.ts +2 -1
  40. package/dist/components/widget/AppHeader/ActivityButton.d.ts.map +1 -1
  41. package/dist/components/widget/AppHeader/ActivityButton.js +171 -22
  42. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  43. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  44. package/dist/components/widget/AppHeader/AppHeader.js +56 -40
  45. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  46. package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts +2 -0
  47. package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts.map +1 -0
  48. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts +2 -0
  49. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -0
  50. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +71 -0
  51. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -0
  52. package/dist/components/widget/AppHeader/state/showMoreAtom.d.ts +24 -0
  53. package/dist/components/widget/AppHeader/state/showMoreAtom.d.ts.map +1 -0
  54. package/dist/components/widget/AppHeader/state/showMoreAtom.js +20 -0
  55. package/dist/components/widget/AppHeader/state/showMoreAtom.js.map +1 -0
  56. package/dist/components/widget/Details/DetailWithValueListExpandable.d.ts.map +1 -1
  57. package/dist/components/widget/Details/DetailWithValueListExpandable.js +39 -32
  58. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  59. package/dist/components/widget/Details/types.d.ts +2 -1
  60. package/dist/components/widget/Details/types.d.ts.map +1 -1
  61. package/dist/components/widget/DexesList/DexItem.js +2 -2
  62. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  63. package/dist/components/widget/DexesList/assets/exchanges/velora-dark.svg.js +1 -1
  64. package/dist/components/widget/DexesList/assets/exchanges/velora-dark.svg.js.map +1 -1
  65. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.d.ts +3 -2
  66. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.d.ts.map +1 -1
  67. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +168 -134
  68. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  69. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +5 -2
  70. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  71. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +192 -142
  72. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  73. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +1 -1
  74. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  75. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.d.ts +5 -4
  76. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.d.ts.map +1 -1
  77. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js +23 -16
  78. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  79. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts +2 -1
  80. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts.map +1 -1
  81. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +25 -18
  82. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  83. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts +3 -3
  84. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts.map +1 -1
  85. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js +15 -44
  86. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  87. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.d.ts +13 -0
  88. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.d.ts.map +1 -0
  89. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +231 -0
  90. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -0
  91. package/dist/components/widget/Dialog/dialogByType.d.ts +0 -1
  92. package/dist/components/widget/Dialog/dialogByType.d.ts.map +1 -1
  93. package/dist/components/widget/Dialog/dialogByType.js +0 -2
  94. package/dist/components/widget/Dialog/dialogByType.js.map +1 -1
  95. package/dist/components/widget/Dialog/state/dialogAtom.d.ts +1 -3
  96. package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
  97. package/dist/components/widget/Dialog/state/dialogAtom.js +24 -45
  98. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  99. package/dist/components/widget/Drawer/index.d.ts +6 -1
  100. package/dist/components/widget/Drawer/index.d.ts.map +1 -1
  101. package/dist/components/widget/Drawer/index.js +89 -58
  102. package/dist/components/widget/Drawer/index.js.map +1 -1
  103. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +4 -2
  104. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  105. package/dist/components/widget/Drawer/state/useDrawerControls.js +16 -14
  106. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  107. package/dist/components/widget/ImportToken/ImportToken.d.ts +7 -0
  108. package/dist/components/widget/ImportToken/ImportToken.d.ts.map +1 -0
  109. package/dist/components/widget/ImportToken/ImportToken.js +119 -0
  110. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -0
  111. package/dist/components/widget/ImportToken/types.d.ts +11 -0
  112. package/dist/components/widget/ImportToken/types.d.ts.map +1 -0
  113. package/dist/components/widget/ImportToken/useImportTokenDrawer.d.ts +8 -0
  114. package/dist/components/widget/ImportToken/useImportTokenDrawer.d.ts.map +1 -0
  115. package/dist/components/widget/ImportToken/useImportTokenDrawer.js +89 -0
  116. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -0
  117. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.d.ts +10 -0
  118. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.d.ts.map +1 -0
  119. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js +160 -0
  120. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js.map +1 -0
  121. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.d.ts +7 -0
  122. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -0
  123. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js +96 -0
  124. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js.map +1 -0
  125. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.d.ts +18 -0
  126. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.d.ts.map +1 -0
  127. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.js +98 -0
  128. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.js.map +1 -0
  129. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.d.ts +20 -0
  130. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.d.ts.map +1 -0
  131. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js +480 -0
  132. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js.map +1 -0
  133. package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts +7 -0
  134. package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts.map +1 -0
  135. package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts +7 -0
  136. package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts.map +1 -0
  137. package/dist/components/widget/LimitOrdersDrawer/constants.d.ts +8 -0
  138. package/dist/components/widget/LimitOrdersDrawer/constants.d.ts.map +1 -0
  139. package/dist/components/widget/LimitOrdersDrawer/constants.js +11 -0
  140. package/dist/components/widget/LimitOrdersDrawer/constants.js.map +1 -0
  141. package/dist/components/widget/LimitOrdersDrawer/types.d.ts +20 -0
  142. package/dist/components/widget/LimitOrdersDrawer/types.d.ts.map +1 -0
  143. package/dist/components/widget/LimitOrdersDrawer/utils.d.ts +6 -0
  144. package/dist/components/widget/LimitOrdersDrawer/utils.d.ts.map +1 -0
  145. package/dist/components/widget/LimitOrdersDrawer/utils.js +66 -0
  146. package/dist/components/widget/LimitOrdersDrawer/utils.js.map +1 -0
  147. package/dist/components/widget/LimitPriceInput/index.d.ts +3 -0
  148. package/dist/components/widget/LimitPriceInput/index.d.ts.map +1 -0
  149. package/dist/components/widget/LimitPriceInput/index.js +321 -0
  150. package/dist/components/widget/LimitPriceInput/index.js.map +1 -0
  151. package/dist/components/widget/LimitPriceInput/types.d.ts +17 -0
  152. package/dist/components/widget/LimitPriceInput/types.d.ts.map +1 -0
  153. package/dist/components/widget/NetworkIcon/NetworkIconSquare.d.ts +1 -2
  154. package/dist/components/widget/NetworkIcon/NetworkIconSquare.d.ts.map +1 -1
  155. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +11 -14
  156. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  157. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.d.ts.map +1 -1
  158. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js +16 -14
  159. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  160. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.d.ts.map +1 -1
  161. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +81 -43
  162. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  163. package/dist/components/widget/NetworkSwitcher/types.d.ts +2 -2
  164. package/dist/components/widget/NetworkSwitcher/types.d.ts.map +1 -1
  165. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.d.ts +1 -0
  166. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.d.ts.map +1 -1
  167. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js +101 -28
  168. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  169. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.d.ts +1 -0
  170. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.d.ts.map +1 -1
  171. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +67 -22
  172. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  173. package/dist/components/widget/NetworkWithIcon/types.d.ts +1 -2
  174. package/dist/components/widget/NetworkWithIcon/types.d.ts.map +1 -1
  175. package/dist/components/widget/OrderExpiryInput/index.d.ts +6 -0
  176. package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -0
  177. package/dist/components/widget/OrderExpiryInput/index.js +222 -0
  178. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -0
  179. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.d.ts +10 -0
  180. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.d.ts.map +1 -0
  181. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js +149 -0
  182. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js.map +1 -0
  183. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.d.ts +7 -0
  184. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.d.ts.map +1 -0
  185. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js +101 -0
  186. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js.map +1 -0
  187. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.d.ts +5 -0
  188. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.d.ts.map +1 -0
  189. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.js +18 -0
  190. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.js.map +1 -0
  191. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.d.ts +8 -0
  192. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.d.ts.map +1 -0
  193. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js +182 -0
  194. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js.map +1 -0
  195. package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts +7 -0
  196. package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts.map +1 -0
  197. package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts +12 -0
  198. package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts.map +1 -0
  199. package/dist/components/widget/OtcOrdersDrawer/constants.d.ts +6 -0
  200. package/dist/components/widget/OtcOrdersDrawer/constants.d.ts.map +1 -0
  201. package/dist/components/widget/OtcOrdersDrawer/constants.js +9 -0
  202. package/dist/components/widget/OtcOrdersDrawer/constants.js.map +1 -0
  203. package/dist/components/widget/OtcOrdersDrawer/types.d.ts +15 -0
  204. package/dist/components/widget/OtcOrdersDrawer/types.d.ts.map +1 -0
  205. package/dist/components/widget/OtcOrdersDrawer/utils.d.ts +18 -0
  206. package/dist/components/widget/OtcOrdersDrawer/utils.d.ts.map +1 -0
  207. package/dist/components/widget/OtcOrdersDrawer/utils.js +85 -0
  208. package/dist/components/widget/OtcOrdersDrawer/utils.js.map +1 -0
  209. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts +3 -0
  210. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts.map +1 -0
  211. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js +150 -0
  212. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -0
  213. package/dist/components/widget/PayReceiveInfo/types.d.ts +12 -0
  214. package/dist/components/widget/PayReceiveInfo/types.d.ts.map +1 -0
  215. package/dist/components/widget/ReceiverAddress/ReceiverAddress.d.ts +1 -1
  216. package/dist/components/widget/ReceiverAddress/ReceiverAddress.d.ts.map +1 -1
  217. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js +61 -49
  218. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  219. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts +3 -6
  220. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
  221. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +3 -3
  222. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  223. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  224. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -2
  225. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  226. package/dist/components/widget/ReceiverAddress/state/types.d.ts +7 -0
  227. package/dist/components/widget/ReceiverAddress/state/types.d.ts.map +1 -0
  228. package/dist/components/widget/ReceiverAddress/types.d.ts +4 -1
  229. package/dist/components/widget/ReceiverAddress/types.d.ts.map +1 -1
  230. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts +11 -0
  231. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts.map +1 -0
  232. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js +75 -0
  233. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -0
  234. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts +7 -0
  235. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -0
  236. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js +202 -0
  237. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -0
  238. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts +25 -0
  239. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts.map +1 -0
  240. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js +114 -0
  241. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -0
  242. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts +2 -0
  243. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  244. package/dist/components/widget/SelectToken/SelectTokenButton.js +135 -88
  245. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  246. package/dist/components/widget/SelectToken/types.d.ts +1 -0
  247. package/dist/components/widget/SelectToken/types.d.ts.map +1 -1
  248. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.d.ts.map +1 -1
  249. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +88 -57
  250. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  251. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +2 -2
  252. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  253. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +2 -2
  254. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  255. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +7 -2
  256. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  257. package/dist/components/widget/Tabs/Tabs.d.ts +13 -0
  258. package/dist/components/widget/Tabs/Tabs.d.ts.map +1 -0
  259. package/dist/components/widget/Tabs/Tabs.js +103 -0
  260. package/dist/components/widget/Tabs/Tabs.js.map +1 -0
  261. package/dist/components/widget/TokenBadge/TokenBadge.d.ts.map +1 -1
  262. package/dist/components/widget/TokenBadge/TokenBadge.js +81 -56
  263. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  264. package/dist/components/widget/TokenBadge/types.d.ts +1 -0
  265. package/dist/components/widget/TokenBadge/types.d.ts.map +1 -1
  266. package/dist/components/widget/TokenInput/EmptyInput.d.ts +1 -1
  267. package/dist/components/widget/TokenInput/EmptyInput.d.ts.map +1 -1
  268. package/dist/components/widget/TokenInput/EmptyInput.js +38 -16
  269. package/dist/components/widget/TokenInput/EmptyInput.js.map +1 -1
  270. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  271. package/dist/components/widget/TokenInput/index.js +125 -118
  272. package/dist/components/widget/TokenInput/index.js.map +1 -1
  273. package/dist/components/widget/TokenInput/types.d.ts +3 -1
  274. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  275. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +4 -2
  276. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  277. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +12 -10
  278. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  279. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts +8 -0
  280. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -0
  281. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js +51 -0
  282. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -0
  283. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +8 -0
  284. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -0
  285. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +55 -0
  286. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -0
  287. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +3 -2
  288. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  289. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +12 -10
  290. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  291. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +8 -0
  292. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -0
  293. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +55 -0
  294. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -0
  295. package/dist/components/widget/TradeOverview/Step/types.d.ts +1 -1
  296. package/dist/components/widget/TradeOverview/Step/types.d.ts.map +1 -1
  297. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts +2 -1
  298. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts.map +1 -1
  299. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +45 -18
  300. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  301. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts +0 -2
  302. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts.map +1 -1
  303. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +115 -30
  304. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  305. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts +3 -0
  306. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -0
  307. package/dist/components/widget/TradeOverview/TradeComplete/constants.js +10 -0
  308. package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -0
  309. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  310. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +10 -5
  311. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  312. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  313. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +84 -0
  314. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  315. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.d.ts.map +1 -1
  316. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js +3 -0
  317. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  318. package/dist/components/widget/TradeOverview/TradeError/index.d.ts +3 -1
  319. package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -1
  320. package/dist/components/widget/TradeOverview/TradeError/index.js +16 -14
  321. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  322. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +2 -1
  323. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
  324. package/dist/components/widget/TradeOverview/TradeError/utils.js +8 -3
  325. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  326. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +10 -4
  327. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  328. package/dist/components/widget/TradeOverview/TradeOverview.js +135 -108
  329. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  330. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts +4 -4
  331. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  332. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +23 -23
  333. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  334. package/dist/components/widget/TradeOverview/TradeOverviewHeader.d.ts +1 -1
  335. package/dist/components/widget/TradeOverview/TradeOverviewHeader.d.ts.map +1 -1
  336. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js +9 -28
  337. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  338. package/dist/components/widget/TradeOverview/steps.d.ts +85 -0
  339. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  340. package/dist/components/widget/TradeOverview/steps.js +58 -1
  341. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  342. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +6 -6
  343. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  344. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  345. package/dist/components/widget/TradeParameters/DeltaParameter.d.ts +6 -1
  346. package/dist/components/widget/TradeParameters/DeltaParameter.d.ts.map +1 -1
  347. package/dist/components/widget/TradeParameters/DeltaParameter.js +39 -40
  348. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  349. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts +6 -1
  350. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts.map +1 -1
  351. package/dist/components/widget/TradeParameters/EIP1559Parameter.js +34 -33
  352. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  353. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.d.ts.map +1 -1
  354. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js +15 -5
  355. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  356. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.d.ts +5 -3
  357. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.d.ts.map +1 -1
  358. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js +21 -21
  359. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  360. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/types.d.ts +2 -0
  361. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/types.d.ts.map +1 -1
  362. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.d.ts +1 -1
  363. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.d.ts.map +1 -1
  364. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js +49 -53
  365. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  366. package/dist/components/widget/TradeParameters/TradeParameters.d.ts +5 -4
  367. package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
  368. package/dist/components/widget/TradeParameters/TradeParameters.js +83 -50
  369. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  370. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts +7 -1
  371. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts.map +1 -1
  372. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js +110 -82
  373. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  374. package/dist/components/widget/TradeParameters/state/deltaParamAtom.d.ts +1 -1
  375. package/dist/components/widget/TradeParameters/state/deltaParamAtom.d.ts.map +1 -1
  376. package/dist/components/widget/TradeParameters/state/deltaParamAtom.js +4 -4
  377. package/dist/components/widget/TradeParameters/state/deltaParamAtom.js.map +1 -1
  378. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts +15 -0
  379. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts.map +1 -0
  380. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +155 -0
  381. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -0
  382. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +7 -0
  383. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -0
  384. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +61 -0
  385. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -0
  386. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts +6 -0
  387. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts.map +1 -0
  388. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +82 -0
  389. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -0
  390. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.d.ts +15 -0
  391. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.d.ts.map +1 -0
  392. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js +88 -0
  393. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -0
  394. package/dist/components/widget/TransactionDetails/TransactionListItem.d.ts +13 -0
  395. package/dist/components/widget/TransactionDetails/TransactionListItem.d.ts.map +1 -0
  396. package/dist/components/widget/TransactionDetails/TransactionListItem.js +368 -0
  397. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -0
  398. package/dist/components/widget/TransactionDetails/types.d.ts +13 -0
  399. package/dist/components/widget/TransactionDetails/types.d.ts.map +1 -0
  400. package/dist/components/widget/TransactionDetails/utils.d.ts +16 -0
  401. package/dist/components/widget/TransactionDetails/utils.d.ts.map +1 -0
  402. package/dist/components/widget/TransactionDetails/utils.js +79 -0
  403. package/dist/components/widget/TransactionDetails/utils.js.map +1 -0
  404. package/dist/components/widget/Warning/InsufficientBalanceMessage.d.ts.map +1 -1
  405. package/dist/components/widget/Warning/InsufficientBalanceMessage.js +3 -2
  406. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  407. package/dist/components/widget/Warning/Warning.d.ts +4 -1
  408. package/dist/components/widget/Warning/Warning.d.ts.map +1 -1
  409. package/dist/components/widget/Warning/Warning.js +47 -2
  410. package/dist/components/widget/Warning/Warning.js.map +1 -1
  411. package/dist/components/widget/Warning/types.d.ts +2 -2
  412. package/dist/components/widget/Warning/types.d.ts.map +1 -1
  413. package/dist/components/widget/WrapEth/WrapEthContent.d.ts +4 -2
  414. package/dist/components/widget/WrapEth/WrapEthContent.d.ts.map +1 -1
  415. package/dist/components/widget/WrapEth/WrapEthContent.js +63 -59
  416. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  417. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
  418. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +97 -41
  419. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  420. package/dist/components/widget/WrapEth/hooks/types.d.ts +4 -0
  421. package/dist/components/widget/WrapEth/hooks/types.d.ts.map +1 -1
  422. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts +3 -1
  423. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts.map +1 -1
  424. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js +91 -88
  425. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  426. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts +2 -0
  427. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
  428. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +233 -16
  429. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  430. package/dist/configurator/Configurator.d.ts.map +1 -1
  431. package/dist/core/ConnectWalletDrawerButton.d.ts.map +1 -1
  432. package/dist/core/ConnectWalletDrawerButton.js +39 -29
  433. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  434. package/dist/core/LimitOrderButton.d.ts +2 -0
  435. package/dist/core/LimitOrderButton.d.ts.map +1 -0
  436. package/dist/core/LimitOrderButton.js +158 -0
  437. package/dist/core/LimitOrderButton.js.map +1 -0
  438. package/dist/core/LimitOrderDetails.d.ts +2 -0
  439. package/dist/core/LimitOrderDetails.d.ts.map +1 -0
  440. package/dist/core/LimitOrderDetails.js +24 -0
  441. package/dist/core/LimitOrderDetails.js.map +1 -0
  442. package/dist/core/OtcOrderButton.d.ts +2 -0
  443. package/dist/core/OtcOrderButton.d.ts.map +1 -0
  444. package/dist/core/OtcOrderButton.js +158 -0
  445. package/dist/core/OtcOrderButton.js.map +1 -0
  446. package/dist/core/OtcOrderDetails.d.ts +2 -0
  447. package/dist/core/OtcOrderDetails.d.ts.map +1 -0
  448. package/dist/core/OtcOrderDetails.js +24 -0
  449. package/dist/core/OtcOrderDetails.js.map +1 -0
  450. package/dist/core/TradeFlowButton.d.ts +17 -6
  451. package/dist/core/TradeFlowButton.d.ts.map +1 -1
  452. package/dist/core/TradeFlowButton.js +796 -128
  453. package/dist/core/TradeFlowButton.js.map +1 -1
  454. package/dist/core/Updaters.d.ts.map +1 -1
  455. package/dist/core/Updaters.js +11 -1
  456. package/dist/core/Updaters.js.map +1 -1
  457. package/dist/core/Warnings.d.ts +2 -0
  458. package/dist/core/Warnings.d.ts.map +1 -0
  459. package/dist/core/Warnings.js +45 -0
  460. package/dist/core/Warnings.js.map +1 -0
  461. package/dist/core/across/utils.d.ts +5 -3
  462. package/dist/core/across/utils.d.ts.map +1 -1
  463. package/dist/core/across/utils.js +3 -4
  464. package/dist/core/across/utils.js.map +1 -1
  465. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +11 -2
  466. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  467. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +171 -21
  468. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  469. package/dist/core/constants.d.ts +2 -0
  470. package/dist/core/constants.d.ts.map +1 -1
  471. package/dist/core/constants.js +3 -1
  472. package/dist/core/constants.js.map +1 -1
  473. package/dist/core/index.d.ts +1 -1
  474. package/dist/core/index.d.ts.map +1 -1
  475. package/dist/core/index.js +462 -120
  476. package/dist/core/index.js.map +1 -1
  477. package/dist/core/inputs/hooks/types.d.ts +1 -1
  478. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  479. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  480. package/dist/core/inputs/hooks/useTokenFromInputProps.js +235 -168
  481. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  482. package/dist/core/inputs/hooks/useTokenSwitcherProps.d.ts +1 -1
  483. package/dist/core/inputs/hooks/useTokenSwitcherProps.d.ts.map +1 -1
  484. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +6 -6
  485. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  486. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  487. package/dist/core/inputs/hooks/useTokenToInputProps.js +311 -192
  488. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  489. package/dist/core/inputs/state/common.d.ts +26 -0
  490. package/dist/core/inputs/state/common.d.ts.map +1 -0
  491. package/dist/core/inputs/state/common.js +91 -0
  492. package/dist/core/inputs/state/common.js.map +1 -0
  493. package/dist/core/inputs/state/inputAmountAtom.d.ts.map +1 -1
  494. package/dist/core/inputs/state/inputAmountAtom.js +3 -3
  495. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  496. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts +4 -4
  497. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  498. package/dist/core/inputs/state/selectedTokenActionsAtom.js +88 -41
  499. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  500. package/dist/core/inputs/state/selectedTokenAtom.d.ts +4 -8
  501. package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
  502. package/dist/core/inputs/state/selectedTokenAtom.js +8 -27
  503. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  504. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +20 -0
  505. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -0
  506. package/dist/core/inputs/state/setTokenByAddressAtom.js +241 -0
  507. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -0
  508. package/dist/core/inputs/state/store.d.ts +1 -5
  509. package/dist/core/inputs/state/store.d.ts.map +1 -1
  510. package/dist/core/inputs/state/subscriptions.d.ts +1 -1
  511. package/dist/core/inputs/state/subscriptions.d.ts.map +1 -1
  512. package/dist/core/inputs/state/subscriptions.js +10 -9
  513. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  514. package/dist/core/limit/state/constants.d.ts +33 -0
  515. package/dist/core/limit/state/constants.d.ts.map +1 -0
  516. package/dist/core/limit/state/constants.js +26 -0
  517. package/dist/core/limit/state/constants.js.map +1 -0
  518. package/dist/core/limit/state/currentLimitInputAtom.d.ts +4 -0
  519. package/dist/core/limit/state/currentLimitInputAtom.d.ts.map +1 -0
  520. package/dist/core/limit/state/currentLimitInputAtom.js +6 -0
  521. package/dist/core/limit/state/currentLimitInputAtom.js.map +1 -0
  522. package/dist/core/limit/state/deadlineAtom.d.ts +12 -0
  523. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -0
  524. package/dist/core/limit/state/deadlineAtom.js +18 -0
  525. package/dist/core/limit/state/deadlineAtom.js.map +1 -0
  526. package/dist/core/limit/state/isLimitPriceLockedAtom.d.ts +4 -0
  527. package/dist/core/limit/state/isLimitPriceLockedAtom.d.ts.map +1 -0
  528. package/dist/core/limit/state/isLimitPriceLockedAtom.js +6 -0
  529. package/dist/core/limit/state/isLimitPriceLockedAtom.js.map +1 -0
  530. package/dist/core/limit/state/isLimitPriceReversedAtom.d.ts +4 -0
  531. package/dist/core/limit/state/isLimitPriceReversedAtom.d.ts.map +1 -0
  532. package/dist/core/limit/state/isLimitPriceReversedAtom.js +6 -0
  533. package/dist/core/limit/state/isLimitPriceReversedAtom.js.map +1 -0
  534. package/dist/core/limit/state/limitInputActionsAtom.d.ts +26 -0
  535. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -0
  536. package/dist/core/limit/state/limitInputActionsAtom.js +74 -0
  537. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -0
  538. package/dist/core/limit/state/limitInputAmountAtom.d.ts +14 -0
  539. package/dist/core/limit/state/limitInputAmountAtom.d.ts.map +1 -0
  540. package/dist/core/limit/state/limitInputAmountAtom.js +29 -0
  541. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -0
  542. package/dist/core/limit/state/selectedTokenActionsAtom.d.ts +11 -0
  543. package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -0
  544. package/dist/core/limit/state/selectedTokenActionsAtom.js +69 -0
  545. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -0
  546. package/dist/core/limit/state/selectedTokenAtom.d.ts +12 -0
  547. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -0
  548. package/dist/core/limit/state/selectedTokenAtom.js +23 -0
  549. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -0
  550. package/dist/core/limit/state/utils.d.ts +8 -0
  551. package/dist/core/limit/state/utils.d.ts.map +1 -0
  552. package/dist/core/limit/state/utils.js +66 -0
  553. package/dist/core/limit/state/utils.js.map +1 -0
  554. package/dist/core/limit/types.d.ts +12 -0
  555. package/dist/core/limit/types.d.ts.map +1 -0
  556. package/dist/core/limit/useLimitDetailsListProps.d.ts +3 -0
  557. package/dist/core/limit/useLimitDetailsListProps.d.ts.map +1 -0
  558. package/dist/core/limit/useLimitDetailsListProps.js +69 -0
  559. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -0
  560. package/dist/core/limit/useLimitNotSupported.d.ts +3 -0
  561. package/dist/core/limit/useLimitNotSupported.d.ts.map +1 -0
  562. package/dist/core/limit/useLimitNotSupported.js +13 -0
  563. package/dist/core/limit/useLimitNotSupported.js.map +1 -0
  564. package/dist/core/limit/useLimitPriceDifference.d.ts +3 -0
  565. package/dist/core/limit/useLimitPriceDifference.d.ts.map +1 -0
  566. package/dist/core/limit/useLimitPriceDifference.js +52 -0
  567. package/dist/core/limit/useLimitPriceDifference.js.map +1 -0
  568. package/dist/core/limit/useLimitPriceInputProps.d.ts +3 -0
  569. package/dist/core/limit/useLimitPriceInputProps.d.ts.map +1 -0
  570. package/dist/core/limit/useLimitPriceInputProps.js +138 -0
  571. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -0
  572. package/dist/core/limit/useLimitRate.d.ts +3 -0
  573. package/dist/core/limit/useLimitRate.d.ts.map +1 -0
  574. package/dist/core/limit/useLimitRate.js +155 -0
  575. package/dist/core/limit/useLimitRate.js.map +1 -0
  576. package/dist/core/limit/useLimitTokenFromInputProps.d.ts +4 -0
  577. package/dist/core/limit/useLimitTokenFromInputProps.d.ts.map +1 -0
  578. package/dist/core/limit/useLimitTokenFromInputProps.js +412 -0
  579. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -0
  580. package/dist/core/limit/useLimitTokenSwitcherProps.d.ts +3 -0
  581. package/dist/core/limit/useLimitTokenSwitcherProps.d.ts.map +1 -0
  582. package/dist/core/limit/useLimitTokenSwitcherProps.js +52 -0
  583. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -0
  584. package/dist/core/limit/useLimitTokenToInputProps.d.ts +3 -0
  585. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -0
  586. package/dist/core/limit/useLimitTokenToInputProps.js +164 -0
  587. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -0
  588. package/dist/core/logger.d.ts.map +1 -1
  589. package/dist/core/logger.js +18 -7
  590. package/dist/core/logger.js.map +1 -1
  591. package/dist/core/otc/state/currentOtcInputAtom.d.ts +4 -0
  592. package/dist/core/otc/state/currentOtcInputAtom.d.ts.map +1 -0
  593. package/dist/core/otc/state/currentOtcInputAtom.js +6 -0
  594. package/dist/core/otc/state/currentOtcInputAtom.js.map +1 -0
  595. package/dist/core/otc/state/deadlineAtom.d.ts +7 -0
  596. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -0
  597. package/dist/core/otc/state/deadlineAtom.js +19 -0
  598. package/dist/core/otc/state/deadlineAtom.js.map +1 -0
  599. package/dist/core/otc/state/isOtcPriceLockedAtom.d.ts +4 -0
  600. package/dist/core/otc/state/isOtcPriceLockedAtom.d.ts.map +1 -0
  601. package/dist/core/otc/state/isOtcPriceLockedAtom.js +6 -0
  602. package/dist/core/otc/state/isOtcPriceLockedAtom.js.map +1 -0
  603. package/dist/core/otc/state/isOtcPriceReversedAtom.d.ts +4 -0
  604. package/dist/core/otc/state/isOtcPriceReversedAtom.d.ts.map +1 -0
  605. package/dist/core/otc/state/isOtcPriceReversedAtom.js +6 -0
  606. package/dist/core/otc/state/isOtcPriceReversedAtom.js.map +1 -0
  607. package/dist/core/otc/state/otcInputActionsAtom.d.ts +26 -0
  608. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -0
  609. package/dist/core/otc/state/otcInputActionsAtom.js +74 -0
  610. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -0
  611. package/dist/core/otc/state/otcInputAmountAtom.d.ts +14 -0
  612. package/dist/core/otc/state/otcInputAmountAtom.d.ts.map +1 -0
  613. package/dist/core/otc/state/otcInputAmountAtom.js +29 -0
  614. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -0
  615. package/dist/core/otc/state/receiverAddressAtom.d.ts +7 -0
  616. package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -0
  617. package/dist/core/otc/state/receiverAddressAtom.js +39 -0
  618. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -0
  619. package/dist/core/otc/state/selectedTokenActionsAtom.d.ts +11 -0
  620. package/dist/core/otc/state/selectedTokenActionsAtom.d.ts.map +1 -0
  621. package/dist/core/otc/state/selectedTokenActionsAtom.js +81 -0
  622. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -0
  623. package/dist/core/otc/state/selectedTokenAtom.d.ts +12 -0
  624. package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -0
  625. package/dist/core/otc/state/selectedTokenAtom.js +23 -0
  626. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -0
  627. package/dist/core/otc/useOtcDetailsListProps.d.ts +3 -0
  628. package/dist/core/otc/useOtcDetailsListProps.d.ts.map +1 -0
  629. package/dist/core/otc/useOtcDetailsListProps.js +69 -0
  630. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -0
  631. package/dist/core/otc/useOtcNotSupported.d.ts +3 -0
  632. package/dist/core/otc/useOtcNotSupported.d.ts.map +1 -0
  633. package/dist/core/otc/useOtcNotSupported.js +13 -0
  634. package/dist/core/otc/useOtcNotSupported.js.map +1 -0
  635. package/dist/core/otc/useOtcPriceDifference.d.ts +3 -0
  636. package/dist/core/otc/useOtcPriceDifference.d.ts.map +1 -0
  637. package/dist/core/otc/useOtcPriceDifference.js +52 -0
  638. package/dist/core/otc/useOtcPriceDifference.js.map +1 -0
  639. package/dist/core/otc/useOtcPriceInputProps.d.ts +3 -0
  640. package/dist/core/otc/useOtcPriceInputProps.d.ts.map +1 -0
  641. package/dist/core/otc/useOtcPriceInputProps.js +138 -0
  642. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -0
  643. package/dist/core/otc/useOtcTokenFromInputProps.d.ts +4 -0
  644. package/dist/core/otc/useOtcTokenFromInputProps.d.ts.map +1 -0
  645. package/dist/core/otc/useOtcTokenFromInputProps.js +412 -0
  646. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -0
  647. package/dist/core/otc/useOtcTokenSwitcherProps.d.ts +3 -0
  648. package/dist/core/otc/useOtcTokenSwitcherProps.d.ts.map +1 -0
  649. package/dist/core/otc/useOtcTokenSwitcherProps.js +52 -0
  650. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -0
  651. package/dist/core/otc/useOtcTokenToInputProps.d.ts +3 -0
  652. package/dist/core/otc/useOtcTokenToInputProps.d.ts.map +1 -0
  653. package/dist/core/otc/useOtcTokenToInputProps.js +164 -0
  654. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -0
  655. package/dist/core/state/chainToAtom.d.ts +2 -2
  656. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  657. package/dist/core/state/chainToAtom.js +13 -11
  658. package/dist/core/state/chainToAtom.js.map +1 -1
  659. package/dist/core/state/configActionsAtom.d.ts.map +1 -1
  660. package/dist/core/state/configActionsAtom.js +3 -3
  661. package/dist/core/state/configActionsAtom.js.map +1 -1
  662. package/dist/core/state/configAtom.d.ts +4 -1
  663. package/dist/core/state/configAtom.d.ts.map +1 -1
  664. package/dist/core/state/configAtom.js +2 -1
  665. package/dist/core/state/configAtom.js.map +1 -1
  666. package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
  667. package/dist/core/state/isCrosschainAtom.js +3 -3
  668. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  669. package/dist/core/state/tradeModeAtom.d.ts +6 -0
  670. package/dist/core/state/tradeModeAtom.d.ts.map +1 -0
  671. package/dist/core/state/tradeModeAtom.js +9 -0
  672. package/dist/core/state/tradeModeAtom.js.map +1 -0
  673. package/dist/core/state/widgetEventsAtom.d.ts +7 -0
  674. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -0
  675. package/dist/core/state/widgetEventsAtom.js +221 -0
  676. package/dist/core/state/widgetEventsAtom.js.map +1 -0
  677. package/dist/core/subscriptions.d.ts.map +1 -1
  678. package/dist/core/subscriptions.js +2 -0
  679. package/dist/core/subscriptions.js.map +1 -1
  680. package/dist/core/swapDetails/fees.d.ts.map +1 -1
  681. package/dist/core/swapDetails/fees.js +5 -2
  682. package/dist/core/swapDetails/fees.js.map +1 -1
  683. package/dist/core/swapDetails/useSwapDetailsListProps.js +3 -3
  684. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  685. package/dist/core/types.d.ts +6 -0
  686. package/dist/core/types.d.ts.map +1 -1
  687. package/dist/events/effects/formInput.d.ts +10 -0
  688. package/dist/events/effects/formInput.d.ts.map +1 -0
  689. package/dist/events/effects/formInput.js +55 -0
  690. package/dist/events/effects/formInput.js.map +1 -0
  691. package/dist/events/effects/price.d.ts +4 -0
  692. package/dist/events/effects/price.d.ts.map +1 -0
  693. package/dist/events/effects/price.js +52 -0
  694. package/dist/events/effects/price.js.map +1 -0
  695. package/dist/events/effects/swapMode.d.ts +2 -0
  696. package/dist/events/effects/swapMode.d.ts.map +1 -0
  697. package/dist/events/effects/swapMode.js +47 -0
  698. package/dist/events/effects/swapMode.js.map +1 -0
  699. package/dist/events/getters/limit.d.ts +6 -0
  700. package/dist/events/getters/limit.d.ts.map +1 -0
  701. package/dist/events/getters/limit.js +38 -0
  702. package/dist/events/getters/limit.js.map +1 -0
  703. package/dist/events/getters/otc.d.ts +6 -0
  704. package/dist/events/getters/otc.d.ts.map +1 -0
  705. package/dist/events/getters/otc.js +39 -0
  706. package/dist/events/getters/otc.js.map +1 -0
  707. package/dist/events/getters/settings.d.ts +4 -0
  708. package/dist/events/getters/settings.d.ts.map +1 -0
  709. package/dist/events/getters/settings.js +20 -0
  710. package/dist/events/getters/settings.js.map +1 -0
  711. package/dist/events/getters/swap.d.ts +6 -0
  712. package/dist/events/getters/swap.d.ts.map +1 -0
  713. package/dist/events/getters/swap.js +58 -0
  714. package/dist/events/getters/swap.js.map +1 -0
  715. package/dist/events/getters/widgetState.d.ts +4 -0
  716. package/dist/events/getters/widgetState.d.ts.map +1 -0
  717. package/dist/events/getters/widgetState.js +22 -0
  718. package/dist/events/getters/widgetState.js.map +1 -0
  719. package/dist/events/hooks/useActivateEffects.d.ts +2 -0
  720. package/dist/events/hooks/useActivateEffects.d.ts.map +1 -0
  721. package/dist/events/hooks/useActivateEffects.js +11 -0
  722. package/dist/events/hooks/useActivateEffects.js.map +1 -0
  723. package/dist/events/hooks/useOnWalletConnect.d.ts +2 -0
  724. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -0
  725. package/dist/events/hooks/useOnWalletConnect.js +50 -0
  726. package/dist/events/hooks/useOnWalletConnect.js.map +1 -0
  727. package/dist/events/types/approve.d.ts +46 -0
  728. package/dist/events/types/approve.d.ts.map +1 -0
  729. package/dist/events/types/cancel.d.ts +38 -0
  730. package/dist/events/types/cancel.d.ts.map +1 -0
  731. package/dist/events/types/common.d.ts +62 -0
  732. package/dist/events/types/common.d.ts.map +1 -0
  733. package/dist/events/types/connectWallet.d.ts +18 -0
  734. package/dist/events/types/connectWallet.d.ts.map +1 -0
  735. package/dist/events/types/fill.d.ts +37 -0
  736. package/dist/events/types/fill.d.ts.map +1 -0
  737. package/dist/events/types/formInput.d.ts +25 -0
  738. package/dist/events/types/formInput.d.ts.map +1 -0
  739. package/dist/events/types/index.d.ts +38 -0
  740. package/dist/events/types/index.d.ts.map +1 -0
  741. package/dist/events/types/limit.d.ts +26 -0
  742. package/dist/events/types/limit.d.ts.map +1 -0
  743. package/dist/events/types/otc.d.ts +26 -0
  744. package/dist/events/types/otc.d.ts.map +1 -0
  745. package/dist/events/types/priceChange.d.ts +19 -0
  746. package/dist/events/types/priceChange.d.ts.map +1 -0
  747. package/dist/events/types/settings.d.ts +14 -0
  748. package/dist/events/types/settings.d.ts.map +1 -0
  749. package/dist/events/types/swap.d.ts +51 -0
  750. package/dist/events/types/swap.d.ts.map +1 -0
  751. package/dist/events/types/wrapETH.d.ts +27 -0
  752. package/dist/events/types/wrapETH.d.ts.map +1 -0
  753. package/dist/hooks/batch/useAwaitCalls.d.ts +29 -0
  754. package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -0
  755. package/dist/hooks/batch/useAwaitCalls.js +55 -0
  756. package/dist/hooks/batch/useAwaitCalls.js.map +1 -0
  757. package/dist/hooks/batch/useBatchWithApproveTxs.d.ts +41 -0
  758. package/dist/hooks/batch/useBatchWithApproveTxs.d.ts.map +1 -0
  759. package/dist/hooks/batch/useBatchWithApproveTxs.js +95 -0
  760. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -0
  761. package/dist/hooks/batch/useCanBatchTxs.d.ts +12 -0
  762. package/dist/hooks/batch/useCanBatchTxs.d.ts.map +1 -0
  763. package/dist/hooks/batch/useCanBatchTxs.js +72 -0
  764. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -0
  765. package/dist/hooks/batch/useSendBatchTx.d.ts +25 -0
  766. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -0
  767. package/dist/hooks/batch/useSendBatchTx.js +90 -0
  768. package/dist/hooks/batch/useSendBatchTx.js.map +1 -0
  769. package/dist/hooks/batch/useShouldBatchTxs.d.ts +18 -0
  770. package/dist/hooks/batch/useShouldBatchTxs.d.ts.map +1 -0
  771. package/dist/hooks/connectors/useIsConnectedSafe.d.ts +3 -0
  772. package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -0
  773. package/dist/hooks/connectors/useIsConnectedSafe.js +26 -0
  774. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -0
  775. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +4 -0
  776. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -0
  777. package/dist/hooks/connectors/useIsGnosisSafeConnector.js +29 -0
  778. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -0
  779. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +4 -0
  780. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -0
  781. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +44 -0
  782. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -0
  783. package/dist/hooks/gas/utils.js +1 -1
  784. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts +45 -0
  785. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -0
  786. package/dist/hooks/otc/mutations/useCancelLimitOrder.js +258 -0
  787. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -0
  788. package/dist/hooks/otc/mutations/useCreateLimitOrder.d.ts +22 -0
  789. package/dist/hooks/otc/mutations/useCreateLimitOrder.d.ts.map +1 -0
  790. package/dist/hooks/otc/mutations/useCreateLimitOrder.js +109 -0
  791. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -0
  792. package/dist/hooks/otc/mutations/useFillOrder.d.ts +36 -0
  793. package/dist/hooks/otc/mutations/useFillOrder.d.ts.map +1 -0
  794. package/dist/hooks/otc/mutations/useFillOrder.js +111 -0
  795. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -0
  796. package/dist/hooks/otc/mutations/utils.d.ts +4 -0
  797. package/dist/hooks/otc/mutations/utils.d.ts.map +1 -0
  798. package/dist/hooks/otc/mutations/utils.js +8 -0
  799. package/dist/hooks/otc/mutations/utils.js.map +1 -0
  800. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts +24 -0
  801. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts.map +1 -0
  802. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js +127 -0
  803. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -0
  804. package/dist/hooks/otc/queries/useLimitOrders.d.ts +43 -0
  805. package/dist/hooks/otc/queries/useLimitOrders.d.ts.map +1 -0
  806. package/dist/hooks/otc/queries/useLimitOrders.js +211 -0
  807. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -0
  808. package/dist/hooks/otc/queries/utils.d.ts +8 -0
  809. package/dist/hooks/otc/queries/utils.d.ts.map +1 -0
  810. package/dist/hooks/otc/queries/utils.js +9 -0
  811. package/dist/hooks/otc/queries/utils.js.map +1 -0
  812. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts +74 -0
  813. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -0
  814. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +426 -0
  815. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -0
  816. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts +17 -0
  817. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -0
  818. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +127 -0
  819. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -0
  820. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +66 -0
  821. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -0
  822. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +317 -0
  823. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -0
  824. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts +20 -0
  825. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -0
  826. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +140 -0
  827. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -0
  828. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.d.ts +4 -4
  829. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.d.ts.map +1 -1
  830. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  831. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js +2 -2
  832. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  833. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js +2 -2
  834. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  835. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js +52 -34
  836. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  837. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js +1 -1
  838. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  839. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js +2 -2
  840. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  841. package/dist/hooks/permit/utils/detect.d.ts +2 -2
  842. package/dist/hooks/permit/utils/detect.d.ts.map +1 -1
  843. package/dist/hooks/permit/utils/detect.js.map +1 -1
  844. package/dist/hooks/permit/utils/encodeArgs.js +1 -1
  845. package/dist/hooks/sdk/types.d.ts +4 -10
  846. package/dist/hooks/sdk/types.d.ts.map +1 -1
  847. package/dist/hooks/swap/prices/delta/bridge/const.d.ts +8 -0
  848. package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +1 -0
  849. package/dist/hooks/swap/prices/delta/bridge/const.js +13 -0
  850. package/dist/hooks/swap/prices/delta/bridge/const.js.map +1 -0
  851. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts +27 -0
  852. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts.map +1 -0
  853. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js +178 -0
  854. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js.map +1 -0
  855. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +1 -0
  856. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  857. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +4 -2
  858. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  859. package/dist/hooks/swap/prices/delta/orders/types.d.ts +2 -3
  860. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  861. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +7 -6
  862. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  863. package/dist/hooks/swap/prices/delta/orders/utils.js +4 -1
  864. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  865. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts +24 -0
  866. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -0
  867. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +127 -0
  868. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -0
  869. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +12 -6
  870. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  871. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js +117 -0
  872. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -0
  873. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +7 -3
  874. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  875. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +24 -3
  876. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  877. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +7 -4
  878. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  879. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +17 -3
  880. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  881. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts +2 -2
  882. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  883. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  884. package/dist/hooks/swap/prices/usePricesParams.d.ts +3 -3
  885. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  886. package/dist/hooks/swap/prices/usePricesParams.js +29 -22
  887. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  888. package/dist/hooks/swap/prices/useSwapPrices.d.ts +4 -0
  889. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  890. package/dist/hooks/swap/prices/useSwapPrices.js +26 -8
  891. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  892. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +1 -1
  893. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  894. package/dist/hooks/swap/tradeFlow/common/types.d.ts +27 -4
  895. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  896. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +7 -2
  897. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  898. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +85 -44
  899. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  900. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.d.ts +66 -0
  901. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.d.ts.map +1 -0
  902. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js +224 -0
  903. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -0
  904. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +3 -2
  905. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  906. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +151 -129
  907. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  908. package/dist/hooks/swap/tradeFlow/common/utils.d.ts +4 -0
  909. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -0
  910. package/dist/hooks/swap/tradeFlow/common/utils.js +6 -0
  911. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -0
  912. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -2
  913. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  914. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +140 -47
  915. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  916. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -1
  917. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  918. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +22 -20
  919. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  920. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +77 -0
  921. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -0
  922. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +338 -0
  923. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -0
  924. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts +21 -0
  925. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -0
  926. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +148 -0
  927. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -0
  928. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +22 -3
  929. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  930. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +289 -57
  931. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  932. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +2 -1
  933. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  934. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +26 -24
  935. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  936. package/dist/hooks/tokens/allowance/types.d.ts +5 -3
  937. package/dist/hooks/tokens/allowance/types.d.ts.map +1 -1
  938. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts +1 -1
  939. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts.map +1 -1
  940. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js +3 -0
  941. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  942. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.d.ts +7 -2
  943. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.d.ts.map +1 -1
  944. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +3 -1
  945. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  946. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts +2 -1
  947. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts.map +1 -1
  948. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +7 -6
  949. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  950. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.d.ts +24 -0
  951. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.d.ts.map +1 -0
  952. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +192 -0
  953. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -0
  954. package/dist/hooks/tokens/balances/useSelectedTokenBalances.d.ts +2 -1
  955. package/dist/hooks/tokens/balances/useSelectedTokenBalances.d.ts.map +1 -1
  956. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js +3 -3
  957. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -1
  958. package/dist/hooks/tokens/balances/useTokenBalance.d.ts +0 -5
  959. package/dist/hooks/tokens/balances/useTokenBalance.d.ts.map +1 -1
  960. package/dist/hooks/tokens/balances/useTokenBalance.js +0 -2
  961. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  962. package/dist/hooks/tokens/data/useCombineTokensWithFetched.d.ts +8 -0
  963. package/dist/hooks/tokens/data/useCombineTokensWithFetched.d.ts.map +1 -0
  964. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +121 -0
  965. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -0
  966. package/dist/hooks/tokens/data/useFetchTokens.d.ts +12 -0
  967. package/dist/hooks/tokens/data/useFetchTokens.d.ts.map +1 -0
  968. package/dist/hooks/tokens/data/useFetchTokens.js +42 -0
  969. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -0
  970. package/dist/hooks/tokens/data/useMultichainTokensData.d.ts +25 -0
  971. package/dist/hooks/tokens/data/useMultichainTokensData.d.ts.map +1 -0
  972. package/dist/hooks/tokens/data/useMultichainTokensData.js +169 -0
  973. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -0
  974. package/dist/hooks/tokens/prices/useTokenPrices.d.ts +1 -0
  975. package/dist/hooks/tokens/prices/useTokenPrices.d.ts.map +1 -1
  976. package/dist/hooks/tokens/prices/useTokenPrices.js +9 -2
  977. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  978. package/dist/hooks/tokens/types.d.ts +6 -0
  979. package/dist/hooks/tokens/types.d.ts.map +1 -0
  980. package/dist/hooks/tokens/{useTokenLists.d.ts → useAllTokensWithFilter.d.ts} +4 -3
  981. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -0
  982. package/dist/hooks/tokens/{useTokenLists.js → useAllTokensWithFilter.js} +28 -24
  983. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -0
  984. package/dist/hooks/tokens/useNativeToken.d.ts.map +1 -1
  985. package/dist/hooks/tokens/useNativeToken.js +1 -31
  986. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  987. package/dist/hooks/tokens/useTokenTaxFee.js +36 -23
  988. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  989. package/dist/hooks/tokens/useTokensByAddress.d.ts +3 -0
  990. package/dist/hooks/tokens/useTokensByAddress.d.ts.map +1 -1
  991. package/dist/hooks/tokens/useTokensByAddress.js +21 -13
  992. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  993. package/dist/hooks/txs/queries/useAwaitTx.d.ts +5 -10
  994. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  995. package/dist/hooks/txs/queries/useAwaitTx.js +8 -25
  996. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  997. package/dist/hooks/txs/queries/useTxHistory.d.ts +23 -0
  998. package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -0
  999. package/dist/hooks/txs/queries/useTxHistory.js +124 -0
  1000. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -0
  1001. package/dist/hooks/txs/queries/utils.d.ts +4 -0
  1002. package/dist/hooks/txs/queries/utils.d.ts.map +1 -1
  1003. package/dist/hooks/txs/queries/utils.js +9 -1
  1004. package/dist/hooks/txs/queries/utils.js.map +1 -1
  1005. package/dist/hooks/usePartner.d.ts +2 -0
  1006. package/dist/hooks/usePartner.d.ts.map +1 -0
  1007. package/dist/hooks/usePartner.js +11 -0
  1008. package/dist/hooks/usePartner.js.map +1 -0
  1009. package/dist/hooks/useSDK.d.ts +8 -7
  1010. package/dist/hooks/useSDK.d.ts.map +1 -1
  1011. package/dist/hooks/useSDK.js +86 -4
  1012. package/dist/hooks/useSDK.js.map +1 -1
  1013. package/dist/hooks/useSlippage.d.ts +2 -1
  1014. package/dist/hooks/useSlippage.d.ts.map +1 -1
  1015. package/dist/hooks/useSlippage.js +3 -3
  1016. package/dist/hooks/useSlippage.js.map +1 -1
  1017. package/dist/lib/constants/delta.d.ts +1 -0
  1018. package/dist/lib/constants/delta.d.ts.map +1 -1
  1019. package/dist/lib/constants/delta.js +5 -4
  1020. package/dist/lib/constants/delta.js.map +1 -1
  1021. package/dist/lib/constants/index.d.ts +5 -0
  1022. package/dist/lib/constants/index.d.ts.map +1 -1
  1023. package/dist/lib/constants/index.js +7 -1
  1024. package/dist/lib/constants/index.js.map +1 -1
  1025. package/dist/lib/constants/otc.d.ts +3 -0
  1026. package/dist/lib/constants/otc.d.ts.map +1 -0
  1027. package/dist/lib/constants/otc.js +6 -0
  1028. package/dist/lib/constants/otc.js.map +1 -0
  1029. package/dist/lib/queryClient.d.ts.map +1 -1
  1030. package/dist/lib/queryClient.js +23 -4
  1031. package/dist/lib/queryClient.js.map +1 -1
  1032. package/dist/lib/utils/approval.d.ts +43 -0
  1033. package/dist/lib/utils/approval.d.ts.map +1 -0
  1034. package/dist/lib/utils/approval.js +118 -0
  1035. package/dist/lib/utils/approval.js.map +1 -0
  1036. package/dist/lib/utils/delta.d.ts +14 -4
  1037. package/dist/lib/utils/delta.d.ts.map +1 -1
  1038. package/dist/lib/utils/delta.js +28 -1
  1039. package/dist/lib/utils/delta.js.map +1 -1
  1040. package/dist/lib/utils/explorer.d.ts +2 -0
  1041. package/dist/lib/utils/explorer.d.ts.map +1 -1
  1042. package/dist/lib/utils/explorer.js +12 -1
  1043. package/dist/lib/utils/explorer.js.map +1 -1
  1044. package/dist/lib/utils/formatPercent.d.ts +4 -0
  1045. package/dist/lib/utils/formatPercent.d.ts.map +1 -0
  1046. package/dist/lib/utils/formatPercent.js +10 -0
  1047. package/dist/lib/utils/formatPercent.js.map +1 -0
  1048. package/dist/lib/utils/index.d.ts +8 -3
  1049. package/dist/lib/utils/index.d.ts.map +1 -1
  1050. package/dist/lib/utils/index.js +11 -4
  1051. package/dist/lib/utils/index.js.map +1 -1
  1052. package/dist/lib/utils/metabase.d.ts +33 -0
  1053. package/dist/lib/utils/metabase.d.ts.map +1 -0
  1054. package/dist/lib/utils/metabase.js +27 -0
  1055. package/dist/lib/utils/metabase.js.map +1 -0
  1056. package/dist/lib/utils/price.d.ts +1 -0
  1057. package/dist/lib/utils/price.d.ts.map +1 -1
  1058. package/dist/lib/utils/price.js +8 -3
  1059. package/dist/lib/utils/price.js.map +1 -1
  1060. package/dist/lib/utils/priceImpact.d.ts.map +1 -1
  1061. package/dist/lib/utils/priceImpact.js +2 -1
  1062. package/dist/lib/utils/priceImpact.js.map +1 -1
  1063. package/dist/lib/utils/savedAmountUSD.d.ts.map +1 -1
  1064. package/dist/lib/utils/savedAmountUSD.js +2 -2
  1065. package/dist/lib/utils/savedAmountUSD.js.map +1 -1
  1066. package/dist/lib/utils/time.d.ts +3 -0
  1067. package/dist/lib/utils/time.d.ts.map +1 -0
  1068. package/dist/lib/utils/time.js +12 -0
  1069. package/dist/lib/utils/time.js.map +1 -0
  1070. package/dist/lib/utils/toasts.d.ts +7 -8
  1071. package/dist/lib/utils/toasts.d.ts.map +1 -1
  1072. package/dist/lib/utils/toasts.js +27 -15
  1073. package/dist/lib/utils/toasts.js.map +1 -1
  1074. package/dist/lib/utils/transactionHandlers.d.ts +11 -0
  1075. package/dist/lib/utils/transactionHandlers.d.ts.map +1 -0
  1076. package/dist/lib/utils/transactionHandlers.js +17 -0
  1077. package/dist/lib/utils/transactionHandlers.js.map +1 -0
  1078. package/dist/lib/utils/tuple.d.ts +11 -0
  1079. package/dist/lib/utils/tuple.d.ts.map +1 -0
  1080. package/dist/lib/utils/tuple.js +11 -0
  1081. package/dist/lib/utils/tuple.js.map +1 -0
  1082. package/dist/lib/web3/wagmi/config.js +6 -6
  1083. package/dist/lib/web3/wagmi/config.js.map +1 -1
  1084. package/dist/lib/web3/wagmi/external.d.ts +4 -0
  1085. package/dist/lib/web3/wagmi/external.d.ts.map +1 -0
  1086. package/dist/lib/web3/wagmi/external.js +8 -0
  1087. package/dist/lib/web3/wagmi/external.js.map +1 -0
  1088. package/dist/lib/web3/wagmi/transports.js +1 -1
  1089. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  1090. package/dist/lib/web3/wagmi/utils.d.ts +1 -0
  1091. package/dist/lib/web3/wagmi/utils.d.ts.map +1 -1
  1092. package/dist/lib/web3/wagmi/utils.js +1 -0
  1093. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  1094. package/dist/styles.css +256 -11
  1095. package/dist/tokens/blacklist.d.ts.map +1 -1
  1096. package/dist/tokens/blacklist.js +3 -1
  1097. package/dist/tokens/blacklist.js.map +1 -1
  1098. package/dist/tokens/constants.d.ts +4 -1
  1099. package/dist/tokens/constants.d.ts.map +1 -1
  1100. package/dist/tokens/constants.js +7 -1
  1101. package/dist/tokens/constants.js.map +1 -1
  1102. package/dist/tokens/constructor.d.ts +14 -1
  1103. package/dist/tokens/constructor.d.ts.map +1 -1
  1104. package/dist/tokens/constructor.js +48 -1
  1105. package/dist/tokens/constructor.js.map +1 -1
  1106. package/dist/tokens/defaultTokens.d.ts +2 -1
  1107. package/dist/tokens/defaultTokens.d.ts.map +1 -1
  1108. package/dist/tokens/defaultTokens.js +9 -2
  1109. package/dist/tokens/defaultTokens.js.map +1 -1
  1110. package/dist/tokens/hooks.d.ts +7 -3
  1111. package/dist/tokens/hooks.d.ts.map +1 -1
  1112. package/dist/tokens/hooks.js +15 -5
  1113. package/dist/tokens/hooks.js.map +1 -1
  1114. package/dist/tokens/lists/lists.json.d.ts +44 -23
  1115. package/dist/tokens/lists/lists.json.js +1 -354
  1116. package/dist/tokens/lists/lists.json.js.map +1 -1
  1117. package/dist/tokens/state/addImportedTokenAtom.d.ts +21 -0
  1118. package/dist/tokens/state/addImportedTokenAtom.d.ts.map +1 -0
  1119. package/dist/tokens/state/addImportedTokenAtom.js +91 -0
  1120. package/dist/tokens/state/addImportedTokenAtom.js.map +1 -0
  1121. package/dist/tokens/state/allTokensByChainAtom.d.ts +4 -0
  1122. package/dist/tokens/state/allTokensByChainAtom.d.ts.map +1 -0
  1123. package/dist/tokens/state/allTokensByChainAtom.js +52 -0
  1124. package/dist/tokens/state/allTokensByChainAtom.js.map +1 -0
  1125. package/dist/tokens/state/fromListsAtom.d.ts +16 -0
  1126. package/dist/tokens/state/fromListsAtom.d.ts.map +1 -0
  1127. package/dist/tokens/state/{tokensAtom.js → fromListsAtom.js} +8 -2
  1128. package/dist/tokens/state/fromListsAtom.js.map +1 -0
  1129. package/dist/tokens/state/importedTokensAtom.d.ts +6 -0
  1130. package/dist/tokens/state/importedTokensAtom.d.ts.map +1 -0
  1131. package/dist/tokens/state/importedTokensAtom.js +8 -0
  1132. package/dist/tokens/state/importedTokensAtom.js.map +1 -0
  1133. package/dist/tokens/state/types.d.ts +3 -2
  1134. package/dist/tokens/state/types.d.ts.map +1 -1
  1135. package/dist/tokens/utils/brand.d.ts +4 -0
  1136. package/dist/tokens/utils/brand.d.ts.map +1 -0
  1137. package/dist/tokens/utils/brand.js +9 -0
  1138. package/dist/tokens/utils/brand.js.map +1 -0
  1139. package/dist/tokens/utils/transferAmountsFromReceipt.d.ts +16 -5
  1140. package/dist/tokens/utils/transferAmountsFromReceipt.d.ts.map +1 -1
  1141. package/dist/tokens/utils/transferAmountsFromReceipt.js +108 -36
  1142. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  1143. package/dist/transactions/logger.d.ts +2 -0
  1144. package/dist/transactions/logger.d.ts.map +1 -0
  1145. package/dist/transactions/logger.js +6 -0
  1146. package/dist/transactions/logger.js.map +1 -0
  1147. package/dist/transactions/queries/ensureCallsStatus.d.ts +13 -0
  1148. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -0
  1149. package/dist/transactions/queries/ensureCallsStatus.js +32 -0
  1150. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -0
  1151. package/dist/transactions/queries/ensureTxReceipt.d.ts +16 -0
  1152. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -0
  1153. package/dist/transactions/queries/ensureTxReceipt.js +35 -0
  1154. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -0
  1155. package/dist/transactions/state/effects/finalize.d.ts +7 -0
  1156. package/dist/transactions/state/effects/finalize.d.ts.map +1 -0
  1157. package/dist/transactions/state/effects/finalize.js +28 -0
  1158. package/dist/transactions/state/effects/finalize.js.map +1 -0
  1159. package/dist/transactions/state/hooks/useActivateEffects.d.ts +2 -0
  1160. package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -0
  1161. package/dist/transactions/state/hooks/useActivateEffects.js +10 -0
  1162. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -0
  1163. package/dist/transactions/state/hooks/useTransactions.d.ts +3 -0
  1164. package/dist/transactions/state/hooks/useTransactions.d.ts.map +1 -0
  1165. package/dist/transactions/state/hooks/useTransactions.js +12 -0
  1166. package/dist/transactions/state/hooks/useTransactions.js.map +1 -0
  1167. package/dist/transactions/state/transactionsActionAtom.d.ts +12 -0
  1168. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -0
  1169. package/dist/transactions/state/transactionsActionAtom.js +122 -0
  1170. package/dist/transactions/state/transactionsActionAtom.js.map +1 -0
  1171. package/dist/transactions/state/transactionsAtom.d.ts +14 -0
  1172. package/dist/transactions/state/transactionsAtom.d.ts.map +1 -0
  1173. package/dist/transactions/state/transactionsAtom.js +54 -0
  1174. package/dist/transactions/state/transactionsAtom.js.map +1 -0
  1175. package/dist/transactions/status.d.ts +5 -0
  1176. package/dist/transactions/status.d.ts.map +1 -0
  1177. package/dist/transactions/status.js +7 -0
  1178. package/dist/transactions/status.js.map +1 -0
  1179. package/dist/transactions/types.d.ts +71 -0
  1180. package/dist/transactions/types.d.ts.map +1 -0
  1181. package/dist/transactions/utils.d.ts +11 -0
  1182. package/dist/transactions/utils.d.ts.map +1 -0
  1183. package/dist/transactions/utils.js +26 -0
  1184. package/dist/transactions/utils.js.map +1 -0
  1185. package/package.json +8 -5
  1186. package/dist/components/ui/badge.js +0 -71
  1187. package/dist/components/ui/badge.js.map +0 -1
  1188. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js +0 -16
  1189. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js.map +0 -1
  1190. package/dist/core/inputs/hooks/useWidgetButtonProps.d.ts +0 -5
  1191. package/dist/core/inputs/hooks/useWidgetButtonProps.d.ts.map +0 -1
  1192. package/dist/crosschain_token_list.json +0 -3230
  1193. package/dist/hooks/swap/prices/delta/queries/useBuildCrosschainOrderBridge.d.ts +0 -19
  1194. package/dist/hooks/swap/prices/delta/queries/useBuildCrosschainOrderBridge.d.ts.map +0 -1
  1195. package/dist/hooks/swap/prices/delta/queries/useMulticallHandlers.d.ts +0 -16
  1196. package/dist/hooks/swap/prices/delta/queries/useMulticallHandlers.d.ts.map +0 -1
  1197. package/dist/hooks/tokens/useTokenLists.d.ts.map +0 -1
  1198. package/dist/hooks/tokens/useTokenLists.js.map +0 -1
  1199. package/dist/tokens/state/tokensAtom.d.ts +0 -12
  1200. package/dist/tokens/state/tokensAtom.d.ts.map +0 -1
  1201. package/dist/tokens/state/tokensAtom.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketFlow.ts"],"sourcesContent":["import { useAwaitTx } from \"@/hooks/txs\";\nimport type { OptimalRate } from \"@velora-dex/sdk\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useSendMarketSwapTx } from \"../prices/market/mutations/useSendMarketSwapTx\";\nimport { useBuildTx } from \"../prices/market/mutations/useBuildTx\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"./common/types\";\nimport { applySlippage } from \"@/lib/utils/price\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { TxSentObject } from \"@/lib/utils/toasts\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { useApproveOrPermit } from \"./common/useApproveOrPermit\";\nimport {\n useMarkPermit1Or2NonceAsUsed,\n type SignedPermitResult,\n} from \"./common/useSignPermit1Or2\";\nimport { useWidgetConfig } from \"@/core/state/configAtom\";\nimport { useLogger } from \"@/core/logger\";\nimport { useConstructGasParams } from \"./common/useConstructGasParams\";\nimport {\n useMarketPriceQueryForPrice,\n useSubscribeToMarketPrice,\n} from \"../prices/market/queries/useMarketPriceQuery\";\n\nexport type UseMarketFlowInput = {\n marketPrice?: OptimalRate;\n};\n\nexport type SubmitSwapResult = {\n tradeFlowType: \"marketSwap\";\n approve: SubmitTxResult;\n swap: SubmitTxResult;\n marketPrice: OptimalRate;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject) => void;\n// @TODO instead add global onTxSent subscription to\n// MutationCache({onSuccess: txHash}) when sent\n// and QueryCache({onSuccess: txReceipt}) when mined,\n// maybe??\ntype RunMarketOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseMarketFlowResult = {\n chainId: SupportedChainId;\n runMarketSwapFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>; // reset and retry flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n buildTxParams: {\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n swap: {\n txHash?: Hash;\n receipt?: TransactionReceipt;\n isConfirmingTX: boolean;\n isConfirmingTxError: boolean;\n isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: boolean;\n isTxAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitSwapResult;\n usedPrice?: OptimalRate;\n};\n\nconst MARKET_SWAP_MUTATION_KEY = \"runMarketSwapFlow\";\n\nexport function useMarketFlow({\n marketPrice,\n}: UseMarketFlowInput): UseMarketFlowResult {\n const logger = useLogger(\"MarketFlow\");\n const chainId = useChainId();\n const { resolvedSlippage } = useSlippage();\n const swapSide = useSwapSide();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 2.2. sign Permit1 \n\n 3. await Approve tx (if not using Permit) \n */\n const { approval, signPermit, approveTxMut, signPermitMut } =\n useApproveOrPermit({\n srcToken: marketPrice?.srcToken,\n // if we already approved some amount, save it in approval and signPermit objects\n srcAmount: marketPrice?.srcAmount,\n spenderContractType: \"AugustusSwapper\",\n // marketPrice is the preferred source of truth\n swapSide: marketPrice?.side ?? swapSide,\n });\n\n /* 4. Build Swap tx */\n const buildTxMut = useBuildTx({\n chainId,\n mutationOptions: {\n onSuccess: () => {\n logger.log(\"Build tx success\");\n },\n onError: (error) => {\n logger.error(\"Build tx error\", error);\n },\n },\n });\n\n const buildTxParams: UseMarketFlowResult[\"buildTxParams\"] = {\n isPending: buildTxMut.isPending,\n isError: buildTxMut.isError,\n isSuccess: buildTxMut.isSuccess,\n error: buildTxMut.error,\n };\n\n /* 5. submit Swap tx */\n\n const sendSwapTxMut = useSendMarketSwapTx({\n onSuccess: () => {\n logger.log(\"Swap tx success\");\n },\n onError: (error) => {\n logger.error(\"Swap tx error\", error);\n },\n });\n\n /* 6. await Swap tx */\n const swapTxMined = useAwaitTx({\n hash: sendSwapTxMut.txHash,\n chainId,\n });\n\n const swap: UseMarketFlowResult[\"swap\"] = {\n txHash: sendSwapTxMut.txHash,\n receipt: swapTxMined.data,\n /* tx sending */\n isConfirmingTX: sendSwapTxMut.isPending,\n isConfirmingTxError: sendSwapTxMut.isError,\n isTxSent: sendSwapTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: swapTxMined.isLoading,\n isTxMined: swapTxMined.isSuccess,\n isTxAwaitingError: swapTxMined.isError,\n /* combined */\n isPending: sendSwapTxMut.isPending || swapTxMined.isLoading,\n isSuccess: swapTxMined.isSuccess, // final success\n isError: sendSwapTxMut.isError || swapTxMined.isError,\n error: sendSwapTxMut.error || swapTxMined.error,\n };\n\n const { address: account } = useAccount();\n\n const ensureTxReceipt = useEnsureTxReceipt();\n\n // allows to abort (cancel) currently running flow,\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n const usingPriceRef = useRef<OptimalRate | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n\n usingPriceRef.current = null;\n };\n\n const receiverAddress = useReceiverAddressValue();\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const { constructGasParams } = useConstructGasParams();\n\n const partner = useWidgetConfig().partner;\n\n const getQueryForPrice = useMarketPriceQueryForPrice();\n const subscribeToPrice = useSubscribeToMarketPrice();\n\n const submitSwapTx: UseMarketFlowResult[\"runMarketSwapFlow\"] = async ({\n onTxSent,\n } = {}) => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermitMut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\n\n // no sense in starting flow without a price,\n // which may be unavailable only if we are retrying and deltaPrice response now returns an error.\n // Otherwise this flow will be stopped by disabling Swap button in the first place\n assert(marketPrice, \"Market price is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n // at this point this is the syncronously available price\n const allowanceToSet = approval.allowanceToSet;\n // we use this allowance as a max allowance we will accept new prices for\n\n // marketPrice here is the starting price, available before async code and waiting\n let freshPrice = marketPrice;\n let unsubscribeFromPrice: (() => void) | undefined;\n // this also resets previous usingPriceRef\n usingPriceRef.current = freshPrice;\n\n try {\n // need allowance\n if (approval.needsApproval && allowanceToSet) {\n // queryKey used to fetch the current price,\n // it will be used for the subsequent price refetches as long as price params not changed\n const queryKey = getQueryForPrice({\n chainId,\n price: freshPrice,\n })?.queryKey;\n\n // should always be available\n if (queryKey) {\n // freeze allowanceToSet\n const approvedAmount = allowanceToSet;\n\n // subscribe to price updates to keep track of new prices for the same price params,\n // independently of the hook itself\n unsubscribeFromPrice = subscribeToPrice({\n queryKey,\n onData: (newPrice) => {\n if (signal.aborted) {\n // just in case unsubscribe in finally is not yet called\n // for the queued update with the price from an already cancelled flow\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n return;\n }\n\n // slightly higher amount if BUY with slippage\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: newPrice.srcAmount,\n destAmount: newPrice.destAmount,\n },\n resolvedSlippage,\n newPrice.side\n );\n\n // if new price fits into allowance, update it\n if (approvedAmount >= BigInt(amountsAfterSlippage.srcAmount)) {\n logger.log(\"~ fresh price ~\", newPrice);\n freshPrice = newPrice;\n usingPriceRef.current = freshPrice;\n }\n },\n });\n }\n\n if (!signPermit.isPermitSupported || !signPermit.isPermitReadyToSign) {\n // Token doesn't support Permit\n // make an Approval tx\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n txHash: approveTxHash,\n actionType: \"approve\",\n receiptPromise: approveTxReceiptPromise,\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n value: allowanceToSet,\n });\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n // as long as we had set approvedAmount, we will only get new prices that satisfy the allowance\n const marketPriceToUse = freshPrice;\n usingPriceRef.current = marketPriceToUse;\n // no longer need updates, unsubscribe\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n\n assert(marketPriceToUse, \"Market price is not available\");\n\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: marketPriceToUse.srcAmount,\n destAmount: marketPriceToUse.destAmount,\n },\n resolvedSlippage,\n marketPriceToUse.side\n );\n\n // fresh gas params\n const gasParams = constructGasParams();\n\n const txParams = await buildTxMut.mutateAsync({\n swapTxInput: {\n userAddress: account,\n receiver: receiverAddress,\n srcToken: marketPriceToUse.srcToken,\n destToken: marketPriceToUse.destToken,\n srcDecimals: marketPriceToUse.srcDecimals,\n destDecimals: marketPriceToUse.destDecimals,\n\n partner,\n /* @TODO fill in when and if available\n referrer: \"\",\n partnerAddress: \"\",\n partnerFeeBps: 0, \n takeSurplus: false,*/\n permit: signedPermitResult?.permitEncodedArgs, // just signed Permit signature\n\n priceRoute: marketPriceToUse,\n ...amountsAfterSlippage,\n },\n\n swapTxOptions:\n // ignoreChecks: true,\n // ignoreGasEstimate: true,\n // ignoreAllowance: true,\n // onlyParams: true,\n // @TODO turn on ignore options when necessary (for Safe),\n gasParams,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const swapTxHash = await sendSwapTxMut.sendTransactionAsync(txParams);\n\n // no use aborting past this point, tx is already sent,\n // but we may want to connect this late abortion to tx cancellation, in the future\n\n // tx is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n\n const swapTxReceiptPromise = ensureTxReceipt({\n hash: swapTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:swapTx\", swapTxHash, data);\n },\n });\n if (onTxSent) {\n onTxSent({\n chainId,\n txHash: swapTxHash,\n actionType: \"swap\",\n receiptPromise: swapTxReceiptPromise,\n });\n }\n\n const swapTxReceipt = await swapTxReceiptPromise;\n logger.log(\"~ swapTx ~ receipt:\", swapTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and trhow,\n // or if waitForTransactionReceipt already throws on such receipts\n\n // @TODO try catch, handle errors, refetch allowance and balance in finally\n\n return {\n tradeFlowType: \"marketSwap\",\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n swap: {\n txHash: swapTxHash,\n receipt: swapTxReceipt,\n },\n marketPrice: marketPriceToUse,\n // @TODO add whatever else may be relevant\n account,\n receiverAddress,\n };\n } catch (error) {\n // Market swap failed, we can't be sure if nonce can be reused or it was incremented in a different tx\n // or even Order in the meantime\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n throw error;\n } finally {\n // always unsubscribe if subscribed previously\n unsubscribeFromPrice?.();\n }\n };\n\n const marketSwapMut = useMutation({\n mutationFn: submitSwapTx,\n mutationKey: [MARKET_SWAP_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Swap tx success\", data);\n },\n onError: (error) => {\n logger.error(\"Swap tx error\", error);\n },\n onSettled: () => {\n logger.log(\"Swap tx settled\");\n },\n });\n\n const runMarketSwapFlow = marketSwapMut.mutateAsync;\n\n const reset = () => {\n usingPriceRef.current = null;\n\n approveTxMut.reset();\n signPermitMut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\n marketSwapMut.reset();\n };\n\n const retryFlow = (options?: RunMarketOptions): Promise<SubmitSwapResult> => {\n reset();\n return runMarketSwapFlow(options);\n };\n\n // finalPrice if we reached that point, or usable price (based on allowance given)\n const usedPrice = usingPriceRef.current || marketPrice;\n\n /* 7. return result */\n return {\n chainId,\n runMarketSwapFlow,\n reset,\n cancelFlow,\n retryFlow,\n approval,\n signPermit,\n buildTxParams,\n swap,\n // marketSwapMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: marketSwapMut.isPending,\n isSuccess: marketSwapMut.isSuccess,\n isError: marketSwapMut.isError,\n error: marketSwapMut.error,\n result: marketSwapMut.data,\n usedPrice,\n };\n}\n"],"names":["MARKET_SWAP_MUTATION_KEY","useMarketFlow","marketPrice","logger","useLogger","chainId","useChainId","resolvedSlippage","useSlippage","swapSide","useSwapSide","approval","signPermit","approveTxMut","signPermitMut","useApproveOrPermit","srcToken","srcAmount","spenderContractType","side","buildTxMut","useBuildTx","mutationOptions","onSuccess","log","onError","error","buildTxParams","isPending","isError","isSuccess","sendSwapTxMut","useSendMarketSwapTx","swapTxMined","useAwaitTx","hash","txHash","swap","receipt","data","isConfirmingTX","isConfirmingTxError","isTxSent","isTxPending","isLoading","isTxMined","isTxAwaitingError","address","account","useAccount","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","usingPriceRef","cancelFlow","current","abort","UserCancelledError","receiverAddress","useReceiverAddressValue","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","constructGasParams","useConstructGasParams","partner","useWidgetConfig","getQueryForPrice","useMarketPriceQueryForPrice","subscribeToPrice","useSubscribeToMarketPrice","submitSwapTx","onTxSent","reset","assert","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","freshPrice","unsubscribeFromPrice","needsApproval","queryKey","price","approvedAmount","onData","newPrice","aborted","undefined","amountsAfterSlippage","applySlippage","destAmount","BigInt","isPermitSupported","isPermitReadyToSign","approveAsync","allowanceData","throwIfAborted","approveTxReceiptPromise","onReplaced","actionType","receiptPromise","signPermitAsync","value","marketPriceToUse","gasParams","txParams","mutateAsync","swapTxInput","userAddress","receiver","destToken","srcDecimals","destDecimals","permit","permitEncodedArgs","priceRoute","swapTxOptions","swapTxHash","sendTransactionAsync","signedPermitData","swapTxReceiptPromise","swapTxReceipt","tradeFlowType","approve","marketSwapMut","useMutation","mutationFn","mutationKey","onSettled","runMarketSwapFlow","retryFlow","options","usedPrice","result"],"mappings":"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"}
1
+ {"version":3,"file":"useMarketFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketFlow.ts"],"sourcesContent":["import { useAwaitTx } from \"@/hooks/txs\";\nimport type { OptimalRate } from \"@velora-dex/sdk\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useSendMarketSwapTx } from \"../prices/market/mutations/useSendMarketSwapTx\";\nimport { useBuildTx } from \"../prices/market/mutations/useBuildTx\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, Hex, TransactionReceipt } from \"viem\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"./common/types\";\nimport { applySlippage } from \"@/lib/utils/price\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useSwapReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type {\n CallsSentObject,\n TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { useApproveOrPermit } from \"./common/useApproveOrPermit\";\nimport {\n useMarkPermit1Or2NonceAsUsed,\n type SignedPermitResult,\n} from \"./common/useSignPermit1Or2\";\nimport { useLogger } from \"@/core/logger\";\nimport { useConstructGasParams } from \"./common/useConstructGasParams\";\nimport {\n useMarketPriceQueryForPrice,\n useSubscribeToMarketPrice,\n} from \"../prices/market/queries/useMarketPriceQuery\";\nimport { usePartner } from \"@/hooks/usePartner\";\n\nconst marketSwapFlowType = \"marketSwap\";\nimport { useSendBatchTx } from \"@/hooks/batch/useSendBatchTx\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport {\n useAwaitCalls,\n useEnsureCallsStatus,\n} from \"@/hooks/batch/useAwaitCalls\";\nimport { type CallsReceipt } from \"@/hooks/batch/useAwaitCalls\";\nimport { useBatchWithApproveTxs } from \"@/hooks/batch/useBatchWithApproveTxs\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\n\nexport type UseMarketFlowInput = {\n marketPrice?: OptimalRate;\n};\n\nexport type SubmitSwapResult = {\n tradeFlowType: typeof marketSwapFlowType;\n approve: SubmitTxResult;\n swap: SubmitTxResult;\n marketPrice: OptimalRate;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n// @TODO instead add global onTxSent subscription to\n// MutationCache({onSuccess: txHash}) when sent\n// and QueryCache({onSuccess: txReceipt}) when mined,\n// maybe??\ntype RunMarketOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseMarketFlowResult = {\n tradeFlowType: typeof marketSwapFlowType;\n chainId: SupportedChainId;\n runMarketSwapFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>; // reset and retry flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n buildTxParams: {\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n swap: {\n txHash?: Hash;\n receipt?: TransactionReceipt;\n isConfirmingTX: boolean;\n isConfirmingTxError: boolean;\n isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: boolean;\n isTxAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n swapBatch: {\n canBatchTxs?: boolean;\n callsId?: string;\n txHash?: Hash;\n receipt?: CallsReceipt;\n isConfirmingCalls: boolean;\n isConfirmingCallsError: boolean;\n isCallsSent: boolean;\n isCallsPending: boolean;\n isCallsMined: boolean;\n isCallsAwaitingError: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitSwapResult;\n usedPrice?: OptimalRate;\n};\n\nconst MARKET_SWAP_MUTATION_KEY = \"runMarketSwapFlow\";\n\nexport function useMarketFlow({\n marketPrice,\n}: UseMarketFlowInput): UseMarketFlowResult {\n const logger = useLogger(\"MarketFlow\");\n const chainId = useChainId();\n const { resolvedSlippage } = useSlippage(\"swap\");\n const swapSide = useSwapSide();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 2.2. sign Permit1 \n\n 3. await Approve tx (if not using Permit) \n */\n const {\n approval,\n signPermit,\n approveTxMut,\n signPermitMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: marketPrice?.srcToken,\n // if we already approved some amount, save it in approval and signPermit objects\n srcAmount: marketPrice?.srcAmount,\n spenderContractType: \"AugustusSwapper\",\n // marketPrice is the preferred source of truth\n swapSide: marketPrice?.side ?? swapSide,\n tradeMode: \"swap\",\n });\n\n /* 4. Build Swap tx */\n const buildTxMut = useBuildTx({\n chainId,\n mutationOptions: {\n onSuccess: () => {\n logger.log(\"Build tx success\");\n },\n onError: (error) => {\n logger.error(\"Build tx error\", error);\n },\n },\n });\n\n const buildTxParams: UseMarketFlowResult[\"buildTxParams\"] = {\n isPending: buildTxMut.isPending,\n isError: buildTxMut.isError,\n isSuccess: buildTxMut.isSuccess,\n error: buildTxMut.error,\n };\n\n /* 5. submit Swap tx */\n\n /* 5.1. submit standalone Swap tx */\n\n const sendSwapTxMut = useSendMarketSwapTx({\n onSuccess: () => {\n logger.log(\"Swap tx success\");\n },\n onError: (error) => {\n logger.error(\"Swap tx error\", error);\n },\n });\n\n /* 5.2. submit Batch tx */\n const { forCurrentChain: canBatchTxs } = useCanBatchTxs();\n const { addTxWithApprovals } = useBatchWithApproveTxs();\n\n const batchTxMut = useSendBatchTx({\n onSuccess: () => {\n logger.log(\"Batch tx success\");\n },\n onError: (error) => {\n logger.error(\"Batch tx error\", error);\n },\n });\n\n /* 6. await Swap tx */\n\n /* 6.1. await standalone Swap tx */\n const swapTxMined = useAwaitTx({\n hash: sendSwapTxMut.txHash,\n chainId,\n });\n\n /* 6.2. await Batch tx */\n const batchTxMined = useAwaitCalls({\n id: batchTxMut.data?.id,\n });\n\n const swap: UseMarketFlowResult[\"swap\"] = {\n txHash: sendSwapTxMut.txHash,\n receipt: swapTxMined.data,\n /* tx sending */\n isConfirmingTX: sendSwapTxMut.isPending,\n isConfirmingTxError: sendSwapTxMut.isError,\n isTxSent: sendSwapTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: swapTxMined.isLoading,\n isTxMined: swapTxMined.isSuccess,\n isTxAwaitingError: swapTxMined.isError,\n /* combined */\n isPending: sendSwapTxMut.isPending || swapTxMined.isLoading,\n isSuccess: swapTxMined.isSuccess, // final success\n isError: sendSwapTxMut.isError || swapTxMined.isError,\n error: sendSwapTxMut.error || swapTxMined.error,\n };\n\n // for a successful SendCalls execution there will either be one receipt only,\n // or several receipts with the last one for the last tx from the batch\n const lastCallsReceipt =\n batchTxMined.data?.receipts?.[batchTxMined.data.receipts.length - 1];\n\n const swapBatch: UseMarketFlowResult[\"swapBatch\"] = {\n canBatchTxs,\n callsId: batchTxMut.data?.id,\n txHash: lastCallsReceipt?.transactionHash,\n receipt: lastCallsReceipt,\n /* calls sending */\n isConfirmingCalls: batchTxMut.isPending,\n isConfirmingCallsError: batchTxMut.isError,\n isCallsSent: batchTxMut.isSuccess,\n /* calls awaiting */\n isCallsPending: batchTxMined.isLoading,\n isCallsMined: batchTxMined.isSuccess,\n isCallsAwaitingError: batchTxMined.isError,\n /* combined */\n isPending: batchTxMut.isPending || batchTxMined.isLoading,\n isSuccess: batchTxMined.isSuccess,\n isError: batchTxMut.isError || batchTxMined.isError,\n error: batchTxMut.error || batchTxMined.error,\n };\n\n const { address: account } = useAccount();\n\n const ensureTxReceipt = useEnsureTxReceipt();\n const ensureCallsStatus = useEnsureCallsStatus();\n\n // allows to abort (cancel) currently running flow,\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n const usingPriceRef = useRef<OptimalRate | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n\n usingPriceRef.current = null;\n };\n\n const receiverAddress = useSwapReceiverAddressValue();\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const { constructGasParams } = useConstructGasParams();\n\n const partner = usePartner();\n\n const getQueryForPrice = useMarketPriceQueryForPrice();\n const subscribeToPrice = useSubscribeToMarketPrice();\n\n const { onSwap } = useWidgetEvents();\n\n const submitSwapTx: UseMarketFlowResult[\"runMarketSwapFlow\"] = async ({\n onTxSent,\n } = {}) => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermitMut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\n batchTxMut.reset();\n\n // no sense in starting flow without a price,\n // which may be unavailable only if we are retrying and deltaPrice response now returns an error.\n // Otherwise this flow will be stopped by disabling Swap button in the first place\n assert(marketPrice, \"Market price is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n // at this point this is the syncronously available price\n const allowanceToSet = approval.allowanceToSet;\n // we use this allowance as a max allowance we will accept new prices for\n\n // marketPrice here is the starting price, available before async code and waiting\n let freshPrice = marketPrice;\n let unsubscribeFromPrice: (() => void) | undefined;\n // this also resets previous usingPriceRef\n usingPriceRef.current = freshPrice;\n\n const shouldBatchTxs =\n canBatchTxs && approval.needsApproval && !!allowanceToSet;\n\n try {\n // need allowance\n if (!shouldBatchTxs && approval.needsApproval && allowanceToSet) {\n // queryKey used to fetch the current price,\n // it will be used for the subsequent price refetches as long as price params not changed\n const queryKey = getQueryForPrice({\n chainId,\n price: freshPrice,\n })?.queryKey;\n\n // should always be available\n if (queryKey) {\n // freeze allowanceToSet\n const approvedAmount = allowanceToSet;\n\n // subscribe to price updates to keep track of new prices for the same price params,\n // independently of the hook itself\n unsubscribeFromPrice = subscribeToPrice({\n queryKey,\n onData: (newPrice) => {\n if (signal.aborted) {\n // just in case unsubscribe in finally is not yet called\n // for the queued update with the price from an already cancelled flow\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n return;\n }\n\n // slightly higher amount if BUY with slippage\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: newPrice.srcAmount,\n destAmount: newPrice.destAmount,\n },\n resolvedSlippage,\n newPrice.side\n );\n\n // if new price fits into allowance, update it\n if (approvedAmount >= BigInt(amountsAfterSlippage.srcAmount)) {\n logger.log(\"~ fresh price ~\", newPrice);\n freshPrice = newPrice;\n usingPriceRef.current = freshPrice;\n }\n },\n });\n }\n\n const tryPermit =\n signPermit.isPermitSupported && signPermit.isPermitReadyToSign;\n try {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n // Token doesn't support Permit\n // make an Approval tx\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n approveOrPermitEvents.onSignPermit.request({ allowanceToSet });\n\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n value: allowanceToSet,\n });\n\n approveOrPermitEvents.onSignPermit.confirmed({\n allowanceToSet,\n permit: signedPermitResult?.permitEncodedArgs,\n });\n }\n } catch (error) {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n } else {\n approveOrPermitEvents.onSignPermit.failed({\n allowanceToSet,\n error: error as Error,\n });\n }\n throw error;\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n // as long as we had set approvedAmount, we will only get new prices that satisfy the allowance\n const marketPriceToUse = freshPrice;\n usingPriceRef.current = marketPriceToUse;\n // no longer need updates, unsubscribe\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n\n assert(marketPriceToUse, \"Market price is not available\");\n\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: marketPriceToUse.srcAmount,\n destAmount: marketPriceToUse.destAmount,\n },\n resolvedSlippage,\n marketPriceToUse.side\n );\n\n // fresh gas params\n const gasParams = constructGasParams();\n\n const txParams = await buildTxMut.mutateAsync({\n swapTxInput: {\n userAddress: account,\n receiver: receiverAddress,\n srcToken: marketPriceToUse.srcToken,\n destToken: marketPriceToUse.destToken,\n srcDecimals: marketPriceToUse.srcDecimals,\n destDecimals: marketPriceToUse.destDecimals,\n\n partner,\n /* @TODO fill in when and if available\n referrer: \"\",\n partnerAddress: \"\",\n partnerFeeBps: 0, \n takeSurplus: false,*/\n permit: signedPermitResult?.permitEncodedArgs, // just signed Permit signature\n\n priceRoute: marketPriceToUse,\n ...amountsAfterSlippage,\n },\n\n swapTxOptions: {\n // ignoreChecks: true,\n // gas estimate will break if only swapn tx is estimated, but approve ts is not considerewd in a batch\n ignoreGasEstimate: shouldBatchTxs,\n // for Batch-capable wallets batch Approve+Swap tx have to ignore all checks\n ignoreAllowance: shouldBatchTxs,\n // onlyParams: true,\n ...gasParams,\n },\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n let swapTxHash: Hash | undefined;\n let swapCallsId: string | undefined;\n\n onSwap?.({\n event: {\n name: \"Swap:request\",\n params: {\n swapMode: \"market\",\n price: marketPriceToUse,\n },\n },\n });\n\n if (shouldBatchTxs) {\n const { calls } = await addTxWithApprovals({\n txsParams: [\n {\n to: txParams.to as Address,\n account: txParams.from as Address,\n data: txParams.data as Hex,\n value: BigInt(txParams.value),\n chainId: txParams.chainId,\n },\n ],\n approveProps: [\n {\n spender: approval.spender,\n allowanceToSet: approval.allowanceToSet,\n token: approval.token,\n chainId: approval.chainId,\n },\n ],\n });\n\n const sendCallsResult = await batchTxMut.sendCalls({\n txsParams: calls,\n });\n swapCallsId = sendCallsResult.id;\n onSwap?.({\n event: {\n name: \"Swap:sent\",\n params: {\n swapMode: \"market\",\n price: marketPriceToUse,\n callsId: swapCallsId,\n },\n },\n });\n } else {\n swapTxHash = await sendSwapTxMut.sendTransactionAsync(txParams);\n onSwap?.({\n event: {\n name: \"Swap:sent\",\n params: {\n swapMode: \"market\",\n price: marketPriceToUse,\n txHash: swapTxHash,\n },\n },\n });\n }\n\n // no use aborting past this point, tx is already sent,\n // but we may want to connect this late abortion to tx cancellation, in the future\n\n // tx is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n\n let swapCallsReceipt: CallsReceipt | undefined;\n let swapTxReceipt: TransactionReceipt | undefined;\n\n if (swapCallsId) {\n const sendCallsReceiptPromise = ensureCallsStatus({\n id: swapCallsId,\n }).then((status) => status.receipts?.[status.receipts.length - 1]);\n\n logger.log(\"~ swapTx ~ awaiting calls id :\", swapCallsId);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"swap\",\n callsId: swapCallsId,\n receiptPromise: sendCallsReceiptPromise,\n transactionSpecificData: {\n action: \"swap\",\n source: \"local\",\n srcTokenAddress: marketPriceToUse.srcToken as Address,\n destTokenAddress: marketPriceToUse.destToken as Address,\n srcAmount: amountsAfterSlippage.srcAmount,\n destAmount: amountsAfterSlippage.destAmount,\n srcAmountUSD: marketPriceToUse.srcUSD,\n destAmountUSD: marketPriceToUse.destUSD,\n gasCost: marketPriceToUse.gasCost,\n },\n });\n }\n\n swapCallsReceipt = await sendCallsReceiptPromise;\n\n if (swapCallsReceipt) {\n onSwap?.({\n event: {\n name: \"Swap:confirmed\",\n params: {\n swapMode: \"market\",\n price: marketPriceToUse,\n callsReceipt: swapCallsReceipt,\n callsId: swapCallsId,\n },\n },\n });\n }\n } else if (swapTxHash) {\n const swapTxReceiptPromise = ensureTxReceipt({\n hash: swapTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:swapTx\", swapTxHash, data);\n },\n });\n\n logger.log(\"~ swapTx ~ awaiting tx hash :\", swapTxHash);\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"swap\",\n transactionHash: swapTxHash,\n receiptPromise: swapTxReceiptPromise,\n transactionSpecificData: {\n action: \"swap\",\n source: \"local\",\n srcTokenAddress: marketPriceToUse.srcToken as Address,\n destTokenAddress: marketPriceToUse.destToken as Address,\n srcAmount: amountsAfterSlippage.srcAmount,\n destAmount: amountsAfterSlippage.destAmount,\n srcAmountUSD: marketPriceToUse.srcUSD,\n destAmountUSD: marketPriceToUse.destUSD,\n gasCost: marketPriceToUse.gasCost,\n gasCostUSD: marketPriceToUse.gasCostUSD,\n },\n });\n }\n\n swapTxReceipt = await swapTxReceiptPromise;\n\n if (swapTxReceipt) {\n onSwap?.({\n event: {\n name: \"Swap:confirmed\",\n params: {\n swapMode: \"market\",\n price: marketPriceToUse,\n txReceipt: swapTxReceipt,\n txHash: swapTxHash,\n },\n },\n });\n }\n }\n\n logger.log(\"~ swapTx ~ receipt:\", swapCallsReceipt || swapTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and trhow,\n // or if waitForTransactionReceipt already throws on such receipts\n\n return {\n tradeFlowType: marketSwapFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n swap: {\n callsId: swapCallsId,\n txHash: swapTxHash,\n receipt: swapTxReceipt,\n callsReceipt: swapCallsReceipt,\n },\n marketPrice: marketPriceToUse,\n // @TODO add whatever else may be relevant\n account,\n receiverAddress,\n };\n } catch (error) {\n // Market swap failed, we can't be sure if nonce can be reused or it was incremented in a different tx\n // or even Order in the meantime\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n onSwap?.({\n event: {\n name: \"Swap:failed\",\n params: {\n swapMode: \"market\",\n error: error as Error,\n },\n },\n });\n throw error;\n } finally {\n // always unsubscribe if subscribed previously\n unsubscribeFromPrice?.();\n }\n };\n\n const marketSwapMut = useMutation({\n mutationFn: submitSwapTx,\n mutationKey: [MARKET_SWAP_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Swap tx success\", data);\n },\n onError: (error) => {\n logger.error(\"Swap tx error\", error);\n },\n onSettled: () => {\n logger.log(\"Swap tx settled\");\n },\n });\n\n const runMarketSwapFlow = marketSwapMut.mutateAsync;\n\n const reset = () => {\n usingPriceRef.current = null;\n\n approveTxMut.reset();\n signPermitMut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\n batchTxMut.reset();\n marketSwapMut.reset();\n };\n\n const retryFlow = (options?: RunMarketOptions): Promise<SubmitSwapResult> => {\n reset();\n return runMarketSwapFlow(options);\n };\n\n // finalPrice if we reached that point, or usable price (based on allowance given)\n const usedPrice = usingPriceRef.current || marketPrice;\n\n /* 7. return result */\n return {\n tradeFlowType: marketSwapFlowType,\n chainId,\n runMarketSwapFlow,\n reset,\n cancelFlow,\n retryFlow,\n approval,\n signPermit,\n buildTxParams,\n swap,\n swapBatch,\n // marketSwapMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: marketSwapMut.isPending,\n isSuccess: marketSwapMut.isSuccess,\n isError: marketSwapMut.isError,\n error: marketSwapMut.error,\n result: marketSwapMut.data,\n usedPrice,\n };\n}\n"],"names":["marketSwapFlowType","MARKET_SWAP_MUTATION_KEY","useMarketFlow","marketPrice","logger","useLogger","chainId","useChainId","resolvedSlippage","useSlippage","swapSide","useSwapSide","approval","signPermit","approveTxMut","signPermitMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcAmount","spenderContractType","side","tradeMode","buildTxMut","useBuildTx","mutationOptions","onSuccess","log","onError","error","buildTxParams","isPending","isError","isSuccess","sendSwapTxMut","useSendMarketSwapTx","forCurrentChain","canBatchTxs","useCanBatchTxs","addTxWithApprovals","useBatchWithApproveTxs","batchTxMut","useSendBatchTx","swapTxMined","useAwaitTx","hash","txHash","batchTxMined","useAwaitCalls","id","data","swap","receipt","isConfirmingTX","isConfirmingTxError","isTxSent","isTxPending","isLoading","isTxMined","isTxAwaitingError","lastCallsReceipt","receipts","length","swapBatch","callsId","transactionHash","isConfirmingCalls","isConfirmingCallsError","isCallsSent","isCallsPending","isCallsMined","isCallsAwaitingError","address","account","useAccount","ensureTxReceipt","useEnsureTxReceipt","ensureCallsStatus","useEnsureCallsStatus","currentAbortControllerRef","useRef","usingPriceRef","cancelFlow","current","abort","UserCancelledError","receiverAddress","useSwapReceiverAddressValue","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","constructGasParams","useConstructGasParams","partner","usePartner","getQueryForPrice","useMarketPriceQueryForPrice","subscribeToPrice","useSubscribeToMarketPrice","onSwap","useWidgetEvents","submitSwapTx","onTxSent","reset","assert","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","freshPrice","unsubscribeFromPrice","shouldBatchTxs","needsApproval","queryKey","price","approvedAmount","onData","newPrice","aborted","undefined","amountsAfterSlippage","applySlippage","destAmount","BigInt","tryPermit","isPermitSupported","isPermitReadyToSign","onApproveTx","request","approveAsync","allowanceData","sent","throwIfAborted","approveTxReceiptPromise","onReplaced","action","receiptPromise","transactionSpecificData","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","onSignPermit","signPermitAsync","value","permit","permitEncodedArgs","failed","marketPriceToUse","gasParams","txParams","mutateAsync","swapTxInput","userAddress","receiver","destToken","srcDecimals","destDecimals","priceRoute","swapTxOptions","ignoreGasEstimate","ignoreAllowance","swapTxHash","swapCallsId","event","name","params","swapMode","calls","txsParams","to","from","approveProps","sendCallsResult","sendCalls","sendTransactionAsync","signedPermitData","swapCallsReceipt","swapTxReceipt","sendCallsReceiptPromise","then","status","source","srcTokenAddress","destTokenAddress","srcAmountUSD","srcUSD","destAmountUSD","destUSD","gasCost","callsReceipt","swapTxReceiptPromise","gasCostUSD","tradeFlowType","approve","marketSwapMut","useMutation","mutationFn","mutationKey","onSettled","runMarketSwapFlow","retryFlow","options","usedPrice","result"],"mappings":"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"}
@@ -5,13 +5,14 @@ type UseMarketSwapStepResult = {
5
5
  reset: UseMarketFlowResult["reset"];
6
6
  cancelFlow: UseMarketFlowResult["cancelFlow"];
7
7
  retryFlow: UseMarketFlowResult["retryFlow"];
8
- isCancellable: boolean;
8
+ isFlowCancellable: boolean;
9
9
  step?: MarketSwapStep;
10
10
  explorerLink?: string;
11
11
  error: Error | null;
12
12
  erroredStep?: MarketSwapStepKey;
13
13
  result?: SubmitSwapResult;
14
14
  usedPrice: UseMarketFlowResult["usedPrice"];
15
+ tradeFlowType: UseMarketFlowResult["tradeFlowType"];
15
16
  };
16
17
  export declare function useMarketSwapStep(options: UseMarketFlowInput): UseMarketSwapStepResult;
17
18
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AAKzB,KAAK,uBAAuB,GAAG;IAC7B,eAAe,EAAE,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IAE1D,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC9C,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC5C,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;CAC7C,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,uBAAuB,CAuHzB"}
1
+ {"version":3,"file":"useMarketSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AAKzB,KAAK,uBAAuB,GAAG;IAC7B,eAAe,EAAE,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;IAE1D,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC9C,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC5C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC5C,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACrD,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,uBAAuB,CAoIzB"}
@@ -5,7 +5,7 @@ import { useLogger } from '../../../core/logger.js';
5
5
  import { isUserCancelledError } from './common/errors.js';
6
6
 
7
7
  function useMarketSwapStep(options) {
8
- const $ = distExports.c(19);
8
+ const $ = distExports.c(20);
9
9
  const logger = useLogger("MarketSwapStep");
10
10
  const marketFlow = useMarketFlow(options);
11
11
  const startMarketSwap = marketFlow.runMarketSwapFlow;
@@ -13,12 +13,12 @@ function useMarketSwapStep(options) {
13
13
  const cancelFlow = marketFlow.cancelFlow;
14
14
  const retryFlow = marketFlow.retryFlow;
15
15
  let explorerLink;
16
- let isCancellable;
16
+ let isFlowCancellable;
17
17
  let step;
18
18
  if ($[0] !== logger.once || $[1] !== marketFlow) {
19
19
  const permitSigningHappeningOrNeverHappened = marketFlow.signPermit.isPending || !marketFlow.signPermit.isPermitSigned;
20
20
  const approvalHappeningOrNeverHappened = marketFlow.approval.isPending || !marketFlow.approval.isSuccess;
21
- const willUsePermit = marketFlow.approval.needsApproval && marketFlow.signPermit.isPermitSupported && marketFlow.signPermit.isPermitReadyToSign;
21
+ const willUsePermit = marketFlow.approval.needsApproval && marketFlow.signPermit.isPermitSupported && marketFlow.signPermit.isPermitReadyToSign && !marketFlow.swapBatch.canBatchTxs;
22
22
  const permitOrApprovalHappeningOrNeverHappened = willUsePermit ? permitSigningHappeningOrNeverHappened : approvalHappeningOrNeverHappened;
23
23
  if (marketFlow.approval.needsApproval && permitOrApprovalHappeningOrNeverHappened) {
24
24
  step = {
@@ -26,14 +26,14 @@ function useMarketSwapStep(options) {
26
26
  subStep: "approval-signature"
27
27
  };
28
28
  } else {
29
- if (marketFlow.buildTxParams.isPending || marketFlow.swap.isConfirmingTX) {
29
+ if (marketFlow.buildTxParams.isPending || marketFlow.swap.isConfirmingTX || marketFlow.swapBatch.isConfirmingCalls) {
30
30
  const permitOrApprovalHappened = !!(marketFlow.approval.txHash || marketFlow.signPermit.signature);
31
31
  step = {
32
32
  key: "signature",
33
33
  subStep: permitOrApprovalHappened ? "order-signature" : "standalone-order-signature"
34
34
  };
35
35
  } else {
36
- if (marketFlow.swap.isTxPending) {
36
+ if (marketFlow.swap.isTxPending || marketFlow.swapBatch.isCallsPending) {
37
37
  step = {
38
38
  key: "swap-tx-execution"
39
39
  };
@@ -49,26 +49,26 @@ function useMarketSwapStep(options) {
49
49
  }
50
50
  const approvalIsStarted = step?.key === "signature" && step.subStep === "approval-signature" && marketFlow.approval.isTxPending;
51
51
  const inSwapTxConfirmation = step?.key === "signature" && (step.subStep === "order-signature" || step.subStep === "standalone-order-signature");
52
- const notYetSwapTxSent = step?.key === "swap-tx-execution" && !marketFlow.swap.isTxSent;
53
- isCancellable = approvalIsStarted || inSwapTxConfirmation || notYetSwapTxSent;
54
- const txHash = marketFlow.swap.txHash;
52
+ const notYetSwapTxSent = step?.key === "swap-tx-execution" && !marketFlow.swap.isTxSent && !marketFlow.swapBatch.isCallsSent;
53
+ isFlowCancellable = approvalIsStarted || inSwapTxConfirmation || notYetSwapTxSent;
54
+ const txHash = marketFlow.swapBatch.txHash || marketFlow.swap.txHash;
55
55
  explorerLink = txHash ? constructTxLinkForChain({
56
56
  chainId: marketFlow.chainId,
57
57
  txHash
58
58
  }) : void 0;
59
59
  logger.once.log("step", step, marketFlow, {
60
- isCancellable,
60
+ isFlowCancellable,
61
61
  explorerLink,
62
62
  txHash
63
63
  });
64
64
  $[0] = logger.once;
65
65
  $[1] = marketFlow;
66
66
  $[2] = explorerLink;
67
- $[3] = isCancellable;
67
+ $[3] = isFlowCancellable;
68
68
  $[4] = step;
69
69
  } else {
70
70
  explorerLink = $[2];
71
- isCancellable = $[3];
71
+ isFlowCancellable = $[3];
72
72
  step = $[4];
73
73
  }
74
74
  let t0;
@@ -82,43 +82,45 @@ function useMarketSwapStep(options) {
82
82
  const error = t0;
83
83
  let erroredStep;
84
84
  if (marketFlow.isError) {
85
- if (marketFlow.approval.isError || marketFlow.signPermit.isError || marketFlow.buildTxParams.isError || marketFlow.swap.isConfirmingTxError) {
85
+ if (marketFlow.approval.isError || marketFlow.signPermit.isError || marketFlow.buildTxParams.isError || marketFlow.swap.isConfirmingTxError || marketFlow.swapBatch.isConfirmingCallsError) {
86
86
  erroredStep = "signature";
87
87
  } else {
88
- if (marketFlow.swap.isTxAwaitingError) {
88
+ if (marketFlow.swap.isTxAwaitingError || marketFlow.swapBatch.isCallsAwaitingError) {
89
89
  erroredStep = "swap-tx-execution";
90
90
  }
91
91
  }
92
92
  }
93
93
  let t1;
94
- if ($[7] !== cancelFlow || $[8] !== error || $[9] !== erroredStep || $[10] !== explorerLink || $[11] !== isCancellable || $[12] !== marketFlow.result || $[13] !== marketFlow.usedPrice || $[14] !== reset || $[15] !== retryFlow || $[16] !== startMarketSwap || $[17] !== step) {
94
+ if ($[7] !== cancelFlow || $[8] !== error || $[9] !== erroredStep || $[10] !== explorerLink || $[11] !== isFlowCancellable || $[12] !== marketFlow.result || $[13] !== marketFlow.tradeFlowType || $[14] !== marketFlow.usedPrice || $[15] !== reset || $[16] !== retryFlow || $[17] !== startMarketSwap || $[18] !== step) {
95
95
  t1 = {
96
96
  startMarketSwap,
97
97
  reset,
98
98
  cancelFlow,
99
99
  retryFlow,
100
- isCancellable,
100
+ isFlowCancellable,
101
101
  step,
102
102
  explorerLink,
103
103
  error,
104
104
  erroredStep,
105
105
  result: marketFlow.result,
106
- usedPrice: marketFlow.usedPrice
106
+ usedPrice: marketFlow.usedPrice,
107
+ tradeFlowType: marketFlow.tradeFlowType
107
108
  };
108
109
  $[7] = cancelFlow;
109
110
  $[8] = error;
110
111
  $[9] = erroredStep;
111
112
  $[10] = explorerLink;
112
- $[11] = isCancellable;
113
+ $[11] = isFlowCancellable;
113
114
  $[12] = marketFlow.result;
114
- $[13] = marketFlow.usedPrice;
115
- $[14] = reset;
116
- $[15] = retryFlow;
117
- $[16] = startMarketSwap;
118
- $[17] = step;
119
- $[18] = t1;
115
+ $[13] = marketFlow.tradeFlowType;
116
+ $[14] = marketFlow.usedPrice;
117
+ $[15] = reset;
118
+ $[16] = retryFlow;
119
+ $[17] = startMarketSwap;
120
+ $[18] = step;
121
+ $[19] = t1;
120
122
  } else {
121
- t1 = $[18];
123
+ t1 = $[19];
122
124
  }
123
125
  return t1;
124
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"sourcesContent":["import type {\n MarketSwapStep,\n MarketSwapStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useMarketFlow,\n type UseMarketFlowInput,\n type UseMarketFlowResult,\n type SubmitSwapResult,\n} from \"./useMarketFlow\";\nimport { constructTxLinkForChain } from \"@/lib/utils/explorer\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"./common/errors\";\n\ntype UseMarketSwapStepResult = {\n startMarketSwap: UseMarketFlowResult[\"runMarketSwapFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseMarketFlowResult[\"reset\"];\n cancelFlow: UseMarketFlowResult[\"cancelFlow\"];\n retryFlow: UseMarketFlowResult[\"retryFlow\"];\n isCancellable: boolean;\n step?: MarketSwapStep;\n explorerLink?: string;\n error: Error | null;\n erroredStep?: MarketSwapStepKey;\n result?: SubmitSwapResult;\n usedPrice: UseMarketFlowResult[\"usedPrice\"];\n};\n\nexport function useMarketSwapStep(\n options: UseMarketFlowInput\n): UseMarketSwapStepResult {\n const logger = useLogger(\"MarketSwapStep\");\n const marketFlow = useMarketFlow(options);\n\n const startMarketSwap = marketFlow.runMarketSwapFlow;\n const reset = marketFlow.reset;\n const cancelFlow = marketFlow.cancelFlow;\n const retryFlow = marketFlow.retryFlow;\n\n let step: MarketSwapStep | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n marketFlow.signPermit.isPending || !marketFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n marketFlow.approval.isPending || !marketFlow.approval.isSuccess;\n\n const willUsePermit =\n marketFlow.approval.needsApproval &&\n marketFlow.signPermit.isPermitSupported &&\n marketFlow.signPermit.isPermitReadyToSign;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n marketFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (\n marketFlow.buildTxParams.isPending ||\n marketFlow.swap.isConfirmingTX\n ) {\n const permitOrApprovalHappened = !!(\n marketFlow.approval.txHash || marketFlow.signPermit.signature\n );\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (marketFlow.swap.isTxPending) {\n step = { key: \"swap-tx-execution\" };\n } else if (marketFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're at the standalone signature sub-step\n step = { key: \"signature\", subStep: \"standalone-order-signature\" };\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n marketFlow.approval.isTxPending;\n\n const inSwapTxConfirmation =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const notYetSwapTxSent =\n step?.key === \"swap-tx-execution\" && !marketFlow.swap.isTxSent;\n\n // final tx is not yet sent, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n const isCancellable =\n approvalIsStarted || inSwapTxConfirmation || notYetSwapTxSent;\n\n const txHash = marketFlow.swap.txHash;\n const explorerLink = txHash\n ? constructTxLinkForChain({ chainId: marketFlow.chainId, txHash })\n : undefined;\n\n logger.once.log(\"step\", step, marketFlow, {\n isCancellable,\n explorerLink,\n txHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(marketFlow.error)\n ? null\n : marketFlow.error;\n\n let erroredStep: MarketSwapStepKey | undefined;\n\n if (marketFlow.isError) {\n if (\n marketFlow.approval.isError ||\n marketFlow.signPermit.isError ||\n marketFlow.buildTxParams.isError ||\n marketFlow.swap.isConfirmingTxError\n ) {\n erroredStep = \"signature\";\n } else if (marketFlow.swap.isTxAwaitingError) {\n erroredStep = \"swap-tx-execution\";\n }\n }\n\n return {\n startMarketSwap,\n reset,\n cancelFlow,\n retryFlow,\n isCancellable,\n step,\n explorerLink,\n error,\n erroredStep,\n result: marketFlow.result,\n usedPrice: marketFlow.usedPrice,\n };\n}\n"],"names":["useMarketSwapStep","options","$","_c","logger","useLogger","marketFlow","useMarketFlow","startMarketSwap","runMarketSwapFlow","reset","cancelFlow","retryFlow","explorerLink","isCancellable","step","once","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","buildTxParams","swap","isConfirmingTX","permitOrApprovalHappened","txHash","signature","isTxPending","approvalIsStarted","key","subStep","inSwapTxConfirmation","notYetSwapTxSent","isTxSent","constructTxLinkForChain","chainId","undefined","log","t0","error","isUserCancelledError","erroredStep","isError","isConfirmingTxError","isTxAwaitingError","t1","result","usedPrice"],"mappings":";;;;;;AA6BO,SAAAA,kBAAAC,OAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAGL,EAAA,MAAAC,MAAAA,GAAeC,UAAU,gBAAgB,CAAA;AACzC,EAAA,MAAAC,UAAAA,GAAmBC,cAAcN,OAAO,CAAA;AAExC,EAAA,MAAAO,kBAAwBF,UAAAA,CAAUG,iBAAAA;AAClC,EAAA,MAAAC,QAAcJ,UAAAA,CAAUI,KAAAA;AACxB,EAAA,MAAAC,aAAmBL,UAAAA,CAAUK,UAAAA;AAC7B,EAAA,MAAAC,YAAkBN,UAAAA,CAAUM,SAAAA;AAAW,EAAA,IAAAC,YAAAA;AAAA,EAAA,IAAAC,aAAAA;AAAA,EAAA,IAAAC,IAAAA;AAAA,EAAA,IAAAb,CAAAA,QAAAE,MAAAA,CAAAY,QAAAd,CAAAA,QAAAI,UAAAA,EAAA;AAIvC,IAAA,MAAAW,wCAGEX,UAAAA,CAAUY,UAAAA,CAAAC,SAAAA,IAAA,CAA0Bb,WAAUY,UAAAA,CAAAE,cAAAA;AAEhD,IAAA,MAAAC,mCAGEf,UAAAA,CAAUgB,QAAAA,CAAAH,SAAAA,IAAA,CAAwBb,WAAUgB,QAAAA,CAAAC,SAAAA;AAE9C,IAAA,MAAAC,aAAAA,GACElB,WAAUgB,QAAAA,CAAAG,aAAAA,IACVnB,WAAUY,UAAAA,CAAAQ,iBAAAA,IACVpB,WAAUY,UAAAA,CAAAS,mBAAAA;AAEZ,IAAA,MAAAC,wCAAAA,GAAiDJ,gBAC7CP,qCAAAA,GACAI,gCAAAA;AAAiC,IAAA,IAGnCf,UAAAA,CAAUgB,QAAAA,CAAAG,aAAAA,IACVG,wCAAAA,EAAwC;AAExCb,MAAAA,IAAAA,GAAAA;AAAAA,QAAAA,GAAAA,EAAcA,WAAAA;AAAAA,QAAWA,OAAAA,EAAWA;AAAAA,OAAoBA;AAAAA,IAApD,CAAA,MAAA;AAAA,MAAA,IAEJT,UAAAA,CAAUuB,aAAAA,CAAAV,SAAAA,IACVb,UAAAA,CAAUwB,KAAAC,cAAAA,EAAoB;AAE9B,QAAA,MAAAC,2BAAA,CAAA,EACE1B,WAAUgB,QAAAA,CAAAW,MAAAA,IAAoB3B,WAAUY,UAAAA,CAAAgB,SAAAA,CAAAA;AAG1CnB,QAAAA,IAAAA,GAAAA;AAAAA,UAAAA,GAAAA,EACOA,WAAAA;AAAAA,UAAWA,OAAAA,EACPiB,2BACL,iBAAA,GACA;AAAA,SAA4B;AAAA,MAJ9B,CAAA,MAAA;AAAA,QAAA,IAMK1B,UAAAA,CAAUwB,KAAAK,WAAAA,EAAA;AACnBpB,UAAAA,IAAAA,GAAAA;AAAAA,YAAAA,GAAAA,EAAcA;AAAAA,WAAmBA;AAAAA,QAA7B,CAAA,MAAA;AAAA,UAAA,IACKT,WAAUa,SAAAA,EAAA;AAGnBJ,YAAAA,IAAAA,GAAAA;AAAAA,cAAAA,GAAAA,EAAcA,WAAAA;AAAAA,cAAWA,OAAAA,EAAWA;AAAAA,aAA4BA;AAAAA,UAA5D;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAGN,IAAA,MAAAqB,iBAAAA,GACErB,MAAIsB,GAAAA,KAAU,WAAA,IACdtB,KAAIuB,OAAAA,KAAa,oBAAA,IACjBhC,WAAUgB,QAAAA,CAAAa,WAAAA;AAEZ,IAAA,MAAAI,oBAAAA,GACExB,MAAIsB,GAAAA,KAAU,WAAA,KACbtB,KAAIuB,OAAAA,KAAa,iBAAA,IAChBvB,KAAIuB,OAAAA,KAAa,4BAAA,CAAA;AAErB,IAAA,MAAAE,mBACEzB,IAAAA,EAAIsB,GAAAA,KAAU,mBAAA,IAAmB,CAAK/B,WAAUwB,IAAAA,CAAAW,QAAAA;AAIlD3B,IAAAA,aAAAA,GACEsB,qBAAqBG,oBAAAA,IAAwBC,gBAAAA;AAE/C,IAAA,MAAAP,MAAAA,GAAe3B,WAAUwB,IAAAA,CAAAG,MAAAA;AACzBpB,IAAAA,YAAAA,GAAqBoB,SACjBS,uBAAAA,CAAA;AAAA,MAAAC,SAAmCrC,UAAAA,CAAUqC,OAAAA;AAAAA,MAAAV;AAAAA,KAAkB,CAAA,GAACW,MAAAA;AAGpExC,IAAAA,MAAAA,CAAMY,IAAAA,CAAA6B,GAAAA,CAAU,MAAA,EAAQ9B,IAAAA,EAAMT,UAAAA,EAAU;AAAA,MAAAQ,aAAAA;AAAAA,MAAAD,YAAAA;AAAAA,MAAAoB;AAAAA,KAIvC,CAAA;AAAC/B,IAAAA,CAAAA,CAAA,CAAA,IAAAE,MAAAA,CAAAY,IAAAA;AAAAd,IAAAA,CAAAA,MAAAI,UAAAA;AAAAJ,IAAAA,CAAAA,MAAAW,YAAAA;AAAAX,IAAAA,CAAAA,MAAAY,aAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,IAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAF,IAAAA,YAAAA,GAAAX,EAAA,CAAA,CAAA;AAAAY,IAAAA,aAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAAa,IAAAA,IAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA4C,EAAAA;AAAA,EAAA,IAAA5C,CAAAA,CAAA,CAAA,CAAA,KAAAI,UAAAA,CAAAyC,KAAAA,EAAA;AAGYD,IAAAA,EAAAA,GAAAE,oBAAAA,CAAqB1C,UAAAA,CAAUyC,KAAM,CAAA,GAAC,OAEhDzC,UAAAA,CAAUyC,KAAAA;AAAM7C,IAAAA,CAAAA,CAAA,CAAA,IAAAI,UAAAA,CAAAyC,KAAAA;AAAA7C,IAAAA,CAAAA,MAAA4C,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5C,EAAA,CAAA,CAAA;AAAA,EAAA;AAFpB,EAAA,MAAA6C,KAAAA,GAAcD,EAAAA;AAIVG,EAAAA,IAAAA,WAAAA;AAA0C,EAAA,IAE1C3C,WAAU4C,OAAAA,EAAA;AAAA,IAAA,IAEV5C,UAAAA,CAAUgB,QAAAA,CAAA4B,OAAAA,IACV5C,UAAAA,CAAUY,UAAAA,CAAAgC,OAAAA,IACV5C,UAAAA,CAAUuB,aAAAA,CAAAqB,OAAAA,IACV5C,UAAAA,CAAUwB,IAAAA,CAAAqB,mBAAAA,EAAyB;AAEnCF,MAAAA,WAAAA,GAAcA,WAAAA;AAAAA,IAAH,CAAA,MAAA;AAAA,MAAA,IACF3C,UAAAA,CAAUwB,KAAAsB,iBAAAA,EAAA;AACnBH,QAAAA,WAAAA,GAAcA,mBAAAA;AAAAA,MAAH;AAAA,IAAA;AAAA,EAAA;AAAA,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAnD,CAAAA,QAAAS,UAAAA,IAAAT,EAAA,CAAA,CAAA,KAAA6C,SAAA7C,CAAAA,CAAA,CAAA,MAAA+C,WAAAA,IAAA/C,CAAAA,SAAAW,YAAAA,IAAAX,EAAA,EAAA,CAAA,KAAAY,iBAAAZ,CAAAA,CAAA,EAAA,MAAAI,UAAAA,CAAAgD,MAAAA,IAAApD,EAAA,EAAA,CAAA,KAAAI,WAAAiD,SAAAA,IAAArD,CAAAA,CAAA,EAAA,CAAA,KAAAQ,KAAAA,IAAAR,EAAA,EAAA,CAAA,KAAAU,aAAAV,CAAAA,SAAAM,eAAAA,IAAAN,CAAAA,CAAA,EAAA,CAAA,KAAAa,IAAAA,EAAA;AAIRsC,IAAAA,EAAAA,GAAA;AAAA,MAAA7C,eAAAA;AAAAA,MAAAE,KAAAA;AAAAA,MAAAC,UAAAA;AAAAA,MAAAC,SAAAA;AAAAA,MAAAE,aAAAA;AAAAA,MAAAC,IAAAA;AAAAA,MAAAF,YAAAA;AAAAA,MAAAkC,KAAAA;AAAAA,MAAAE,WAAAA;AAAAA,MAAAK,QAUGhD,UAAAA,CAAUgD,MAAAA;AAAAA,MAAAC,WACPjD,UAAAA,CAAUiD;AAAAA,KAAA;AACtBrD,IAAAA,CAAAA,MAAAS,UAAAA;AAAAT,IAAAA,CAAAA,MAAA6C,KAAAA;AAAA7C,IAAAA,CAAAA,MAAA+C,WAAAA;AAAA/C,IAAAA,CAAAA,OAAAW,YAAAA;AAAAX,IAAAA,CAAAA,OAAAY,aAAAA;AAAAZ,IAAAA,CAAAA,CAAA,EAAA,IAAAI,UAAAA,CAAAgD,MAAAA;AAAApD,IAAAA,CAAAA,CAAA,EAAA,IAAAI,UAAAA,CAAAiD,SAAAA;AAAArD,IAAAA,CAAAA,OAAAQ,KAAAA;AAAAR,IAAAA,CAAAA,OAAAU,SAAAA;AAAAV,IAAAA,CAAAA,OAAAM,eAAAA;AAAAN,IAAAA,CAAAA,OAAAa,IAAAA;AAAAb,IAAAA,CAAAA,OAAAmD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAZMmD,EAAAA;AAYN;;;;"}
1
+ {"version":3,"file":"useMarketSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"sourcesContent":["import type {\n MarketSwapStep,\n MarketSwapStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useMarketFlow,\n type UseMarketFlowInput,\n type UseMarketFlowResult,\n type SubmitSwapResult,\n} from \"./useMarketFlow\";\nimport { constructTxLinkForChain } from \"@/lib/utils/explorer\";\nimport { useLogger } from \"@/core/logger\";\nimport { isUserCancelledError } from \"./common/errors\";\n\ntype UseMarketSwapStepResult = {\n startMarketSwap: UseMarketFlowResult[\"runMarketSwapFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseMarketFlowResult[\"reset\"];\n cancelFlow: UseMarketFlowResult[\"cancelFlow\"];\n retryFlow: UseMarketFlowResult[\"retryFlow\"];\n isFlowCancellable: boolean;\n step?: MarketSwapStep;\n explorerLink?: string;\n error: Error | null;\n erroredStep?: MarketSwapStepKey;\n result?: SubmitSwapResult;\n usedPrice: UseMarketFlowResult[\"usedPrice\"];\n tradeFlowType: UseMarketFlowResult[\"tradeFlowType\"];\n};\n\nexport function useMarketSwapStep(\n options: UseMarketFlowInput\n): UseMarketSwapStepResult {\n const logger = useLogger(\"MarketSwapStep\");\n const marketFlow = useMarketFlow(options);\n\n const startMarketSwap = marketFlow.runMarketSwapFlow;\n const reset = marketFlow.reset;\n const cancelFlow = marketFlow.cancelFlow;\n const retryFlow = marketFlow.retryFlow;\n\n let step: MarketSwapStep | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n marketFlow.signPermit.isPending || !marketFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n marketFlow.approval.isPending || !marketFlow.approval.isSuccess;\n\n const willUsePermit =\n marketFlow.approval.needsApproval &&\n marketFlow.signPermit.isPermitSupported &&\n marketFlow.signPermit.isPermitReadyToSign &&\n !marketFlow.swapBatch.canBatchTxs;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n marketFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (\n marketFlow.buildTxParams.isPending ||\n marketFlow.swap.isConfirmingTX ||\n marketFlow.swapBatch.isConfirmingCalls\n ) {\n const permitOrApprovalHappened = !!(\n marketFlow.approval.txHash || marketFlow.signPermit.signature\n );\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (\n marketFlow.swap.isTxPending ||\n marketFlow.swapBatch.isCallsPending\n ) {\n step = { key: \"swap-tx-execution\" };\n } else if (marketFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're at the standalone signature sub-step\n step = { key: \"signature\", subStep: \"standalone-order-signature\" };\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n marketFlow.approval.isTxPending;\n\n const inSwapTxConfirmation =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const notYetSwapTxSent =\n step?.key === \"swap-tx-execution\" &&\n !marketFlow.swap.isTxSent &&\n !marketFlow.swapBatch.isCallsSent;\n\n // final tx is not yet sent, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n const isFlowCancellable =\n approvalIsStarted || inSwapTxConfirmation || notYetSwapTxSent;\n\n // either of the txHashes will be available\n const txHash = marketFlow.swapBatch.txHash || marketFlow.swap.txHash;\n const explorerLink = txHash\n ? constructTxLinkForChain({ chainId: marketFlow.chainId, txHash })\n : undefined;\n\n logger.once.log(\"step\", step, marketFlow, {\n isFlowCancellable,\n explorerLink,\n txHash,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(marketFlow.error)\n ? null\n : marketFlow.error;\n\n let erroredStep: MarketSwapStepKey | undefined;\n\n if (marketFlow.isError) {\n if (\n marketFlow.approval.isError ||\n marketFlow.signPermit.isError ||\n marketFlow.buildTxParams.isError ||\n marketFlow.swap.isConfirmingTxError ||\n marketFlow.swapBatch.isConfirmingCallsError\n ) {\n erroredStep = \"signature\";\n } else if (\n marketFlow.swap.isTxAwaitingError ||\n marketFlow.swapBatch.isCallsAwaitingError\n ) {\n erroredStep = \"swap-tx-execution\";\n }\n }\n\n return {\n startMarketSwap,\n reset,\n cancelFlow,\n retryFlow,\n isFlowCancellable,\n step,\n explorerLink,\n error,\n erroredStep,\n result: marketFlow.result,\n usedPrice: marketFlow.usedPrice,\n tradeFlowType: marketFlow.tradeFlowType,\n };\n}\n"],"names":["useMarketSwapStep","options","$","_c","logger","useLogger","marketFlow","useMarketFlow","startMarketSwap","runMarketSwapFlow","reset","cancelFlow","retryFlow","explorerLink","isFlowCancellable","step","once","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","swapBatch","canBatchTxs","permitOrApprovalHappeningOrNeverHappened","buildTxParams","swap","isConfirmingTX","isConfirmingCalls","permitOrApprovalHappened","txHash","signature","isTxPending","isCallsPending","approvalIsStarted","key","subStep","inSwapTxConfirmation","notYetSwapTxSent","isTxSent","isCallsSent","constructTxLinkForChain","chainId","undefined","log","t0","error","isUserCancelledError","erroredStep","isError","isConfirmingTxError","isConfirmingCallsError","isTxAwaitingError","isCallsAwaitingError","t1","result","tradeFlowType","usedPrice"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { SpenderContractType } from '../../sdk/types';
2
2
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
- import { Token } from '@velora-dex/sdk';
3
+ import { Token } from '../../../tokens/state/types';
4
4
  import { Address } from 'viem';
5
5
  export type UseGenericTokenAllowanceInput = {
6
- token?: Pick<Token, "address" | "decimals">;
6
+ token?: Pick<Token, "address" | "decimals" | "network">;
7
7
  spenderContractType?: SpenderContractType;
8
8
  amountToApproveInWei?: string | bigint;
9
9
  };
@@ -15,10 +15,12 @@ export type AllowanceData = {
15
15
  allowanceToSetHumanReadable?: string;
16
16
  differenceLeftToApprove?: bigint;
17
17
  differenceLeftToApproveHumanReadable?: string;
18
- spender?: string;
19
18
  };
20
19
  export type GenericTokenAllowance = {
20
+ chainId?: SupportedChainId;
21
21
  isLoadingPrerequisites: boolean;
22
+ token?: Address;
23
+ spender?: Address;
22
24
  } & AllowanceData;
23
25
  export type UseTokenAllowanceInput = {
24
26
  tokenAddress?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;IAC5C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,oCAAoC,CAAC,EAAE,MAAM,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,sBAAsB,EAAE,OAAO,CAAC;CACjC,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;IACxD,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,oCAAoC,CAAC,EAAE,MAAM,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,sBAAsB,EAAE,OAAO,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
@@ -9,7 +9,7 @@ type UseGenericTokenAllowanceMinInput = {
9
9
  amountToApproveInWei?: string | bigint;
10
10
  chainId?: SupportedChainId;
11
11
  };
12
- type GenericTokenAllowanceMin = Pick<GenericTokenAllowance, "isLoadingPrerequisites" | "allowance" | "needsApproval" | "enoughAllowance" | "allowanceToSet" | "spender"> & {
12
+ type GenericTokenAllowanceMin = Pick<GenericTokenAllowance, "isLoadingPrerequisites" | "allowance" | "needsApproval" | "enoughAllowance" | "allowanceToSet" | "spender" | "token"> & {
13
13
  queryKey: QueryKey;
14
14
  };
15
15
  export declare const useGenericTokenAllowanceMin: ({ tokenAddress, amountToApproveInWei, spenderContractType, chainId, }?: UseGenericTokenAllowanceMinInput) => GenericTokenAllowanceMin;
@@ -1 +1 @@
1
- {"version":3,"file":"useGenericTokenAllowance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/useGenericTokenAllowance.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEV,qBAAqB,EACrB,6BAA6B,EAC9B,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,eAAO,MAAM,wBAAwB,GAAI,wDAItC,6BAAkC,KAAG,qBAqCvC,CAAC;AAEF,KAAK,gCAAgC,GAAG;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B,CAAC;AAEF,KAAK,wBAAwB,GAAG,IAAI,CAClC,qBAAqB,EACnB,wBAAwB,GACxB,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,SAAS,CACZ,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAA;CAAE,CAAC;AAG3B,eAAO,MAAM,2BAA2B,GAAI,wEAKzC,gCAAqC,KAAG,wBA8D1C,CAAC"}
1
+ {"version":3,"file":"useGenericTokenAllowance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/useGenericTokenAllowance.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEV,qBAAqB,EACrB,6BAA6B,EAC9B,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,eAAO,MAAM,wBAAwB,GAAI,wDAItC,6BAAkC,KAAG,qBAuCvC,CAAC;AAEF,KAAK,gCAAgC,GAAG;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B,CAAC;AAEF,KAAK,wBAAwB,GAAG,IAAI,CAClC,qBAAqB,EACnB,wBAAwB,GACxB,WAAW,GACX,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,SAAS,GACT,OAAO,CACV,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAA;CAAE,CAAC;AAG3B,eAAO,MAAM,2BAA2B,GAAI,wEAKzC,gCAAqC,KAAG,wBA+D1C,CAAC"}
@@ -42,6 +42,8 @@ const useGenericTokenAllowance = ({
42
42
  }, [allowance, amountToApproveInWei, isConnected, token]);
43
43
  const isLoadingPrerequisites = isConnected && (isLoadingSpender || isLoadingAllowance);
44
44
  return {
45
+ token: token?.address,
46
+ chainId: token?.network,
45
47
  allowance,
46
48
  isLoadingPrerequisites,
47
49
  spender,
@@ -103,6 +105,7 @@ const useGenericTokenAllowanceMin = ({
103
105
  allowance,
104
106
  isLoadingPrerequisites,
105
107
  spender,
108
+ token: tokenAddress,
106
109
  ...allowanceOnChain,
107
110
  queryKey
108
111
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useGenericTokenAllowance.js","sources":["../../../../src/hooks/tokens/allowance/useGenericTokenAllowance.ts"],"sourcesContent":["import { useTokenAllowance } from \"./useTokenAllowance\";\nimport { formatUnits } from \"viem\";\nimport { useSpender } from \"@/hooks/sdk/useSpender\";\n\nimport { useAccount } from \"wagmi\";\nimport { toDecimal } from \"@/lib/utils/toDecimal\";\nimport { useMemo } from \"react\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport type {\n AllowanceData,\n GenericTokenAllowance,\n UseGenericTokenAllowanceInput,\n} from \"./types\";\nimport type { SpenderContractType } from \"@/hooks/sdk/types\";\nimport type { QueryKey } from \"@tanstack/react-query\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport const useGenericTokenAllowance = ({\n token,\n amountToApproveInWei = 0n,\n spenderContractType,\n}: UseGenericTokenAllowanceInput = {}): GenericTokenAllowance => {\n const { isConnected } = useAccount();\n\n const { spender, isLoading: isLoadingSpender } =\n useSpender(spenderContractType);\n\n const { data: allowance, isLoading: isLoadingAllowance } = useTokenAllowance({\n tokenAddress: token?.address,\n spender,\n });\n\n const allowanceOnChain = useMemo(() => {\n const tokenDoesntRequireAllowance = !token || isETH(token) || !isConnected;\n\n if (tokenDoesntRequireAllowance) {\n return {\n needsApproval: false,\n enoughAllowance: true,\n };\n }\n\n return calcAllowanceData({\n allowance: allowance || 0n,\n amountToApproveInWei: BigInt(amountToApproveInWei), // ok to cast wei\n tokenDecimals: token?.decimals,\n });\n }, [allowance, amountToApproveInWei, isConnected, token]);\n\n const isLoadingPrerequisites =\n isConnected && (isLoadingSpender || isLoadingAllowance);\n\n return {\n allowance,\n isLoadingPrerequisites,\n spender,\n ...allowanceOnChain,\n };\n};\n\ntype UseGenericTokenAllowanceMinInput = {\n tokenAddress?: string;\n spenderContractType?: SpenderContractType;\n amountToApproveInWei?: string | bigint;\n chainId?: SupportedChainId;\n};\n\ntype GenericTokenAllowanceMin = Pick<\n GenericTokenAllowance,\n | \"isLoadingPrerequisites\"\n | \"allowance\"\n | \"needsApproval\"\n | \"enoughAllowance\"\n | \"allowanceToSet\"\n | \"spender\"\n> & { queryKey: QueryKey };\n\n// exclusively deals with wei\nexport const useGenericTokenAllowanceMin = ({\n tokenAddress,\n amountToApproveInWei = 0n,\n spenderContractType,\n chainId,\n}: UseGenericTokenAllowanceMinInput = {}): GenericTokenAllowanceMin => {\n const { isConnected } = useAccount();\n\n const { spender, isLoading: isLoadingSpender } =\n useSpender(spenderContractType);\n\n const {\n data: allowance,\n isLoading: isLoadingAllowance,\n queryKey,\n } = useTokenAllowance({\n tokenAddress,\n spender,\n chainId,\n });\n\n const allowanceOnChain = useMemo(() => {\n const tokenDoesntRequireAllowance =\n !tokenAddress || isETH({ address: tokenAddress }) || !isConnected;\n\n if (tokenDoesntRequireAllowance) {\n return {\n needsApproval: false,\n enoughAllowance: true,\n };\n }\n\n const amountToApproveInWeiBigInt = BigInt(amountToApproveInWei);\n\n const enoughAllowance =\n !!allowance && allowance >= amountToApproveInWeiBigInt;\n const needsApproval = !enoughAllowance;\n\n if (!needsApproval) {\n return {\n needsApproval: false,\n enoughAllowance,\n };\n }\n\n const differenceLeftToApprove =\n amountToApproveInWeiBigInt - (allowance || 0n);\n\n return {\n needsApproval,\n enoughAllowance,\n allowance,\n allowanceToSet: amountToApproveInWeiBigInt,\n differenceLeftToApprove,\n };\n }, [allowance, amountToApproveInWei, isConnected, tokenAddress]);\n\n const isLoadingPrerequisites =\n isConnected && (isLoadingSpender || isLoadingAllowance);\n\n return {\n allowance,\n isLoadingPrerequisites,\n spender,\n ...allowanceOnChain,\n queryKey,\n };\n};\n\nfunction calcAllowanceData({\n allowance,\n amountToApproveInWei,\n tokenDecimals,\n}: {\n allowance: bigint;\n amountToApproveInWei: bigint;\n tokenDecimals: number;\n}): AllowanceData {\n const enoughAllowance = allowance >= amountToApproveInWei;\n\n const needsApproval = !enoughAllowance;\n\n if (!needsApproval) {\n return {\n needsApproval: false,\n enoughAllowance,\n };\n }\n\n const differenceLeftToApprove = amountToApproveInWei - allowance;\n\n const amountToApproveUnits = formatUnits(amountToApproveInWei, tokenDecimals);\n const allowanceToSetHumanReadable = toDecimal(Number(amountToApproveUnits));\n\n const differenceLeftToApproveUnits = formatUnits(\n differenceLeftToApprove,\n tokenDecimals\n );\n const differenceLeftToApproveHumanReadable = toDecimal(\n Number(differenceLeftToApproveUnits)\n );\n\n return {\n needsApproval,\n enoughAllowance,\n allowance,\n allowanceToSet: amountToApproveInWei,\n allowanceToSetHumanReadable,\n differenceLeftToApprove,\n differenceLeftToApproveHumanReadable,\n };\n}\n"],"names":["useGenericTokenAllowance","token","amountToApproveInWei","spenderContractType","isConnected","useAccount","spender","isLoading","isLoadingSpender","useSpender","data","allowance","isLoadingAllowance","useTokenAllowance","tokenAddress","address","allowanceOnChain","useMemo","tokenDoesntRequireAllowance","isETH","needsApproval","enoughAllowance","calcAllowanceData","BigInt","tokenDecimals","decimals","isLoadingPrerequisites","useGenericTokenAllowanceMin","chainId","queryKey","amountToApproveInWeiBigInt","differenceLeftToApprove","allowanceToSet","amountToApproveUnits","formatUnits","allowanceToSetHumanReadable","toDecimal","Number","differenceLeftToApproveUnits","differenceLeftToApproveHumanReadable"],"mappings":"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"}
1
+ {"version":3,"file":"useGenericTokenAllowance.js","sources":["../../../../src/hooks/tokens/allowance/useGenericTokenAllowance.ts"],"sourcesContent":["import { useTokenAllowance } from \"./useTokenAllowance\";\nimport { formatUnits, type Address } from \"viem\";\nimport { useSpender } from \"@/hooks/sdk/useSpender\";\n\nimport { useAccount } from \"wagmi\";\nimport { toDecimal } from \"@/lib/utils/toDecimal\";\nimport { useMemo } from \"react\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport type {\n AllowanceData,\n GenericTokenAllowance,\n UseGenericTokenAllowanceInput,\n} from \"./types\";\nimport type { SpenderContractType } from \"@/hooks/sdk/types\";\nimport type { QueryKey } from \"@tanstack/react-query\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport const useGenericTokenAllowance = ({\n token,\n amountToApproveInWei = 0n,\n spenderContractType,\n}: UseGenericTokenAllowanceInput = {}): GenericTokenAllowance => {\n const { isConnected } = useAccount();\n\n const { spender, isLoading: isLoadingSpender } =\n useSpender(spenderContractType);\n\n const { data: allowance, isLoading: isLoadingAllowance } = useTokenAllowance({\n tokenAddress: token?.address,\n spender,\n });\n\n const allowanceOnChain = useMemo(() => {\n const tokenDoesntRequireAllowance = !token || isETH(token) || !isConnected;\n\n if (tokenDoesntRequireAllowance) {\n return {\n needsApproval: false,\n enoughAllowance: true,\n };\n }\n\n return calcAllowanceData({\n allowance: allowance || 0n,\n amountToApproveInWei: BigInt(amountToApproveInWei), // ok to cast wei\n tokenDecimals: token?.decimals,\n });\n }, [allowance, amountToApproveInWei, isConnected, token]);\n\n const isLoadingPrerequisites =\n isConnected && (isLoadingSpender || isLoadingAllowance);\n\n return {\n token: token?.address as Address | undefined,\n chainId: token?.network,\n allowance,\n isLoadingPrerequisites,\n spender: spender as Address | undefined,\n ...allowanceOnChain,\n };\n};\n\ntype UseGenericTokenAllowanceMinInput = {\n tokenAddress?: string;\n spenderContractType?: SpenderContractType;\n amountToApproveInWei?: string | bigint;\n chainId?: SupportedChainId;\n};\n\ntype GenericTokenAllowanceMin = Pick<\n GenericTokenAllowance,\n | \"isLoadingPrerequisites\"\n | \"allowance\"\n | \"needsApproval\"\n | \"enoughAllowance\"\n | \"allowanceToSet\"\n | \"spender\"\n | \"token\"\n> & { queryKey: QueryKey };\n\n// exclusively deals with wei\nexport const useGenericTokenAllowanceMin = ({\n tokenAddress,\n amountToApproveInWei = 0n,\n spenderContractType,\n chainId,\n}: UseGenericTokenAllowanceMinInput = {}): GenericTokenAllowanceMin => {\n const { isConnected } = useAccount();\n\n const { spender, isLoading: isLoadingSpender } =\n useSpender(spenderContractType);\n\n const {\n data: allowance,\n isLoading: isLoadingAllowance,\n queryKey,\n } = useTokenAllowance({\n tokenAddress,\n spender,\n chainId,\n });\n\n const allowanceOnChain = useMemo(() => {\n const tokenDoesntRequireAllowance =\n !tokenAddress || isETH({ address: tokenAddress }) || !isConnected;\n\n if (tokenDoesntRequireAllowance) {\n return {\n needsApproval: false,\n enoughAllowance: true,\n };\n }\n\n const amountToApproveInWeiBigInt = BigInt(amountToApproveInWei);\n\n const enoughAllowance =\n !!allowance && allowance >= amountToApproveInWeiBigInt;\n const needsApproval = !enoughAllowance;\n\n if (!needsApproval) {\n return {\n needsApproval: false,\n enoughAllowance,\n };\n }\n\n const differenceLeftToApprove =\n amountToApproveInWeiBigInt - (allowance || 0n);\n\n return {\n needsApproval,\n enoughAllowance,\n allowance,\n allowanceToSet: amountToApproveInWeiBigInt,\n differenceLeftToApprove,\n };\n }, [allowance, amountToApproveInWei, isConnected, tokenAddress]);\n\n const isLoadingPrerequisites =\n isConnected && (isLoadingSpender || isLoadingAllowance);\n\n return {\n allowance,\n isLoadingPrerequisites,\n spender: spender as Address | undefined,\n token: tokenAddress as Address | undefined,\n ...allowanceOnChain,\n queryKey,\n };\n};\n\nfunction calcAllowanceData({\n allowance,\n amountToApproveInWei,\n tokenDecimals,\n}: {\n allowance: bigint;\n amountToApproveInWei: bigint;\n tokenDecimals: number;\n}): AllowanceData {\n const enoughAllowance = allowance >= amountToApproveInWei;\n\n const needsApproval = !enoughAllowance;\n\n if (!needsApproval) {\n return {\n needsApproval: false,\n enoughAllowance,\n };\n }\n\n const differenceLeftToApprove = amountToApproveInWei - allowance;\n\n const amountToApproveUnits = formatUnits(amountToApproveInWei, tokenDecimals);\n const allowanceToSetHumanReadable = toDecimal(Number(amountToApproveUnits));\n\n const differenceLeftToApproveUnits = formatUnits(\n differenceLeftToApprove,\n tokenDecimals\n );\n const differenceLeftToApproveHumanReadable = toDecimal(\n Number(differenceLeftToApproveUnits)\n );\n\n return {\n needsApproval,\n enoughAllowance,\n allowance,\n allowanceToSet: amountToApproveInWei,\n allowanceToSetHumanReadable,\n differenceLeftToApprove,\n differenceLeftToApproveHumanReadable,\n };\n}\n"],"names":["useGenericTokenAllowance","token","amountToApproveInWei","spenderContractType","isConnected","useAccount","spender","isLoading","isLoadingSpender","useSpender","data","allowance","isLoadingAllowance","useTokenAllowance","tokenAddress","address","allowanceOnChain","useMemo","tokenDoesntRequireAllowance","isETH","needsApproval","enoughAllowance","calcAllowanceData","BigInt","tokenDecimals","decimals","isLoadingPrerequisites","chainId","network","useGenericTokenAllowanceMin","queryKey","amountToApproveInWeiBigInt","differenceLeftToApprove","allowanceToSet","amountToApproveUnits","formatUnits","allowanceToSetHumanReadable","toDecimal","Number","differenceLeftToApproveUnits","differenceLeftToApproveHumanReadable"],"mappings":"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"}
@@ -1,9 +1,14 @@
1
- import { Token, TokenMaybeWithUsdBalance } from '../../../tokens/state/types';
1
+ import { Token } from '../../../tokens/state/types';
2
2
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
+ type AddTokenBalanceToToken = <T extends Pick<Token, "address" | "network" | "decimals">>(token: T) => T & {
4
+ balance?: string;
5
+ usdBalance?: number;
6
+ };
3
7
  /**
4
8
  This hook will fetch the balances and return a function that will add a balance to the token if available.
5
9
  */
6
10
  export declare const useAttachTokenBalanceMultichain: ({ addressesMap, }: {
7
11
  addressesMap: Partial<Record<SupportedChainId, string[]>>;
8
- }) => (token: Token) => TokenMaybeWithUsdBalance;
12
+ }) => AddTokenBalanceToToken;
13
+ export {};
9
14
  //# sourceMappingURL=useAttachTokenBalanceMultichain.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAttachTokenBalanceMultichain.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/balances/useAttachTokenBalanceMultichain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAI5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAS/D;;GAEG;AACH,eAAO,MAAM,+BAA+B,GAAI,mBAE7C;IACD,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;CAC3D,aAgBW,KAAK,KAAG,wBAqCnB,CAAC"}
1
+ {"version":3,"file":"useAttachTokenBalanceMultichain.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/balances/useAttachTokenBalanceMultichain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAIlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU/D,KAAK,sBAAsB,GAAG,CAC5B,CAAC,SAAS,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC,EAEzD,KAAK,EAAE,CAAC,KACL,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,+BAA+B,GAAI,mBAE7C;IACD,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;CAC3D,KAAG,sBAsDH,CAAC"}
@@ -6,6 +6,7 @@ import { useMultiChainTokenPrices } from '../prices/useMultichainTokenPrices.js'
6
6
  import { isSupportedChainId } from '../../../lib/web3/wagmi/utils.js';
7
7
  import { useAccount } from 'wagmi';
8
8
  import { useSelectedTokenBalances } from './useSelectedTokenBalances.js';
9
+ import { useTradeMode } from '../../../core/state/tradeModeAtom.js';
9
10
 
10
11
  const useAttachTokenBalanceMultichain = (t0) => {
11
12
  const $ = distExports.c(9);
@@ -15,6 +16,7 @@ const useAttachTokenBalanceMultichain = (t0) => {
15
16
  const {
16
17
  address: account
17
18
  } = useAccount();
19
+ const tradeMode = useTradeMode();
18
20
  let t1;
19
21
  if ($[0] !== addressesMap) {
20
22
  t1 = {
@@ -26,7 +28,7 @@ const useAttachTokenBalanceMultichain = (t0) => {
26
28
  t1 = $[1];
27
29
  }
28
30
  const multiChainTokenBalances = useMultiChainTokenBalances(t1);
29
- const selectedTokenBalances = useSelectedTokenBalances();
31
+ const selectedTokenBalances = useSelectedTokenBalances(tradeMode);
30
32
  let t2;
31
33
  let t3;
32
34
  if ($[2] !== addressesMap) {
@@ -1 +1 @@
1
- {"version":3,"file":"useAttachTokenBalanceMultichain.js","sources":["../../../../src/hooks/tokens/balances/useAttachTokenBalanceMultichain.ts"],"sourcesContent":["import type { Token, TokenMaybeWithUsdBalance } from \"@/tokens/state/types\";\n\nimport { useCallback, useMemo } from \"react\";\n\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { formatUnits, isAddress } from \"viem\";\nimport { useMultiChainTokenBalances } from \"./useMultichainTokenBalances\";\nimport { useMultiChainTokenPrices } from \"../prices/useMultichainTokenPrices\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\n\nimport { useAccount } from \"wagmi\";\nimport { useSelectedTokenBalances } from \"./useSelectedTokenBalances\";\n\n/**\n This hook will fetch the balances and return a function that will add a balance to the token if available.\n */\nexport const useAttachTokenBalanceMultichain = ({\n addressesMap,\n}: {\n addressesMap: Partial<Record<SupportedChainId, string[]>>;\n}) => {\n const { address: account } = useAccount();\n\n const multiChainTokenBalances = useMultiChainTokenBalances({\n addressesMap,\n });\n const selectedTokenBalances = useSelectedTokenBalances();\n\n const chainIds = useMemo(\n () => Object.keys(addressesMap).map(Number).filter(isSupportedChainId),\n [addressesMap]\n );\n\n const multiChainTokenPrices = useMultiChainTokenPrices(chainIds);\n\n return useCallback(\n (token: Token): TokenMaybeWithUsdBalance => {\n if (!account) return token;\n\n const loweredAddress = token.address.toLowerCase();\n\n if (!isAddress(loweredAddress)) return token;\n\n const balance =\n // selected token balances have priority,\n // because only these balances are invalidated after each transaction/order,\n // and have the most frequent refetch interval\n selectedTokenBalances[token.network]?.[loweredAddress] ??\n // otherwise grab the balance from the multichain balances query\n multiChainTokenBalances[token.network]?.[loweredAddress]?.result;\n\n if (balance === undefined) return token;\n\n const tokenPrice =\n multiChainTokenPrices[token.network]?.[loweredAddress]?.price;\n\n const usdBalance = tokenPrice\n ? +formatUnits(BigInt(balance), token.decimals) * tokenPrice\n : undefined;\n\n return {\n ...token,\n balance: balance.toString(),\n usdBalance,\n };\n },\n [\n account,\n multiChainTokenBalances,\n multiChainTokenPrices,\n selectedTokenBalances,\n ]\n );\n};\n"],"names":["useAttachTokenBalanceMultichain","t0","$","_c","addressesMap","address","account","useAccount","t1","multiChainTokenBalances","useMultiChainTokenBalances","selectedTokenBalances","useSelectedTokenBalances","t2","t3","Object","keys","map","Number","filter","isSupportedChainId","chainIds","multiChainTokenPrices","useMultiChainTokenPrices","t4","token","loweredAddress","toLowerCase","isAddress","balance","network","result","undefined","tokenPrice","price","usdBalance","formatUnits","BigInt","decimals","toString"],"mappings":"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"}
1
+ {"version":3,"file":"useAttachTokenBalanceMultichain.js","sources":["../../../../src/hooks/tokens/balances/useAttachTokenBalanceMultichain.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\n\nimport { useCallback, useMemo } from \"react\";\n\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { formatUnits, isAddress } from \"viem\";\nimport { useMultiChainTokenBalances } from \"./useMultichainTokenBalances\";\nimport { useMultiChainTokenPrices } from \"../prices/useMultichainTokenPrices\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\n\nimport { useAccount } from \"wagmi\";\nimport { useSelectedTokenBalances } from \"./useSelectedTokenBalances\";\nimport { useTradeMode } from \"@/core/state/tradeModeAtom\";\n\ntype AddTokenBalanceToToken = <\n T extends Pick<Token, \"address\" | \"network\" | \"decimals\">,\n>(\n token: T\n) => T & { balance?: string; usdBalance?: number };\n\n/**\n This hook will fetch the balances and return a function that will add a balance to the token if available.\n */\nexport const useAttachTokenBalanceMultichain = ({\n addressesMap,\n}: {\n addressesMap: Partial<Record<SupportedChainId, string[]>>;\n}): AddTokenBalanceToToken => {\n const { address: account } = useAccount();\n const tradeMode = useTradeMode();\n\n const multiChainTokenBalances = useMultiChainTokenBalances({\n addressesMap,\n });\n const selectedTokenBalances = useSelectedTokenBalances(tradeMode);\n\n const chainIds = useMemo(\n () => Object.keys(addressesMap).map(Number).filter(isSupportedChainId),\n [addressesMap]\n );\n\n const multiChainTokenPrices = useMultiChainTokenPrices(chainIds);\n\n return useCallback<AddTokenBalanceToToken>(\n (token) => {\n if (!account) return token;\n\n const loweredAddress = token.address.toLowerCase();\n\n if (!isAddress(loweredAddress)) return token;\n\n const balance =\n // selected token balances have priority,\n // because only these balances are invalidated after each transaction/order,\n // and have the most frequent refetch interval\n selectedTokenBalances[token.network]?.[loweredAddress] ??\n // otherwise grab the balance from the multichain balances query\n multiChainTokenBalances[token.network]?.[loweredAddress]?.result;\n\n if (balance === undefined) return token;\n\n const tokenPrice =\n multiChainTokenPrices[token.network]?.[loweredAddress]?.price;\n\n const usdBalance = tokenPrice\n ? +formatUnits(BigInt(balance), token.decimals) * tokenPrice\n : undefined;\n\n return {\n ...token,\n balance: balance.toString(),\n usdBalance,\n };\n },\n [\n account,\n multiChainTokenBalances,\n multiChainTokenPrices,\n selectedTokenBalances,\n ]\n );\n};\n"],"names":["useAttachTokenBalanceMultichain","t0","$","_c","addressesMap","address","account","useAccount","tradeMode","useTradeMode","t1","multiChainTokenBalances","useMultiChainTokenBalances","selectedTokenBalances","useSelectedTokenBalances","t2","t3","Object","keys","map","Number","filter","isSupportedChainId","chainIds","multiChainTokenPrices","useMultiChainTokenPrices","t4","token","loweredAddress","toLowerCase","isAddress","balance","network","result","undefined","tokenPrice","price","usdBalance","formatUnits","BigInt","decimals","toString"],"mappings":";;;;;;;;;;AAuBO,MAAMA,kCAAkCC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC;AAAAA,GAAA,GAAAH,EAAAA;AAK9C,EAAA,MAAA;AAAA,IAAAI,OAAAA,EAAAC;AAAAA,MAA6BC,UAAAA,EAAW;AACxC,EAAA,MAAAC,YAAkBC,YAAAA,EAAa;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAR,CAAAA,QAAAE,YAAAA,EAAA;AAE0BM,IAAAA,EAAAA,GAAA;AAAA,MAAAN;AAAAA,KAAA;AAE1DF,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA,EAAA;AAFD,EAAA,MAAAS,uBAAAA,GAAgCC,2BAA2BF,EAE1D,CAAA;AACD,EAAA,MAAAG,qBAAAA,GAA8BC,yBAAyBN,SAAS,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAd,CAAAA,QAAAE,YAAAA,EAAA;AAG1DY,IAAAA,EAAAA,GAAAC,MAAAA,CAAAC,KAAYd,YAAY,CAAA,CAACe,IAAAC,MAAW,CAAA,CAACC,OAAAC,kBAA0B,CAAA;AAACpB,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAAa,EAAAA,EAAAA,GAAhEC,EAAAA;AADR,EAAA,MAAAO,QAAAA,GAAiBR,EAAAA;AAKjB,EAAA,MAAAS,qBAAAA,GAA8BC,yBAAyBF,QAAQ,CAAA;AAAE,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAxB,CAAAA,CAAA,CAAA,CAAA,KAAAI,OAAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAS,uBAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAsB,qBAAAA,IAAAtB,CAAAA,QAAAW,qBAAAA,EAAA;AAG/Da,IAAAA,EAAAA,GAAAC,CAAAA,KAAAA,KAAA;AAAA,MAAA,IAAA,CACOrB,OAAAA,EAAO;AAAA,QAAA,OAASqB,KAAAA;AAAAA,MAAK;AAE1B,MAAA,MAAAC,cAAAA,GAAuBD,KAAAA,CAAKtB,OAAAA,CAAAwB,WAAAA,EAAqB;AAAE,MAAA,IAAA,CAE9CC,SAAAA,CAAUF,cAAc,CAAA,EAAC;AAAA,QAAA,OAASD,KAAAA;AAAAA,MAAK;AAE5C,MAAA,MAAAI,OAAAA,GAIElB,qBAAAA,CAAsBc,KAAAA,CAAKK,OAAA,CAAA,GAAYJ,cAAc,CAAA,IAErDjB,uBAAAA,CAAwBgB,KAAAA,CAAKK,OAAA,CAAA,GAAYJ,cAAc,CAAA,EAAAK,MAAAA;AAAU,MAAA,IAE/DF,YAAOG,MAAAA,EAAc;AAAA,QAAA,OAASP,KAAAA;AAAAA,MAAK;AAEvC,MAAA,MAAAQ,aACEX,qBAAAA,CAAsBG,KAAAA,CAAKK,OAAA,CAAA,GAAYJ,cAAc,CAAA,EAAAQ,KAAAA;AAEvD,MAAA,MAAAC,UAAAA,GAAmBF,UAAAA,GACf,CAACG,WAAAA,CAAYC,MAAAA,CAAOR,OAAO,CAAA,EAAGJ,KAAAA,CAAKa,QAAS,CAAA,GAAIL,UAAAA,GAAUD,MAAAA;AAChD,MAAA,OAAA;AAAA,QAAA,GAGTP,KAAAA;AAAAA,QAAKI,OAAAA,EACCA,QAAOU,QAAAA,EAAU;AAAA,QAACJ;AAAAA,OAAA;AAAA,IAAA,CAAA;AAG9BnC,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAS,uBAAAA;AAAAT,IAAAA,CAAAA,MAAAsB,qBAAAA;AAAAtB,IAAAA,CAAAA,MAAAW,qBAAAA;AAAAX,IAAAA,CAAAA,MAAAwB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OA9BIwB,EAAAA;AAqCN;;;;"}