@velora-dex/widget 0.0.14 → 0.0.16

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 (910) hide show
  1. package/README.md +91 -29
  2. package/dist/assets/circle-check.svg.js +12 -0
  3. package/dist/assets/circle-check.svg.js.map +1 -0
  4. package/dist/assets/circle-exclamation.svg.js +12 -0
  5. package/dist/assets/circle-exclamation.svg.js.map +1 -0
  6. package/dist/assets/copy.svg.js +12 -0
  7. package/dist/assets/copy.svg.js.map +1 -0
  8. package/dist/assets/external-url.svg.js +12 -0
  9. package/dist/assets/external-url.svg.js.map +1 -0
  10. package/dist/assets/logout.svg.js +12 -0
  11. package/dist/assets/logout.svg.js.map +1 -0
  12. package/dist/assets/spinner.svg.js.map +1 -0
  13. package/dist/assets/wS.svg.js +12 -0
  14. package/dist/assets/wS.svg.js.map +1 -0
  15. package/dist/assets/wS.svg2.js +4 -0
  16. package/dist/assets/wS.svg2.js.map +1 -0
  17. package/dist/components/ui/accordion.js +0 -10
  18. package/dist/components/ui/accordion.js.map +1 -1
  19. package/dist/components/ui/badge.js +0 -10
  20. package/dist/components/ui/badge.js.map +1 -1
  21. package/dist/components/ui/button.d.ts +1 -1
  22. package/dist/components/ui/button.js +1 -11
  23. package/dist/components/ui/button.js.map +1 -1
  24. package/dist/components/ui/card.js +1 -116
  25. package/dist/components/ui/card.js.map +1 -1
  26. package/dist/components/ui/dialog.js +2 -126
  27. package/dist/components/ui/dialog.js.map +1 -1
  28. package/dist/components/ui/drawer.d.ts +1 -1
  29. package/dist/components/ui/drawer.d.ts.map +1 -1
  30. package/dist/components/ui/drawer.js +2 -12
  31. package/dist/components/ui/drawer.js.map +1 -1
  32. package/dist/components/ui/dropdown-menu.js +22 -369
  33. package/dist/components/ui/dropdown-menu.js.map +1 -1
  34. package/dist/components/ui/input.js +0 -10
  35. package/dist/components/ui/input.js.map +1 -1
  36. package/dist/components/ui/progress.d.ts +13 -0
  37. package/dist/components/ui/progress.d.ts.map +1 -0
  38. package/dist/components/ui/progress.js +120 -0
  39. package/dist/components/ui/progress.js.map +1 -0
  40. package/dist/components/ui/skeleton.js +0 -10
  41. package/dist/components/ui/skeleton.js.map +1 -1
  42. package/dist/components/ui/sonner.d.ts.map +1 -1
  43. package/dist/components/ui/sonner.js +33 -19
  44. package/dist/components/ui/sonner.js.map +1 -1
  45. package/dist/components/ui/switch.d.ts +3 -1
  46. package/dist/components/ui/switch.d.ts.map +1 -1
  47. package/dist/components/ui/switch.js +30 -26
  48. package/dist/components/ui/switch.js.map +1 -1
  49. package/dist/components/ui/tooltip.d.ts.map +1 -1
  50. package/dist/components/ui/tooltip.js +15 -14
  51. package/dist/components/ui/tooltip.js.map +1 -1
  52. package/dist/components/web3/AccountButton.d.ts.map +1 -1
  53. package/dist/components/web3/AccountButton.js +98 -51
  54. package/dist/components/web3/AccountButton.js.map +1 -1
  55. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts +2 -0
  56. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -0
  57. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +92 -0
  58. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -0
  59. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js +0 -10
  60. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  61. package/dist/components/web3/ConnectWallets/index.js +1 -11
  62. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  63. package/dist/components/web3/ConnectWallets/privy/button.js +0 -10
  64. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  65. package/dist/components/web3/ConnectWallets/privy/connectRunner.js +0 -10
  66. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  67. package/dist/components/web3/ConnectWallets/privy/iframe.js +0 -10
  68. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  69. package/dist/components/web3/ConnectWallets/privy/provider.js +0 -10
  70. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  71. package/dist/components/web3/ConnectWallets/walletIcons.js +0 -10
  72. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  73. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts +9 -0
  74. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts.map +1 -0
  75. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +211 -0
  76. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -0
  77. package/dist/components/web3/providers.d.ts.map +1 -1
  78. package/dist/components/web3/providers.js +10 -16
  79. package/dist/components/web3/providers.js.map +1 -1
  80. package/dist/components/widget/AppHeader/ActivityButton.js +0 -10
  81. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  82. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  83. package/dist/components/widget/AppHeader/AppHeader.js +2 -11
  84. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  85. package/dist/components/widget/Details/DetailWithTooltip.js +0 -10
  86. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  87. package/dist/components/widget/Details/DetailWithValueList.js +0 -10
  88. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  89. package/dist/components/widget/Details/DetailWithValueListExpandable.js +0 -10
  90. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  91. package/dist/components/widget/Details/SwapDetailsExpandable.js +0 -10
  92. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  93. package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js +0 -10
  94. package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js.map +1 -1
  95. package/dist/components/widget/Dialog/DialogRoot.js +0 -10
  96. package/dist/components/widget/Dialog/DialogRoot.js.map +1 -1
  97. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +125 -145
  98. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  99. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js +0 -10
  100. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  101. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +1 -11
  102. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  103. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +0 -10
  104. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  105. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js +0 -10
  106. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  107. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts.map +1 -1
  108. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js +2 -13
  109. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  110. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +0 -10
  111. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  112. package/dist/components/widget/Dialog/dialogByType.js +0 -10
  113. package/dist/components/widget/Dialog/dialogByType.js.map +1 -1
  114. package/dist/components/widget/Dialog/state/dialogAtom.js +1 -12
  115. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  116. package/dist/components/widget/Drawer/index.js +0 -10
  117. package/dist/components/widget/Drawer/index.js.map +1 -1
  118. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +7 -5
  119. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  120. package/dist/components/widget/Drawer/state/useDrawerControls.js +55 -44
  121. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  122. package/dist/components/widget/Dropdown/DropdownWithItems.js +0 -10
  123. package/dist/components/widget/Dropdown/DropdownWithItems.js.map +1 -1
  124. package/dist/components/widget/Icon/CheckIcon.js +0 -10
  125. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  126. package/dist/components/widget/Icon/ChevronIcon.js +0 -10
  127. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  128. package/dist/components/widget/Icon/DeltaIcon.js +0 -10
  129. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  130. package/dist/components/widget/Icon/EllipseIcon.js +0 -10
  131. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  132. package/dist/components/widget/Icon/InfoIcon.js +0 -10
  133. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  134. package/dist/components/widget/Icon/MarketIcon.js +0 -10
  135. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  136. package/dist/components/widget/Icon/SliderIcon.js +0 -10
  137. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  138. package/dist/components/widget/Line/Line.d.ts +3 -1
  139. package/dist/components/widget/Line/Line.d.ts.map +1 -1
  140. package/dist/components/widget/Line/Line.js +22 -25
  141. package/dist/components/widget/Line/Line.js.map +1 -1
  142. package/dist/components/widget/NetworkIcon/NetworkIconSquare.d.ts.map +1 -1
  143. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +22 -30
  144. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  145. package/dist/components/widget/NetworkIcon/assets/sqr/sonic.svg.js +12 -0
  146. package/dist/components/widget/NetworkIcon/assets/sqr/sonic.svg.js.map +1 -0
  147. package/dist/components/widget/NetworkIcon/assets/sqr/unichain.svg.js +12 -0
  148. package/dist/components/widget/NetworkIcon/assets/sqr/unichain.svg.js.map +1 -0
  149. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js +0 -10
  150. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  151. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +0 -10
  152. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  153. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js +0 -10
  154. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  155. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +0 -10
  156. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  157. package/dist/components/widget/PoweredBy/PoweredBy.js +0 -10
  158. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  159. package/dist/components/widget/ReceiverAddress/ReceiverAddress.d.ts.map +1 -1
  160. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js +61 -62
  161. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  162. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +1 -12
  163. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  164. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +0 -10
  165. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  166. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js +0 -10
  167. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  168. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  169. package/dist/components/widget/SelectToken/SelectTokenButton.js +106 -99
  170. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  171. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +0 -10
  172. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  173. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +2 -13
  174. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  175. package/dist/components/widget/SwapModeSwitcher/state/swapModeAtom.js +3 -15
  176. package/dist/components/widget/SwapModeSwitcher/state/swapModeAtom.js.map +1 -1
  177. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +3 -14
  178. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  179. package/dist/components/widget/SwapRate/SwapRate.js +0 -10
  180. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  181. package/dist/components/widget/Toasts/CustomToast.d.ts +8 -0
  182. package/dist/components/widget/Toasts/CustomToast.d.ts.map +1 -0
  183. package/dist/components/widget/Toasts/CustomToast.js +222 -0
  184. package/dist/components/widget/Toasts/CustomToast.js.map +1 -0
  185. package/dist/components/widget/TokenBadge/TokenBadge.js +0 -10
  186. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  187. package/dist/components/widget/TokenInput/EmptyInput.js +0 -10
  188. package/dist/components/widget/TokenInput/EmptyInput.js.map +1 -1
  189. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  190. package/dist/components/widget/TokenInput/index.js +122 -147
  191. package/dist/components/widget/TokenInput/index.js.map +1 -1
  192. package/dist/components/widget/TokenInput/types.d.ts +1 -0
  193. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  194. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js +1 -11
  195. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  196. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  197. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  198. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +20 -26
  199. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  200. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  201. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  202. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +20 -26
  203. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  204. package/dist/components/widget/TradeOverview/Step.js +1 -11
  205. package/dist/components/widget/TradeOverview/Step.js.map +1 -1
  206. package/dist/components/widget/TradeOverview/Stepper.js +5 -50
  207. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  208. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +0 -10
  209. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  210. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +0 -10
  211. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  212. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js +0 -10
  213. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  214. package/dist/components/widget/TradeOverview/TradeComplete/index.js +1 -11
  215. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  216. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +0 -10
  217. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  218. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +0 -10
  219. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  220. package/dist/components/widget/TradeOverview/TradeDetails.js +1 -11
  221. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  222. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.d.ts.map +1 -1
  223. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js +34 -15
  224. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  225. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts +5 -0
  226. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts.map +1 -0
  227. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js +55 -0
  228. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -0
  229. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts +5 -0
  230. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts.map +1 -0
  231. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js +43 -0
  232. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -0
  233. package/dist/components/widget/TradeOverview/TradeError/index.d.ts +6 -0
  234. package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -0
  235. package/dist/components/widget/TradeOverview/TradeError/index.js +55 -0
  236. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -0
  237. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +4 -0
  238. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -0
  239. package/dist/components/widget/TradeOverview/TradeError/utils.js +30 -0
  240. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -0
  241. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -1
  242. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  243. package/dist/components/widget/TradeOverview/TradeOverview.js +156 -111
  244. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  245. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +0 -10
  246. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  247. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js +1 -11
  248. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  249. package/dist/components/widget/TradeOverview/VerticalDash.js +0 -10
  250. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  251. package/dist/components/widget/TradeOverview/assets/1_approving.lottie.js +4 -0
  252. package/dist/components/widget/TradeOverview/assets/1_approving.lottie.js.map +1 -0
  253. package/dist/components/widget/TradeOverview/assets/2_in_progress.lottie.js +4 -0
  254. package/dist/components/widget/TradeOverview/assets/2_in_progress.lottie.js.map +1 -0
  255. package/dist/components/widget/TradeOverview/assets/3_executing_step.lottie.js +4 -0
  256. package/dist/components/widget/TradeOverview/assets/3_executing_step.lottie.js.map +1 -0
  257. package/dist/components/widget/TradeOverview/assets/4_complete_step.lottie.js +4 -0
  258. package/dist/components/widget/TradeOverview/assets/4_complete_step.lottie.js.map +1 -0
  259. package/dist/components/widget/TradeOverview/assets/5_error_step.lottie.js +4 -0
  260. package/dist/components/widget/TradeOverview/assets/5_error_step.lottie.js.map +1 -0
  261. package/dist/components/widget/TradeOverview/steps.js +0 -10
  262. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  263. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +8 -3
  264. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  265. package/dist/components/widget/TradeOverview/tradeFlowContext.js +17 -11
  266. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  267. package/dist/components/widget/TradeParameters/DeltaParameter.js +0 -10
  268. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  269. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts +2 -0
  270. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts.map +1 -0
  271. package/dist/components/widget/TradeParameters/EIP1559Parameter.js +56 -0
  272. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -0
  273. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js +0 -10
  274. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  275. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js +0 -10
  276. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  277. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.d.ts.map +1 -1
  278. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js +25 -26
  279. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  280. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js +0 -10
  281. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  282. package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
  283. package/dist/components/widget/TradeParameters/TradeParameters.js +61 -44
  284. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  285. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts +2 -0
  286. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts.map +1 -0
  287. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js +155 -0
  288. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -0
  289. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.d.ts.map +1 -1
  290. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +24 -17
  291. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  292. package/dist/components/widget/TradeParameters/state/constants.js +0 -10
  293. package/dist/components/widget/TradeParameters/state/constants.js.map +1 -1
  294. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js +2 -13
  295. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js.map +1 -1
  296. package/dist/components/widget/TradeParameters/state/deltaParamAtom.js +3 -15
  297. package/dist/components/widget/TradeParameters/state/deltaParamAtom.js.map +1 -1
  298. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.d.ts +6 -0
  299. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.d.ts.map +1 -0
  300. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.js +10 -0
  301. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.js.map +1 -0
  302. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts +8 -0
  303. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -0
  304. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +13 -0
  305. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -0
  306. package/dist/components/widget/TradeParameters/state/resetParamsAtom.d.ts +4 -0
  307. package/dist/components/widget/TradeParameters/state/resetParamsAtom.d.ts.map +1 -0
  308. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js +16 -0
  309. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js.map +1 -0
  310. package/dist/components/widget/TradeParameters/state/slippageParamActionsAtom.js +2 -13
  311. package/dist/components/widget/TradeParameters/state/slippageParamActionsAtom.js.map +1 -1
  312. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js +3 -15
  313. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js.map +1 -1
  314. package/dist/components/widget/Warning/InsufficientBalanceMessage.js +0 -10
  315. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  316. package/dist/components/widget/Warning/Warning.js +0 -10
  317. package/dist/components/widget/Warning/Warning.js.map +1 -1
  318. package/dist/components/widget/Warning/WarningMessage.js +0 -10
  319. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  320. package/dist/components/widget/WrapEth/WrapEthContent.d.ts.map +1 -1
  321. package/dist/components/widget/WrapEth/WrapEthContent.js +64 -76
  322. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  323. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts +1 -1
  324. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
  325. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +56 -57
  326. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  327. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts.map +1 -1
  328. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js +2 -11
  329. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  330. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +0 -10
  331. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  332. package/dist/components/widget/YouGet/YouGet.d.ts.map +1 -1
  333. package/dist/components/widget/YouGet/YouGet.js +97 -108
  334. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  335. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33/external/vaul/dist/index.js +1626 -0
  336. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33/external/vaul/dist/index.js.map +1 -0
  337. package/dist/hooks/gas/config.d.ts.map +1 -1
  338. package/dist/hooks/gas/config.js +9 -15
  339. package/dist/hooks/gas/config.js.map +1 -1
  340. package/dist/hooks/gas/types.d.ts +1 -1
  341. package/dist/hooks/gas/types.d.ts.map +1 -1
  342. package/dist/hooks/gas/useGasPrices.d.ts +8 -0
  343. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  344. package/dist/hooks/gas/useGasPrices.js +30 -31
  345. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  346. package/dist/hooks/gas/utils.d.ts +5 -0
  347. package/dist/hooks/gas/utils.d.ts.map +1 -1
  348. package/dist/hooks/gas/utils.js +5 -12
  349. package/dist/hooks/gas/utils.js.map +1 -1
  350. package/dist/hooks/getCode/query.js +0 -10
  351. package/dist/hooks/getCode/query.js.map +1 -1
  352. package/dist/hooks/getCode/useIsAccountContract.d.ts.map +1 -1
  353. package/dist/hooks/getCode/useIsAccountContract.js +21 -18
  354. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  355. package/dist/hooks/getCode/useIsContractAtAddress.js +0 -10
  356. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  357. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.d.ts.map +1 -0
  358. package/dist/hooks/permit/hooks/{useSignArbitraryTypedData.js → common/useSignArbitraryTypedData.js} +1 -11
  359. package/dist/hooks/permit/hooks/{useSignArbitraryTypedData.js.map → common/useSignArbitraryTypedData.js.map} +1 -1
  360. package/dist/hooks/permit/hooks/{useSignPermit.d.ts → common/useSignPermit.d.ts} +1 -1
  361. package/dist/hooks/permit/hooks/common/useSignPermit.d.ts.map +1 -0
  362. package/dist/hooks/permit/hooks/{useSignPermit.js → common/useSignPermit.js} +2 -12
  363. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -0
  364. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.d.ts +7 -0
  365. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.d.ts.map +1 -0
  366. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js +25 -0
  367. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -0
  368. package/dist/hooks/permit/hooks/{useGetPermitInfo.d.ts → permit1/useGetPermitInfo.d.ts} +2 -2
  369. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.d.ts.map +1 -0
  370. package/dist/hooks/permit/hooks/{useGetPermitInfo.js → permit1/useGetPermitInfo.js} +3 -13
  371. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -0
  372. package/dist/hooks/permit/hooks/{useGetSafePermitInfo.d.ts → permit1/useGetSafePermitInfo.d.ts} +3 -3
  373. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.d.ts.map +1 -0
  374. package/dist/hooks/permit/hooks/{useGetSafePermitInfo.js → permit1/useGetSafePermitInfo.js} +1 -11
  375. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -0
  376. package/dist/hooks/permit/hooks/{usePermit1Nonce.d.ts → permit1/usePermit1Nonce.d.ts} +5 -5
  377. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -0
  378. package/dist/hooks/permit/hooks/{usePermit1Nonce.js → permit1/usePermit1Nonce.js} +5 -14
  379. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -0
  380. package/dist/hooks/permit/hooks/{useSignTokenFromPermit1.d.ts → permit1/useSignTokenPermit1.d.ts} +15 -14
  381. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.d.ts.map +1 -0
  382. package/dist/hooks/permit/hooks/{useSignTokenFromPermit1.js → permit1/useSignTokenPermit1.js} +75 -78
  383. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -0
  384. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.d.ts +10 -0
  385. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.d.ts.map +1 -0
  386. package/dist/hooks/permit/hooks/{useTokenFromPermit1Nonce.js → permit1/useTokenFromPermit1Nonce.js} +2 -12
  387. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -0
  388. package/dist/hooks/permit/hooks/{useTokenFromPermitInfo.d.ts → permit1/useTokenFromPermitInfo.d.ts} +1 -1
  389. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.d.ts.map +1 -0
  390. package/dist/hooks/permit/hooks/{useTokenFromPermitInfo.js → permit1/useTokenFromPermitInfo.js} +2 -12
  391. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -0
  392. package/dist/hooks/permit/hooks/{useTryToSignPermit1.d.ts → permit1/useTryToSignPermit1.d.ts} +1 -1
  393. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.d.ts.map +1 -0
  394. package/dist/hooks/permit/hooks/{useTryToSignPermit1.js → permit1/useTryToSignPermit1.js} +2 -12
  395. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -0
  396. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts +21 -0
  397. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts.map +1 -0
  398. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +79 -0
  399. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -0
  400. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts +76 -0
  401. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts.map +1 -0
  402. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js +143 -0
  403. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -0
  404. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.d.ts +52 -0
  405. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.d.ts.map +1 -0
  406. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +299 -0
  407. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -0
  408. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.d.ts +10 -0
  409. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.d.ts.map +1 -0
  410. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js +55 -0
  411. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -0
  412. package/dist/hooks/permit/utils/abi.d.ts +173 -0
  413. package/dist/hooks/permit/utils/abi.d.ts.map +1 -1
  414. package/dist/hooks/permit/utils/abi.js +174 -11
  415. package/dist/hooks/permit/utils/abi.js.map +1 -1
  416. package/dist/hooks/permit/utils/constants.js +0 -10
  417. package/dist/hooks/permit/utils/constants.js.map +1 -1
  418. package/dist/hooks/permit/utils/construct.d.ts +3 -4
  419. package/dist/hooks/permit/utils/construct.d.ts.map +1 -1
  420. package/dist/hooks/permit/utils/construct.js +1 -11
  421. package/dist/hooks/permit/utils/construct.js.map +1 -1
  422. package/dist/hooks/permit/utils/deadlines.d.ts +8 -0
  423. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -0
  424. package/dist/hooks/permit/utils/deadlines.js +15 -0
  425. package/dist/hooks/permit/utils/deadlines.js.map +1 -0
  426. package/dist/hooks/permit/utils/detect.js +0 -10
  427. package/dist/hooks/permit/utils/detect.js.map +1 -1
  428. package/dist/hooks/permit/utils/domainSeparator.js +0 -10
  429. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  430. package/dist/hooks/permit/utils/encodeArgs.d.ts +22 -4
  431. package/dist/hooks/permit/utils/encodeArgs.d.ts.map +1 -1
  432. package/dist/hooks/permit/utils/encodeArgs.js +33 -14
  433. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  434. package/dist/hooks/permit/utils/trySignPermit1.d.ts +1 -1
  435. package/dist/hooks/permit/utils/trySignPermit1.d.ts.map +1 -1
  436. package/dist/hooks/permit/utils/trySignPermit1.js +0 -10
  437. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  438. package/dist/hooks/permit/utils/utils.js +0 -10
  439. package/dist/hooks/permit/utils/utils.js.map +1 -1
  440. package/dist/hooks/sdk/useGetContracts.js +0 -10
  441. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  442. package/dist/hooks/sdk/useSpender.js +0 -10
  443. package/dist/hooks/sdk/useSpender.js.map +1 -1
  444. package/dist/hooks/swap/prices/delta/bridge/utils.js +0 -10
  445. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  446. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +0 -10
  447. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  448. package/dist/hooks/swap/prices/delta/orders/utils.js +0 -10
  449. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  450. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +0 -10
  451. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
  452. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +1 -0
  453. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  454. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +4 -11
  455. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  456. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js +0 -10
  457. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  458. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +0 -10
  459. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  460. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js +0 -10
  461. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  462. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js +0 -10
  463. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  464. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +0 -10
  465. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  466. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js +0 -10
  467. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  468. package/dist/hooks/swap/prices/usePricesParams.d.ts +1 -1
  469. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  470. package/dist/hooks/swap/prices/usePricesParams.js +87 -42
  471. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  472. package/dist/hooks/swap/prices/useSwapPrices.js +0 -11
  473. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  474. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +0 -10
  475. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  476. package/dist/hooks/swap/tradeFlow/common/errors.js +0 -10
  477. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  478. package/dist/hooks/swap/tradeFlow/common/types.d.ts +0 -1
  479. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  480. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +18 -0
  481. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -0
  482. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +190 -0
  483. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -0
  484. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts +20 -0
  485. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts.map +1 -0
  486. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js +81 -0
  487. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -0
  488. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +53 -0
  489. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -0
  490. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +308 -0
  491. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -0
  492. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts +25 -0
  493. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts.map +1 -0
  494. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js +103 -0
  495. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js.map +1 -0
  496. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +2 -0
  497. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  498. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +333 -408
  499. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  500. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +3 -0
  501. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  502. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +33 -21
  503. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  504. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +4 -0
  505. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  506. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +296 -374
  507. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  508. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +3 -0
  509. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  510. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +34 -22
  511. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  512. package/dist/hooks/tokens/allowance/types.d.ts +3 -0
  513. package/dist/hooks/tokens/allowance/types.d.ts.map +1 -1
  514. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js +0 -10
  515. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  516. package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts +1 -1
  517. package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts.map +1 -1
  518. package/dist/hooks/tokens/allowance/useTokenAllowance.js +32 -38
  519. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  520. package/dist/hooks/tokens/balances/queries.js +0 -10
  521. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  522. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +0 -10
  523. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  524. package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts.map +1 -1
  525. package/dist/hooks/tokens/balances/useInvalidateTokenData.js +0 -10
  526. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  527. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts +1 -0
  528. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts.map +1 -1
  529. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +41 -11
  530. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  531. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +0 -10
  532. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  533. package/dist/hooks/tokens/balances/useTokenBalance.js +0 -10
  534. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  535. package/dist/hooks/tokens/prices/queries.js +0 -10
  536. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  537. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js +0 -10
  538. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  539. package/dist/hooks/tokens/prices/useTokenPrices.js +0 -10
  540. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  541. package/dist/hooks/tokens/useNativeToken.js +0 -10
  542. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  543. package/dist/hooks/tokens/useTokenLists.d.ts +1 -0
  544. package/dist/hooks/tokens/useTokenLists.d.ts.map +1 -1
  545. package/dist/hooks/tokens/useTokenLists.js +15 -12
  546. package/dist/hooks/tokens/useTokenLists.js.map +1 -1
  547. package/dist/hooks/tokens/useTokenTaxFee.d.ts +12 -0
  548. package/dist/hooks/tokens/useTokenTaxFee.d.ts.map +1 -0
  549. package/dist/hooks/tokens/useTokenTaxFee.js +54 -0
  550. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -0
  551. package/dist/hooks/tokens/useTokensByAddress.js +0 -10
  552. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  553. package/dist/hooks/tokens/useTokensFromAcross.js +0 -10
  554. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  555. package/dist/hooks/txs/index.d.ts +1 -1
  556. package/dist/hooks/txs/mutations/useApprove.d.ts +5 -4
  557. package/dist/hooks/txs/mutations/useApprove.d.ts.map +1 -1
  558. package/dist/hooks/txs/mutations/useApprove.js +55 -49
  559. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  560. package/dist/hooks/txs/mutations/useDepositWeth.d.ts.map +1 -1
  561. package/dist/hooks/txs/mutations/useDepositWeth.js +37 -37
  562. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  563. package/dist/hooks/txs/mutations/useSendTx.js +0 -10
  564. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  565. package/dist/hooks/txs/queries/useAwaitTx.js +0 -10
  566. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  567. package/dist/hooks/useAvailableCrosses.js +0 -10
  568. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  569. package/dist/hooks/useBridgeInfo.js +0 -10
  570. package/dist/hooks/useBridgeInfo.js.map +1 -1
  571. package/dist/hooks/useCurrentChain.js +0 -10
  572. package/dist/hooks/useCurrentChain.js.map +1 -1
  573. package/dist/hooks/useDebouncedInputState.js +0 -10
  574. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  575. package/dist/hooks/useEIP1559Enabled.d.ts +6 -0
  576. package/dist/hooks/useEIP1559Enabled.d.ts.map +1 -0
  577. package/dist/hooks/useEIP1559Enabled.js +31 -0
  578. package/dist/hooks/useEIP1559Enabled.js.map +1 -0
  579. package/dist/hooks/useGlobalDeltaEnabled.js +0 -10
  580. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  581. package/dist/hooks/useIsCrosschainPossible.js +0 -10
  582. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  583. package/dist/hooks/useMinViemClient.js +0 -10
  584. package/dist/hooks/useMinViemClient.js.map +1 -1
  585. package/dist/hooks/useSDK.js +0 -10
  586. package/dist/hooks/useSDK.js.map +1 -1
  587. package/dist/hooks/useSlippage.js +0 -10
  588. package/dist/hooks/useSlippage.js.map +1 -1
  589. package/dist/index.d.ts +2 -18
  590. package/dist/index.d.ts.map +1 -1
  591. package/dist/index.js +0 -32
  592. package/dist/index.js.map +1 -1
  593. package/dist/lib/constants/delta.d.ts.map +1 -1
  594. package/dist/lib/constants/delta.js +3 -12
  595. package/dist/lib/constants/delta.js.map +1 -1
  596. package/dist/lib/constants/index.js +0 -10
  597. package/dist/lib/constants/index.js.map +1 -1
  598. package/dist/lib/constants/time.js +0 -10
  599. package/dist/lib/constants/time.js.map +1 -1
  600. package/dist/lib/constants/weth.d.ts.map +1 -1
  601. package/dist/lib/constants/weth.js +24 -27
  602. package/dist/lib/constants/weth.js.map +1 -1
  603. package/dist/lib/ipfs.js +0 -10
  604. package/dist/lib/ipfs.js.map +1 -1
  605. package/dist/lib/queryClient.js +0 -10
  606. package/dist/lib/queryClient.js.map +1 -1
  607. package/dist/lib/utils/copyToClipboard.d.ts +2 -0
  608. package/dist/lib/utils/copyToClipboard.d.ts.map +1 -0
  609. package/dist/lib/utils/copyToClipboard.js +14 -0
  610. package/dist/lib/utils/copyToClipboard.js.map +1 -0
  611. package/dist/lib/utils/delta.js +0 -10
  612. package/dist/lib/utils/delta.js.map +1 -1
  613. package/dist/lib/utils/dexes.js +0 -10
  614. package/dist/lib/utils/dexes.js.map +1 -1
  615. package/dist/lib/utils/explorer.js +0 -10
  616. package/dist/lib/utils/explorer.js.map +1 -1
  617. package/dist/lib/utils/fee.js +0 -10
  618. package/dist/lib/utils/fee.js.map +1 -1
  619. package/dist/lib/utils/formatFiatPrice.js +0 -10
  620. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  621. package/dist/lib/utils/formatTokenBalance.js +0 -10
  622. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  623. package/dist/lib/utils/index.js +0 -10
  624. package/dist/lib/utils/index.js.map +1 -1
  625. package/dist/lib/utils/logger.js +21 -8
  626. package/dist/lib/utils/logger.js.map +1 -1
  627. package/dist/lib/utils/price.js +1 -11
  628. package/dist/lib/utils/price.js.map +1 -1
  629. package/dist/lib/utils/priceImpact.js +0 -10
  630. package/dist/lib/utils/priceImpact.js.map +1 -1
  631. package/dist/lib/utils/providerErrors.d.ts +12 -0
  632. package/dist/lib/utils/providerErrors.d.ts.map +1 -0
  633. package/dist/lib/utils/providerErrors.js +29 -0
  634. package/dist/lib/utils/providerErrors.js.map +1 -0
  635. package/dist/lib/utils/rate.js +0 -10
  636. package/dist/lib/utils/rate.js.map +1 -1
  637. package/dist/lib/utils/removeZeroDecimals.js +0 -10
  638. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  639. package/dist/lib/utils/slippage.d.ts +5 -0
  640. package/dist/lib/utils/slippage.d.ts.map +1 -1
  641. package/dist/lib/utils/slippage.js +0 -10
  642. package/dist/lib/utils/slippage.js.map +1 -1
  643. package/dist/lib/utils/toDecimal.d.ts +1 -0
  644. package/dist/lib/utils/toDecimal.d.ts.map +1 -1
  645. package/dist/lib/utils/toDecimal.js +9 -14
  646. package/dist/lib/utils/toDecimal.js.map +1 -1
  647. package/dist/lib/utils/toasts.d.ts +2 -0
  648. package/dist/lib/utils/toasts.d.ts.map +1 -1
  649. package/dist/lib/utils/toasts.js +48 -37
  650. package/dist/lib/utils/toasts.js.map +1 -1
  651. package/dist/lib/web3/privy/config.js +1 -11
  652. package/dist/lib/web3/privy/config.js.map +1 -1
  653. package/dist/lib/web3/wagmi/config.d.ts +333 -35
  654. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  655. package/dist/lib/web3/wagmi/config.js +1 -11
  656. package/dist/lib/web3/wagmi/config.js.map +1 -1
  657. package/dist/lib/web3/wagmi/constants.d.ts +333 -35
  658. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  659. package/dist/lib/web3/wagmi/constants.js +5 -14
  660. package/dist/lib/web3/wagmi/constants.js.map +1 -1
  661. package/dist/lib/web3/wagmi/supportedChains.d.ts +1 -1
  662. package/dist/lib/web3/wagmi/supportedChains.d.ts.map +1 -1
  663. package/dist/lib/web3/wagmi/transports.d.ts.map +1 -1
  664. package/dist/lib/web3/wagmi/transports.js +3 -12
  665. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  666. package/dist/lib/web3/wagmi/utils.js +0 -10
  667. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  668. package/dist/styles.css +2965 -184
  669. package/dist/test/Configurator.d.ts.map +1 -1
  670. package/dist/test/TestButton.d.ts +2 -0
  671. package/dist/test/TestButton.d.ts.map +1 -0
  672. package/dist/test/logger-demo.d.ts +5 -0
  673. package/dist/test/logger-demo.d.ts.map +1 -0
  674. package/dist/tokens/blacklist.js +0 -10
  675. package/dist/tokens/blacklist.js.map +1 -1
  676. package/dist/tokens/constants.d.ts.map +1 -1
  677. package/dist/tokens/constants.js +4 -13
  678. package/dist/tokens/constants.js.map +1 -1
  679. package/dist/tokens/constructor.js +0 -10
  680. package/dist/tokens/constructor.js.map +1 -1
  681. package/dist/tokens/defaultTokens.d.ts.map +1 -1
  682. package/dist/tokens/defaultTokens.js +44 -32
  683. package/dist/tokens/defaultTokens.js.map +1 -1
  684. package/dist/tokens/hooks.js +0 -10
  685. package/dist/tokens/hooks.js.map +1 -1
  686. package/dist/tokens/lists/constants.js +0 -10
  687. package/dist/tokens/lists/constants.js.map +1 -1
  688. package/dist/tokens/lists/download.js +0 -10
  689. package/dist/tokens/lists/download.js.map +1 -1
  690. package/dist/tokens/lists/hooks.js +0 -10
  691. package/dist/tokens/lists/hooks.js.map +1 -1
  692. package/dist/tokens/lists/lists.json.d.ts +21 -0
  693. package/dist/tokens/lists/lists.json.js +21 -0
  694. package/dist/tokens/lists/lists.json.js.map +1 -1
  695. package/dist/tokens/lists/state/observer.js +0 -10
  696. package/dist/tokens/lists/state/observer.js.map +1 -1
  697. package/dist/tokens/lists/state/tokenListsActionsAtom.js +2 -13
  698. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  699. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +10 -6
  700. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts.map +1 -1
  701. package/dist/tokens/lists/state/tokenListsStateAtom.js +2 -14
  702. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  703. package/dist/tokens/lists/state/types.d.ts +3 -2
  704. package/dist/tokens/lists/state/types.d.ts.map +1 -1
  705. package/dist/tokens/lists/utils.js +0 -10
  706. package/dist/tokens/lists/utils.js.map +1 -1
  707. package/dist/tokens/overrides.js +0 -10
  708. package/dist/tokens/overrides.js.map +1 -1
  709. package/dist/tokens/queries.js +0 -10
  710. package/dist/tokens/queries.js.map +1 -1
  711. package/dist/tokens/stabeCoins/hooks.js +0 -10
  712. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  713. package/dist/tokens/stabeCoins/index.js +0 -10
  714. package/dist/tokens/stabeCoins/index.js.map +1 -1
  715. package/dist/tokens/state/constructTokens.js +0 -10
  716. package/dist/tokens/state/constructTokens.js.map +1 -1
  717. package/dist/tokens/state/tokensAtom.js +2 -13
  718. package/dist/tokens/state/tokensAtom.js.map +1 -1
  719. package/dist/tokens/utils/areTokensSame.js +0 -10
  720. package/dist/tokens/utils/areTokensSame.js.map +1 -1
  721. package/dist/tokens/utils/eth.js +0 -10
  722. package/dist/tokens/utils/eth.js.map +1 -1
  723. package/dist/tokens/utils/filtering.js +0 -10
  724. package/dist/tokens/utils/filtering.js.map +1 -1
  725. package/dist/tokens/utils/sets.js +0 -10
  726. package/dist/tokens/utils/sets.js.map +1 -1
  727. package/dist/tokens/utils/sorting.js +0 -10
  728. package/dist/tokens/utils/sorting.js.map +1 -1
  729. package/dist/widget/ConnectWalletDrawerButton.d.ts +7 -0
  730. package/dist/widget/ConnectWalletDrawerButton.d.ts.map +1 -0
  731. package/dist/widget/ConnectWalletDrawerButton.js +95 -0
  732. package/dist/widget/ConnectWalletDrawerButton.js.map +1 -0
  733. package/dist/widget/DevTools.d.ts +2 -0
  734. package/dist/widget/DevTools.d.ts.map +1 -0
  735. package/dist/widget/Toaster.d.ts +2 -0
  736. package/dist/widget/Toaster.d.ts.map +1 -0
  737. package/dist/widget/Toaster.js +24 -0
  738. package/dist/widget/Toaster.js.map +1 -0
  739. package/dist/widget/TradeFlowButton.d.ts +16 -0
  740. package/dist/widget/TradeFlowButton.d.ts.map +1 -0
  741. package/dist/widget/TradeFlowButton.js +474 -0
  742. package/dist/widget/TradeFlowButton.js.map +1 -0
  743. package/dist/widget/Updaters.d.ts.map +1 -1
  744. package/dist/widget/Updaters.js +6 -12
  745. package/dist/widget/Updaters.js.map +1 -1
  746. package/dist/widget/across/utils.js +0 -10
  747. package/dist/widget/across/utils.js.map +1 -1
  748. package/dist/widget/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  749. package/dist/widget/button/hooks/useWidgetButtonExtraProps.js +63 -40
  750. package/dist/widget/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  751. package/dist/widget/constants.d.ts +1 -0
  752. package/dist/widget/constants.d.ts.map +1 -1
  753. package/dist/widget/constants.js +2 -11
  754. package/dist/widget/constants.js.map +1 -1
  755. package/dist/widget/index.d.ts +1 -1
  756. package/dist/widget/index.d.ts.map +1 -1
  757. package/dist/widget/index.js +146 -486
  758. package/dist/widget/index.js.map +1 -1
  759. package/dist/widget/inputs/hooks/types.d.ts +1 -1
  760. package/dist/widget/inputs/hooks/types.d.ts.map +1 -1
  761. package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  762. package/dist/widget/inputs/hooks/useTokenFromInputProps.js +66 -64
  763. package/dist/widget/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  764. package/dist/widget/inputs/hooks/useTokenSwitcherProps.js +0 -10
  765. package/dist/widget/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  766. package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  767. package/dist/widget/inputs/hooks/useTokenToInputProps.js +46 -30
  768. package/dist/widget/inputs/hooks/useTokenToInputProps.js.map +1 -1
  769. package/dist/widget/inputs/state/inputAmountAtom.js +6 -20
  770. package/dist/widget/inputs/state/inputAmountAtom.js.map +1 -1
  771. package/dist/widget/inputs/state/selectedTokenActionsAtom.js +7 -20
  772. package/dist/widget/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  773. package/dist/widget/inputs/state/selectedTokenAtom.js +2 -15
  774. package/dist/widget/inputs/state/selectedTokenAtom.js.map +1 -1
  775. package/dist/widget/inputs/state/subscriptions.js +0 -10
  776. package/dist/widget/inputs/state/subscriptions.js.map +1 -1
  777. package/dist/widget/state/chainToAtom.d.ts +2 -2
  778. package/dist/widget/state/chainToAtom.d.ts.map +1 -1
  779. package/dist/widget/state/chainToAtom.js +2 -13
  780. package/dist/widget/state/chainToAtom.js.map +1 -1
  781. package/dist/widget/state/configActionsAtom.d.ts.map +1 -1
  782. package/dist/widget/state/configActionsAtom.js +5 -14
  783. package/dist/widget/state/configActionsAtom.js.map +1 -1
  784. package/dist/widget/state/configAtom.d.ts +4 -1
  785. package/dist/widget/state/configAtom.d.ts.map +1 -1
  786. package/dist/widget/state/configAtom.js +3 -13
  787. package/dist/widget/state/configAtom.js.map +1 -1
  788. package/dist/widget/state/containerAtom.js +2 -13
  789. package/dist/widget/state/containerAtom.js.map +1 -1
  790. package/dist/widget/state/currentSwapInputAtom.js +1 -12
  791. package/dist/widget/state/currentSwapInputAtom.js.map +1 -1
  792. package/dist/widget/state/externalProviderAtom.d.ts +23 -0
  793. package/dist/widget/state/externalProviderAtom.d.ts.map +1 -0
  794. package/dist/widget/state/externalProviderAtom.js +20 -0
  795. package/dist/widget/state/externalProviderAtom.js.map +1 -0
  796. package/dist/widget/state/isCrosschainAtom.js +2 -13
  797. package/dist/widget/state/isCrosschainAtom.js.map +1 -1
  798. package/dist/widget/subscriptions.js +0 -10
  799. package/dist/widget/subscriptions.js.map +1 -1
  800. package/dist/widget/swapDetails/fees.js +0 -10
  801. package/dist/widget/swapDetails/fees.js.map +1 -1
  802. package/dist/widget/swapDetails/orderRouting.js +0 -10
  803. package/dist/widget/swapDetails/orderRouting.js.map +1 -1
  804. package/dist/widget/swapDetails/priceImpact.js +0 -10
  805. package/dist/widget/swapDetails/priceImpact.js.map +1 -1
  806. package/dist/widget/swapDetails/useSwapDetailsListProps.js +0 -10
  807. package/dist/widget/swapDetails/useSwapDetailsListProps.js.map +1 -1
  808. package/dist/widget/swapDetails/youGet.d.ts.map +1 -1
  809. package/dist/widget/swapDetails/youGet.js +2 -13
  810. package/dist/widget/swapDetails/youGet.js.map +1 -1
  811. package/dist/widget/types.d.ts +4 -0
  812. package/dist/widget/types.d.ts.map +1 -1
  813. package/package.json +9 -66
  814. package/dist/components/ui/counter.js +0 -43
  815. package/dist/components/ui/counter.js.map +0 -1
  816. package/dist/components/ui/header.js +0 -31
  817. package/dist/components/ui/header.js.map +0 -1
  818. package/dist/components/ui/select.js +0 -437
  819. package/dist/components/ui/select.js.map +0 -1
  820. package/dist/components/ui/vaul/browser.d.ts +0 -8
  821. package/dist/components/ui/vaul/browser.d.ts.map +0 -1
  822. package/dist/components/ui/vaul/browser.js +0 -37
  823. package/dist/components/ui/vaul/browser.js.map +0 -1
  824. package/dist/components/ui/vaul/constants.d.ts +0 -12
  825. package/dist/components/ui/vaul/constants.d.ts.map +0 -1
  826. package/dist/components/ui/vaul/constants.js +0 -24
  827. package/dist/components/ui/vaul/constants.js.map +0 -1
  828. package/dist/components/ui/vaul/context.d.ts +0 -38
  829. package/dist/components/ui/vaul/context.d.ts.map +0 -1
  830. package/dist/components/ui/vaul/context.js +0 -72
  831. package/dist/components/ui/vaul/context.js.map +0 -1
  832. package/dist/components/ui/vaul/helpers.d.ts +0 -17
  833. package/dist/components/ui/vaul/helpers.d.ts.map +0 -1
  834. package/dist/components/ui/vaul/helpers.js +0 -87
  835. package/dist/components/ui/vaul/helpers.js.map +0 -1
  836. package/dist/components/ui/vaul/index.d.ts +0 -140
  837. package/dist/components/ui/vaul/index.d.ts.map +0 -1
  838. package/dist/components/ui/vaul/index.js +0 -807
  839. package/dist/components/ui/vaul/index.js.map +0 -1
  840. package/dist/components/ui/vaul/types.d.ts +0 -7
  841. package/dist/components/ui/vaul/types.d.ts.map +0 -1
  842. package/dist/components/ui/vaul/use-composed-refs.d.ts +0 -14
  843. package/dist/components/ui/vaul/use-composed-refs.d.ts.map +0 -1
  844. package/dist/components/ui/vaul/use-composed-refs.js +0 -28
  845. package/dist/components/ui/vaul/use-composed-refs.js.map +0 -1
  846. package/dist/components/ui/vaul/use-controllable-state.d.ts +0 -9
  847. package/dist/components/ui/vaul/use-controllable-state.d.ts.map +0 -1
  848. package/dist/components/ui/vaul/use-controllable-state.js +0 -134
  849. package/dist/components/ui/vaul/use-controllable-state.js.map +0 -1
  850. package/dist/components/ui/vaul/use-position-fixed.d.ts +0 -19
  851. package/dist/components/ui/vaul/use-position-fixed.d.ts.map +0 -1
  852. package/dist/components/ui/vaul/use-position-fixed.js +0 -109
  853. package/dist/components/ui/vaul/use-position-fixed.js.map +0 -1
  854. package/dist/components/ui/vaul/use-prevent-scroll.d.ts +0 -18
  855. package/dist/components/ui/vaul/use-prevent-scroll.d.ts.map +0 -1
  856. package/dist/components/ui/vaul/use-prevent-scroll.js +0 -182
  857. package/dist/components/ui/vaul/use-prevent-scroll.js.map +0 -1
  858. package/dist/components/ui/vaul/use-scale-background.d.ts +0 -2
  859. package/dist/components/ui/vaul/use-scale-background.d.ts.map +0 -1
  860. package/dist/components/ui/vaul/use-scale-background.js +0 -68
  861. package/dist/components/ui/vaul/use-scale-background.js.map +0 -1
  862. package/dist/components/ui/vaul/use-snap-points.d.ts +0 -32
  863. package/dist/components/ui/vaul/use-snap-points.d.ts.map +0 -1
  864. package/dist/components/ui/vaul/use-snap-points.js +0 -222
  865. package/dist/components/ui/vaul/use-snap-points.js.map +0 -1
  866. package/dist/components/widget/Informative/Informative.js +0 -33
  867. package/dist/components/widget/Informative/Informative.js.map +0 -1
  868. package/dist/components/widget/NetworkIcon/assets/sqr/polygonZkEVM.svg.js +0 -12
  869. package/dist/components/widget/NetworkIcon/assets/sqr/polygonZkEVM.svg.js.map +0 -1
  870. package/dist/components/widget/SwapModeSwitcher/state/types.js +0 -11
  871. package/dist/components/widget/SwapModeSwitcher/state/types.js.map +0 -1
  872. package/dist/components/widget/TokenBadge/types.js +0 -11
  873. package/dist/components/widget/TokenBadge/types.js.map +0 -1
  874. package/dist/components/widget/TradeOverview/assets/spinner.svg.js.map +0 -1
  875. package/dist/hooks/permit/hooks/useGetPermitInfo.d.ts.map +0 -1
  876. package/dist/hooks/permit/hooks/useGetPermitInfo.js.map +0 -1
  877. package/dist/hooks/permit/hooks/useGetSafePermitInfo.d.ts.map +0 -1
  878. package/dist/hooks/permit/hooks/useGetSafePermitInfo.js.map +0 -1
  879. package/dist/hooks/permit/hooks/usePermit1Nonce.d.ts.map +0 -1
  880. package/dist/hooks/permit/hooks/usePermit1Nonce.js.map +0 -1
  881. package/dist/hooks/permit/hooks/useSignArbitraryTypedData.d.ts.map +0 -1
  882. package/dist/hooks/permit/hooks/useSignPermit.d.ts.map +0 -1
  883. package/dist/hooks/permit/hooks/useSignPermit.js.map +0 -1
  884. package/dist/hooks/permit/hooks/useSignTokenFromPermit1.d.ts.map +0 -1
  885. package/dist/hooks/permit/hooks/useSignTokenFromPermit1.js.map +0 -1
  886. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts +0 -10
  887. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts.map +0 -1
  888. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.js.map +0 -1
  889. package/dist/hooks/permit/hooks/useTokenFromPermitInfo.d.ts.map +0 -1
  890. package/dist/hooks/permit/hooks/useTokenFromPermitInfo.js.map +0 -1
  891. package/dist/hooks/permit/hooks/useTryToSignPermit1.d.ts.map +0 -1
  892. package/dist/hooks/permit/hooks/useTryToSignPermit1.js.map +0 -1
  893. package/dist/hooks/txs/index.js +0 -13
  894. package/dist/hooks/txs/index.js.map +0 -1
  895. package/dist/styles/global.css.js +0 -4
  896. package/dist/styles/global.css.js.map +0 -1
  897. package/dist/test/connect/AccountDisplay.js +0 -93
  898. package/dist/test/connect/AccountDisplay.js.map +0 -1
  899. package/dist/test/connect/App.js +0 -78
  900. package/dist/test/connect/App.js.map +0 -1
  901. package/dist/test/connect/ConnectWallet.js +0 -110
  902. package/dist/test/connect/ConnectWallet.js.map +0 -1
  903. package/dist/test/connect/WagmiProfile.js +0 -406
  904. package/dist/test/connect/WagmiProfile.js.map +0 -1
  905. package/dist/test/connect/WalletActions.js +0 -324
  906. package/dist/test/connect/WalletActions.js.map +0 -1
  907. package/dist/tokens/state/types.js +0 -11
  908. package/dist/tokens/state/types.js.map +0 -1
  909. /package/dist/{components/widget/TradeOverview/assets → assets}/spinner.svg.js +0 -0
  910. /package/dist/hooks/permit/hooks/{useSignArbitraryTypedData.d.ts → common/useSignArbitraryTypedData.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketFlow.ts"],"sourcesContent":["import { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useApprove, 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 { useInvalidateTokenDataQuery } from \"@/hooks/tokens/balances/useInvalidateTokenData\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { TxSentObject } from \"@/lib/utils/toasts\";\nimport {\n useMarkPermit1NonceAsUsed,\n useSignTokenPermit1,\n type SignedPermitResult,\n} from \"@/hooks/permit/hooks/useSignTokenFromPermit1\";\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};\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 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 isTxSent: boolean;\n isTxPending: boolean;\n isTxMined: 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};\n\nconst MARKET_SWAP_MUTATION_KEY = \"runMarketSwapFlow\";\n\nexport function useMarketFlow({\n marketPrice,\n}: UseMarketFlowInput): UseMarketFlowResult {\n const chainId = useChainId();\n\n /* 1. Get allowance for tokenFrom */\n\n const allowance = useGenericTokenAllowanceMin({\n tokenAddress: marketPrice?.srcToken,\n amountToApproveInWei: marketPrice?.srcAmount,\n spenderContractType: \"AugustusSwapper\",\n chainId,\n });\n\n /* 2.1. submit Approve tx if necessary */\n\n const approveTxMut = useApprove({\n token: marketPrice?.srcToken\n ? { address: marketPrice.srcToken }\n : undefined,\n allowanceData: { allowanceToSet: allowance.allowanceToSet },\n spender: allowance.spender,\n onSuccess: () => {\n console.log(\"Approve tx success\");\n },\n onError: (error) => {\n console.error(\"Approve tx error\", error);\n },\n });\n\n /* 2.2. sign Permit1 */\n\n const signPermit1Mut = useSignTokenPermit1({\n token: {\n address: marketPrice?.srcToken as Address,\n network: chainId,\n },\n value: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n enabled: allowance.needsApproval,\n onSuccess: (signature) => {\n console.log(\"Permit1 signature\", signature);\n },\n onError: (error) => {\n console.error(\"Permit1 error\", error);\n },\n });\n\n const signPermit: UseMarketFlowResult[\"signPermit\"] = {\n isPermitSupported: signPermit1Mut.isPermitSupported,\n isPermitReadyToSign: signPermit1Mut.isPermitReadyToSign,\n amountToPermit: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n isLoadingPermitData: signPermit1Mut.permitFetchingState.isPending,\n isSigningPermit: signPermit1Mut.permitSigningState.isPending,\n isPermitSigned: signPermit1Mut.permitSigningState.isSuccess,\n signature: signPermit1Mut.signature,\n permitEncodedArgs: signPermit1Mut.permit1EncodedArgs,\n isPending: signPermit1Mut.isPending,\n isSuccess: signPermit1Mut.isSuccess,\n isError: signPermit1Mut.isError,\n error: signPermit1Mut.error,\n };\n\n /* 3. await Approve tx (if not using Permit) */\n const approveTxMined = useAwaitTx({\n hash: approveTxMut.txHash,\n chainId,\n });\n\n const approval: UseMarketFlowResult[\"approval\"] = {\n /* allowance fetching */\n needsApproval: allowance.needsApproval,\n allowanceToSet: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n txHash: approveTxMut.txHash,\n receipt: approveTxMined.data,\n isLoadingAllowance: allowance.isLoadingPrerequisites,\n /* tx sending */\n isConfirmingTX: approveTxMut.isPending,\n isTxSent: approveTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: approveTxMined.isLoading,\n isTxMined: approveTxMined.isSuccess,\n /* combined */\n isPending:\n allowance.needsApproval &&\n (approveTxMut.isPending || approveTxMined.isLoading),\n isError:\n allowance.needsApproval &&\n (approveTxMut.isError || approveTxMined.isError),\n isSuccess: !allowance.needsApproval || approveTxMined.isSuccess, // final success\n error: allowance.needsApproval\n ? approveTxMut.error || approveTxMined.error\n : null,\n };\n\n /* 4. Build Swap tx */\n const buildTxMut = useBuildTx({\n chainId,\n mutationOptions: {\n onSuccess: () => {\n console.log(\"Build tx success\");\n },\n onError: (error) => {\n console.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 console.log(\"Swap tx success\");\n },\n onError: (error) => {\n console.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 isTxSent: sendSwapTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: swapTxMined.isLoading,\n isTxMined: swapTxMined.isSuccess,\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 const { resolvedSlippage } = useSlippage();\n\n const ensureTxReceipt = useEnsureTxReceipt();\n\n // allows to abort (cancel) currently running flow,\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const receiverAddress = useReceiverAddressValue();\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1NonceAsUsed({\n chainId,\n });\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 signPermit1Mut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\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 if (approval.needsApproval) {\n // need allowance\n if (!signPermit.isPermitSupported || !signPermit.isPermitReadyToSign) {\n // Token doesn't support Permit\n // make an Approval tx\n approveTxHash = await approveTxMut.approveAsync();\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 console.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n txHash: approveTxHash,\n actionType: \"approve\",\n receiptPromise: approveTxReceiptPromise,\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n console.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 Permit1\n signedPermitResult = await signPermit1Mut.signPermit1Async();\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n assert(marketPrice, \"Market price is not available\");\n\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: marketPrice.srcAmount,\n destAmount: marketPrice.destAmount,\n },\n resolvedSlippage,\n marketPrice.side\n );\n\n const txParams = await buildTxMut.mutateAsync({\n swapTxInput: {\n userAddress: account,\n receiver: receiverAddress,\n srcToken: marketPrice.srcToken,\n destToken: marketPrice.destToken,\n srcDecimals: marketPrice.srcDecimals,\n destDecimals: marketPrice.destDecimals,\n\n /* @TODO fill in when available, at least `partner`\n referrer: \"\",\n partner: \"\",\n partnerAddress: \"\",\n partnerFeeBps: 0, \n takeSurplus: false,*/\n permit: signedPermitResult?.permit1EncodedArgs, // just signed Permit signature\n\n priceRoute: marketPrice,\n ...amountsAfterSlippage,\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 add gasPrice params\n }, */\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 try {\n const swapTxReceiptPromise = ensureTxReceipt({\n hash: swapTxHash,\n chainId,\n onReplaced: (data) => {\n console.log(\"onReplaced:swapTx\", swapTxHash, data);\n },\n });\n if (onTxSent) {\n onTxSent({\n txHash: swapTxHash,\n actionType: \"swap\",\n receiptPromise: swapTxReceiptPromise,\n });\n }\n\n const swapTxReceipt = await swapTxReceiptPromise;\n console.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,\n // @TODO add whatever else may be relevant\n account,\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 }\n };\n\n const invalidateTokenData = useInvalidateTokenDataQuery();\n\n const marketSwapMut = useMutation({\n mutationFn: submitSwapTx,\n mutationKey: [MARKET_SWAP_MUTATION_KEY],\n onSuccess: (data) => {\n console.log(\"Swap tx success\", data);\n },\n onError: (error) => {\n console.error(\"Swap tx error\", error);\n },\n onSettled: () => {\n console.log(\"Swap tx settled, invalidating balances and allowances\");\n invalidateTokenData({ nonces: true });\n },\n });\n\n const reset = () => {\n approveTxMut.reset();\n signPermit1Mut.reset();\n buildTxMut.reset();\n sendSwapTxMut.reset();\n marketSwapMut.reset();\n };\n\n /* 7. return result */\n return {\n chainId,\n runMarketSwapFlow: marketSwapMut.mutateAsync,\n reset,\n cancelFlow,\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 };\n}\n"],"names":["MARKET_SWAP_MUTATION_KEY","useMarketFlow","t0","$","_c","marketPrice","chainId","useChainId","t1","srcToken","t2","srcAmount","t3","tokenAddress","amountToApproveInWei","spenderContractType","allowance","useGenericTokenAllowanceMin","t4","address","undefined","t5","allowanceToSet","t6","spender","token","allowanceData","onSuccess","_temp","onError","_temp2","approveTxMut","useApprove","t7","t8","network","t9","t10","needsApproval","value","enabled","_temp3","_temp4","signPermit1Mut","useSignTokenPermit1","t11","t12","error","isError","isPending","isPermitReadyToSign","isPermitSupported","isSuccess","permit1EncodedArgs","permitFetchingState","permitSigningState","signature","amountToPermit","isLoadingPermitData","isSigningPermit","isPermitSigned","permitEncodedArgs","signPermit","t13","txHash","hash","approveTxMined","useAwaitTx","t14","t15","isLoading","t16","t17","t18","t19","isLoadingPrerequisites","data","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t20","Symbol","for","_temp5","_temp6","t21","mutationOptions","buildTxMut","useBuildTx","t22","buildTxParams","t23","_temp7","_temp8","sendSwapTxMut","useSendMarketSwapTx","t24","swapTxMined","t25","t26","t27","t28","swap","account","useAccount","resolvedSlippage","useSlippage","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","t29","current","abort","UserCancelledError","cancelFlow","receiverAddress","useReceiverAddressValue","t30","markNonceAsUsed","clearNonce","useMarkPermit1NonceAsUsed","t31","t32","onTxSent","reset","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","approveAsync","throwIfAborted","approveTxReceiptPromise","onReplaced","console","log","actionType","receiptPromise","signPermit1Async","assert","amountsAfterSlippage","applySlippage","destAmount","side","txParams","mutateAsync","swapTxInput","userAddress","receiver","destToken","srcDecimals","destDecimals","permit","priceRoute","swapTxHash","sendTransactionAsync","signedPermitData","swapTxReceiptPromise","data_0","swapTxReceipt","tradeFlowType","approve","t33","submitSwapTx","invalidateTokenData","useInvalidateTokenDataQuery","nonces","t34","mutationFn","mutationKey","_temp9","_temp0","onSettled","marketSwapMut","useMutation","t35","t36","runMarketSwapFlow","result","error_4","data_1","error_2","error_1","error_0"],"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, 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 { useInvalidateTokenDataQuery } from \"@/hooks/tokens/balances/useInvalidateTokenData\";\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 \"@/widget/state/configAtom\";\nimport { useTrackedPrice } from \"./common/useTrackedPrice\";\nimport { useConstructGasParams } from \"./common/useConstructGasParams\";\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};\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 chainId = useChainId();\n const { resolvedSlippage } = useSlippage();\n const swapSide = useSwapSide();\n\n const trackedPrice = useTrackedPrice({\n price: marketPrice,\n slippage: resolvedSlippage,\n side: swapSide,\n });\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 usingPrice = trackedPrice.get.usingPrice();\n const { approval, signPermit, approveTxMut, signPermitMut } =\n useApproveOrPermit({\n srcToken: usingPrice?.srcToken ?? marketPrice?.srcToken,\n // if we already approved some amount, save it in approval and signPermit objects\n srcAmount: trackedPrice.get.approvedAmount() ?? marketPrice?.srcAmount,\n spenderContractType: \"AugustusSwapper\",\n // marketPrice is the preferred source of truth\n swapSide: usingPrice?.side ?? swapSide,\n });\n\n /* 4. Build Swap tx */\n const buildTxMut = useBuildTx({\n chainId,\n mutationOptions: {\n onSuccess: () => {\n console.log(\"Build tx success\");\n },\n onError: (error) => {\n console.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 console.log(\"Swap tx success\");\n },\n onError: (error) => {\n console.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\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.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 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 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 if (approval.needsApproval) {\n // need allowance\n if (!signPermit.isPermitSupported || !signPermit.isPermitReadyToSign) {\n // freeze allowanceToSet\n trackedPrice.set.approvedAmount(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 // 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 console.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 console.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 // freeze allowanceToSet\n trackedPrice.set.approvedAmount(allowanceToSet);\n\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 approvedAmountRef, we will only get new prices that satisfy the allowance\n let marketPriceToUse = trackedPrice.get.usingPrice();\n // usingPriceRef.current can be null depending on reset() timing (e.g. inside retry)\n if (!marketPriceToUse) {\n marketPriceToUse = marketPrice || null;\n trackedPrice.set.usingPrice(marketPriceToUse);\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 // freeze final price to avoid any changes to displayed and result amounts\n trackedPrice.set.finalPrice(marketPriceToUse);\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 try {\n const swapTxReceiptPromise = ensureTxReceipt({\n hash: swapTxHash,\n chainId,\n onReplaced: (data) => {\n console.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 console.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 };\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 }\n };\n\n const invalidateTokenData = useInvalidateTokenDataQuery();\n\n const marketSwapMut = useMutation({\n mutationFn: submitSwapTx,\n mutationKey: [MARKET_SWAP_MUTATION_KEY],\n onSuccess: (data) => {\n console.log(\"Swap tx success\", data);\n },\n onError: (error) => {\n console.error(\"Swap tx error\", error);\n },\n onSettled: () => {\n console.log(\"Swap tx settled, invalidating balances and allowances\");\n invalidateTokenData({ nonces: true });\n trackedPrice.resetTrackedPrice();\n },\n });\n\n const runMarketSwapFlow = marketSwapMut.mutateAsync;\n\n const reset = () => {\n trackedPrice.resetTrackedPrice();\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 =\n trackedPrice.get.finalPrice() ||\n trackedPrice.get.usingPrice() ||\n 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","t0","$","_c","marketPrice","chainId","useChainId","resolvedSlippage","useSlippage","swapSide","useSwapSide","t1","price","slippage","side","trackedPrice","useTrackedPrice","t2","get","usingPrice","t3","srcToken","t4","srcAmount","approvedAmount","t5","t6","spenderContractType","approval","signPermit","approveTxMut","signPermitMut","useApproveOrPermit","t7","Symbol","for","onSuccess","_temp","onError","_temp2","t8","mutationOptions","buildTxMut","useBuildTx","t9","error","isError","isPending","isSuccess","buildTxParams","t10","_temp3","_temp4","sendSwapTxMut","useSendMarketSwapTx","t11","txHash","hash","swapTxMined","useAwaitTx","t12","isLoading","t13","t14","t15","data","receipt","isConfirmingTX","isConfirmingTxError","isTxSent","isTxPending","isTxMined","isTxAwaitingError","swap","address","account","useAccount","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","t16","current","abort","UserCancelledError","cancelFlow","receiverAddress","useReceiverAddressValue","t17","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","constructGasParams","useConstructGasParams","partner","useWidgetConfig","t18","set","t19","onTxSent","undefined","reset","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","needsApproval","isPermitSupported","isPermitReadyToSign","approveAsync","allowanceData","throwIfAborted","approveTxReceiptPromise","onReplaced","console","log","actionType","receiptPromise","signPermitAsync","value","assert","marketPriceToUse","amountsAfterSlippage","applySlippage","destAmount","finalPrice","gasParams","txParams","mutateAsync","swapTxInput","userAddress","receiver","destToken","srcDecimals","destDecimals","permit","permitEncodedArgs","priceRoute","swapTxOptions","swapTxHash","sendTransactionAsync","signedPermitData","swapTxReceiptPromise","data_0","swapTxReceipt","tradeFlowType","approve","t20","submitSwapTx","invalidateTokenData","useInvalidateTokenDataQuery","nonces","resetTrackedPrice","t21","mutationFn","mutationKey","_temp5","_temp6","onSettled","marketSwapMut","useMutation","runMarketSwapFlow","t22","t23","options","retryFlow","t24","usedPrice","t25","result","error_2","data_1","error_0"],"mappings":"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"}
@@ -4,11 +4,14 @@ type UseMarketSwapStepResult = {
4
4
  startMarketSwap: UseMarketFlowResult["runMarketSwapFlow"];
5
5
  reset: UseMarketFlowResult["reset"];
6
6
  cancelFlow: UseMarketFlowResult["cancelFlow"];
7
+ retryFlow: UseMarketFlowResult["retryFlow"];
7
8
  isCancellable: boolean;
8
9
  step?: MarketSwapStepKey;
9
10
  explorerLink?: string;
10
11
  error: Error | null;
12
+ erroredStep?: MarketSwapStepKey;
11
13
  result?: SubmitSwapResult;
14
+ usedPrice: UseMarketFlowResult["usedPrice"];
12
15
  };
13
16
  export declare function useMarketSwapStep(options: UseMarketFlowInput): UseMarketSwapStepResult;
14
17
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,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,aAAa,EAAE,OAAO,CAAC;IAEvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAIF,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,uBAAuB,CAqFzB"}
1
+ {"version":3,"file":"useMarketSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,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,iBAAiB,CAAC;IACzB,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;AAIF,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,uBAAuB,CAwGzB"}
@@ -1,25 +1,17 @@
1
1
  import { d as distExports } from '../../../_virtual/index.js';
2
2
  import { useMarketFlow } from './useMarketFlow.js';
3
3
  import { constructTxLinkForChain } from '../../../lib/utils/explorer.js';
4
- import '../../../lib/utils/index.js';
4
+ import 'clsx';
5
+ import 'tailwind-merge';
5
6
  import { isUserCancelledError } from './common/errors.js';
6
7
 
7
- globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
8
- cache: /* @__PURE__ */ new Map(),
9
- get(name, inst) {
10
- if (this.cache.has(name)) {
11
- return this.cache.get(name);
12
- }
13
- this.cache.set(name, inst);
14
- return inst;
15
- }
16
- };
17
8
  function useMarketSwapStep(options) {
18
- const $ = distExports.c(16);
9
+ const $ = distExports.c(19);
19
10
  const marketFlow = useMarketFlow(options);
20
11
  const startMarketSwap = marketFlow.runMarketSwapFlow;
21
12
  const reset = marketFlow.reset;
22
13
  const cancelFlow = marketFlow.cancelFlow;
14
+ const retryFlow = marketFlow.retryFlow;
23
15
  let step;
24
16
  const permitSigningHappeningOrNeverHappened = marketFlow.signPermit.isPending || !marketFlow.signPermit.isPermitSigned;
25
17
  const approvalHappeningOrNeverHappened = marketFlow.approval.isPending || !marketFlow.approval.isSuccess;
@@ -68,29 +60,49 @@ function useMarketSwapStep(options) {
68
60
  t0 = $[6];
69
61
  }
70
62
  const error = t0;
63
+ let erroredStep;
64
+ if (marketFlow.isError) {
65
+ if (marketFlow.approval.isError || marketFlow.signPermit.isError) {
66
+ erroredStep = "approve-spending";
67
+ } else {
68
+ if (marketFlow.buildTxParams.isError || marketFlow.swap.isConfirmingTxError) {
69
+ erroredStep = "swap-tx-confirmation";
70
+ } else {
71
+ if (marketFlow.swap.isTxAwaitingError) {
72
+ erroredStep = "swap-tx-execution";
73
+ }
74
+ }
75
+ }
76
+ }
71
77
  let t1;
72
- if ($[7] !== cancelFlow || $[8] !== error || $[9] !== explorerLink || $[10] !== isCancellable || $[11] !== marketFlow.result || $[12] !== reset || $[13] !== startMarketSwap || $[14] !== step) {
78
+ 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) {
73
79
  t1 = {
74
80
  startMarketSwap,
75
81
  reset,
76
82
  cancelFlow,
83
+ retryFlow,
77
84
  isCancellable,
78
85
  step,
79
86
  explorerLink,
80
87
  error,
81
- result: marketFlow.result
88
+ erroredStep,
89
+ result: marketFlow.result,
90
+ usedPrice: marketFlow.usedPrice
82
91
  };
83
92
  $[7] = cancelFlow;
84
93
  $[8] = error;
85
- $[9] = explorerLink;
86
- $[10] = isCancellable;
87
- $[11] = marketFlow.result;
88
- $[12] = reset;
89
- $[13] = startMarketSwap;
90
- $[14] = step;
91
- $[15] = t1;
94
+ $[9] = erroredStep;
95
+ $[10] = explorerLink;
96
+ $[11] = isCancellable;
97
+ $[12] = marketFlow.result;
98
+ $[13] = marketFlow.usedPrice;
99
+ $[14] = reset;
100
+ $[15] = retryFlow;
101
+ $[16] = startMarketSwap;
102
+ $[17] = step;
103
+ $[18] = t1;
92
104
  } else {
93
- t1 = $[15];
105
+ t1 = $[18];
94
106
  }
95
107
  return t1;
96
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"sourcesContent":["import type { MarketSwapStepKey } 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 { createLogger } from \"@/lib/utils\";\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 isCancellable: boolean;\n // @TODO use Market Swap steps\n step?: MarketSwapStepKey;\n explorerLink?: string;\n error: Error | null;\n result?: SubmitSwapResult;\n};\n\nconst logger = createLogger(\"MarketSwapStep\");\n\nexport function useMarketSwapStep(\n options: UseMarketFlowInput\n): UseMarketSwapStepResult {\n const marketFlow = useMarketFlow(options);\n\n const startMarketSwap = marketFlow.runMarketSwapFlow;\n const reset = marketFlow.reset;\n const cancelFlow = marketFlow.cancelFlow;\n\n let step: MarketSwapStepKey | 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 = \"approve-spending\";\n } else if (\n marketFlow.buildTxParams.isPending ||\n marketFlow.swap.isConfirmingTX\n ) {\n step = \"swap-tx-confirmation\";\n } else if (marketFlow.swap.isTxPending) {\n step = \"swap-tx-execution\";\n } else if (marketFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're in the first non-optional step\n step = \"swap-tx-confirmation\";\n }\n\n const approvalIsStarted =\n step === \"approve-spending\" && marketFlow.approval.isTxPending;\n\n const inSwapTxConfirmation = step === \"swap-tx-confirmation\";\n\n const notYetSwapTxSent =\n step === \"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 return {\n startMarketSwap,\n reset,\n cancelFlow,\n isCancellable,\n step,\n explorerLink,\n error,\n result: marketFlow.result,\n };\n}\n"],"names":["useMarketSwapStep","options","$","_c","marketFlow","useMarketFlow","startMarketSwap","runMarketSwapFlow","reset","cancelFlow","step","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","buildTxParams","swap","isConfirmingTX","isTxPending","approvalIsStarted","inSwapTxConfirmation","notYetSwapTxSent","isTxSent","isCancellable","txHash","explorerLink","constructTxLinkForChain","chainId","undefined","t0","error","isUserCancelledError","t1","result"],"mappings":"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"}
1
+ {"version":3,"file":"useMarketSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useMarketSwapStep.ts"],"sourcesContent":["import type { MarketSwapStepKey } 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 { createLogger } from \"@/lib/utils\";\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?: MarketSwapStepKey;\n explorerLink?: string;\n error: Error | null;\n erroredStep?: MarketSwapStepKey;\n result?: SubmitSwapResult;\n usedPrice: UseMarketFlowResult[\"usedPrice\"];\n};\n\nconst logger = createLogger(\"MarketSwapStep\");\n\nexport function useMarketSwapStep(\n options: UseMarketFlowInput\n): UseMarketSwapStepResult {\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: MarketSwapStepKey | 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 = \"approve-spending\";\n } else if (\n marketFlow.buildTxParams.isPending ||\n marketFlow.swap.isConfirmingTX\n ) {\n step = \"swap-tx-confirmation\";\n } else if (marketFlow.swap.isTxPending) {\n step = \"swap-tx-execution\";\n } else if (marketFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're in the first non-optional step\n step = \"swap-tx-confirmation\";\n }\n\n const approvalIsStarted =\n step === \"approve-spending\" && marketFlow.approval.isTxPending;\n\n const inSwapTxConfirmation = step === \"swap-tx-confirmation\";\n\n const notYetSwapTxSent =\n step === \"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 (marketFlow.approval.isError || marketFlow.signPermit.isError) {\n erroredStep = \"approve-spending\";\n } else if (\n marketFlow.buildTxParams.isError ||\n marketFlow.swap.isConfirmingTxError\n ) {\n erroredStep = \"swap-tx-confirmation\";\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","marketFlow","useMarketFlow","startMarketSwap","runMarketSwapFlow","reset","cancelFlow","retryFlow","step","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","buildTxParams","swap","isConfirmingTX","isTxPending","approvalIsStarted","inSwapTxConfirmation","notYetSwapTxSent","isTxSent","isCancellable","txHash","explorerLink","constructTxLinkForChain","chainId","undefined","t0","error","isUserCancelledError","erroredStep","isError","isConfirmingTxError","isTxAwaitingError","t1","result","usedPrice"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { SpenderContractType } from '../../sdk/types';
2
2
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
3
  import { Token } from '@velora-dex/sdk';
4
+ import { Address } from 'viem';
4
5
  export type UseGenericTokenAllowanceInput = {
5
6
  token?: Pick<Token, "address" | "decimals">;
6
7
  spenderContractType?: SpenderContractType;
@@ -23,5 +24,7 @@ export type UseTokenAllowanceInput = {
23
24
  tokenAddress?: string;
24
25
  spender?: string;
25
26
  chainId?: SupportedChainId;
27
+ owner?: Address;
28
+ enabled?: boolean;
26
29
  };
27
30
  //# sourceMappingURL=types.d.ts.map
@@ -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;AAE7C,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;CAC5B,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,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"}
@@ -6,16 +6,6 @@ import { toDecimal } from '../../../lib/utils/toDecimal.js';
6
6
  import { useMemo } from 'react';
7
7
  import { isETH } from '../../../tokens/utils/eth.js';
8
8
 
9
- globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
10
- cache: /* @__PURE__ */ new Map(),
11
- get(name, inst) {
12
- if (this.cache.has(name)) {
13
- return this.cache.get(name);
14
- }
15
- this.cache.set(name, inst);
16
- return inst;
17
- }
18
- };
19
9
  const useGenericTokenAllowance = ({
20
10
  token,
21
11
  amountToApproveInWei = 0n,
@@ -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":";;;;;;;;;;;;;;;;;;AAiBO,MAAMA,2BAA2BA,CAAC;AAAA,EACvCC,KAAAA;AAAAA,EACAC,oBAAAA,GAAuB,EAAA;AAAA,EACvBC;AAC6B,CAAA,GAAI,EAAC,KAA6B;AAC/D,EAAA,MAAM;AAAA,IAAEC;AAAAA,MAAgBC,UAAAA,EAAW;AAEnC,EAAA,MAAM;AAAA,IAAEC,OAAAA;AAAAA,IAASC,SAAAA,EAAWC;AAAAA,GAAiB,GAC3CC,WAAWN,mBAAmB,CAAA;AAEhC,EAAA,MAAM;AAAA,IAAEO,IAAAA,EAAMC,SAAAA;AAAAA,IAAWJ,SAAAA,EAAWK;AAAAA,MAAuBC,iBAAAA,CAAkB;AAAA,IAC3EC,cAAcb,KAAAA,EAAOc,OAAAA;AAAAA,IACrBT;AAAAA,GACD,CAAA;AAED,EAAA,MAAMU,gBAAAA,GAAmBC,QAAQ,MAAM;AACrC,IAAA,MAAMC,8BAA8B,CAACjB,KAAAA,IAASkB,KAAAA,CAAMlB,KAAK,KAAK,CAACG,WAAAA;AAE/D,IAAA,IAAIc,2BAAAA,EAA6B;AAC/B,MAAA,OAAO;AAAA,QACLE,aAAAA,EAAe,KAAA;AAAA,QACfC,eAAAA,EAAiB;AAAA,OACnB;AAAA;AAGF,IAAA,OAAOC,iBAAAA,CAAkB;AAAA,MACvBX,WAAWA,SAAAA,IAAa,EAAA;AAAA,MACxBT,oBAAAA,EAAsBqB,OAAOrB,oBAAoB,CAAA;AAAA;AAAA,MACjDsB,eAAevB,KAAAA,EAAOwB;AAAAA,KACvB,CAAA;AAAA,KACA,CAACd,SAAAA,EAAWT,oBAAAA,EAAsBE,WAAAA,EAAaH,KAAK,CAAC,CAAA;AAExD,EAAA,MAAMyB,sBAAAA,GACJtB,gBAAgBI,gBAAAA,IAAoBI,kBAAAA,CAAAA;AAEtC,EAAA,OAAO;AAAA,IACLD,SAAAA;AAAAA,IACAe,sBAAAA;AAAAA,IACApB,OAAAA;AAAAA,IACA,GAAGU;AAAAA,GACL;AACF;AAoBO,MAAMW,8BAA8BA,CAAC;AAAA,EAC1Cb,YAAAA;AAAAA,EACAZ,oBAAAA,GAAuB,EAAA;AAAA,EACvBC,mBAAAA;AAAAA,EACAyB;AACgC,CAAA,GAAI,EAAC,KAAgC;AACrE,EAAA,MAAM;AAAA,IAAExB;AAAAA,MAAgBC,UAAAA,EAAW;AAEnC,EAAA,MAAM;AAAA,IAAEC,OAAAA;AAAAA,IAASC,SAAAA,EAAWC;AAAAA,GAAiB,GAC3CC,WAAWN,mBAAmB,CAAA;AAEhC,EAAA,MAAM;AAAA,IACJO,IAAAA,EAAMC,SAAAA;AAAAA,IACNJ,SAAAA,EAAWK,kBAAAA;AAAAA,IACXiB;AAAAA,MACEhB,iBAAAA,CAAkB;AAAA,IACpBC,YAAAA;AAAAA,IACAR,OAAAA;AAAAA,IACAsB;AAAAA,GACD,CAAA;AAED,EAAA,MAAMZ,gBAAAA,GAAmBC,QAAQ,MAAM;AACrC,IAAA,MAAMC,2BAAAA,GACJ,CAACJ,YAAAA,IAAgBK,KAAAA,CAAM;AAAA,MAAEJ,OAAAA,EAASD;AAAAA,KAAc,KAAK,CAACV,WAAAA;AAExD,IAAA,IAAIc,2BAAAA,EAA6B;AAC/B,MAAA,OAAO;AAAA,QACLE,aAAAA,EAAe,KAAA;AAAA,QACfC,eAAAA,EAAiB;AAAA,OACnB;AAAA;AAGF,IAAA,MAAMS,0BAAAA,GAA6BP,OAAOrB,oBAAoB,CAAA;AAE9D,IAAA,MAAMmB,eAAAA,GACJ,CAAC,CAACV,SAAAA,IAAaA,SAAAA,IAAamB,0BAAAA;AAC9B,IAAA,MAAMV,gBAAgB,CAACC,eAAAA;AAEvB,IAAA,IAAI,CAACD,aAAAA,EAAe;AAClB,MAAA,OAAO;AAAA,QACLA,aAAAA,EAAe,KAAA;AAAA,QACfC;AAAAA,OACF;AAAA;AAGF,IAAA,MAAMU,uBAAAA,GACJD,8BAA8BnB,SAAAA,IAAa,EAAA,CAAA;AAE7C,IAAA,OAAO;AAAA,MACLS,aAAAA;AAAAA,MACAC,eAAAA;AAAAA,MACAV,SAAAA;AAAAA,MACAqB,cAAAA,EAAgBF,0BAAAA;AAAAA,MAChBC;AAAAA,KACF;AAAA,KACC,CAACpB,SAAAA,EAAWT,oBAAAA,EAAsBE,WAAAA,EAAaU,YAAY,CAAC,CAAA;AAE/D,EAAA,MAAMY,sBAAAA,GACJtB,gBAAgBI,gBAAAA,IAAoBI,kBAAAA,CAAAA;AAEtC,EAAA,OAAO;AAAA,IACLD,SAAAA;AAAAA,IACAe,sBAAAA;AAAAA,IACApB,OAAAA;AAAAA,IACA,GAAGU,gBAAAA;AAAAA,IACHa;AAAAA,GACF;AACF;AAEA,SAASP,iBAAAA,CAAkB;AAAA,EACzBX,SAAAA;AAAAA,EACAT,oBAAAA;AAAAA,EACAsB;AAKF,CAAA,EAAkB;AAChB,EAAA,MAAMH,kBAAkBV,SAAAA,IAAaT,oBAAAA;AAErC,EAAA,MAAMkB,gBAAgB,CAACC,eAAAA;AAEvB,EAAA,IAAI,CAACD,aAAAA,EAAe;AAClB,IAAA,OAAO;AAAA,MACLA,aAAAA,EAAe,KAAA;AAAA,MACfC;AAAAA,KACF;AAAA;AAGF,EAAA,MAAMU,0BAA0B7B,oBAAAA,GAAuBS,SAAAA;AAEvD,EAAA,MAAMsB,oBAAAA,GAAuBC,WAAAA,CAAYhC,oBAAAA,EAAsBsB,aAAa,CAAA;AAC5E,EAAA,MAAMW,2BAAAA,GAA8BC,SAAAA,CAAUC,MAAAA,CAAOJ,oBAAoB,CAAC,CAAA;AAE1E,EAAA,MAAMK,4BAAAA,GAA+BJ,WAAAA,CACnCH,uBAAAA,EACAP,aACF,CAAA;AACA,EAAA,MAAMe,oCAAAA,GAAuCH,SAAAA,CAC3CC,MAAAA,CAAOC,4BAA4B,CACrC,CAAA;AAEA,EAAA,OAAO;AAAA,IACLlB,aAAAA;AAAAA,IACAC,eAAAA;AAAAA,IACAV,SAAAA;AAAAA,IACAqB,cAAAA,EAAgB9B,oBAAAA;AAAAA,IAChBiC,2BAAAA;AAAAA,IACAJ,uBAAAA;AAAAA,IACAQ;AAAAA,GACF;AACF;;;;"}
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,5 +1,5 @@
1
1
  import { UseTokenAllowanceInput } from './types';
2
- export declare const useTokenAllowance: ({ tokenAddress, spender, chainId, }: UseTokenAllowanceInput) => import('wagmi').UseReadContractReturnType<readonly [{
2
+ export declare const useTokenAllowance: ({ tokenAddress, spender, chainId, owner, enabled, }: UseTokenAllowanceInput) => import('wagmi').UseReadContractReturnType<readonly [{
3
3
  readonly type: "event";
4
4
  readonly name: "Approval";
5
5
  readonly inputs: readonly [{
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenAllowance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/useTokenAllowance.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,eAAO,MAAM,iBAAiB,GAAI,qCAI/B,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iEAmBxB,CAAC"}
1
+ {"version":3,"file":"useTokenAllowance.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/allowance/useTokenAllowance.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,eAAO,MAAM,iBAAiB,GAAI,qDAM/B,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iEAwBxB,CAAC"}
@@ -4,69 +4,63 @@ import { isETH } from '../../../tokens/utils/eth.js';
4
4
  import { isAddress, erc20Abi } from 'viem';
5
5
  import { useAccount, useReadContract } from 'wagmi';
6
6
 
7
- globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
8
- cache: /* @__PURE__ */ new Map(),
9
- get(name, inst) {
10
- if (this.cache.has(name)) {
11
- return this.cache.get(name);
12
- }
13
- this.cache.set(name, inst);
14
- return inst;
15
- }
16
- };
17
7
  const useTokenAllowance = (t0) => {
18
8
  const $ = distExports.c(10);
19
9
  const {
20
10
  tokenAddress,
21
11
  spender,
22
- chainId
12
+ chainId,
13
+ owner,
14
+ enabled: t1
23
15
  } = t0;
16
+ const enabled = t1 === void 0 ? true : t1;
24
17
  const {
25
18
  address: account
26
19
  } = useAccount();
27
- const t1 = tokenAddress && isAddress(tokenAddress) ? tokenAddress : void 0;
28
- let t2;
29
- if ($[0] !== account || $[1] !== spender) {
30
- t2 = account && spender && isAddress(spender) ? [account, spender] : void 0;
31
- $[0] = account;
20
+ const ownerAddress = owner || account;
21
+ const t2 = tokenAddress && isAddress(tokenAddress) ? tokenAddress : void 0;
22
+ let t3;
23
+ if ($[0] !== ownerAddress || $[1] !== spender) {
24
+ t3 = ownerAddress && spender && isAddress(spender) ? [ownerAddress, spender] : void 0;
25
+ $[0] = ownerAddress;
32
26
  $[1] = spender;
33
- $[2] = t2;
27
+ $[2] = t3;
34
28
  } else {
35
- t2 = $[2];
29
+ t3 = $[2];
36
30
  }
37
- const t3 = !!tokenAddress && !!account && !!spender && !isETH({
31
+ const t4 = enabled && !!tokenAddress && !!account && !!spender && !isETH({
38
32
  address: tokenAddress
39
33
  });
40
- let t4;
41
- if ($[3] !== t3) {
42
- t4 = {
43
- enabled: t3,
34
+ let t5;
35
+ if ($[3] !== t4) {
36
+ t5 = {
37
+ enabled: t4,
44
38
  staleTime: LONG_STALE_TIME_FOR_REACTIVENESS
45
39
  };
46
- $[3] = t3;
47
- $[4] = t4;
40
+ $[3] = t4;
41
+ $[4] = t5;
48
42
  } else {
49
- t4 = $[4];
43
+ t5 = $[4];
50
44
  }
51
- let t5;
52
- if ($[5] !== chainId || $[6] !== t1 || $[7] !== t2 || $[8] !== t4) {
53
- t5 = {
54
- address: t1,
45
+ let t6;
46
+ if ($[5] !== chainId || $[6] !== t2 || $[7] !== t3 || $[8] !== t5) {
47
+ t6 = {
48
+ address: t2,
55
49
  functionName: "allowance",
56
50
  abi: erc20Abi,
57
51
  chainId,
58
- args: t2,
59
- query: t4
52
+ args: t3,
53
+ query: t5
60
54
  };
61
55
  $[5] = chainId;
62
- $[6] = t1;
63
- $[7] = t2;
64
- $[8] = t4;
65
- $[9] = t5;
56
+ $[6] = t2;
57
+ $[7] = t3;
58
+ $[8] = t5;
59
+ $[9] = t6;
66
60
  } else {
67
- t5 = $[9];
61
+ t6 = $[9];
68
62
  }
69
- return useReadContract(t5);
63
+ return useReadContract(t6);
70
64
  };
71
65
 
72
66
  export { useTokenAllowance };
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenAllowance.js","sources":["../../../../src/hooks/tokens/allowance/useTokenAllowance.ts"],"sourcesContent":["import { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { erc20Abi, isAddress } from \"viem\";\nimport { useAccount, useReadContract } from \"wagmi\";\nimport type { UseTokenAllowanceInput } from \"./types\";\n\nexport const useTokenAllowance = ({\n tokenAddress,\n spender,\n chainId,\n}: UseTokenAllowanceInput) => {\n const { address: account } = useAccount();\n\n return useReadContract({\n address: tokenAddress && isAddress(tokenAddress) ? tokenAddress : undefined,\n functionName: \"allowance\" as const,\n abi: erc20Abi,\n chainId,\n args:\n account && spender && isAddress(spender) ? [account, spender] : undefined,\n query: {\n enabled:\n !!tokenAddress &&\n !!account &&\n !!spender &&\n !isETH({ address: tokenAddress }),\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n },\n });\n};\n"],"names":["useTokenAllowance","t0","$","_c","tokenAddress","spender","chainId","address","account","useAccount","t1","isAddress","undefined","t2","t3","isETH","t4","enabled","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t5","functionName","abi","erc20Abi","args","query","useReadContract"],"mappings":";;;;;;;;;;;;;;;;AAMO,MAAMA,oBAAoBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,YAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAL,EAAAA;AAKhC,EAAA,MAAA;AAAA,IAAAM,OAAAA,EAAAC;AAAAA,MAA6BC,UAAAA,EAAW;AAG7B,EAAA,MAAAC,EAAAA,GAAAN,YAAAA,IAAgBO,SAAAA,CAAUP,YAAY,IAAIA,YAAAA,GAAYQ,MAAAA;AAAY,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAX,EAAA,CAAA,CAAA,KAAAM,WAAAN,CAAAA,QAAAG,OAAAA,EAAA;AAKzEQ,IAAAA,EAAAA,GAAAL,OAAAA,IAAWH,WAAWM,SAAAA,CAAUN,OAAO,IAAC,CAAIG,OAAAA,EAASH,OAAO,CAAA,GAAAO,MAAAA;AAAaV,IAAAA,CAAAA,MAAAM,OAAAA;AAAAN,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA;AAGvE,EAAA,MAAAY,EAAAA,KAAEV,YAAAA,IAAY,CAAA,CACZI,OAAAA,IAAO,CAAA,CACPH,OAAAA,KACDU,KAAAA,CAAA;AAAA,IAAAR,OAAAA,EAAiBH;AAAAA,GAAc,CAAA;AAAC,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAd,CAAAA,QAAAY,EAAAA,EAAA;AAL9BE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,OAAAA,EAEHH,EAAAA;AAAAA,MAGiCI,SAAAA,EAAAC;AAAAA,KAAA;AAEpCjB,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAkB,EAAAA;AAAA,EAAA,IAAAlB,CAAAA,CAAA,CAAA,CAAA,KAAAI,OAAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAQ,EAAAA,IAAAR,CAAAA,CAAA,CAAA,CAAA,KAAAW,EAAAA,IAAAX,CAAAA,QAAAc,EAAAA,EAAA;AAdoBI,IAAAA,EAAAA,GAAA;AAAA,MAAAb,OAAAA,EACZG,EAAAA;AAAAA,MAAkEW,YAAAA,EAC7D,WAAA;AAAA,MAAoBC,GAAAA,EAAAC,QAAAA;AAAAA,MAAAjB,OAAAA;AAAAA,MAAAkB,IAAAA,EAIhCX,EAAAA;AAAAA,MAAyEY,KAAAA,EACpET;AAAAA,KAON;AACFd,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAR,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAc,EAAAA;AAAAd,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,OAfMwB,gBAAgBN,EAetB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useTokenAllowance.js","sources":["../../../../src/hooks/tokens/allowance/useTokenAllowance.ts"],"sourcesContent":["import { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { erc20Abi, isAddress } from \"viem\";\nimport { useAccount, useReadContract } from \"wagmi\";\nimport type { UseTokenAllowanceInput } from \"./types\";\n\nexport const useTokenAllowance = ({\n tokenAddress,\n spender,\n chainId,\n owner,\n enabled = true,\n}: UseTokenAllowanceInput) => {\n const { address: account } = useAccount();\n\n const ownerAddress = owner || account;\n\n return useReadContract({\n address: tokenAddress && isAddress(tokenAddress) ? tokenAddress : undefined,\n functionName: \"allowance\" as const,\n abi: erc20Abi,\n chainId,\n args:\n ownerAddress && spender && isAddress(spender)\n ? [ownerAddress, spender]\n : undefined,\n query: {\n enabled:\n enabled &&\n !!tokenAddress &&\n !!account &&\n !!spender &&\n !isETH({ address: tokenAddress }),\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n },\n });\n};\n"],"names":["useTokenAllowance","t0","$","_c","tokenAddress","spender","chainId","owner","enabled","t1","undefined","address","account","useAccount","ownerAddress","t2","isAddress","t3","t4","isETH","t5","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t6","functionName","abi","erc20Abi","args","query","useReadContract"],"mappings":";;;;;;AAMO,MAAMA,oBAAoBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,YAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC,KAAAA;AAAAA,IAAAC,OAAAA,EAAAC;AAAAA,GAAA,GAAAR,EAAAA;AAKhC,EAAA,MAAAO,OAAAA,GAAAC,EAAAA,KAAcC,MAAAA,UAAdD,EAAAA;AAEA,EAAA,MAAA;AAAA,IAAAE,OAAAA,EAAAC;AAAAA,MAA6BC,UAAAA,EAAW;AAExC,EAAA,MAAAC,eAAqBP,KAAAA,IAASK,OAAAA;AAGnB,EAAA,MAAAG,EAAAA,GAAAX,YAAAA,IAAgBY,SAAAA,CAAUZ,YAAY,IAAIA,YAAAA,GAAYM,MAAAA;AAAY,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAf,EAAA,CAAA,CAAA,KAAAY,gBAAAZ,CAAAA,QAAAG,OAAAA,EAAA;AAKzEY,IAAAA,EAAAA,GAAAH,YAAAA,IAAgBT,WAAWW,SAAAA,CAAUX,OAAO,IAAC,CACxCS,YAAAA,EAAcT,OAAO,CAAA,GAAAK,MAAAA;AACbR,IAAAA,CAAAA,MAAAY,YAAAA;AAAAZ,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAe,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAf,EAAA,CAAA,CAAA;AAAA;AAGX,EAAA,MAAAgB,EAAAA,GAAAV,OAAAA,IAAO,CAAA,CACLJ,YAAAA,MACAQ,OAAAA,IAAO,CAAA,CACPP,OAAAA,IAAO,CACRc,KAAAA,CAAA;AAAA,IAAAR,OAAAA,EAAiBP;AAAAA,GAAc,CAAA;AAAC,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAlB,CAAAA,QAAAgB,EAAAA,EAAA;AAN9BE,IAAAA,EAAAA,GAAA;AAAA,MAAAZ,OAAAA,EAEHU,EAAAA;AAAAA,MAIiCG,SAAAA,EAAAC;AAAAA,KAAA;AAEpCpB,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAhB,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,IAAAqB,EAAAA;AAAA,EAAA,IAAArB,CAAAA,CAAA,CAAA,CAAA,KAAAI,OAAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAa,EAAAA,IAAAb,CAAAA,CAAA,CAAA,CAAA,KAAAe,EAAAA,IAAAf,CAAAA,QAAAkB,EAAAA,EAAA;AAjBoBG,IAAAA,EAAAA,GAAA;AAAA,MAAAZ,OAAAA,EACZI,EAAAA;AAAAA,MAAkES,YAAAA,EAC7D,WAAA;AAAA,MAAoBC,GAAAA,EAAAC,QAAAA;AAAAA,MAAApB,OAAAA;AAAAA,MAAAqB,IAAAA,EAIhCV,EAAAA;AAAAA,MAEaW,KAAAA,EACRR;AAAAA,KAQN;AACFlB,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,MAAAe,EAAAA;AAAAf,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAlB,IAAAA,CAAAA,MAAAqB,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArB,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,OAlBM2B,gBAAgBN,EAkBtB,CAAA;AAAC;;;;"}
@@ -5,16 +5,6 @@ import { assert } from 'ts-essentials';
5
5
  import { erc20Abi } from 'viem';
6
6
  import { multicall, getBalance } from 'viem/actions';
7
7
 
8
- globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
9
- cache: /* @__PURE__ */ new Map(),
10
- get(name, inst) {
11
- if (this.cache.has(name)) {
12
- return this.cache.get(name);
13
- }
14
- this.cache.set(name, inst);
15
- return inst;
16
- }
17
- };
18
8
  function constructTokenBalancesQueryKey({
19
9
  chainId,
20
10
  tokenAddressesLowercase,