@velora-dex/widget 0.8.1 → 0.8.3-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (692) hide show
  1. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  2. package/dist/components/ui/accordion.js.map +1 -1
  3. package/dist/components/ui/button.js.map +1 -1
  4. package/dist/components/ui/card.js.map +1 -1
  5. package/dist/components/ui/drawer.js.map +1 -1
  6. package/dist/components/ui/dropdown-menu.js.map +1 -1
  7. package/dist/components/ui/input.js.map +1 -1
  8. package/dist/components/ui/progress.js.map +1 -1
  9. package/dist/components/ui/skeleton.js.map +1 -1
  10. package/dist/components/ui/sonner.js.map +1 -1
  11. package/dist/components/ui/switch.js.map +1 -1
  12. package/dist/components/ui/tooltip.js.map +1 -1
  13. package/dist/components/web3/AccountButton.js.map +1 -1
  14. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  15. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -1
  16. package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -1
  17. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
  18. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  19. package/dist/components/web3/ConnectWallets/index.js +1 -1
  20. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  21. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  22. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  23. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  24. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  25. package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -1
  26. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  27. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  28. package/dist/components/web3/providers.js.map +1 -1
  29. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
  30. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  31. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  32. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  33. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  34. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  35. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  36. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  37. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  38. package/dist/components/widget/AppHeader/state/showMoreAtom.js.map +1 -1
  39. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -1
  40. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -1
  41. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -1
  42. package/dist/components/widget/BridgeList/hooks.d.ts +2 -2
  43. package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -1
  44. package/dist/components/widget/BridgeList/hooks.js +79 -73
  45. package/dist/components/widget/BridgeList/hooks.js.map +1 -1
  46. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -1
  47. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +2 -2
  48. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -1
  49. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
  50. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  51. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -1
  52. package/dist/components/widget/Button/DismissButton.js.map +1 -1
  53. package/dist/components/widget/Button/RefreshButton.js.map +1 -1
  54. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -1
  55. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  56. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  57. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  58. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  59. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  60. package/dist/components/widget/DexesList/DexesList.js.map +1 -1
  61. package/dist/components/widget/DexesList/getDexProps.js.map +1 -1
  62. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  63. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  64. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  65. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  66. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  67. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  68. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  69. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  70. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  71. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  72. package/dist/components/widget/Drawer/index.js.map +1 -1
  73. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  74. package/dist/components/widget/Duration/Duration.js.map +1 -1
  75. package/dist/components/widget/Duration/utils.js.map +1 -1
  76. package/dist/components/widget/EnabledExchanges/EnabledExchanges.js.map +1 -1
  77. package/dist/components/widget/EnabledExchanges/EnabledExchangesList.js.map +1 -1
  78. package/dist/components/widget/EnabledList/EnabledList.js.map +1 -1
  79. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -1
  80. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  81. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  82. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  83. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  84. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  85. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  86. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  87. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  88. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
  89. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  90. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  91. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  92. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +5 -8
  93. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  94. package/dist/components/widget/LimitOrderItem/constants.js.map +1 -1
  95. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  96. package/dist/components/widget/LimitPriceInput/index.js +6 -6
  97. package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
  98. package/dist/components/widget/Line/Line.js.map +1 -1
  99. package/dist/components/widget/ListItem/ListItemWithSwitch.js.map +1 -1
  100. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  101. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  102. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  103. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +1 -1
  104. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +1 -1
  105. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +1 -1
  106. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +1 -1
  107. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  108. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  109. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -1
  110. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  111. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  112. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
  113. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -1
  114. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js +5 -8
  115. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -1
  116. package/dist/components/widget/OtcOrderItem/constants.js.map +1 -1
  117. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  118. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  119. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  120. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  121. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  122. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  123. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  124. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  125. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  126. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  127. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  128. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  129. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  130. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -1
  131. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  132. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  133. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  134. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  135. package/dist/components/widget/SwapRate/SwapRateWithTooltip.js.map +1 -1
  136. package/dist/components/widget/SwapRate/utils.js.map +1 -1
  137. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -1
  138. package/dist/components/widget/Tabs/Tabs.js.map +1 -1
  139. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  140. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  141. package/dist/components/widget/TokenBadge/TokenLink.js.map +1 -1
  142. package/dist/components/widget/TokenInput/InputContainer.js.map +1 -1
  143. package/dist/components/widget/TokenInput/InputField.js.map +1 -1
  144. package/dist/components/widget/TokenInput/InputFooter.js.map +1 -1
  145. package/dist/components/widget/TokenInput/InputHeader.js.map +1 -1
  146. package/dist/components/widget/TokenInput/common/Balance.js.map +1 -1
  147. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +1 -1
  148. package/dist/components/widget/TokenInput/index.js.map +1 -1
  149. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  150. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +1 -1
  151. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -1
  152. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -1
  153. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  154. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  155. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +2 -2
  156. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  157. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  158. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  159. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  160. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  161. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  162. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  163. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  164. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  165. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  166. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  167. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  169. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  170. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  171. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  172. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  173. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  174. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  175. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  176. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  177. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  178. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  179. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  180. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +2 -2
  181. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
  182. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  183. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  184. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  185. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -1
  186. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  187. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +4 -1
  188. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
  189. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js +1 -1
  190. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  191. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -1
  192. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -1
  193. package/dist/components/widget/TradeParameters/DegenModeConfirmation.js.map +1 -1
  194. package/dist/components/widget/TradeParameters/DegenModeParameter.js.map +1 -1
  195. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  196. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  197. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/EnabledExchangesParameters.js.map +1 -1
  198. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/useDraftEnabledExchangesState.js.map +1 -1
  199. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  200. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  201. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  202. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  203. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  204. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  205. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  206. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -1
  207. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -1
  208. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -1
  209. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -1
  210. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -1
  211. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -1
  212. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js.map +1 -1
  213. package/dist/components/widget/TradeParameters/state/enabledExchanges/disabledDexesAtomFamily.js.map +1 -1
  214. package/dist/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes.js.map +1 -1
  215. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js.map +1 -1
  216. package/dist/components/widget/TradeParameters/state/tradePreferencesAtom.js.map +1 -1
  217. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  218. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  219. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  220. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  221. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  222. package/dist/components/widget/TransactionDetails/utils.js.map +1 -1
  223. package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -1
  224. package/dist/components/widget/Twap/OrderDuration.js.map +1 -1
  225. package/dist/components/widget/Twap/OrderSplit.js.map +1 -1
  226. package/dist/components/widget/Twap/RateProtection.js.map +1 -1
  227. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -1
  228. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  229. package/dist/components/widget/Warning/Warning.js.map +1 -1
  230. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  231. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  232. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  233. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  234. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  235. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  236. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  237. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  238. package/dist/core/LimitOrderButton.js +46 -52
  239. package/dist/core/LimitOrderButton.js.map +1 -1
  240. package/dist/core/LimitOrderDetails.js.map +1 -1
  241. package/dist/core/OtcOrderButton.js.map +1 -1
  242. package/dist/core/OtcOrderDetails.js.map +1 -1
  243. package/dist/core/Toaster.js.map +1 -1
  244. package/dist/core/TradeFlowScreenButton.d.ts +3 -4
  245. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  246. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  247. package/dist/core/TwapDetails.js.map +1 -1
  248. package/dist/core/Updaters.js.map +1 -1
  249. package/dist/core/Warnings.js.map +1 -1
  250. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  251. package/dist/core/across/utils.js.map +1 -1
  252. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  253. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +1 -4
  254. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  255. package/dist/core/index.js.map +1 -1
  256. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  257. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  258. package/dist/core/inputs/hooks/useTokenFromInputProps.js +2 -2
  259. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  260. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  261. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  262. package/dist/core/inputs/hooks/useTokenToInputProps.js +2 -2
  263. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  264. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -1
  265. package/dist/core/inputs/hooks/utils.d.ts.map +1 -1
  266. package/dist/core/inputs/hooks/utils.js +7 -5
  267. package/dist/core/inputs/hooks/utils.js.map +1 -1
  268. package/dist/core/inputs/state/common.js.map +1 -1
  269. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  270. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  271. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  272. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  273. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  274. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  275. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -1
  276. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  277. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  278. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -1
  279. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  280. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  281. package/dist/core/limit/state/utils.js.map +1 -1
  282. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  283. package/dist/core/limit/useLimitNotSupported.js.map +1 -1
  284. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  285. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  286. package/dist/core/limit/useLimitRate.d.ts +2 -3
  287. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  288. package/dist/core/limit/useLimitRate.js +54 -110
  289. package/dist/core/limit/useLimitRate.js.map +1 -1
  290. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  291. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  292. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  293. package/dist/core/limit/useLimitTokenToInputProps.js +1 -4
  294. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  295. package/dist/core/logger.js.map +1 -1
  296. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  297. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  298. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
  299. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  300. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
  301. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  302. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  303. package/dist/core/otc/useOtcNotSupported.js.map +1 -1
  304. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  305. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  306. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  307. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  308. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  309. package/dist/core/screen/hooks/useInitialValue.js.map +1 -1
  310. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  311. package/dist/core/screen/hooks/useResizeObserver.js.map +1 -1
  312. package/dist/core/screen/hooks/useRunOnMount.js.map +1 -1
  313. package/dist/core/screen/state/hooks/useScreen.js.map +1 -1
  314. package/dist/core/screen/state/hooks/useScreenValue.js.map +1 -1
  315. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  316. package/dist/core/screen/state/screenAtom.js.map +1 -1
  317. package/dist/core/state/apiConfigAtom.js.map +1 -1
  318. package/dist/core/state/chainToAtom.js.map +1 -1
  319. package/dist/core/state/configActionsAtom.js.map +1 -1
  320. package/dist/core/state/configEffectAtom.js.map +1 -1
  321. package/dist/core/state/containerAtom.js.map +1 -1
  322. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  323. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  324. package/dist/core/state/externalProviderAtom.js.map +1 -1
  325. package/dist/core/state/getSelectableDestChains.js.map +1 -1
  326. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  327. package/dist/core/state/tradeModeAtom.js.map +1 -1
  328. package/dist/core/state/validatedPartnerConfigAtom.js.map +1 -1
  329. package/dist/core/state/validatedReferrerConfigAtom.js.map +1 -1
  330. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  331. package/dist/core/subscriptions.js.map +1 -1
  332. package/dist/core/swapDetails/fees.d.ts.map +1 -1
  333. package/dist/core/swapDetails/fees.js +16 -11
  334. package/dist/core/swapDetails/fees.js.map +1 -1
  335. package/dist/core/swapDetails/maxToPay.d.ts.map +1 -1
  336. package/dist/core/swapDetails/maxToPay.js +18 -17
  337. package/dist/core/swapDetails/maxToPay.js.map +1 -1
  338. package/dist/core/swapDetails/orderRouting.js.map +1 -1
  339. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  340. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  341. package/dist/core/swapDetails/youGet.js.map +1 -1
  342. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -1
  343. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -1
  344. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
  345. package/dist/core/twap/state/twapParamsAtom.js.map +1 -1
  346. package/dist/core/twap/state/twapSideAtom.js.map +1 -1
  347. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +2 -2
  348. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -1
  349. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
  350. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -1
  351. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -1
  352. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -1
  353. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -1
  354. package/dist/events/effects/formInput.js.map +1 -1
  355. package/dist/events/effects/price.js.map +1 -1
  356. package/dist/events/effects/swapMode.js.map +1 -1
  357. package/dist/events/getters/limit.js.map +1 -1
  358. package/dist/events/getters/otc.js.map +1 -1
  359. package/dist/events/getters/settings.js.map +1 -1
  360. package/dist/events/getters/swap.js.map +1 -1
  361. package/dist/events/getters/twap.js.map +1 -1
  362. package/dist/events/getters/widgetState.js.map +1 -1
  363. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  364. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  365. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  366. package/dist/events/types/priceChange.d.ts +2 -2
  367. package/dist/events/types/priceChange.d.ts.map +1 -1
  368. package/dist/events/types/swap.d.ts +2 -2
  369. package/dist/events/types/swap.d.ts.map +1 -1
  370. package/dist/events/types/twap.d.ts +2 -2
  371. package/dist/events/types/twap.d.ts.map +1 -1
  372. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1/external/vaul/dist/index.js.map +1 -1
  373. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  374. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -1
  375. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  376. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  377. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  378. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  379. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  380. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  381. package/dist/hooks/gas/utils.js.map +1 -1
  382. package/dist/hooks/getCode/query.js.map +1 -1
  383. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  384. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  385. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  386. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
  387. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  388. package/dist/hooks/otc/mutations/utils.js.map +1 -1
  389. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  390. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  391. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  392. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  393. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  394. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  395. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  396. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  397. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  398. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  399. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  400. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  401. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  402. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  403. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  404. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  405. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  406. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  407. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  408. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js.map +1 -1
  409. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  410. package/dist/hooks/permit/utils/constants.js.map +1 -1
  411. package/dist/hooks/permit/utils/construct.js.map +1 -1
  412. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  413. package/dist/hooks/permit/utils/detect.js.map +1 -1
  414. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  415. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  416. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  417. package/dist/hooks/permit/utils/utils.js.map +1 -1
  418. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  419. package/dist/hooks/sdk/useSpender.js.map +1 -1
  420. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +3 -4
  421. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -1
  422. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
  423. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +6 -3
  424. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  425. package/dist/hooks/swap/prices/delta/bridge/utils.js +20 -17
  426. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  427. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -1
  428. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +2 -2
  429. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
  430. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +5 -5
  431. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  432. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -1
  433. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +2 -2
  434. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
  435. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +2 -2
  436. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  437. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -1
  438. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -1
  439. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +27 -28
  440. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  441. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +3 -3
  442. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  443. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +2 -2
  444. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  445. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  446. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  447. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +2 -2
  448. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  449. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +5 -5
  450. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  451. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  452. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
  453. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +27 -28
  454. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  455. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  456. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +2 -2
  457. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  458. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +2 -2
  459. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  460. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
  461. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  462. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +1 -1
  463. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  464. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +5 -6
  465. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  466. package/dist/hooks/swap/prices/delta/mutations/utils.js +6 -6
  467. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  468. package/dist/hooks/swap/prices/delta/orders/types.d.ts +2 -1
  469. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  470. package/dist/hooks/swap/prices/delta/orders/unposted/effect.js.map +1 -1
  471. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  472. package/dist/hooks/swap/prices/delta/orders/unposted/storage.js.map +1 -1
  473. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +11 -14
  474. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  475. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +3 -3
  476. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  477. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +2 -2
  478. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  479. package/dist/hooks/swap/prices/delta/orders/utils.js +6 -3
  480. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  481. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  482. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -1
  483. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -1
  484. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  485. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -1
  486. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  487. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  488. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js.map +1 -1
  489. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  490. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +17 -34
  491. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  492. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +6 -6
  493. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  494. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  495. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  496. package/dist/hooks/swap/prices/factory.d.ts.map +1 -1
  497. package/dist/hooks/swap/prices/factory.js +1 -1
  498. package/dist/hooks/swap/prices/factory.js.map +1 -1
  499. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  500. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  501. package/dist/hooks/swap/prices/market/queries/dexesList/useDexesList.js.map +1 -1
  502. package/dist/hooks/swap/prices/market/queries/errors.js.map +1 -1
  503. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  504. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  505. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  506. package/dist/hooks/swap/prices/types.d.ts +2 -3
  507. package/dist/hooks/swap/prices/types.d.ts.map +1 -1
  508. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  509. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -3
  510. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  511. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  512. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +3 -3
  513. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  514. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +2 -2
  515. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -1
  516. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
  517. package/dist/hooks/swap/prices/useTwapPrices.d.ts +4 -5
  518. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
  519. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
  520. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  521. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +10 -17
  522. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -1
  523. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +6 -6
  524. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
  525. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
  526. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  527. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  528. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -1
  529. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  530. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  531. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  532. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
  533. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  534. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  535. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -5
  536. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  537. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +119 -124
  538. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  539. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  540. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -2
  541. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  542. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +159 -196
  543. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  544. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  545. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  546. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  547. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +5 -5
  548. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
  549. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +217 -229
  550. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  551. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -1
  552. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  553. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  554. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  555. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  556. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  557. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  558. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  559. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  560. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  561. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -1
  562. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  563. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  564. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
  565. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
  566. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  567. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  568. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  569. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  570. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  571. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  572. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  573. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  574. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  575. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  576. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -1
  577. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  578. package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -1
  579. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  580. package/dist/hooks/txs/queries/useTxFees.js.map +1 -1
  581. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  582. package/dist/hooks/txs/queries/useTxResponse.js.map +1 -1
  583. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -1
  584. package/dist/hooks/txs/queries/utils.js.map +1 -1
  585. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  586. package/dist/hooks/useBreakpoints.js.map +1 -1
  587. package/dist/hooks/useBridgeInfo.js.map +1 -1
  588. package/dist/hooks/useBridgeProtocols.js.map +1 -1
  589. package/dist/hooks/useCachedQueryError.js.map +1 -1
  590. package/dist/hooks/useChainMatches.js.map +1 -1
  591. package/dist/hooks/useClickOutside.js.map +1 -1
  592. package/dist/hooks/useCurrentChain.js.map +1 -1
  593. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  594. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  595. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  596. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  597. package/dist/hooks/useMinViemClient.js.map +1 -1
  598. package/dist/hooks/useSDK.d.ts +19 -3
  599. package/dist/hooks/useSDK.d.ts.map +1 -1
  600. package/dist/hooks/useSDK.js +65 -35
  601. package/dist/hooks/useSDK.js.map +1 -1
  602. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  603. package/dist/hooks/useSlippage.js.map +1 -1
  604. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -1
  605. package/dist/lib/constants/urls.js.map +1 -1
  606. package/dist/lib/ipfs.js.map +1 -1
  607. package/dist/lib/queryClient.js +1 -1
  608. package/dist/lib/queryClient.js.map +1 -1
  609. package/dist/lib/tradeMode.js.map +1 -1
  610. package/dist/lib/utils/approval.js.map +1 -1
  611. package/dist/lib/utils/atomWithCompare.js.map +1 -1
  612. package/dist/lib/utils/copyToClipboard.js.map +1 -1
  613. package/dist/lib/utils/delta.js.map +1 -1
  614. package/dist/lib/utils/dexes.js.map +1 -1
  615. package/dist/lib/utils/explorer.js.map +1 -1
  616. package/dist/lib/utils/fee.js.map +1 -1
  617. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  618. package/dist/lib/utils/formatPercent.js.map +1 -1
  619. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  620. package/dist/lib/utils/index.js.map +1 -1
  621. package/dist/lib/utils/logger.js.map +1 -1
  622. package/dist/lib/utils/metabase.js.map +1 -1
  623. package/dist/lib/utils/mobile.js.map +1 -1
  624. package/dist/lib/utils/price.d.ts +5 -2
  625. package/dist/lib/utils/price.d.ts.map +1 -1
  626. package/dist/lib/utils/price.js +8 -5
  627. package/dist/lib/utils/price.js.map +1 -1
  628. package/dist/lib/utils/priceImpact.js.map +1 -1
  629. package/dist/lib/utils/providerErrors.js.map +1 -1
  630. package/dist/lib/utils/rate.js.map +1 -1
  631. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  632. package/dist/lib/utils/savedAmountUSD.js.map +1 -1
  633. package/dist/lib/utils/scaleFactor.js.map +1 -1
  634. package/dist/lib/utils/slippage.js.map +1 -1
  635. package/dist/lib/utils/time.js.map +1 -1
  636. package/dist/lib/utils/toDecimal.js.map +1 -1
  637. package/dist/lib/utils/toasts.js.map +1 -1
  638. package/dist/lib/utils/tradeFlow.js.map +1 -1
  639. package/dist/lib/utils/transactionHandlers.js.map +1 -1
  640. package/dist/lib/utils/tuple.js.map +1 -1
  641. package/dist/lib/utils/twap.d.ts +2 -2
  642. package/dist/lib/utils/twap.d.ts.map +1 -1
  643. package/dist/lib/utils/twap.js +2 -2
  644. package/dist/lib/utils/twap.js.map +1 -1
  645. package/dist/lib/utils/useDateNow.js.map +1 -1
  646. package/dist/lib/web3/wagmi/config.js.map +1 -1
  647. package/dist/lib/web3/wagmi/external.js.map +1 -1
  648. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  649. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  650. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  651. package/dist/tokens/blacklist.js.map +1 -1
  652. package/dist/tokens/constructor.js.map +1 -1
  653. package/dist/tokens/defaultTokens.js.map +1 -1
  654. package/dist/tokens/hooks.js.map +1 -1
  655. package/dist/tokens/lists/constants.js.map +1 -1
  656. package/dist/tokens/lists/download.js.map +1 -1
  657. package/dist/tokens/lists/state/effects.js.map +1 -1
  658. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  659. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  660. package/dist/tokens/overrides.js.map +1 -1
  661. package/dist/tokens/queries.js.map +1 -1
  662. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  663. package/dist/tokens/stabeCoins/index.js.map +1 -1
  664. package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
  665. package/dist/tokens/state/allTokensByChainAtom.js.map +1 -1
  666. package/dist/tokens/state/constructTokens.js.map +1 -1
  667. package/dist/tokens/state/fromListsAtom.js.map +1 -1
  668. package/dist/tokens/utils/areTokensSame.js.map +1 -1
  669. package/dist/tokens/utils/brand.js.map +1 -1
  670. package/dist/tokens/utils/eth.js.map +1 -1
  671. package/dist/tokens/utils/filtering.js.map +1 -1
  672. package/dist/tokens/utils/sets.js.map +1 -1
  673. package/dist/tokens/utils/sorting.js.map +1 -1
  674. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  675. package/dist/transactions/hash.js.map +1 -1
  676. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  677. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -1
  678. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  679. package/dist/transactions/queries/ensureTxResponse.js.map +1 -1
  680. package/dist/transactions/state/effects/finalize.js.map +1 -1
  681. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  682. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -1
  683. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  684. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  685. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  686. package/dist/transactions/status.js.map +1 -1
  687. package/dist/transactions/utils.js.map +1 -1
  688. package/package.json +6 -6
  689. package/dist/hooks/swap/prices/delta/bridge/const.d.ts +0 -8
  690. package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +0 -1
  691. package/dist/hooks/swap/prices/delta/bridge/const.js +0 -13
  692. package/dist/hooks/swap/prices/delta/bridge/const.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useCanBatchTxs.js","names":["CapabilitiesSchema","useAccount","useCapabilities","useMemo","useLogger","AtomicCapabilities","Required","Pick","AtomicStatus","CanBatchTxsResult","byChain","Record","forCurrentChain","currentChainStatus","isLoading","useCanBatchTxs","$","_c","address","account","chainId","connector","t0","uid","t1","scopeKey","data","logger","once","log","t2","bb0","undefined","t3","Object","fromEntries","entries","map","_temp","t4","chainId_0","capabilities","atomicBatch","supported","atomic","status","const"],"sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"sourcesContent":["import { type CapabilitiesSchema } from \"viem\";\nimport { useAccount, useCapabilities } from \"wagmi\";\nimport { useMemo } from \"react\";\nimport { useLogger } from \"@/core/logger\";\n\ntype AtomicCapabilities = Required<\n Pick<CapabilitiesSchema[\"getCapabilities\"][\"ReturnType\"], \"atomic\">\n>;\n\ntype AtomicStatus = AtomicCapabilities[\"atomic\"][\"status\"];\n\ntype CanBatchTxsResult = {\n byChain?: Record<number, AtomicStatus>;\n forCurrentChain?: boolean;\n currentChainStatus?: AtomicStatus;\n isLoading: boolean;\n};\n\nexport function useCanBatchTxs(): CanBatchTxsResult {\n const { address: account, chainId, connector } = useAccount();\n\n const { data, isLoading } = useCapabilities({\n account,\n scopeKey: connector?.uid, // unique for App session & wallet connection\n });\n const logger = useLogger(\"BATCH::useCanBatchTxs::wagmi\");\n\n logger.once.log(\"capabilities\", data);\n\n const byChain = useMemo<CanBatchTxsResult[\"byChain\"]>(() => {\n if (!data) return;\n return Object.fromEntries(\n Object.entries(data).map(\n ([chainId, capabilities]) =>\n [\n chainId,\n // Safe returns atomicBatch.supported instead of atomic.status\n (capabilities.atomicBatch?.supported && \"supported\") ||\n capabilities.atomic?.status ||\n \"unsupported\", // nothing returned --> consider unsupported\n ] as const\n )\n );\n }, [data]);\n\n const currentChainStatus = chainId ? byChain?.[chainId] : undefined;\n\n return {\n byChain,\n forCurrentChain:\n // ready means the user will be asked to upgrade to delegated EOA\n currentChainStatus === \"supported\" || currentChainStatus === \"ready\",\n currentChainStatus,\n isLoading,\n };\n}\n"],"mappings":";;;;;;AAkBA,SAAOe,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACL,EAAAC,SAAAC,GAAAC,YAAAC,iBAAiDpB,GAAY,EAIjDqB,IAAAD,GAASE,KAAKC;AAAA,CAAAR,EAAA,OAAAG,KAAAH,EAAA,OAAAM,KAFkBE,IAAA;EAAAL;EAAAM,UAEhCH;EACX,EAAAN,EAAA,KAAAG,GAAAH,EAAA,KAAAM,GAAAN,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAHD,IAAA,EAAAU,SAAAZ,iBAA4BZ,EAAgBsB,EAG1C;AACapB,GAAU,+BAA+B,CAElDwB,KAAKC,IAAK,gBAAgBH,EAAK;CAAA,IAAAI;AAAAC,MAAA;AAGnC,MAAI,CAACL,GAAI;AAAEI,OAAAE,KAAAA;AAAA,SAAAD;;EAAO,IAAAE;AAClBH,EADkBd,EAAA,OAAAU,IAYjBO,IAAAjB,EAAA,MAXMiB,IAAAC,OAAMC,YACXD,OAAME,QAASV,EAAK,CAAAW,IAClBC,EASJ,CAAC,EAAAtB,EAAA,KAAAU,GAAAV,EAAA,KAAAiB,IAXDH,IAAOG;;CAFT,IAAAvB,IAAgBoB,GAgBhBjB,IAA2BO,IAAUV,IAAUU,KAApBY,KAAAA,GAMvBC,IAAApB,MAAuB,eAAeA,MAAuB,SAAO0B;AAGvE,QAHuEvB,EAAA,OAAAN,KAAAM,EAAA,OAAAH,KAAAG,EAAA,OAAAF,KAAAE,EAAA,OAAAiB,KAJjEM,IAAA;EAAA7B;EAAAE,iBAIHqB;EAAoEpB;EAAAC;EAGvE,EAAAE,EAAA,KAAAN,GAAAM,EAAA,KAAAH,GAAAG,EAAA,KAAAF,GAAAE,EAAA,KAAAiB,GAAAjB,EAAA,KAAAuB,KAAAA,IAAAvB,EAAA,IAPMuB;;AA7BF,SAAAD,EAAAhB,GAAA;CAeE,IAAA,CAAAkB,GAAAC,KAAAnB;AAAuB,QACtB,CACEF,GAECqB,EAAYC,aAAuBC,aAAnC,eACCF,EAAYG,QAAeC,UAD7B,cAGD"}
1
+ {"version":3,"file":"useCanBatchTxs.js","names":["CapabilitiesSchema","useAccount","useCapabilities","useMemo","useLogger","AtomicCapabilities","Required","Pick","AtomicStatus","CanBatchTxsResult","byChain","Record","forCurrentChain","currentChainStatus","isLoading","useCanBatchTxs","$","_c","address","account","chainId","connector","t0","uid","t1","scopeKey","data","logger","once","log","t2","bb0","undefined","t3","Object","fromEntries","entries","map","_temp","t4","chainId_0","capabilities","atomicBatch","supported","atomic","status","const"],"sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"sourcesContent":["import { type CapabilitiesSchema } from \"viem\";\nimport { useAccount, useCapabilities } from \"wagmi\";\nimport { useMemo } from \"react\";\nimport { useLogger } from \"@/core/logger\";\n\ntype AtomicCapabilities = Required<\n Pick<CapabilitiesSchema[\"getCapabilities\"][\"ReturnType\"], \"atomic\">\n>;\n\ntype AtomicStatus = AtomicCapabilities[\"atomic\"][\"status\"];\n\ntype CanBatchTxsResult = {\n byChain?: Record<number, AtomicStatus>;\n forCurrentChain?: boolean;\n currentChainStatus?: AtomicStatus;\n isLoading: boolean;\n};\n\nexport function useCanBatchTxs(): CanBatchTxsResult {\n const { address: account, chainId, connector } = useAccount();\n\n const { data, isLoading } = useCapabilities({\n account,\n scopeKey: connector?.uid, // unique for App session & wallet connection\n });\n const logger = useLogger(\"BATCH::useCanBatchTxs::wagmi\");\n\n logger.once.log(\"capabilities\", data);\n\n const byChain = useMemo<CanBatchTxsResult[\"byChain\"]>(() => {\n if (!data) return;\n return Object.fromEntries(\n Object.entries(data).map(\n ([chainId, capabilities]) =>\n [\n chainId,\n // Safe returns atomicBatch.supported instead of atomic.status\n (capabilities.atomicBatch?.supported && \"supported\") ||\n capabilities.atomic?.status ||\n \"unsupported\", // nothing returned --> consider unsupported\n ] as const\n )\n );\n }, [data]);\n\n const currentChainStatus = chainId ? byChain?.[chainId] : undefined;\n\n return {\n byChain,\n forCurrentChain:\n // ready means the user will be asked to upgrade to delegated EOA\n currentChainStatus === \"supported\" || currentChainStatus === \"ready\",\n currentChainStatus,\n isLoading,\n };\n}\n"],"mappings":";;;;;;AAkBA,SAAOe,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACL,EAAAC,SAAAC,GAAAC,YAAAC,iBAAiDpB,GAAY,EAIjDqB,IAAAD,GAASE,KAAKC;CAAA,AAAAR,EAAA,OAAAG,KAAAH,EAAA,OAAAM,KAFkBE,IAAA;EAAAL;EAAAM,UAEhCH;EACX,EAAAN,EAAA,KAAAG,GAAAH,EAAA,KAAAM,GAAAN,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAHD,IAAA,EAAAU,SAAAZ,iBAA4BZ,EAAgBsB,EAG1C;CAGFG,EAFyB,+BAEzBA,CAAMC,KAAKC,IAAK,gBAAgBH,EAAK;CAAA,IAAAI;CAAAC,KAAA;EAGnC,IAAI,CAACL,GAAI;GAAEI,IAAAE,KAAAA;GAAA,MAAAD;;EAAO,IAAAE;EAClBH,AADkBd,EAAA,OAAAU,IAYjBO,IAAAjB,EAAA,MAXMiB,IAAAC,OAAMC,YACXD,OAAME,QAASV,EAAK,CAAAW,IAClBC,EASJ,CAAC,EAAAtB,EAAA,KAAAU,GAAAV,EAAA,KAAAiB,IAXDH,IAAOG;;CAFT,IAAAvB,IAAgBoB,GAgBhBjB,IAA2BO,IAAUV,IAAUU,KAApBY,KAAAA,GAMvBC,IAAApB,MAAuB,eAAeA,MAAuB,SAAO0B;CAGvE,OAHuEvB,EAAA,OAAAN,KAAAM,EAAA,OAAAH,KAAAG,EAAA,OAAAF,KAAAE,EAAA,OAAAiB,KAJjEM,IAAA;EAAA7B;EAAAE,iBAIHqB;EAAoEpB;EAAAC;EAGvE,EAAAE,EAAA,KAAAN,GAAAM,EAAA,KAAAH,GAAAG,EAAA,KAAAF,GAAAE,EAAA,KAAAiB,GAAAjB,EAAA,KAAAuB,KAAAA,IAAAvB,EAAA,IAPMuB;;AA7BF,SAAAD,EAAAhB,GAAA;CAeE,IAAA,CAAAkB,GAAAC,KAAAnB;CAAuB,OACtB,CACEF,GAECqB,EAAYC,aAAuBC,aAAnC,eACCF,EAAYG,QAAeC,UAD7B,cAGD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSendBatchTx.js","names":["Config","useSendCalls","UseSendCallsReturnType","SendCallsData","SendCallsVariables","SendCallsErrorType","SendTransactionParameters","MutationFilters","useIsMutating","useCallback","assert","Call","SupportedChainId","TxParams","isTruthy","SendCallsVars","UseSendBatchTxInput","onMutate","vars","onSuccess","data","variables","onError","error","Error","onSettled","UseSendBatchTxResult","Pick","sendCalls","SendCalls","input","Omit","calls","txsParams","options","Promise","useSendBatchTx","$","_c","t0","mutation","isPending","isSuccess","isError","reset","sendCallsAsync","t1","t2","options_0","map","txParamsToCalls","filter","length","chainId","IsConfirmingBatchTxInput","useIsConfirmingBatchTx","Symbol","for","predicate","exact","status","mutationKey","txParams","to","value"],"sources":["../../../src/hooks/batch/useSendBatchTx.ts"],"sourcesContent":["import { type Config, useSendCalls, type UseSendCallsReturnType } from \"wagmi\";\nimport { type SendCallsData, type SendCallsVariables } from \"wagmi/query\";\nimport {\n type SendCallsErrorType,\n type SendTransactionParameters,\n} from \"@wagmi/core\";\nimport { type MutationFilters, useIsMutating } from \"@tanstack/react-query\";\nimport { useCallback } from \"react\";\nimport { assert } from \"ts-essentials\";\nimport type { Call } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { TxParams } from \"./useBatchWithApproveTxs\";\nimport { isTruthy } from \"@/lib/utils\";\n\ntype SendCallsVars = SendCallsVariables<Config, SupportedChainId>;\n\nexport type UseSendBatchTxInput = {\n onMutate?: (vars: SendCallsVars) => void;\n onSuccess?: (data: SendCallsData, variables: SendCallsVars) => void;\n onError?: (error: Error, variables: SendCallsVars) => void;\n onSettled?: (\n data: SendCallsData | undefined,\n error: SendCallsErrorType | null,\n variables: SendCallsVars\n ) => void;\n};\n\nexport type UseSendBatchTxResult = Pick<\n UseSendCallsReturnType<Config, unknown>,\n \"isPending\" | \"error\" | \"data\" | \"isSuccess\" | \"isError\" | \"reset\"\n> & {\n sendCalls: SendCalls;\n};\n\nexport type SendCalls = (\n input: Omit<SendCallsVars, \"calls\"> & {\n calls?: Call[]; // can pass expected Calls directly\n // or txsParams to be converted to Calls\n txsParams?: SendTransactionParameters<Config, SupportedChainId>[];\n },\n options?: Omit<UseSendBatchTxInput, \"onMutate\">\n) => Promise<SendCallsData>;\n\nexport function useSendBatchTx(\n options?: UseSendBatchTxInput\n): UseSendBatchTxResult {\n const { data, isPending, isSuccess, isError, reset, error, sendCallsAsync } =\n useSendCalls({\n mutation: options,\n // mutationKey = ['sendCalls'] inside\n });\n\n const sendCalls = useCallback<SendCalls>(\n ({ txsParams, ...input }, options) => {\n const calls: Call[] | undefined =\n input.calls || txsParams?.map(txParamsToCalls).filter(isTruthy);\n\n assert(calls && calls.length > 0, \"calls must be provided\");\n\n const chainId = input.chainId || txsParams?.[0]?.chainId;\n\n return sendCallsAsync(\n {\n ...input,\n chainId: chainId as SupportedChainId | undefined,\n calls,\n },\n options\n );\n },\n [sendCallsAsync]\n );\n\n return { data, isPending, isSuccess, isError, reset, error, sendCalls };\n}\n\ntype IsConfirmingBatchTxInput = Omit<\n MutationFilters<\n SendCallsData,\n SendCallsErrorType,\n SendCallsVariables<Config, number>\n >,\n \"mutationKey\"\n>;\n\nexport function useIsConfirmingBatchTx(\n options: IsConfirmingBatchTxInput\n): boolean {\n return (\n useIsMutating({\n mutationKey: [\"sendCalls\"],\n exact: options.exact,\n status: options.status,\n predicate: options.predicate as MutationFilters[\"predicate\"],\n }) > 0\n );\n}\n\nfunction txParamsToCalls(\n txParams: Pick<TxParams, \"to\" | \"data\" | \"value\">\n): Call | null {\n if (!txParams.to) {\n return null;\n }\n\n return {\n to: txParams.to,\n data: txParams.data,\n value: txParams.value,\n };\n}\n"],"mappings":";;;;;;;;;AA2CA,SAAOoC,EAAAF,GAAA;CAAA,IAAAG,IAAAC,EAAA,GAAA,EAAAC;AAAA,CAAAF,EAAA,OAAAH,IAOFK,IAAAF,EAAA,MAHYE,IAAA,EAAAC,UACDN,GAEX,EAAAG,EAAA,KAAAH,GAAAG,EAAA,KAAAE;CAJH,IAAA,EAAAnB,SAAAqB,cAAAC,cAAAC,YAAAC,UAAArB,UAAAsB,sBACE5C,EAAasC,EAGX,EAACO;AAAA,CAAAT,EAAA,OAAAQ,IAmBFC,IAAAT,EAAA,MAhBDS,KAAAC,GAAAC,MAAA;EAAC,IAAA,EAAAf,cAAA,GAAAH,MAAAiB,GACCf,IACEF,EAAKE,SAAUC,GAASgB,IAAMC,EAAuB,CAAAC,OAACrC,EAAS;AAEjEJ,IAAOsB,KAASA,EAAKoB,SAAU,GAAG,yBAAyB;EAE3D,IAAAC,IAAgBvB,EAAKuB,WAAYpB,IAAS,IAAcoB;AAAC,SAElDR,EACL;GAAA,GACKf;GACMuB;GAAuCrB;GAEjD,EACDE,EACD;IACFG,EAAA,KAAAQ,GAAAR,EAAA,KAAAS;CAjBH,IAAAlB,IAAkBkB,GAmBhBC;AAEqE,QAFrEV,EAAA,OAAAjB,KAAAiB,EAAA,OAAAd,KAAAc,EAAA,OAAAM,KAAAN,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KAAAL,EAAA,OAAAO,KAAAP,EAAA,QAAAT,KAEKmB,IAAA;EAAA3B;EAAAqB;EAAAC;EAAAC;EAAAC;EAAArB;EAAAK;EAAgE,EAAAS,EAAA,KAAAjB,GAAAiB,EAAA,KAAAd,GAAAc,EAAA,KAAAM,GAAAN,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAO,GAAAP,EAAA,MAAAT,GAAAS,EAAA,MAAAU,KAAAA,IAAAV,EAAA,KAAhEU;;AAyBT,SAASG,EACPY,GACa;AAKb,QAJKA,EAASC,KAIP;EACLA,IAAID,EAASC;EACb3C,MAAM0C,EAAS1C;EACf4C,OAAOF,EAASE;EACjB,GAPQ"}
1
+ {"version":3,"file":"useSendBatchTx.js","names":["Config","useSendCalls","UseSendCallsReturnType","SendCallsData","SendCallsVariables","SendCallsErrorType","SendTransactionParameters","MutationFilters","useIsMutating","useCallback","assert","Call","SupportedChainId","TxParams","isTruthy","SendCallsVars","UseSendBatchTxInput","onMutate","vars","onSuccess","data","variables","onError","error","Error","onSettled","UseSendBatchTxResult","Pick","sendCalls","SendCalls","input","Omit","calls","txsParams","options","Promise","useSendBatchTx","$","_c","t0","mutation","isPending","isSuccess","isError","reset","sendCallsAsync","t1","t2","options_0","map","txParamsToCalls","filter","length","chainId","IsConfirmingBatchTxInput","useIsConfirmingBatchTx","Symbol","for","predicate","exact","status","mutationKey","txParams","to","value"],"sources":["../../../src/hooks/batch/useSendBatchTx.ts"],"sourcesContent":["import { type Config, useSendCalls, type UseSendCallsReturnType } from \"wagmi\";\nimport { type SendCallsData, type SendCallsVariables } from \"wagmi/query\";\nimport {\n type SendCallsErrorType,\n type SendTransactionParameters,\n} from \"@wagmi/core\";\nimport { type MutationFilters, useIsMutating } from \"@tanstack/react-query\";\nimport { useCallback } from \"react\";\nimport { assert } from \"ts-essentials\";\nimport type { Call } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { TxParams } from \"./useBatchWithApproveTxs\";\nimport { isTruthy } from \"@/lib/utils\";\n\ntype SendCallsVars = SendCallsVariables<Config, SupportedChainId>;\n\nexport type UseSendBatchTxInput = {\n onMutate?: (vars: SendCallsVars) => void;\n onSuccess?: (data: SendCallsData, variables: SendCallsVars) => void;\n onError?: (error: Error, variables: SendCallsVars) => void;\n onSettled?: (\n data: SendCallsData | undefined,\n error: SendCallsErrorType | null,\n variables: SendCallsVars\n ) => void;\n};\n\nexport type UseSendBatchTxResult = Pick<\n UseSendCallsReturnType<Config, unknown>,\n \"isPending\" | \"error\" | \"data\" | \"isSuccess\" | \"isError\" | \"reset\"\n> & {\n sendCalls: SendCalls;\n};\n\nexport type SendCalls = (\n input: Omit<SendCallsVars, \"calls\"> & {\n calls?: Call[]; // can pass expected Calls directly\n // or txsParams to be converted to Calls\n txsParams?: SendTransactionParameters<Config, SupportedChainId>[];\n },\n options?: Omit<UseSendBatchTxInput, \"onMutate\">\n) => Promise<SendCallsData>;\n\nexport function useSendBatchTx(\n options?: UseSendBatchTxInput\n): UseSendBatchTxResult {\n const { data, isPending, isSuccess, isError, reset, error, sendCallsAsync } =\n useSendCalls({\n mutation: options,\n // mutationKey = ['sendCalls'] inside\n });\n\n const sendCalls = useCallback<SendCalls>(\n ({ txsParams, ...input }, options) => {\n const calls: Call[] | undefined =\n input.calls || txsParams?.map(txParamsToCalls).filter(isTruthy);\n\n assert(calls && calls.length > 0, \"calls must be provided\");\n\n const chainId = input.chainId || txsParams?.[0]?.chainId;\n\n return sendCallsAsync(\n {\n ...input,\n chainId: chainId as SupportedChainId | undefined,\n calls,\n },\n options\n );\n },\n [sendCallsAsync]\n );\n\n return { data, isPending, isSuccess, isError, reset, error, sendCalls };\n}\n\ntype IsConfirmingBatchTxInput = Omit<\n MutationFilters<\n SendCallsData,\n SendCallsErrorType,\n SendCallsVariables<Config, number>\n >,\n \"mutationKey\"\n>;\n\nexport function useIsConfirmingBatchTx(\n options: IsConfirmingBatchTxInput\n): boolean {\n return (\n useIsMutating({\n mutationKey: [\"sendCalls\"],\n exact: options.exact,\n status: options.status,\n predicate: options.predicate as MutationFilters[\"predicate\"],\n }) > 0\n );\n}\n\nfunction txParamsToCalls(\n txParams: Pick<TxParams, \"to\" | \"data\" | \"value\">\n): Call | null {\n if (!txParams.to) {\n return null;\n }\n\n return {\n to: txParams.to,\n data: txParams.data,\n value: txParams.value,\n };\n}\n"],"mappings":";;;;;;;;;AA2CA,SAAOoC,EAAAF,GAAA;CAAA,IAAAG,IAAAC,EAAA,GAAA,EAAAC;CAAA,AAAAF,EAAA,OAAAH,IAOFK,IAAAF,EAAA,MAHYE,IAAA,EAAAC,UACDN,GAEX,EAAAG,EAAA,KAAAH,GAAAG,EAAA,KAAAE;CAJH,IAAA,EAAAnB,SAAAqB,cAAAC,cAAAC,YAAAC,UAAArB,UAAAsB,sBACE5C,EAAasC,EAGX,EAACO;CAAA,AAAAT,EAAA,OAAAQ,IAmBFC,IAAAT,EAAA,MAhBDS,KAAAC,GAAAC,MAAA;EAAC,IAAA,EAAAf,cAAA,GAAAH,MAAAiB,GACCf,IACEF,EAAKE,SAAUC,GAASgB,IAAMC,EAAuB,CAAAC,OAACrC,EAAS;EAEjEJ,EAAOsB,KAASA,EAAKoB,SAAU,GAAG,yBAAyB;EAE3D,IAAAC,IAAgBvB,EAAKuB,WAAYpB,IAAS,IAAcoB;EAAC,OAElDR,EACL;GAAA,GACKf;GACMuB;GAAuCrB;GAEjD,EACDE,EACD;IACFG,EAAA,KAAAQ,GAAAR,EAAA,KAAAS;CAjBH,IAAAlB,IAAkBkB,GAmBhBC;CAEqE,OAFrEV,EAAA,OAAAjB,KAAAiB,EAAA,OAAAd,KAAAc,EAAA,OAAAM,KAAAN,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KAAAL,EAAA,OAAAO,KAAAP,EAAA,QAAAT,KAEKmB,IAAA;EAAA3B;EAAAqB;EAAAC;EAAAC;EAAAC;EAAArB;EAAAK;EAAgE,EAAAS,EAAA,KAAAjB,GAAAiB,EAAA,KAAAd,GAAAc,EAAA,KAAAM,GAAAN,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAO,GAAAP,EAAA,MAAAT,GAAAS,EAAA,MAAAU,KAAAA,IAAAV,EAAA,KAAhEU;;AAyBT,SAASG,EACPY,GACa;CAKb,OAJKA,EAASC,KAIP;EACLA,IAAID,EAASC;EACb3C,MAAM0C,EAAS1C;EACf4C,OAAOF,EAASE;EACjB,GAPQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsConnectedSafe.js","names":["wagmiConfig","useIsSafeConnector","isSafeConnectorThroughWalletConnect","useIsSafeThroughWalletConnect","getAccount","getWalletMetadata","walletMetadataQueryKey","queryClient","isConnectorWithSafeProvider","useIsExternalConnectorWithSafe","useConnectedSafe","isSafeConnector","isSafeThroughWalletConnect","isExternalProviderSafeIframe","useConnectedToSafeIframe","connectedSafe","connector","walletMeta","ensureQueryData","queryKey","uid","queryFn","gcTime","Infinity"],"sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { useIsSafeConnector } from \"./useIsGnosisSafeConnector\";\nimport {\n isSafeConnectorThroughWalletConnect,\n useIsSafeThroughWalletConnect,\n} from \"./useIsSafeThroughWalletConnect\";\nimport { getAccount } from \"@wagmi/core\";\nimport {\n getWalletMetadata,\n walletMetadataQueryKey,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport {\n isConnectorWithSafeProvider,\n useIsExternalConnectorWithSafe,\n} from \"@/components/web3/ConnectExternalProvider/utils\";\n\nexport function useConnectedSafe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();\n\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n\n return (\n isSafeConnector ||\n isSafeThroughWalletConnect ||\n isExternalProviderSafeIframe\n );\n}\n\nexport function useConnectedToSafeIframe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n return isExternalProviderSafeIframe || isSafeConnector;\n}\n\n// for use outside of react\nexport async function connectedSafe() {\n const connector = getAccount(wagmiConfig).connector;\n if (!connector) return false;\n\n if (isConnectorWithSafeProvider(connector)) return true;\n\n const walletMeta = await queryClient.ensureQueryData({\n queryKey: walletMetadataQueryKey(connector.uid),\n queryFn: () => getWalletMetadata(connector),\n gcTime: Infinity,\n });\n\n return isSafeConnectorThroughWalletConnect(walletMeta);\n}\n"],"mappings":";;;;;AAiBA,SAAOU,IAAA;CACL,IAAAC,IAAwBV,GAAoB,EAC5CW,IAAmCT,GAA+B,EAElEU,IAAqCJ,GAAgC;AAAC,QAGpEE,KAAAC,KAAAC;;AAMJ,SAAOC,IAAA;CACL,IAAAH,IAAwBV,GAAoB;AAC0B,QAAjCQ,GAAgC,IAC9DE"}
1
+ {"version":3,"file":"useIsConnectedSafe.js","names":["wagmiConfig","useIsSafeConnector","isSafeConnectorThroughWalletConnect","useIsSafeThroughWalletConnect","getAccount","getWalletMetadata","walletMetadataQueryKey","queryClient","isConnectorWithSafeProvider","useIsExternalConnectorWithSafe","useConnectedSafe","isSafeConnector","isSafeThroughWalletConnect","isExternalProviderSafeIframe","useConnectedToSafeIframe","connectedSafe","connector","walletMeta","ensureQueryData","queryKey","uid","queryFn","gcTime","Infinity"],"sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { useIsSafeConnector } from \"./useIsGnosisSafeConnector\";\nimport {\n isSafeConnectorThroughWalletConnect,\n useIsSafeThroughWalletConnect,\n} from \"./useIsSafeThroughWalletConnect\";\nimport { getAccount } from \"@wagmi/core\";\nimport {\n getWalletMetadata,\n walletMetadataQueryKey,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport {\n isConnectorWithSafeProvider,\n useIsExternalConnectorWithSafe,\n} from \"@/components/web3/ConnectExternalProvider/utils\";\n\nexport function useConnectedSafe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();\n\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n\n return (\n isSafeConnector ||\n isSafeThroughWalletConnect ||\n isExternalProviderSafeIframe\n );\n}\n\nexport function useConnectedToSafeIframe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isExternalProviderSafeIframe = useIsExternalConnectorWithSafe();\n return isExternalProviderSafeIframe || isSafeConnector;\n}\n\n// for use outside of react\nexport async function connectedSafe() {\n const connector = getAccount(wagmiConfig).connector;\n if (!connector) return false;\n\n if (isConnectorWithSafeProvider(connector)) return true;\n\n const walletMeta = await queryClient.ensureQueryData({\n queryKey: walletMetadataQueryKey(connector.uid),\n queryFn: () => getWalletMetadata(connector),\n gcTime: Infinity,\n });\n\n return isSafeConnectorThroughWalletConnect(walletMeta);\n}\n"],"mappings":";;;;;AAiBA,SAAOU,IAAA;CACL,IAAAC,IAAwBV,GAAoB,EAC5CW,IAAmCT,GAA+B,EAElEU,IAAqCJ,GAAgC;CAAC,OAGpEE,KAAAC,KAAAC;;AAMJ,SAAOC,IAAA;CACL,IAAAH,IAAwBV,GAAoB;CAC0B,OAAjCQ,GAC9BI,IAAAF"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsGnosisSafeConnector.js","names":["useAccount","Connector","safe","useIsSafeConnector","$","_c","connector","t0","isSafeConnector","SafeMinConnector","type","Pick","T"],"sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"sourcesContent":["import { useAccount, type Connector } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useIsSafeConnector(): boolean {\n const { connector } = useAccount();\n if (!connector) return false;\n return isSafeConnector(connector);\n}\n\nexport type SafeMinConnector = {\n type: typeof safe.type;\n};\n\nexport function isSafeConnector<T extends Pick<Connector, \"type\">>(\n connector: T\n): connector is T & SafeMinConnector {\n return connector.type === safe.type;\n}\n"],"mappings":";;;;AAGA,SAAOG,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,iBAAsBN,GAAY;AAClC,KAAI,CAACM,EAAS,QAAS;CAAM,IAAAC;AACI,QADJH,EAAA,OAAAE,IACIC,IAAAH,EAAA,MAA1BG,IAAAC,EAAgBF,EAAU,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IAA1BA;;AAOT,SAAgBC,EACdF,GACmC;AACnC,QAAOA,EAAUI,SAASR,EAAKQ"}
1
+ {"version":3,"file":"useIsGnosisSafeConnector.js","names":["useAccount","Connector","safe","useIsSafeConnector","$","_c","connector","t0","isSafeConnector","SafeMinConnector","type","Pick","T"],"sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"sourcesContent":["import { useAccount, type Connector } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useIsSafeConnector(): boolean {\n const { connector } = useAccount();\n if (!connector) return false;\n return isSafeConnector(connector);\n}\n\nexport type SafeMinConnector = {\n type: typeof safe.type;\n};\n\nexport function isSafeConnector<T extends Pick<Connector, \"type\">>(\n connector: T\n): connector is T & SafeMinConnector {\n return connector.type === safe.type;\n}\n"],"mappings":";;;;AAGA,SAAOG,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,iBAAsBN,GAAY;CAClC,IAAI,CAACM,GAAS,OAAS;CAAM,IAAAC;CACI,OADJH,EAAA,OAAAE,IACIC,IAAAH,EAAA,MAA1BG,IAAAC,EAAgBF,EAAU,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IAA1BA;;AAOT,SAAgBC,EACdF,GACmC;CACnC,OAAOA,EAAUI,SAASR,EAAKQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsSafeThroughWalletConnect.js","names":["isExternalConnector","isExternalConnectorSafeWalletConnect","getWalletConnectMetadata","isWalletConnectConnector","useWalletMetadata","WalletMeta","useAccount","Connector","GnosisSafeWConnectRegex","useIsSafeThroughWalletConnect","$","_c","connector","walletMetadata","isWalletConnect","t0","isSafeConnectorThroughWalletConnect","connectorType","connectorId","name","Pick","isExternal","type","id","isWConnectConnector","isConnectorWithMaybeSafe","isSafe","some","rule","test","isWalletConnectConnectorWithSafe","T","Promise","provider","getProvider","metadata"],"sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"sourcesContent":["import {\n isExternalConnector,\n isExternalConnectorSafeWalletConnect,\n} from \"@/components/web3/ConnectExternalProvider/utils\";\nimport {\n getWalletConnectMetadata,\n isWalletConnectConnector,\n useWalletMetadata,\n type WalletMeta,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useAccount, type Connector } from \"wagmi\";\n\nconst GnosisSafeWConnectRegex = [\n // matches `WalletConnect Safe App` (app in web Safe) and `Safe` (iOS Safe)\n /^(?:WalletConnect)?\\s*Safe\\s*(?:App)?$/i,\n\n // if there's word Safe surrounded by non-word characters or by nothing -> most likely it's Gnosis Safe\n /([^a-zA-Z]|^)Safe([^a-zA-Z]|$)/i, // matches'Safe{Wallet}'\n];\n\nexport function useIsSafeThroughWalletConnect() {\n const { connector } = useAccount();\n const walletMetadata = useWalletMetadata(connector);\n\n if (!connector) {\n return false;\n }\n\n if (isExternalConnectorSafeWalletConnect(connector)) {\n // for external connector can determine if it's safe through WalletConnect by checking sync\n // connector.id is a special id is that case assigned on connection\n return true;\n }\n\n if (!isWalletConnectConnector(connector)) {\n // non-WalletConnect connectors are not safe through WalletConnect\n return false;\n }\n\n if (!walletMetadata?.isWalletConnect) {\n // if wallet metadata is not available, or is not a WalletConnect connector,\n // then it's not safe through WalletConnect\n return false;\n }\n\n return isSafeConnectorThroughWalletConnect(walletMetadata);\n}\n\nexport function isSafeConnectorThroughWalletConnect({\n connectorType,\n connectorId,\n name,\n}: Pick<WalletMeta, \"connectorType\" | \"connectorId\" | \"name\">): boolean {\n const isExternal = isExternalConnector({\n type: connectorType,\n id: connectorId,\n });\n const isWConnectConnector = isWalletConnectConnector({ type: connectorType });\n\n const isConnectorWithMaybeSafe = isExternal || isWConnectConnector;\n\n if (!isConnectorWithMaybeSafe || !name) {\n return false;\n }\n\n const isSafe = GnosisSafeWConnectRegex.some((rule) => rule.test(name));\n return isSafe;\n}\n\nexport async function isWalletConnectConnectorWithSafe<\n T extends Pick<Connector, \"type\" | \"id\" | \"getProvider\">,\n>(connector: T): Promise<boolean> {\n if (!isWalletConnectConnector(connector)) {\n return false;\n }\n\n const provider = await connector.getProvider();\n const metadata = getWalletConnectMetadata(provider);\n if (!metadata) {\n return false;\n }\n\n return isSafeConnectorThroughWalletConnect({\n connectorType: connector.type,\n connectorId: connector.id,\n name: metadata.name,\n });\n}\n"],"mappings":";;;;;AAYA,IAAMQ,IAA0B,CAE9B,2CAGA,kCACD;AAED,SAAOC,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,iBAAsBN,GAAY,EAClCO,IAAuBT,EAAkBQ,EAAU;AAEnD,KAAI,CAACA,EAAS,QACL;AAGT,KAAIX,EAAqCW,EAAU,CAAA,QAG1C;AAQT,KALI,CAACT,EAAyBS,EAAU,IAKpC,CAACC,GAAcC,gBAAiB,QAG3B;CACR,IAAAC;AAEyD,QAFzDL,EAAA,OAAAG,IAEyDE,IAAAL,EAAA,MAAnDK,IAAAC,EAAoCH,EAAe,EAAAH,EAAA,KAAAG,GAAAH,EAAA,KAAAK,IAAnDA;;AAGT,SAAgBC,EAAoC,EAClDC,kBACAC,gBACAC,WACsE;CACtE,IAAME,IAAarB,EAAoB;EACrCsB,MAAML;EACNM,IAAIL;EACL,CAAC,EACIM,IAAsBrB,EAAyB,EAAEmB,MAAML,GAAe,CAAC;AAS7E,QALI,EAF6BI,KAAcG,MAEd,CAACL,IACzB,KAGMX,EAAwBmB,MAAMC,MAASA,EAAKC,KAAKV,EAAK,CAAC;;AAIxE,eAAsBW,EAEpBlB,GAAgC;AAChC,KAAI,CAACT,EAAyBS,EAAU,CACtC,QAAO;CAIT,IAAMuB,IAAWjC,EADA,MAAMU,EAAUsB,aAAa,CACK;AAKnD,QAJKC,IAIEnB,EAAoC;EACzCC,eAAeL,EAAUU;EACzBJ,aAAaN,EAAUW;EACvBJ,MAAMgB,EAAShB;EAChB,CAAC,GAPO"}
1
+ {"version":3,"file":"useIsSafeThroughWalletConnect.js","names":["isExternalConnector","isExternalConnectorSafeWalletConnect","getWalletConnectMetadata","isWalletConnectConnector","useWalletMetadata","WalletMeta","useAccount","Connector","GnosisSafeWConnectRegex","useIsSafeThroughWalletConnect","$","_c","connector","walletMetadata","isWalletConnect","t0","isSafeConnectorThroughWalletConnect","connectorType","connectorId","name","Pick","isExternal","type","id","isWConnectConnector","isConnectorWithMaybeSafe","isSafe","some","rule","test","isWalletConnectConnectorWithSafe","T","Promise","provider","getProvider","metadata"],"sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"sourcesContent":["import {\n isExternalConnector,\n isExternalConnectorSafeWalletConnect,\n} from \"@/components/web3/ConnectExternalProvider/utils\";\nimport {\n getWalletConnectMetadata,\n isWalletConnectConnector,\n useWalletMetadata,\n type WalletMeta,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useAccount, type Connector } from \"wagmi\";\n\nconst GnosisSafeWConnectRegex = [\n // matches `WalletConnect Safe App` (app in web Safe) and `Safe` (iOS Safe)\n /^(?:WalletConnect)?\\s*Safe\\s*(?:App)?$/i,\n\n // if there's word Safe surrounded by non-word characters or by nothing -> most likely it's Gnosis Safe\n /([^a-zA-Z]|^)Safe([^a-zA-Z]|$)/i, // matches'Safe{Wallet}'\n];\n\nexport function useIsSafeThroughWalletConnect() {\n const { connector } = useAccount();\n const walletMetadata = useWalletMetadata(connector);\n\n if (!connector) {\n return false;\n }\n\n if (isExternalConnectorSafeWalletConnect(connector)) {\n // for external connector can determine if it's safe through WalletConnect by checking sync\n // connector.id is a special id is that case assigned on connection\n return true;\n }\n\n if (!isWalletConnectConnector(connector)) {\n // non-WalletConnect connectors are not safe through WalletConnect\n return false;\n }\n\n if (!walletMetadata?.isWalletConnect) {\n // if wallet metadata is not available, or is not a WalletConnect connector,\n // then it's not safe through WalletConnect\n return false;\n }\n\n return isSafeConnectorThroughWalletConnect(walletMetadata);\n}\n\nexport function isSafeConnectorThroughWalletConnect({\n connectorType,\n connectorId,\n name,\n}: Pick<WalletMeta, \"connectorType\" | \"connectorId\" | \"name\">): boolean {\n const isExternal = isExternalConnector({\n type: connectorType,\n id: connectorId,\n });\n const isWConnectConnector = isWalletConnectConnector({ type: connectorType });\n\n const isConnectorWithMaybeSafe = isExternal || isWConnectConnector;\n\n if (!isConnectorWithMaybeSafe || !name) {\n return false;\n }\n\n const isSafe = GnosisSafeWConnectRegex.some((rule) => rule.test(name));\n return isSafe;\n}\n\nexport async function isWalletConnectConnectorWithSafe<\n T extends Pick<Connector, \"type\" | \"id\" | \"getProvider\">,\n>(connector: T): Promise<boolean> {\n if (!isWalletConnectConnector(connector)) {\n return false;\n }\n\n const provider = await connector.getProvider();\n const metadata = getWalletConnectMetadata(provider);\n if (!metadata) {\n return false;\n }\n\n return isSafeConnectorThroughWalletConnect({\n connectorType: connector.type,\n connectorId: connector.id,\n name: metadata.name,\n });\n}\n"],"mappings":";;;;;AAYA,IAAMQ,IAA0B,CAE9B,2CAGA,kCACD;AAED,SAAOC,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,iBAAsBN,GAAY,EAClCO,IAAuBT,EAAkBQ,EAAU;CAEnD,IAAI,CAACA,GAAS,OACL;CAGT,IAAIX,EAAqCW,EAAU,EAAA,OAG1C;CAQT,IALI,CAACT,EAAyBS,EAAU,IAKpC,CAACC,GAAcC,iBAAiB,OAG3B;CACR,IAAAC;CAEyD,OAFzDL,EAAA,OAAAG,IAEyDE,IAAAL,EAAA,MAAnDK,IAAAC,EAAoCH,EAAe,EAAAH,EAAA,KAAAG,GAAAH,EAAA,KAAAK,IAAnDA;;AAGT,SAAgBC,EAAoC,EAClDC,kBACAC,gBACAC,WACsE;CACtE,IAAME,IAAarB,EAAoB;EACrCsB,MAAML;EACNM,IAAIL;EACL,CAAC,EACIM,IAAsBrB,EAAyB,EAAEmB,MAAML,GAAe,CAAC;CAS7E,OALI,EAF6BI,KAAcG,MAEd,CAACL,IACzB,KAGMX,EAAwBmB,MAAMC,MAASA,EAAKC,KAAKV,EAAK,CAC9DO;;AAGT,eAAsBI,EAEpBlB,GAAgC;CAChC,IAAI,CAACT,EAAyBS,EAAU,EACtC,OAAO;CAIT,IAAMuB,IAAWjC,EAAyB+B,MADnBrB,EAAUsB,aAAa,CACK;CAKnD,OAJKC,IAIEnB,EAAoC;EACzCC,eAAeL,EAAUU;EACzBJ,aAAaN,EAAUW;EACvBJ,MAAMgB,EAAShB;EAChB,CAAC,GAPO"}
@@ -1 +1 @@
1
- {"version":3,"file":"useGasPrices.js","names":["axios","useQuery","UseQueryResult","useChainId","ConsolidatedGasPrices","GasPricesAPIResponse","isLegacyPriceResponse","weiToGwei","gasPricesConfig","SupportedChainId","getApiURL","GAS_PRICES_BASE_QUERY_KEY","GasPricesQueryKey","chainId","eip1559Enabled","constructGasParamsQueryKey","eop1559Enabled","useGasPrices","t0","$","_c","t1","undefined","_chainId","appChainId","config","refetchInterval","import","meta","env","DEV","t2","eip1559","t3","t4","signal","allowEip1559","data","get","params","legacyPrices","slow","safeLow","standard","average","fast","instant","fastest","legacyGasPrice","eip1559Prices","maxFeePerGas","maxPriorityFeePerGas","blockData","optimisticGasOracleData","optimismGasOracleData","baseGasOracleData","t5","queryKey","queryFn","enabled","staleTime"],"sources":["../../../src/hooks/gas/useGasPrices.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useQuery, type UseQueryResult } from \"@tanstack/react-query\";\nimport { useChainId } from \"wagmi\";\nimport type { ConsolidatedGasPrices, GasPricesAPIResponse } from \"./types\";\nimport { isLegacyPriceResponse, weiToGwei } from \"./utils\";\nimport { gasPricesConfig } from \"./config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getApiURL } from \"@/lib/constants/urls\";\n\nconst GAS_PRICES_BASE_QUERY_KEY = \"gas-prices\";\n\ntype GasPricesQueryKey = [\n typeof GAS_PRICES_BASE_QUERY_KEY,\n chainId: SupportedChainId,\n eip1559Enabled: boolean,\n];\n\nexport function constructGasParamsQueryKey(\n chainId: SupportedChainId,\n eop1559Enabled: boolean\n): GasPricesQueryKey {\n return [GAS_PRICES_BASE_QUERY_KEY, chainId, eop1559Enabled];\n}\n\nexport function useGasPrices({\n chainId: _chainId,\n}: {\n chainId?: SupportedChainId;\n} = {}): UseQueryResult<ConsolidatedGasPrices, Error> {\n const appChainId = useChainId();\n const chainId = _chainId ?? appChainId;\n\n const config = gasPricesConfig[chainId];\n const refetchInterval = import.meta.env.DEV\n ? config.refetchInterval * 2 // avoid rate limiting in dev\n : config.refetchInterval;\n\n return useQuery<\n ConsolidatedGasPrices,\n Error,\n ConsolidatedGasPrices,\n GasPricesQueryKey\n >({\n queryKey: constructGasParamsQueryKey(chainId, config.eip1559),\n queryFn: async ({ signal }) => {\n const allowEip1559 = config.eip1559;\n\n const { data } = await axios.get<GasPricesAPIResponse>(\n `${getApiURL()}/prices/gas/${chainId}`,\n {\n signal,\n params: { eip1559: allowEip1559 },\n }\n );\n\n const legacyPrices = isLegacyPriceResponse(!allowEip1559, data)\n ? {\n slow: weiToGwei(data.safeLow),\n standard: weiToGwei(data.average),\n fast: weiToGwei(data.fast),\n instant: weiToGwei(data.fastest),\n }\n : {\n slow: weiToGwei(data.safeLow.legacyGasPrice),\n standard: weiToGwei(data.average.legacyGasPrice),\n fast: weiToGwei(data.fast.legacyGasPrice),\n instant: weiToGwei(data.fastest.legacyGasPrice),\n };\n\n const eip1559Prices = !isLegacyPriceResponse(!allowEip1559, data)\n ? {\n slow: {\n maxFeePerGas: weiToGwei(data.safeLow.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.safeLow.maxPriorityFeePerGas\n ),\n },\n standard: {\n maxFeePerGas: weiToGwei(data.average.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.average.maxPriorityFeePerGas\n ),\n },\n fast: {\n maxFeePerGas: weiToGwei(data.fast.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(data.fast.maxPriorityFeePerGas),\n },\n instant: {\n maxFeePerGas: weiToGwei(data.fastest.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.fastest.maxPriorityFeePerGas\n ),\n },\n }\n : undefined;\n\n return {\n legacyPrices,\n eip1559Prices,\n blockData: data.blockData,\n optimisticGasOracleData:\n data.optimismGasOracleData || data.baseGasOracleData,\n };\n },\n\n enabled: !!chainId,\n refetchInterval,\n staleTime: refetchInterval,\n });\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useGasPrices.js","names":["axios","useQuery","UseQueryResult","useChainId","ConsolidatedGasPrices","GasPricesAPIResponse","isLegacyPriceResponse","weiToGwei","gasPricesConfig","SupportedChainId","getApiURL","GAS_PRICES_BASE_QUERY_KEY","GasPricesQueryKey","chainId","eip1559Enabled","constructGasParamsQueryKey","eop1559Enabled","useGasPrices","t0","$","_c","t1","undefined","_chainId","appChainId","config","refetchInterval","import","meta","env","DEV","t2","eip1559","t3","t4","signal","allowEip1559","data","get","params","legacyPrices","slow","safeLow","standard","average","fast","instant","fastest","legacyGasPrice","eip1559Prices","maxFeePerGas","maxPriorityFeePerGas","blockData","optimisticGasOracleData","optimismGasOracleData","baseGasOracleData","t5","queryKey","queryFn","enabled","staleTime"],"sources":["../../../src/hooks/gas/useGasPrices.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useQuery, type UseQueryResult } from \"@tanstack/react-query\";\nimport { useChainId } from \"wagmi\";\nimport type { ConsolidatedGasPrices, GasPricesAPIResponse } from \"./types\";\nimport { isLegacyPriceResponse, weiToGwei } from \"./utils\";\nimport { gasPricesConfig } from \"./config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getApiURL } from \"@/lib/constants/urls\";\n\nconst GAS_PRICES_BASE_QUERY_KEY = \"gas-prices\";\n\ntype GasPricesQueryKey = [\n typeof GAS_PRICES_BASE_QUERY_KEY,\n chainId: SupportedChainId,\n eip1559Enabled: boolean,\n];\n\nexport function constructGasParamsQueryKey(\n chainId: SupportedChainId,\n eop1559Enabled: boolean\n): GasPricesQueryKey {\n return [GAS_PRICES_BASE_QUERY_KEY, chainId, eop1559Enabled];\n}\n\nexport function useGasPrices({\n chainId: _chainId,\n}: {\n chainId?: SupportedChainId;\n} = {}): UseQueryResult<ConsolidatedGasPrices, Error> {\n const appChainId = useChainId();\n const chainId = _chainId ?? appChainId;\n\n const config = gasPricesConfig[chainId];\n const refetchInterval = import.meta.env.DEV\n ? config.refetchInterval * 2 // avoid rate limiting in dev\n : config.refetchInterval;\n\n return useQuery<\n ConsolidatedGasPrices,\n Error,\n ConsolidatedGasPrices,\n GasPricesQueryKey\n >({\n queryKey: constructGasParamsQueryKey(chainId, config.eip1559),\n queryFn: async ({ signal }) => {\n const allowEip1559 = config.eip1559;\n\n const { data } = await axios.get<GasPricesAPIResponse>(\n `${getApiURL()}/prices/gas/${chainId}`,\n {\n signal,\n params: { eip1559: allowEip1559 },\n }\n );\n\n const legacyPrices = isLegacyPriceResponse(!allowEip1559, data)\n ? {\n slow: weiToGwei(data.safeLow),\n standard: weiToGwei(data.average),\n fast: weiToGwei(data.fast),\n instant: weiToGwei(data.fastest),\n }\n : {\n slow: weiToGwei(data.safeLow.legacyGasPrice),\n standard: weiToGwei(data.average.legacyGasPrice),\n fast: weiToGwei(data.fast.legacyGasPrice),\n instant: weiToGwei(data.fastest.legacyGasPrice),\n };\n\n const eip1559Prices = !isLegacyPriceResponse(!allowEip1559, data)\n ? {\n slow: {\n maxFeePerGas: weiToGwei(data.safeLow.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.safeLow.maxPriorityFeePerGas\n ),\n },\n standard: {\n maxFeePerGas: weiToGwei(data.average.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.average.maxPriorityFeePerGas\n ),\n },\n fast: {\n maxFeePerGas: weiToGwei(data.fast.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(data.fast.maxPriorityFeePerGas),\n },\n instant: {\n maxFeePerGas: weiToGwei(data.fastest.maxFeePerGas),\n maxPriorityFeePerGas: weiToGwei(\n data.fastest.maxPriorityFeePerGas\n ),\n },\n }\n : undefined;\n\n return {\n legacyPrices,\n eip1559Prices,\n blockData: data.blockData,\n optimisticGasOracleData:\n data.optimismGasOracleData || data.baseGasOracleData,\n };\n },\n\n enabled: !!chainId,\n refetchInterval,\n staleTime: refetchInterval,\n });\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["formatGwei","parseGwei","GasPricesAPIResponse","LegacyGasPricesResponse","isLegacyPriceResponse","legacy","response","safeLow","weiToGwei","wei","Number","BigInt","gweiToWei","gwei","toString"],"sources":["../../../src/hooks/gas/utils.ts"],"sourcesContent":["import { formatGwei, parseGwei } from \"viem\";\nimport type { GasPricesAPIResponse, LegacyGasPricesResponse } from \"./types\";\n\nexport function isLegacyPriceResponse(\n legacy: boolean,\n response: GasPricesAPIResponse\n): response is LegacyGasPricesResponse {\n return legacy && typeof response.safeLow === \"string\";\n}\n\n/** * Converts a wei string value to gwei. Useful for gas that comes from API\n * @param wei - The wei value to convert.\n * @returns The converted value in gwei as a number.\n */\nexport function weiToGwei(wei: string): number {\n return Number(formatGwei(BigInt(wei)));\n}\n\n/** * Converts a gwei value to wei.\n * @param gwei - The gwei value to convert.\n * @returns The converted value in wei as a string.\n */\nexport function gweiToWei(gwei: number): string {\n return parseGwei(gwei.toString()).toString();\n}\n"],"mappings":";;AAGA,SAAgBI,EACdC,GACAC,GACqC;AACrC,QAAOD,KAAU,OAAOC,EAASC,WAAY;;AAO/C,SAAgBC,EAAUC,GAAqB;AAC7C,QAAOC,OAAOV,EAAWW,OAAOF,EAAI,CAAC,CAAC;;AAOxC,SAAgBG,EAAUC,GAAsB;AAC9C,QAAOZ,EAAUY,EAAKC,UAAU,CAAC,CAACA,UAAU"}
1
+ {"version":3,"file":"utils.js","names":["formatGwei","parseGwei","GasPricesAPIResponse","LegacyGasPricesResponse","isLegacyPriceResponse","legacy","response","safeLow","weiToGwei","wei","Number","BigInt","gweiToWei","gwei","toString"],"sources":["../../../src/hooks/gas/utils.ts"],"sourcesContent":["import { formatGwei, parseGwei } from \"viem\";\nimport type { GasPricesAPIResponse, LegacyGasPricesResponse } from \"./types\";\n\nexport function isLegacyPriceResponse(\n legacy: boolean,\n response: GasPricesAPIResponse\n): response is LegacyGasPricesResponse {\n return legacy && typeof response.safeLow === \"string\";\n}\n\n/** * Converts a wei string value to gwei. Useful for gas that comes from API\n * @param wei - The wei value to convert.\n * @returns The converted value in gwei as a number.\n */\nexport function weiToGwei(wei: string): number {\n return Number(formatGwei(BigInt(wei)));\n}\n\n/** * Converts a gwei value to wei.\n * @param gwei - The gwei value to convert.\n * @returns The converted value in wei as a string.\n */\nexport function gweiToWei(gwei: number): string {\n return parseGwei(gwei.toString()).toString();\n}\n"],"mappings":";;AAGA,SAAgBI,EACdC,GACAC,GACqC;CACrC,OAAOD,KAAU,OAAOC,EAASC,WAAY;;AAO/C,SAAgBC,EAAUC,GAAqB;CAC7C,OAAOC,OAAOV,EAAWW,OAAOF,EAAI,CAAC,CAAC;;AAOxC,SAAgBG,EAAUC,GAAsB;CAC9C,OAAOZ,EAAUY,EAAKC,UAAU,CAAC,CAACA,UAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","names":["wagmiConfig","SupportedChainId","getCode","GetIsContractAtAddressParams","GetIsContractAtAddressResult","IsContractAtAddressQueryKey","getIsContractAtAddress","address","chainId","Promise","client","getClient","codeAtAddress","isDelegatedEOA","length","toLowerCase","startsWith","isContract","undefined","isEOA","constructIsContractAtAddressQueryKey"],"sources":["../../../src/hooks/getCode/query.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getCode } from \"viem/actions\";\nimport type {\n GetIsContractAtAddressParams,\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey,\n} from \"./types\";\n\nexport async function getIsContractAtAddress({\n address,\n chainId,\n}: GetIsContractAtAddressParams): Promise<GetIsContractAtAddressResult> {\n const client = wagmiConfig.getClient({ chainId });\n\n // undefined if eth_getCode call returns \"0x\" hex\n const codeAtAddress = await getCode(client, { address });\n\n const isDelegatedEOA =\n codeAtAddress?.length === 48 &&\n codeAtAddress.toLowerCase().startsWith(\"0xef0100\");\n\n const isContract = codeAtAddress !== undefined && !isDelegatedEOA;\n const isEOA = codeAtAddress === undefined || isDelegatedEOA;\n\n return { isContract, isDelegatedEOA, isEOA };\n}\n\nexport function constructIsContractAtAddressQueryKey({\n address,\n chainId,\n}: {\n address?: string;\n chainId: SupportedChainId;\n}): IsContractAtAddressQueryKey {\n return [\"is-contract-at-address\", chainId, address?.toLowerCase()];\n}\n"],"mappings":";;;AASA,eAAsBM,EAAuB,EAC3CC,YACAC,cACsE;CAItE,IAAMI,IAAgB,MAAMV,EAHbF,EAAYW,UAAU,EAAEH,YAAS,CAAC,EAGL,EAAED,YAAS,CAAC,EAElDM,IACJD,GAAeE,WAAW,MAC1BF,EAAcG,aAAa,CAACC,WAAW,WAAW;AAKpD,QAAO;EAAEC,YAHUL,MAAkBM,KAAAA,KAAa,CAACL;EAG9BA;EAAgBM,OAFvBP,MAAkBM,KAAAA,KAAaL;EAED;;AAG9C,SAAgBO,EAAqC,EACnDb,YACAC,cAI8B;AAC9B,QAAO;EAAC;EAA0BA;EAASD,GAASQ,aAAa;EAAC"}
1
+ {"version":3,"file":"query.js","names":["wagmiConfig","SupportedChainId","getCode","GetIsContractAtAddressParams","GetIsContractAtAddressResult","IsContractAtAddressQueryKey","getIsContractAtAddress","address","chainId","Promise","client","getClient","codeAtAddress","isDelegatedEOA","length","toLowerCase","startsWith","isContract","undefined","isEOA","constructIsContractAtAddressQueryKey"],"sources":["../../../src/hooks/getCode/query.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getCode } from \"viem/actions\";\nimport type {\n GetIsContractAtAddressParams,\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey,\n} from \"./types\";\n\nexport async function getIsContractAtAddress({\n address,\n chainId,\n}: GetIsContractAtAddressParams): Promise<GetIsContractAtAddressResult> {\n const client = wagmiConfig.getClient({ chainId });\n\n // undefined if eth_getCode call returns \"0x\" hex\n const codeAtAddress = await getCode(client, { address });\n\n const isDelegatedEOA =\n codeAtAddress?.length === 48 &&\n codeAtAddress.toLowerCase().startsWith(\"0xef0100\");\n\n const isContract = codeAtAddress !== undefined && !isDelegatedEOA;\n const isEOA = codeAtAddress === undefined || isDelegatedEOA;\n\n return { isContract, isDelegatedEOA, isEOA };\n}\n\nexport function constructIsContractAtAddressQueryKey({\n address,\n chainId,\n}: {\n address?: string;\n chainId: SupportedChainId;\n}): IsContractAtAddressQueryKey {\n return [\"is-contract-at-address\", chainId, address?.toLowerCase()];\n}\n"],"mappings":";;;AASA,eAAsBM,EAAuB,EAC3CC,YACAC,cACsE;CAItE,IAAMI,IAAgB,MAAMV,EAHbF,EAAYW,UAAU,EAAEH,YAAS,CAGZE,EAAQ,EAAEH,YAAS,CAAC,EAElDM,IACJD,GAAeE,WAAW,MAC1BF,EAAcG,aAAa,CAACC,WAAW,WAAW;CAKpD,OAAO;EAAEC,YAHUL,MAAkBM,KAAAA,KAAa,CAACL;EAG9BA;EAAgBM,OAFvBP,MAAkBM,KAAAA,KAAaL;EAED;;AAG9C,SAAgBO,EAAqC,EACnDb,YACAC,cAI8B;CAC9B,OAAO;EAAC;EAA0BA;EAASD,GAASQ,aAAa;EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsAccountContract.js","names":["useAccount","useIsContractAtAddress","isSupportedChainId","useIsAccountContract","$","_c","address","chainId","t0","undefined","checkOnChainId","t1"],"sources":["../../../src/hooks/getCode/useIsAccountContract.ts"],"sourcesContent":["import { useAccount } from \"wagmi\";\nimport { useIsContractAtAddress } from \"./useIsContractAtAddress\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\n\nexport const useIsAccountContract = () => {\n const { address, chainId } = useAccount();\n\n // it makes more sense to check if the address is a contract on the same chain as it is connected to,\n // a Smart Contract Wallet will likely not be deployed on all chains the Widget supports\n const checkOnChainId =\n chainId && isSupportedChainId(chainId) ? chainId : undefined;\n // will default to Widget chainId anyway if Wallet is on an unsupported chain\n\n return useIsContractAtAddress({ address, chainId: checkOnChainId });\n};\n"],"mappings":";;;;;AAIA,IAAaG,UAAuB;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAClC,EAAAC,YAAAC,eAA6BP,GAAY,EAACQ;AAAA,CAAAJ,EAAA,OAAAG,IAKoBC,IAAAJ,EAAA,MAA5DI,IAAAD,KAAWL,EAAmBK,EAA8B,GAA5DA,IAAAE,KAAAA,GAA4DL,EAAA,KAAAG,GAAAH,EAAA,KAAAI;CAD9D,IAAAE,IACEF,GAA6DG;AAGG,QAHHP,EAAA,OAAAE,KAAAF,EAAA,OAAAM,KAGjCC,IAAA;EAAAL;EAAAC,SAAoBG;EAAgB,EAAAN,EAAA,KAAAE,GAAAF,EAAA,KAAAM,GAAAN,EAAA,KAAAO,KAAAA,IAAAP,EAAA,IAA3DH,EAAuBU,EAAqC"}
1
+ {"version":3,"file":"useIsAccountContract.js","names":["useAccount","useIsContractAtAddress","isSupportedChainId","useIsAccountContract","$","_c","address","chainId","t0","undefined","checkOnChainId","t1"],"sources":["../../../src/hooks/getCode/useIsAccountContract.ts"],"sourcesContent":["import { useAccount } from \"wagmi\";\nimport { useIsContractAtAddress } from \"./useIsContractAtAddress\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\n\nexport const useIsAccountContract = () => {\n const { address, chainId } = useAccount();\n\n // it makes more sense to check if the address is a contract on the same chain as it is connected to,\n // a Smart Contract Wallet will likely not be deployed on all chains the Widget supports\n const checkOnChainId =\n chainId && isSupportedChainId(chainId) ? chainId : undefined;\n // will default to Widget chainId anyway if Wallet is on an unsupported chain\n\n return useIsContractAtAddress({ address, chainId: checkOnChainId });\n};\n"],"mappings":";;;;;AAIA,IAAaG,UAAuB;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAClC,EAAAC,YAAAC,eAA6BP,GAAY,EAACQ;CAAA,AAAAJ,EAAA,OAAAG,IAKoBC,IAAAJ,EAAA,MAA5DI,IAAAD,KAAWL,EAAmBK,EAA8B,GAA5DA,IAAAE,KAAAA,GAA4DL,EAAA,KAAAG,GAAAH,EAAA,KAAAI;CAD9D,IAAAE,IACEF,GAA6DG;CAGG,OAHHP,EAAA,OAAAE,KAAAF,EAAA,OAAAM,KAGjCC,IAAA;EAAAL;EAAAC,SAAoBG;EAAgB,EAAAN,EAAA,KAAAE,GAAAF,EAAA,KAAAM,GAAAN,EAAA,KAAAO,KAAAA,IAAAP,EAAA,IAA3DH,EAAuBU,EAAqC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsContractAtAddress.js","names":["useQuery","isAddress","SupportedChainId","useChainId","assert","constructIsContractAtAddressQueryKey","getIsContractAtAddress","GetIsContractAtAddressResult","IsContractAtAddressQueryKey","useIsContractAtAddress","t0","$","_c","address","chainId","_chainId","undefined","appChainId","t1","t2","t3","t4","queryKey","queryFn","enabled","staleTime","Infinity","gcTime"],"sources":["../../../src/hooks/getCode/useIsContractAtAddress.ts"],"sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\n\nimport { isAddress } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"./query\";\nimport type {\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey,\n} from \"./types\";\n\nexport const useIsContractAtAddress = ({\n address,\n chainId: _chainId,\n}: {\n address?: string;\n chainId?: SupportedChainId;\n} = {}) => {\n const appChainId = useChainId();\n const chainId = _chainId ?? appChainId;\n\n return useQuery<\n GetIsContractAtAddressResult,\n Error,\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey\n >({\n queryKey: constructIsContractAtAddressQueryKey({ address, chainId }),\n queryFn: async () => {\n assert(address && isAddress(address), \"address is required\");\n return getIsContractAtAddress({\n address,\n chainId,\n });\n },\n enabled: !!address && isAddress(address),\n staleTime: Infinity,\n gcTime: Infinity,\n });\n};\n"],"mappings":";;;;;;;AAeA,IAAaS,KAAyBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,YAAAC,SAAAC,MAAAL,MAAAM,KAAAA,IAAA,EAMjC,GANiCN,GAOrCO,IAAmBd,GAAY,EAC/BW,IAAgBC,KAAAE,GAQJC,IAAAb,EAAqC;EAAAQ;EAAAC;EAAoB,CAAC,EAAAK;AAAA,CAAAR,EAAA,OAAAE,KAAAF,EAAA,OAAAG,KAC3DK,IAAA,aACPf,EAAOS,KAAWZ,EAAUY,EAAQ,EAAE,sBAAsB,EACrDP,EAAuB;EAAAO;EAAAC;EAG7B,CAAC,GACHH,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAAA,IAAAS;AAAA,CAAAT,EAAA,OAAAE,IACuCO,IAAAT,EAAA,MAA/BS,IAAA,CAAC,CAACP,KAAWZ,EAAUY,EAAQ,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAS;CAAA,IAAAC;AAGzC,QAHyCV,EAAA,OAAAO,KAAAP,EAAA,OAAAQ,KAAAR,EAAA,OAAAS,KATxCC,IAAA;EAAAC,UACUJ;EAA0DK,SAC3DJ;EAMRK,SACQJ;EAA+BK,WAC7BC;EAAQC,QACXD;EACT,EAAAf,EAAA,KAAAO,GAAAP,EAAA,KAAAQ,GAAAR,EAAA,KAAAS,GAAAT,EAAA,KAAAU,KAAAA,IAAAV,EAAA,IAjBMX,EAKLqB,EAYA"}
1
+ {"version":3,"file":"useIsContractAtAddress.js","names":["useQuery","isAddress","SupportedChainId","useChainId","assert","constructIsContractAtAddressQueryKey","getIsContractAtAddress","GetIsContractAtAddressResult","IsContractAtAddressQueryKey","useIsContractAtAddress","t0","$","_c","address","chainId","_chainId","undefined","appChainId","t1","t2","t3","t4","queryKey","queryFn","enabled","staleTime","Infinity","gcTime"],"sources":["../../../src/hooks/getCode/useIsContractAtAddress.ts"],"sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\n\nimport { isAddress } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"./query\";\nimport type {\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey,\n} from \"./types\";\n\nexport const useIsContractAtAddress = ({\n address,\n chainId: _chainId,\n}: {\n address?: string;\n chainId?: SupportedChainId;\n} = {}) => {\n const appChainId = useChainId();\n const chainId = _chainId ?? appChainId;\n\n return useQuery<\n GetIsContractAtAddressResult,\n Error,\n GetIsContractAtAddressResult,\n IsContractAtAddressQueryKey\n >({\n queryKey: constructIsContractAtAddressQueryKey({ address, chainId }),\n queryFn: async () => {\n assert(address && isAddress(address), \"address is required\");\n return getIsContractAtAddress({\n address,\n chainId,\n });\n },\n enabled: !!address && isAddress(address),\n staleTime: Infinity,\n gcTime: Infinity,\n });\n};\n"],"mappings":";;;;;;;AAeA,IAAaS,KAAyBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,YAAAC,SAAAC,MAAAL,MAAAM,KAAAA,IAAA,EAMjC,GANiCN,GAOrCO,IAAmBd,GAAY,EAC/BW,IAAgBC,KAAAE,GAQJC,IAAAb,EAAqC;EAAAQ;EAAAC;EAAoB,CAAC,EAAAK;CAAA,AAAAR,EAAA,OAAAE,KAAAF,EAAA,OAAAG,KAC3DK,IAAA,aACPf,EAAOS,KAAWZ,EAAUY,EAAQ,EAAE,sBAAsB,EACrDP,EAAuB;EAAAO;EAAAC;EAG7B,CAAC,GACHH,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAAA,IAAAS;CAAA,AAAAT,EAAA,OAAAE,IACuCO,IAAAT,EAAA,MAA/BS,IAAA,CAAC,CAACP,KAAWZ,EAAUY,EAAQ,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAS;CAAA,IAAAC;CAGzC,OAHyCV,EAAA,OAAAO,KAAAP,EAAA,OAAAQ,KAAAR,EAAA,OAAAS,KATxCC,IAAA;EAAAC,UACUJ;EAA0DK,SAC3DJ;EAMRK,SACQJ;EAA+BK,WAC7BC;EAAQC,QACXD;EACT,EAAAf,EAAA,KAAAO,GAAAP,EAAA,KAAAQ,GAAAR,EAAA,KAAAS,GAAAT,EAAA,KAAAU,KAAAA,IAAAV,EAAA,IAjBMX,EAKLqB,EAYA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCancelLimitOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","MinViemClient","LimitOrderFromApi","TxSendOverrides","assert","Address","Hash","TransactionReceipt","SupportedChainId","useAwaitTx","useEnsureTxReceipt","limitOrderByHashQueryKey","limitOrdersQueryKey","useWidgetEvents","limitOrderRequiredBalanceQueryKey","CancelOrderStepKey","CancelLimitOrderReturn","CancelLimitOrderAndWaitReturn","CancelLimitOrderInput","orderHash","overrides","signal","AbortSignal","CancelLimitOrderAndWaitInput","onTxSent","params","chainId","transactionHash","receiptPromise","Promise","CancelLimitOrderMutationOptions","Omit","Error","CancelLimitOrderAndWaitMutationOptions","CancelLimitOrderMutInput","mutationOptions","account","client","CancelLimitOrderAndWaitMutInput","CANCEL_LIMIT_ORDER_MUTATION_KEY","CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY","useCancelLimitOrder","t0","$","_c","t1","sdk","t2","Symbol","for","t3","t4","throwIfAborted","cancelLimitOrder","mutationKey","mutationFn","CancelOTCOrderQueryResult","CancelLimitOrderAndWaitResult","cancelOtcOrder","txHash","receipt","result","isPending","isError","isSuccess","error","reset","step","useCancelOtcOrderAndWait","ensureTxReceipt","mutateAsync","data","queryClient","hash","t5","variables","onMutationResult","context","invalidateQueries","queryKey","maker","type","exact","onSuccess","t6","t7","MinVars","Pick","CancelOrderEventCallbacks","options","onMutate","onError","useCancelOtcOrderEventCallbacks","order","onCancelOrder","orderType","orderSubType","const","chainId_0","event","name","variables_0","txReceipt","variables_1"],"sources":["../../../../src/hooks/otc/mutations/useCancelLimitOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n MinViemClient,\n LimitOrderFromApi,\n TxSendOverrides,\n} from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport {\n limitOrderByHashQueryKey,\n limitOrdersQueryKey,\n} from \"../queries/useLimitOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { limitOrderRequiredBalanceQueryKey } from \"../queries/useLimitOrderRequiredBalance\";\nimport type { CancelOrderStepKey } from \"@/components/widget/TradeOverview/steps\";\n\ntype CancelLimitOrderReturn = `0x${string}`;\ntype CancelLimitOrderAndWaitReturn = TransactionReceipt;\n\ntype CancelLimitOrderInput = {\n orderHash: string;\n overrides?: TxSendOverrides;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype CancelLimitOrderAndWaitInput = CancelLimitOrderInput & {\n onTxSent?: (params: {\n chainId: SupportedChainId;\n transactionHash: Hash;\n receiptPromise: Promise<TransactionReceipt>;\n }) => void;\n};\n\ntype CancelLimitOrderMutationOptions = Omit<\n UseMutationOptions<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n >,\n \"mutationFn\"\n>;\ntype CancelLimitOrderAndWaitMutationOptions = Omit<\n UseMutationOptions<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CancelLimitOrderMutInput = {\n mutationOptions?: CancelLimitOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\ntype CancelLimitOrderAndWaitMutInput = {\n mutationOptions?: CancelLimitOrderAndWaitMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const CANCEL_LIMIT_ORDER_MUTATION_KEY = \"cancelLimitOrder\";\nexport const CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY =\n \"cancelLimitOrderAndWait\";\n\nexport function useCancelLimitOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelLimitOrderMutInput): UseMutationResult<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n\n return useMutation<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n >({\n mutationKey: [CANCEL_LIMIT_ORDER_MUTATION_KEY],\n mutationFn: ({ orderHash, overrides, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"cancelLimitOrder\" in sdk,\n \"cancelLimitOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access cancelLimitOrder functionality\n\n return sdk.cancelLimitOrder(orderHash, overrides, { signal });\n },\n ...mutationOptions,\n });\n}\n\ntype CancelOTCOrderQueryResult = UseMutationResult<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n>;\n\ntype CancelLimitOrderAndWaitResult = {\n cancelOtcOrder: CancelOTCOrderQueryResult[\"mutateAsync\"];\n txHash?: Hash;\n receipt?: TransactionReceipt;\n result: CancelOTCOrderQueryResult[\"data\"];\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n reset: () => void;\n step?: CancelOrderStepKey;\n};\n\nexport function useCancelOtcOrderAndWait({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelLimitOrderAndWaitMutInput): CancelLimitOrderAndWaitResult {\n const ensureTxReceipt = useEnsureTxReceipt();\n const { mutateAsync, data: txHash } = useCancelLimitOrder({\n chainId,\n account,\n client,\n });\n const queryClient = useQueryClient();\n\n const { data: receipt } = useAwaitTx({\n chainId,\n hash: txHash,\n });\n\n const {\n isPending,\n isError,\n isSuccess,\n error,\n mutateAsync: cancelOtcOrder,\n data: result,\n reset,\n } = useMutation<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n >({\n mutationKey: [CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY],\n mutationFn: async ({ orderHash, overrides, onTxSent, signal }) => {\n const transactionHash = await mutateAsync({\n orderHash,\n overrides,\n signal,\n });\n\n const receiptPromise = ensureTxReceipt({\n chainId,\n hash: transactionHash,\n });\n\n onTxSent?.({\n chainId,\n transactionHash,\n receiptPromise,\n });\n\n return receiptPromise;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey(\n {\n maker: account, // only maker can cancel\n type: \"P2P\",\n },\n chainId\n ),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderByHashQueryKey(variables.orderHash),\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n }),\n exact: false,\n });\n\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n\n let step: CancelOrderStepKey | undefined;\n if (isPending) {\n step = \"order-cancellation-approval\";\n if (txHash) {\n step = \"order-cancellation-execution\";\n }\n } else if (isSuccess) {\n // cancelAndWithdraw tx mined\n step = \"order-cancellation-success\";\n } else if (isError) {\n step = \"order-cancellation-error\";\n }\n\n return {\n cancelOtcOrder,\n txHash,\n receipt,\n isPending: isPending,\n isError: isError,\n isSuccess: isSuccess,\n error,\n result,\n reset,\n step,\n };\n}\n\ntype MinVars = Pick<CancelLimitOrderInput, \"orderHash\">;\n\ntype CancelOrderEventCallbacks = {\n onTxSent?: (options: { chainId: SupportedChainId; txHash: Hash }) => void;\n onMutate?: (variables: MinVars) => void;\n onSuccess?: (data: CancelLimitOrderAndWaitReturn, variables: MinVars) => void;\n onError?: (error: Error, variables: MinVars) => void;\n};\n/*\nCallbacks in useMutation options (onSuccess, onError, onSettled):\n - will run even if the component unmounts (tied to the mutation instance).\nCallbacks passed to mutate() or mutateAsync():\n - will not run if the component unmounts before the mutation finishes (tied to the component).\n\nSo always use useMutation callbacks if changing something outside of the immediate component\n*/\nexport function useCancelOtcOrderEventCallbacks(\n order?: Pick<LimitOrderFromApi, \"orderHash\" | \"type\" | \"chainId\">\n): CancelOrderEventCallbacks {\n const { onCancelOrder } = useWidgetEvents();\n\n if (!order) return {};\n\n const params = {\n orderHash: order.orderHash,\n orderType: \"OTC\",\n orderSubType: order.type,\n } as const;\n\n const chainId = order.chainId as SupportedChainId;\n\n return {\n onTxSent: ({ chainId, txHash }) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:sentTx\",\n params: {\n ...params,\n txHash,\n chainId,\n },\n },\n });\n },\n onMutate: (variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:request\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n },\n },\n });\n },\n onSuccess: (data, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:confirmed\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n txHash: data.transactionHash,\n txReceipt: data,\n chainId,\n },\n },\n });\n },\n onError: (error: Error, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:failed\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n error: error as Error,\n },\n },\n });\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useCancelLimitOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","MinViemClient","LimitOrderFromApi","TxSendOverrides","assert","Address","Hash","TransactionReceipt","SupportedChainId","useAwaitTx","useEnsureTxReceipt","limitOrderByHashQueryKey","limitOrdersQueryKey","useWidgetEvents","limitOrderRequiredBalanceQueryKey","CancelOrderStepKey","CancelLimitOrderReturn","CancelLimitOrderAndWaitReturn","CancelLimitOrderInput","orderHash","overrides","signal","AbortSignal","CancelLimitOrderAndWaitInput","onTxSent","params","chainId","transactionHash","receiptPromise","Promise","CancelLimitOrderMutationOptions","Omit","Error","CancelLimitOrderAndWaitMutationOptions","CancelLimitOrderMutInput","mutationOptions","account","client","CancelLimitOrderAndWaitMutInput","CANCEL_LIMIT_ORDER_MUTATION_KEY","CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY","useCancelLimitOrder","t0","$","_c","t1","sdk","t2","Symbol","for","t3","t4","throwIfAborted","cancelLimitOrder","mutationKey","mutationFn","CancelOTCOrderQueryResult","CancelLimitOrderAndWaitResult","cancelOtcOrder","txHash","receipt","result","isPending","isError","isSuccess","error","reset","step","useCancelOtcOrderAndWait","ensureTxReceipt","mutateAsync","data","queryClient","hash","t5","variables","onMutationResult","context","invalidateQueries","queryKey","maker","type","exact","onSuccess","t6","t7","MinVars","Pick","CancelOrderEventCallbacks","options","onMutate","onError","useCancelOtcOrderEventCallbacks","order","onCancelOrder","orderType","orderSubType","const","chainId_0","event","name","variables_0","txReceipt","variables_1"],"sources":["../../../../src/hooks/otc/mutations/useCancelLimitOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n MinViemClient,\n LimitOrderFromApi,\n TxSendOverrides,\n} from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport {\n limitOrderByHashQueryKey,\n limitOrdersQueryKey,\n} from \"../queries/useLimitOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { limitOrderRequiredBalanceQueryKey } from \"../queries/useLimitOrderRequiredBalance\";\nimport type { CancelOrderStepKey } from \"@/components/widget/TradeOverview/steps\";\n\ntype CancelLimitOrderReturn = `0x${string}`;\ntype CancelLimitOrderAndWaitReturn = TransactionReceipt;\n\ntype CancelLimitOrderInput = {\n orderHash: string;\n overrides?: TxSendOverrides;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype CancelLimitOrderAndWaitInput = CancelLimitOrderInput & {\n onTxSent?: (params: {\n chainId: SupportedChainId;\n transactionHash: Hash;\n receiptPromise: Promise<TransactionReceipt>;\n }) => void;\n};\n\ntype CancelLimitOrderMutationOptions = Omit<\n UseMutationOptions<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n >,\n \"mutationFn\"\n>;\ntype CancelLimitOrderAndWaitMutationOptions = Omit<\n UseMutationOptions<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CancelLimitOrderMutInput = {\n mutationOptions?: CancelLimitOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\ntype CancelLimitOrderAndWaitMutInput = {\n mutationOptions?: CancelLimitOrderAndWaitMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const CANCEL_LIMIT_ORDER_MUTATION_KEY = \"cancelLimitOrder\";\nexport const CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY =\n \"cancelLimitOrderAndWait\";\n\nexport function useCancelLimitOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelLimitOrderMutInput): UseMutationResult<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n\n return useMutation<\n CancelLimitOrderReturn,\n Error,\n CancelLimitOrderInput,\n void\n >({\n mutationKey: [CANCEL_LIMIT_ORDER_MUTATION_KEY],\n mutationFn: ({ orderHash, overrides, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"cancelLimitOrder\" in sdk,\n \"cancelLimitOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access cancelLimitOrder functionality\n\n return sdk.cancelLimitOrder(orderHash, overrides, { signal });\n },\n ...mutationOptions,\n });\n}\n\ntype CancelOTCOrderQueryResult = UseMutationResult<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n>;\n\ntype CancelLimitOrderAndWaitResult = {\n cancelOtcOrder: CancelOTCOrderQueryResult[\"mutateAsync\"];\n txHash?: Hash;\n receipt?: TransactionReceipt;\n result: CancelOTCOrderQueryResult[\"data\"];\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n reset: () => void;\n step?: CancelOrderStepKey;\n};\n\nexport function useCancelOtcOrderAndWait({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelLimitOrderAndWaitMutInput): CancelLimitOrderAndWaitResult {\n const ensureTxReceipt = useEnsureTxReceipt();\n const { mutateAsync, data: txHash } = useCancelLimitOrder({\n chainId,\n account,\n client,\n });\n const queryClient = useQueryClient();\n\n const { data: receipt } = useAwaitTx({\n chainId,\n hash: txHash,\n });\n\n const {\n isPending,\n isError,\n isSuccess,\n error,\n mutateAsync: cancelOtcOrder,\n data: result,\n reset,\n } = useMutation<\n CancelLimitOrderAndWaitReturn,\n Error,\n CancelLimitOrderAndWaitInput,\n void\n >({\n mutationKey: [CANCEL_LIMIT_ORDER_AND_WAIT_MUTATION_KEY],\n mutationFn: async ({ orderHash, overrides, onTxSent, signal }) => {\n const transactionHash = await mutateAsync({\n orderHash,\n overrides,\n signal,\n });\n\n const receiptPromise = ensureTxReceipt({\n chainId,\n hash: transactionHash,\n });\n\n onTxSent?.({\n chainId,\n transactionHash,\n receiptPromise,\n });\n\n return receiptPromise;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey(\n {\n maker: account, // only maker can cancel\n type: \"P2P\",\n },\n chainId\n ),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderByHashQueryKey(variables.orderHash),\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n }),\n exact: false,\n });\n\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n\n let step: CancelOrderStepKey | undefined;\n if (isPending) {\n step = \"order-cancellation-approval\";\n if (txHash) {\n step = \"order-cancellation-execution\";\n }\n } else if (isSuccess) {\n // cancelAndWithdraw tx mined\n step = \"order-cancellation-success\";\n } else if (isError) {\n step = \"order-cancellation-error\";\n }\n\n return {\n cancelOtcOrder,\n txHash,\n receipt,\n isPending: isPending,\n isError: isError,\n isSuccess: isSuccess,\n error,\n result,\n reset,\n step,\n };\n}\n\ntype MinVars = Pick<CancelLimitOrderInput, \"orderHash\">;\n\ntype CancelOrderEventCallbacks = {\n onTxSent?: (options: { chainId: SupportedChainId; txHash: Hash }) => void;\n onMutate?: (variables: MinVars) => void;\n onSuccess?: (data: CancelLimitOrderAndWaitReturn, variables: MinVars) => void;\n onError?: (error: Error, variables: MinVars) => void;\n};\n/*\nCallbacks in useMutation options (onSuccess, onError, onSettled):\n - will run even if the component unmounts (tied to the mutation instance).\nCallbacks passed to mutate() or mutateAsync():\n - will not run if the component unmounts before the mutation finishes (tied to the component).\n\nSo always use useMutation callbacks if changing something outside of the immediate component\n*/\nexport function useCancelOtcOrderEventCallbacks(\n order?: Pick<LimitOrderFromApi, \"orderHash\" | \"type\" | \"chainId\">\n): CancelOrderEventCallbacks {\n const { onCancelOrder } = useWidgetEvents();\n\n if (!order) return {};\n\n const params = {\n orderHash: order.orderHash,\n orderType: \"OTC\",\n orderSubType: order.type,\n } as const;\n\n const chainId = order.chainId as SupportedChainId;\n\n return {\n onTxSent: ({ chainId, txHash }) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:sentTx\",\n params: {\n ...params,\n txHash,\n chainId,\n },\n },\n });\n },\n onMutate: (variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:request\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n },\n },\n });\n },\n onSuccess: (data, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:confirmed\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n txHash: data.transactionHash,\n txReceipt: data,\n chainId,\n },\n },\n });\n },\n onError: (error: Error, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:failed\",\n params: {\n ...params,\n orderHash: variables.orderHash,\n error: error as Error,\n },\n },\n });\n },\n };\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateLimitOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","BuildLimitOrderInput","LimitOrderFromApi","MinViemClient","assert","MarkRequired","Address","orderInputWithTaker","limitOrdersQueryKey","SupportedChainId","limitOrderRequiredBalanceQueryKey","CreateLimitOrderParams","CreateLimitOrderReturn","CreateLimitOrderInput","orderInput","signal","AbortSignal","CreateLimitOrderMutationOptions","Omit","Error","CreateLimitOrderMutInput","mutationOptions","chainId","account","client","LIMIT_ORDER_MUTATION_KEY","useCreateLimitOrder","t0","$","_c","t1","sdk","queryClient","t2","Symbol","for","t3","t4","throwIfAborted","signableTypedData","buildLimitOrder","signature","signLimitOrder","orderFromAPI","postP2POrder","data","variables","onMutationResult","context","invalidateQueries","queryKey","maker","type","exact","tokenAddress","makerAsset","onSuccess","t5","mutationKey","mutationFn"],"sources":["../../../../src/hooks/otc/mutations/useCreateLimitOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n BuildLimitOrderInput,\n LimitOrderFromApi,\n MinViemClient,\n} from \"@velora-dex/sdk\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport { orderInputWithTaker } from \"./utils\";\nimport { limitOrdersQueryKey } from \"../queries/useLimitOrders\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitOrderRequiredBalanceQueryKey } from \"../queries/useLimitOrderRequiredBalance\";\n\ntype CreateLimitOrderParams = MarkRequired<\n BuildLimitOrderInput,\n \"taker\" // do not allow creating legacy limit orders\n>;\ntype CreateLimitOrderReturn = LimitOrderFromApi;\n\ntype CreateLimitOrderInput = {\n orderInput: CreateLimitOrderParams;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype CreateLimitOrderMutationOptions = Omit<\n UseMutationOptions<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CreateLimitOrderMutInput = {\n mutationOptions?: CreateLimitOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const LIMIT_ORDER_MUTATION_KEY = \"createLimitOrder\";\n\nexport function useCreateLimitOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CreateLimitOrderMutInput): UseMutationResult<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n return useMutation<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n >({\n mutationKey: [LIMIT_ORDER_MUTATION_KEY],\n mutationFn: async ({ orderInput, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"signLimitOrder\" in sdk,\n \"signLimitOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access signLimitOrder functionality\n\n assert(\n orderInputWithTaker(orderInput),\n \"taker must be provided and not be zero address\"\n );\n\n // Step 1: Build the Limit order\n const signableTypedData = await sdk.buildLimitOrder(orderInput, {\n signal,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 2: Sign the Limit order\n const signature = await sdk.signLimitOrder(signableTypedData);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 3: Submit the Limit order to the API\n const orderFromAPI = await sdk.postP2POrder(\n { ...signableTypedData.data, signature },\n { signal }\n );\n\n return orderFromAPI;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey({ maker: account, type: \"P2P\" }, chainId),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress: data.makerAsset,\n }),\n exact: false,\n });\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n}\n"],"mappings":";;;;;;;;AA+CA,IAAa6B,IAA2B;AAExC,SAAOC,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA6B,EAAAR,oBAAAC,YAAAC,YAAAC,cAAAG,GAKTG;AAAA,CAAAF,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAJ,KAMSM,IAAA;EAAAR;EAAAC;EAAAC;EAA4B,EAAAI,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAJ,GAAAI,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAA9D,IAAA,EAAAG,WAAgBnC,EAAkBkC,EAA6B,EAC/DE,IAAoBlC,GAAgB,EAACmC;AAAA,CAAAL,EAAA,OAAAM,OAAAC,IAAA,4BAAA,IAQtBF,IAAA,CAACR,EAAyB,EAAAG,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAQ;AAAA,CAAAR,EAAA,OAAAG,IAsCtCK,IAAAR,EAAA,MArCWQ,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAvB,eAAAC,cAAAsB;AAWjBjC,EATAW,GAAMuB,gBAAkB,EAExBlC,EACE,oBAAoB2B,GACpB,8CACD,EAID3B,EACEG,EAAoBO,EAAW,EAC/B,iDACD;EAGD,IAAAyB,IAA0B,MAAMR,EAAGS,gBAAiB1B,GAAY,EAAAC,WAE/D,CAAC;AAGFA,KAAMuB,gBAAkB;EAGxB,IAAAG,IAAkB,MAAMV,EAAGW,eAAgBH,EAAkB;AAS3D,SANFxB,GAAMuB,gBAAkB,EAGH,MAAMP,EAAGa,aAC5B;GAAA,GAAKL,EAAiBM;GAAKJ;GAAa,EACxC,EAAA1B,WACF,CAAC;IAGFa,EAAA,KAAAG,GAAAH,EAAA,KAAAQ;CAAA,IAAAC;AAAA,CAAAT,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAP,KAAAO,EAAA,QAAAI,KAEUK,KAAAQ,GAAAC,GAAAC,GAAAC,MAAA;AAaT3B,EAZAW,EAAWiB,kBAAmB;GAAAC,UAClB1C,EAAoB;IAAA2C,OAAS5B;IAAO6B,MAAQ;IAAO,EAAE9B,EAAQ;GAAA+B,OAChE;GACR,CAAC,EACFrB,EAAWiB,kBAAmB;GAAAC,UAClBxC,EAAkC;IAAAY;IAAAC;IAAA+B,cAG5BT,EAAIU;IACnB,CAAC;GAAAF,OACK;GACR,CAAC,EACFhC,GAAemC,YAAcX,GAAMC,GAAWC,GAAkBC,EAAQ;IACzEpB,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAP,GAAAO,EAAA,MAAAI,GAAAJ,EAAA,MAAAS,KAAAA,IAAAT,EAAA;CAAA,IAAA6B;AACF,QADE7B,EAAA,QAAAP,KAAAO,EAAA,QAAAQ,KAAAR,EAAA,QAAAS,KAvDDoB,IAAA;EAAAC,aACazB;EAA0B0B,YAC3BvB;EAqCX,GACEf;EAAemC,WACPnB;EAeZ,EAAAT,EAAA,MAAAP,GAAAO,EAAA,MAAAQ,GAAAR,EAAA,MAAAS,GAAAT,EAAA,MAAA6B,KAAAA,IAAA7B,EAAA,KA7DM/B,EAKL4D,EAwDA"}
1
+ {"version":3,"file":"useCreateLimitOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","BuildLimitOrderInput","LimitOrderFromApi","MinViemClient","assert","MarkRequired","Address","orderInputWithTaker","limitOrdersQueryKey","SupportedChainId","limitOrderRequiredBalanceQueryKey","CreateLimitOrderParams","CreateLimitOrderReturn","CreateLimitOrderInput","orderInput","signal","AbortSignal","CreateLimitOrderMutationOptions","Omit","Error","CreateLimitOrderMutInput","mutationOptions","chainId","account","client","LIMIT_ORDER_MUTATION_KEY","useCreateLimitOrder","t0","$","_c","t1","sdk","queryClient","t2","Symbol","for","t3","t4","throwIfAborted","signableTypedData","buildLimitOrder","signature","signLimitOrder","orderFromAPI","postP2POrder","data","variables","onMutationResult","context","invalidateQueries","queryKey","maker","type","exact","tokenAddress","makerAsset","onSuccess","t5","mutationKey","mutationFn"],"sources":["../../../../src/hooks/otc/mutations/useCreateLimitOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n BuildLimitOrderInput,\n LimitOrderFromApi,\n MinViemClient,\n} from \"@velora-dex/sdk\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport { orderInputWithTaker } from \"./utils\";\nimport { limitOrdersQueryKey } from \"../queries/useLimitOrders\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitOrderRequiredBalanceQueryKey } from \"../queries/useLimitOrderRequiredBalance\";\n\ntype CreateLimitOrderParams = MarkRequired<\n BuildLimitOrderInput,\n \"taker\" // do not allow creating legacy limit orders\n>;\ntype CreateLimitOrderReturn = LimitOrderFromApi;\n\ntype CreateLimitOrderInput = {\n orderInput: CreateLimitOrderParams;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype CreateLimitOrderMutationOptions = Omit<\n UseMutationOptions<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CreateLimitOrderMutInput = {\n mutationOptions?: CreateLimitOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const LIMIT_ORDER_MUTATION_KEY = \"createLimitOrder\";\n\nexport function useCreateLimitOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: CreateLimitOrderMutInput): UseMutationResult<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n return useMutation<\n CreateLimitOrderReturn,\n Error,\n CreateLimitOrderInput,\n void\n >({\n mutationKey: [LIMIT_ORDER_MUTATION_KEY],\n mutationFn: async ({ orderInput, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"signLimitOrder\" in sdk,\n \"signLimitOrder is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access signLimitOrder functionality\n\n assert(\n orderInputWithTaker(orderInput),\n \"taker must be provided and not be zero address\"\n );\n\n // Step 1: Build the Limit order\n const signableTypedData = await sdk.buildLimitOrder(orderInput, {\n signal,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 2: Sign the Limit order\n const signature = await sdk.signLimitOrder(signableTypedData);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n // Step 3: Submit the Limit order to the API\n const orderFromAPI = await sdk.postP2POrder(\n { ...signableTypedData.data, signature },\n { signal }\n );\n\n return orderFromAPI;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey({ maker: account, type: \"P2P\" }, chainId),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress: data.makerAsset,\n }),\n exact: false,\n });\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n}\n"],"mappings":";;;;;;;;AA+CA,IAAa6B,IAA2B;AAExC,SAAOC,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA6B,EAAAR,oBAAAC,YAAAC,YAAAC,cAAAG,GAKTG;CAAA,AAAAF,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAJ,KAMSM,IAAA;EAAAR;EAAAC;EAAAC;EAA4B,EAAAI,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAJ,GAAAI,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAA9D,IAAA,EAAAG,WAAgBnC,EAAkBkC,EAA6B,EAC/DE,IAAoBlC,GAAgB,EAACmC;CAAA,AAAAL,EAAA,OAAAM,OAAAC,IAAA,4BAAA,IAQtBF,IAAA,CAACR,EAAyB,EAAAG,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAQ;CAAA,AAAAR,EAAA,OAAAG,IAsCtCK,IAAAR,EAAA,MArCWQ,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAvB,eAAAC,cAAAsB;EAWjBjC,AATAW,GAAMuB,gBAAkB,EAExBlC,EACE,oBAAoB2B,GACpB,8CACD,EAID3B,EACEG,EAAoBO,EAAW,EAC/B,iDACD;EAGD,IAAAyB,IAA0B,MAAMR,EAAGS,gBAAiB1B,GAAY,EAAAC,WAE/D,CAAC;EAGFA,GAAMuB,gBAAkB;EAGxB,IAAAG,IAAkB,MAAMV,EAAGW,eAAgBH,EAAkB;EAS3D,OANFxB,GAAMuB,gBAAkB,EAQjBK,MALoBZ,EAAGa,aAC5B;GAAA,GAAKL,EAAiBM;GAAKJ;GAAa,EACxC,EAAA1B,WACF,CAAC;IAGFa,EAAA,KAAAG,GAAAH,EAAA,KAAAQ;CAAA,IAAAC;CAAA,AAAAT,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAP,KAAAO,EAAA,QAAAI,KAEUK,KAAAQ,GAAAC,GAAAC,GAAAC,MAAA;EAaT3B,AAZAW,EAAWiB,kBAAmB;GAAAC,UAClB1C,EAAoB;IAAA2C,OAAS5B;IAAO6B,MAAQ;IAAO,EAAE9B,EAAQ;GAAA+B,OAChE;GACR,CAAC,EACFrB,EAAWiB,kBAAmB;GAAAC,UAClBxC,EAAkC;IAAAY;IAAAC;IAAA+B,cAG5BT,EAAIU;IACnB,CAAC;GAAAF,OACK;GACR,CAAC,EACFhC,GAAemC,YAAcX,GAAMC,GAAWC,GAAkBC,EAAQ;IACzEpB,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAP,GAAAO,EAAA,MAAAI,GAAAJ,EAAA,MAAAS,KAAAA,IAAAT,EAAA;CAAA,IAAA6B;CACF,OADE7B,EAAA,QAAAP,KAAAO,EAAA,QAAAQ,KAAAR,EAAA,QAAAS,KAvDDoB,IAAA;EAAAC,aACazB;EAA0B0B,YAC3BvB;EAqCX,GACEf;EAAemC,WACPnB;EAeZ,EAAAT,EAAA,MAAAP,GAAAO,EAAA,MAAAQ,GAAAR,EAAA,MAAAS,GAAAT,EAAA,MAAA6B,KAAAA,IAAA7B,EAAA,KA7DM/B,EAKL4D,EAwDA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFillOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","MinViemClient","TxSendOverrides","FillOrderDirectlyFunctions","assert","Address","TransactionReceipt","SupportedChainId","useEnsureTxReceipt","TxSentObject","limitOrdersQueryKey","FillOrderReturn","FillOrderAndWaitReturn","OrderFillData","Parameters","FillOrderInput","orderFillData","overrides","signal","AbortSignal","FillOrderAndWaitInput","onTxSent","txSent","FillOrderMutationOptions","Omit","Error","FillOrderAndWaitMutationOptions","FillOrderMutInput","mutationOptions","chainId","account","client","FillOrderAndWaitMutInput","useFillOrder","t0","$","_c","t1","sdk","t2","Symbol","for","t3","t4","throwIfAborted","fillOrderDirectly","mutationKey","mutationFn","useFillOrderAndWait","ensureTxReceipt","fillTx","mutateAsync","mutate","queryClient","t5","txHash","receiptPromise","hash","transactionHash","action","transactionSpecificData","filledOrder","order","data","variables","onMutationResult","context","invalidateQueries","queryKey","taker","type","exact","onSuccess","t6","mutationResult","t7"],"sources":["../../../../src/hooks/otc/mutations/useFillOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n MinViemClient,\n TxSendOverrides,\n FillOrderDirectlyFunctions,\n} from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address, TransactionReceipt } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { type TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { limitOrdersQueryKey } from \"../queries/useLimitOrders\";\n\ntype FillOrderReturn = `0x${string}`;\ntype FillOrderAndWaitReturn = TransactionReceipt;\n\nexport type OrderFillData = Parameters<\n FillOrderDirectlyFunctions<FillOrderReturn>[\"fillOrderDirectly\"]\n>[0];\n\ntype FillOrderInput = {\n orderFillData: OrderFillData;\n overrides?: TxSendOverrides;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype FillOrderAndWaitInput = FillOrderInput & {\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\ntype FillOrderMutationOptions = Omit<\n UseMutationOptions<FillOrderReturn, Error, FillOrderInput, void>,\n \"mutationFn\"\n>;\ntype FillOrderAndWaitMutationOptions = Omit<\n UseMutationOptions<FillOrderAndWaitReturn, Error, FillOrderInput, void>,\n \"mutationFn\"\n>;\n\ntype FillOrderMutInput = {\n mutationOptions?: FillOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\ntype FillOrderAndWaitMutInput = {\n mutationOptions?: FillOrderAndWaitMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport function useFillOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: FillOrderMutInput): UseMutationResult<\n FillOrderReturn,\n Error,\n FillOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n\n return useMutation<FillOrderReturn, Error, FillOrderInput, void>({\n mutationKey: [\"fillOrder\"],\n mutationFn: ({ orderFillData, overrides, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"fillOrderDirectly\" in sdk,\n \"fillOrderDirectly is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access fillOrderDirectly\n\n return sdk.fillOrderDirectly(orderFillData, overrides, { signal });\n },\n ...mutationOptions,\n });\n}\n\nexport function useFillOrderAndWait({\n mutationOptions,\n chainId,\n account,\n client,\n}: FillOrderAndWaitMutInput): UseMutationResult<\n FillOrderAndWaitReturn,\n Error,\n FillOrderAndWaitInput,\n void\n> & {\n fillTx: Omit<\n UseMutationResult<FillOrderReturn, Error, FillOrderInput, void>,\n \"mutate\" | \"mutateAsync\"\n >;\n} {\n const ensureTxReceipt = useEnsureTxReceipt();\n const { mutate, mutateAsync, ...fillTx } = useFillOrder({\n chainId,\n account,\n client,\n });\n const queryClient = useQueryClient();\n\n const mutationResult = useMutation<\n FillOrderAndWaitReturn,\n Error,\n FillOrderAndWaitInput,\n void\n >({\n mutationKey: [\"fillOrderAndWait\"],\n mutationFn: async ({ orderFillData, overrides, signal, onTxSent }) => {\n const txHash = await mutateAsync({ orderFillData, overrides, signal });\n\n const receiptPromise = ensureTxReceipt({ chainId, hash: txHash });\n\n onTxSent?.({\n chainId,\n transactionHash: txHash,\n action: \"fillOtcOrder\",\n receiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: orderFillData.order,\n },\n });\n\n return receiptPromise;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey({ taker: account, type: \"P2P\" }, chainId),\n exact: false,\n });\n\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n\n return { ...mutationResult, fillTx };\n}\n"],"mappings":";;;;;AA2DA,SAAOqC,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAsB,EAAAR,oBAAAC,YAAAC,YAAAC,cAAAG,GAKTG;AAAA,CAAAF,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAJ,KAMgBM,IAAA;EAAAR;EAAAC;EAAAC;EAA4B,EAAAI,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAJ,GAAAI,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAA9D,IAAA,EAAAG,WAAgB1C,EAAkByC,EAA6B,EAACE;AAAA,CAAAJ,EAAA,OAAAK,OAAAC,IAAA,4BAAA,IAGjDF,IAAA,CAAC,YAAY,EAAAJ,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAAA,IAAAO;AAAA,CAAAP,EAAA,OAAAG,IAazBI,IAAAP,EAAA,MAZWO,KAAAC,MAAA;EAAC,IAAA,EAAA3B,kBAAAC,cAAAC,cAAAyB;AAOV,SALDzB,GAAM0B,gBAAkB,EAExBxC,EACE,uBAAuBkC,GACvB,iDACD,EAIMA,EAAGO,kBAAmB7B,GAAeC,GAAW,EAAAC,WAAU,CAAC;IACnEiB,EAAA,KAAAG,GAAAH,EAAA,KAAAO;CAAA,IAAAC;AAEF,QAFER,EAAA,OAAAP,KAAAO,EAAA,OAAAO,KAd8DC,IAAA;EAAAG,aAClDP;EAAaQ,YACdL;EAYX,GACEd;EACJ,EAAAO,EAAA,KAAAP,GAAAO,EAAA,KAAAO,GAAAP,EAAA,KAAAQ,KAAAA,IAAAR,EAAA,IAhBMtC,EAA0D8C,EAgB/D"}
1
+ {"version":3,"file":"useFillOrder.js","names":["useLimitOrdersSDK","useMutation","useQueryClient","UseMutationOptions","UseMutationResult","MinViemClient","TxSendOverrides","FillOrderDirectlyFunctions","assert","Address","TransactionReceipt","SupportedChainId","useEnsureTxReceipt","TxSentObject","limitOrdersQueryKey","FillOrderReturn","FillOrderAndWaitReturn","OrderFillData","Parameters","FillOrderInput","orderFillData","overrides","signal","AbortSignal","FillOrderAndWaitInput","onTxSent","txSent","FillOrderMutationOptions","Omit","Error","FillOrderAndWaitMutationOptions","FillOrderMutInput","mutationOptions","chainId","account","client","FillOrderAndWaitMutInput","useFillOrder","t0","$","_c","t1","sdk","t2","Symbol","for","t3","t4","throwIfAborted","fillOrderDirectly","mutationKey","mutationFn","useFillOrderAndWait","ensureTxReceipt","fillTx","mutateAsync","mutate","queryClient","t5","txHash","receiptPromise","hash","transactionHash","action","transactionSpecificData","filledOrder","order","data","variables","onMutationResult","context","invalidateQueries","queryKey","taker","type","exact","onSuccess","t6","mutationResult","t7"],"sources":["../../../../src/hooks/otc/mutations/useFillOrder.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n MinViemClient,\n TxSendOverrides,\n FillOrderDirectlyFunctions,\n} from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address, TransactionReceipt } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { type TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { limitOrdersQueryKey } from \"../queries/useLimitOrders\";\n\ntype FillOrderReturn = `0x${string}`;\ntype FillOrderAndWaitReturn = TransactionReceipt;\n\nexport type OrderFillData = Parameters<\n FillOrderDirectlyFunctions<FillOrderReturn>[\"fillOrderDirectly\"]\n>[0];\n\ntype FillOrderInput = {\n orderFillData: OrderFillData;\n overrides?: TxSendOverrides;\n signal?: AbortSignal; // since we have separate actions, we can abort in-between\n};\n\ntype FillOrderAndWaitInput = FillOrderInput & {\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\ntype FillOrderMutationOptions = Omit<\n UseMutationOptions<FillOrderReturn, Error, FillOrderInput, void>,\n \"mutationFn\"\n>;\ntype FillOrderAndWaitMutationOptions = Omit<\n UseMutationOptions<FillOrderAndWaitReturn, Error, FillOrderInput, void>,\n \"mutationFn\"\n>;\n\ntype FillOrderMutInput = {\n mutationOptions?: FillOrderMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\ntype FillOrderAndWaitMutInput = {\n mutationOptions?: FillOrderAndWaitMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport function useFillOrder({\n mutationOptions,\n chainId,\n account,\n client,\n}: FillOrderMutInput): UseMutationResult<\n FillOrderReturn,\n Error,\n FillOrderInput,\n void\n> {\n const { sdk } = useLimitOrdersSDK({ chainId, account, client });\n\n return useMutation<FillOrderReturn, Error, FillOrderInput, void>({\n mutationKey: [\"fillOrder\"],\n mutationFn: ({ orderFillData, overrides, signal }) => {\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n assert(\n \"fillOrderDirectly\" in sdk,\n \"fillOrderDirectly is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access fillOrderDirectly\n\n return sdk.fillOrderDirectly(orderFillData, overrides, { signal });\n },\n ...mutationOptions,\n });\n}\n\nexport function useFillOrderAndWait({\n mutationOptions,\n chainId,\n account,\n client,\n}: FillOrderAndWaitMutInput): UseMutationResult<\n FillOrderAndWaitReturn,\n Error,\n FillOrderAndWaitInput,\n void\n> & {\n fillTx: Omit<\n UseMutationResult<FillOrderReturn, Error, FillOrderInput, void>,\n \"mutate\" | \"mutateAsync\"\n >;\n} {\n const ensureTxReceipt = useEnsureTxReceipt();\n const { mutate, mutateAsync, ...fillTx } = useFillOrder({\n chainId,\n account,\n client,\n });\n const queryClient = useQueryClient();\n\n const mutationResult = useMutation<\n FillOrderAndWaitReturn,\n Error,\n FillOrderAndWaitInput,\n void\n >({\n mutationKey: [\"fillOrderAndWait\"],\n mutationFn: async ({ orderFillData, overrides, signal, onTxSent }) => {\n const txHash = await mutateAsync({ orderFillData, overrides, signal });\n\n const receiptPromise = ensureTxReceipt({ chainId, hash: txHash });\n\n onTxSent?.({\n chainId,\n transactionHash: txHash,\n action: \"fillOtcOrder\",\n receiptPromise,\n transactionSpecificData: {\n action: \"fillOtcOrder\",\n filledOrder: orderFillData.order,\n },\n });\n\n return receiptPromise;\n },\n ...mutationOptions,\n onSuccess: (data, variables, onMutationResult, context) => {\n queryClient.invalidateQueries({\n queryKey: limitOrdersQueryKey({ taker: account, type: \"P2P\" }, chainId),\n exact: false,\n });\n\n mutationOptions?.onSuccess?.(data, variables, onMutationResult, context);\n },\n });\n\n return { ...mutationResult, fillTx };\n}\n"],"mappings":";;;;;AA2DA,SAAOqC,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAsB,EAAAR,oBAAAC,YAAAC,YAAAC,cAAAG,GAKTG;CAAA,AAAAF,EAAA,OAAAL,KAAAK,EAAA,OAAAN,KAAAM,EAAA,OAAAJ,KAMgBM,IAAA;EAAAR;EAAAC;EAAAC;EAA4B,EAAAI,EAAA,KAAAL,GAAAK,EAAA,KAAAN,GAAAM,EAAA,KAAAJ,GAAAI,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAA9D,IAAA,EAAAG,WAAgB1C,EAAkByC,EAA6B,EAACE;CAAA,AAAAJ,EAAA,OAAAK,OAAAC,IAAA,4BAAA,IAGjDF,IAAA,CAAC,YAAY,EAAAJ,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAAA,IAAAO;CAAA,AAAAP,EAAA,OAAAG,IAazBI,IAAAP,EAAA,MAZWO,KAAAC,MAAA;EAAC,IAAA,EAAA3B,kBAAAC,cAAAC,cAAAyB;EAOV,OALDzB,GAAM0B,gBAAkB,EAExBxC,EACE,uBAAuBkC,GACvB,iDACD,EAIMA,EAAGO,kBAAmB7B,GAAeC,GAAW,EAAAC,WAAU,CAAC;IACnEiB,EAAA,KAAAG,GAAAH,EAAA,KAAAO;CAAA,IAAAC;CAEF,OAFER,EAAA,OAAAP,KAAAO,EAAA,OAAAO,KAd8DC,IAAA;EAAAG,aAClDP;EAAaQ,YACdL;EAYX,GACEd;EACJ,EAAAO,EAAA,KAAAP,GAAAO,EAAA,KAAAO,GAAAP,EAAA,KAAAQ,KAAAA,IAAAR,EAAA,IAhBMtC,EAA0D8C,EAgB/D"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["BuildLimitOrderInput","zeroAddress","MarkRequired","orderInputWithTaker","orderInput","taker"],"sources":["../../../../src/hooks/otc/mutations/utils.ts"],"sourcesContent":["import type { BuildLimitOrderInput } from \"@velora-dex/sdk\";\nimport { zeroAddress } from \"viem\";\nimport type { MarkRequired } from \"ts-essentials\";\n\nexport function orderInputWithTaker(\n orderInput: BuildLimitOrderInput\n): orderInput is MarkRequired<BuildLimitOrderInput, \"taker\"> {\n return !!orderInput.taker && orderInput.taker !== zeroAddress;\n}\n"],"mappings":";;AAIA,SAAgBG,EACdC,GAC2D;AAC3D,QAAO,CAAC,CAACA,EAAWC,SAASD,EAAWC,UAAUJ"}
1
+ {"version":3,"file":"utils.js","names":["BuildLimitOrderInput","zeroAddress","MarkRequired","orderInputWithTaker","orderInput","taker"],"sources":["../../../../src/hooks/otc/mutations/utils.ts"],"sourcesContent":["import type { BuildLimitOrderInput } from \"@velora-dex/sdk\";\nimport { zeroAddress } from \"viem\";\nimport type { MarkRequired } from \"ts-essentials\";\n\nexport function orderInputWithTaker(\n orderInput: BuildLimitOrderInput\n): orderInput is MarkRequired<BuildLimitOrderInput, \"taker\"> {\n return !!orderInput.taker && orderInput.taker !== zeroAddress;\n}\n"],"mappings":";;AAIA,SAAgBG,EACdC,GAC2D;CAC3D,OAAO,CAAC,CAACA,EAAWC,SAASD,EAAWC,UAAUJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitOrderRequiredBalance.js","names":["useLimitOrdersSDK","assert","MarkRequired","useAccount","useChainId","useMinViemClient","useQuery","UseQueryOptions","UseQueryResult","isETHaddress","isAddress","Address","SupportedChainId","LONG_STALE_TIME_FOR_REACTIVENESS","LimitOrderRequiredBalanceReturn","Record","LimitOrderRequiredBalanceQueryParams","Omit","Error","TData","LimitOrderRequiredBalanceQueryKey","LimitOrderRequiredBalanceQueryResult","LimitOrderRequiredBalanceQueryInput","tokenAddress","query","base","chainId","account","useLimitOrderRequiredBalance","t0","$","_c","address","t1","minClient","t2","client","sdk","t3","limitOrderRequiredBalanceQueryKey","t4","t5","signal","getRequiredBalance","maker","token","enabled","t6","queryKey","queryFn","toLowerCase","const","OTCOrderRequiredAllowanceInput","amount","OTCOrderRequiredAllowanceResult","combinedAllowance","isLoading","useOTCOrderRequiredAllowance","data","balanceRequiredForCurrentOrders","staleTime","select","balanceRequired","BigInt","undefined"],"sources":["../../../../src/hooks/otc/queries/useLimitOrderRequiredBalance.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\n\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { isAddress, type Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\n// ============================================================================\n// Types for getRequiredBalance\n// ============================================================================\n\ntype LimitOrderRequiredBalanceReturn = Record<string, string>;\n\ntype LimitOrderRequiredBalanceQueryParams<\n TData = LimitOrderRequiredBalanceReturn,\n> = Omit<\n UseQueryOptions<\n LimitOrderRequiredBalanceReturn,\n Error,\n TData,\n LimitOrderRequiredBalanceQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrderRequiredBalanceQueryResult<\n TData = LimitOrderRequiredBalanceReturn,\n> = UseQueryResult<TData, Error>;\n\ntype LimitOrderRequiredBalanceQueryInput<\n TData = LimitOrderRequiredBalanceReturn,\n> = {\n tokenAddress?: string;\n query?: LimitOrderRequiredBalanceQueryParams<TData>;\n};\n\ntype LimitOrderRequiredBalanceQueryKey = [\n base: \"limit/getRequiredBalance\",\n { chainId: number; account?: Address; tokenAddress?: string },\n];\n\nexport function useLimitOrderRequiredBalance<\n TData = LimitOrderRequiredBalanceReturn,\n>({\n tokenAddress,\n query,\n}: LimitOrderRequiredBalanceQueryInput<TData>): LimitOrderRequiredBalanceQueryResult<TData> {\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const { sdk } = useLimitOrdersSDK({ chainId, client: minClient, account });\n\n return useQuery<\n LimitOrderRequiredBalanceReturn,\n Error,\n TData,\n LimitOrderRequiredBalanceQueryKey\n >({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n }),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(account, \"account is required\");\n\n return sdk.getRequiredBalance(\n { maker: account, token: tokenAddress },\n { signal }\n );\n },\n ...query,\n enabled:\n !!(chainId && account && sdk) &&\n // either no specific token given\n (!tokenAddress ||\n // or a non-ETH token with a valid address\n (isAddress(tokenAddress) && !isETHaddress(tokenAddress))) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n}: {\n chainId: SupportedChainId;\n account?: Address;\n tokenAddress?: string;\n}): LimitOrderRequiredBalanceQueryKey {\n return [\n \"limit/getRequiredBalance\",\n {\n chainId,\n account: account?.toLowerCase() as Address,\n tokenAddress: tokenAddress?.toLowerCase(),\n },\n ] as const;\n}\n\ntype OTCOrderRequiredAllowanceInput = {\n tokenAddress?: string;\n amount?: string | bigint;\n enabled: boolean;\n};\n\ntype OTCOrderRequiredAllowanceResult = {\n combinedAllowance?: bigint;\n isLoading: boolean;\n};\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: MarkRequired<OTCOrderRequiredAllowanceInput, \"amount\">): MarkRequired<\n OTCOrderRequiredAllowanceResult,\n \"combinedAllowance\"\n>;\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput & {\n amount: undefined;\n}): OTCOrderRequiredAllowanceResult & { combinedAllowance: undefined };\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput): OTCOrderRequiredAllowanceResult;\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput): OTCOrderRequiredAllowanceResult {\n const { data: balanceRequiredForCurrentOrders, isLoading } =\n useLimitOrderRequiredBalance({\n tokenAddress,\n query: {\n enabled: !!tokenAddress && enabled,\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n select: (data) => {\n if (!tokenAddress) return 0n;\n\n const balanceRequired = data[tokenAddress.toLowerCase()];\n if (!balanceRequired) return 0n;\n return BigInt(balanceRequired);\n },\n },\n });\n\n if (!amount || !enabled || !balanceRequiredForCurrentOrders)\n // don't include current orders allowance if not enabled\n return {\n isLoading,\n combinedAllowance: amount ? BigInt(amount) : undefined,\n };\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const combinedAllowance = BigInt(amount) + balanceRequiredForCurrentOrders;\n\n return {\n combinedAllowance,\n isLoading,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitOrderRequiredBalance.js","names":["useLimitOrdersSDK","assert","MarkRequired","useAccount","useChainId","useMinViemClient","useQuery","UseQueryOptions","UseQueryResult","isETHaddress","isAddress","Address","SupportedChainId","LONG_STALE_TIME_FOR_REACTIVENESS","LimitOrderRequiredBalanceReturn","Record","LimitOrderRequiredBalanceQueryParams","Omit","Error","TData","LimitOrderRequiredBalanceQueryKey","LimitOrderRequiredBalanceQueryResult","LimitOrderRequiredBalanceQueryInput","tokenAddress","query","base","chainId","account","useLimitOrderRequiredBalance","t0","$","_c","address","t1","minClient","t2","client","sdk","t3","limitOrderRequiredBalanceQueryKey","t4","t5","signal","getRequiredBalance","maker","token","enabled","t6","queryKey","queryFn","toLowerCase","const","OTCOrderRequiredAllowanceInput","amount","OTCOrderRequiredAllowanceResult","combinedAllowance","isLoading","useOTCOrderRequiredAllowance","data","balanceRequiredForCurrentOrders","staleTime","select","balanceRequired","BigInt","undefined"],"sources":["../../../../src/hooks/otc/queries/useLimitOrderRequiredBalance.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\n\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { isAddress, type Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\n// ============================================================================\n// Types for getRequiredBalance\n// ============================================================================\n\ntype LimitOrderRequiredBalanceReturn = Record<string, string>;\n\ntype LimitOrderRequiredBalanceQueryParams<\n TData = LimitOrderRequiredBalanceReturn,\n> = Omit<\n UseQueryOptions<\n LimitOrderRequiredBalanceReturn,\n Error,\n TData,\n LimitOrderRequiredBalanceQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrderRequiredBalanceQueryResult<\n TData = LimitOrderRequiredBalanceReturn,\n> = UseQueryResult<TData, Error>;\n\ntype LimitOrderRequiredBalanceQueryInput<\n TData = LimitOrderRequiredBalanceReturn,\n> = {\n tokenAddress?: string;\n query?: LimitOrderRequiredBalanceQueryParams<TData>;\n};\n\ntype LimitOrderRequiredBalanceQueryKey = [\n base: \"limit/getRequiredBalance\",\n { chainId: number; account?: Address; tokenAddress?: string },\n];\n\nexport function useLimitOrderRequiredBalance<\n TData = LimitOrderRequiredBalanceReturn,\n>({\n tokenAddress,\n query,\n}: LimitOrderRequiredBalanceQueryInput<TData>): LimitOrderRequiredBalanceQueryResult<TData> {\n const chainId = useChainId();\n const { address: account } = useAccount();\n const { minClient } = useMinViemClient({ chainId, account });\n\n const { sdk } = useLimitOrdersSDK({ chainId, client: minClient, account });\n\n return useQuery<\n LimitOrderRequiredBalanceReturn,\n Error,\n TData,\n LimitOrderRequiredBalanceQueryKey\n >({\n queryKey: limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n }),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(account, \"account is required\");\n\n return sdk.getRequiredBalance(\n { maker: account, token: tokenAddress },\n { signal }\n );\n },\n ...query,\n enabled:\n !!(chainId && account && sdk) &&\n // either no specific token given\n (!tokenAddress ||\n // or a non-ETH token with a valid address\n (isAddress(tokenAddress) && !isETHaddress(tokenAddress))) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function limitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n tokenAddress,\n}: {\n chainId: SupportedChainId;\n account?: Address;\n tokenAddress?: string;\n}): LimitOrderRequiredBalanceQueryKey {\n return [\n \"limit/getRequiredBalance\",\n {\n chainId,\n account: account?.toLowerCase() as Address,\n tokenAddress: tokenAddress?.toLowerCase(),\n },\n ] as const;\n}\n\ntype OTCOrderRequiredAllowanceInput = {\n tokenAddress?: string;\n amount?: string | bigint;\n enabled: boolean;\n};\n\ntype OTCOrderRequiredAllowanceResult = {\n combinedAllowance?: bigint;\n isLoading: boolean;\n};\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: MarkRequired<OTCOrderRequiredAllowanceInput, \"amount\">): MarkRequired<\n OTCOrderRequiredAllowanceResult,\n \"combinedAllowance\"\n>;\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput & {\n amount: undefined;\n}): OTCOrderRequiredAllowanceResult & { combinedAllowance: undefined };\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput): OTCOrderRequiredAllowanceResult;\nexport function useOTCOrderRequiredAllowance({\n tokenAddress,\n amount,\n enabled,\n}: OTCOrderRequiredAllowanceInput): OTCOrderRequiredAllowanceResult {\n const { data: balanceRequiredForCurrentOrders, isLoading } =\n useLimitOrderRequiredBalance({\n tokenAddress,\n query: {\n enabled: !!tokenAddress && enabled,\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n select: (data) => {\n if (!tokenAddress) return 0n;\n\n const balanceRequired = data[tokenAddress.toLowerCase()];\n if (!balanceRequired) return 0n;\n return BigInt(balanceRequired);\n },\n },\n });\n\n if (!amount || !enabled || !balanceRequiredForCurrentOrders)\n // don't include current orders allowance if not enabled\n return {\n isLoading,\n combinedAllowance: amount ? BigInt(amount) : undefined,\n };\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const combinedAllowance = BigInt(amount) + balanceRequiredForCurrentOrders;\n\n return {\n combinedAllowance,\n isLoading,\n };\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitOrders.js","names":["useLimitOrdersSDK","SupportedChainId","useQuery","UseQueryOptions","UseQueryResult","LimitOrderFromApi","LimitOrdersApiResponse","LimitOrdersUserParams","assert","DeepMarkOptional","useAccount","LimitOrderByHashParams","LimitOrderByHashReturn","LimitOrderByHashQueryParams","Omit","Error","TData","LimitOrderByHashQueryKey","LimitOrderByHashQueryResult","LimitOrderByHashQueryInput","orderParams","query","base","LimitOrdersParams","LimitOrdersReturn","LimitOrdersQueryParams","LimitOrdersQueryKey","LimitOrdersQueryResult","LimitOrdersQueryInput","chainId","UserLimitOrdersQueryInput","asMaker","useLimitOrderByHashQuery","t0","$","_c","t1","Symbol","for","sdk","t2","limitOrderByHashQueryKey","t3","t4","signal","order","getLimitOrderByHash","enabled","t5","queryKey","queryFn","useLimitOrdersQuery","limitOrdersQueryKey","maker","orders","getLimitOrders","taker","orders_0","useUserLimitOrdersQuery","_orderParams","address","account","const","orderParamsOverrides","toLowerCase","undefined"],"sources":["../../../../src/hooks/otc/queries/useLimitOrders.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type {\n LimitOrderFromApi,\n LimitOrdersApiResponse,\n LimitOrdersUserParams,\n} from \"@velora-dex/sdk\";\nimport { assert, type DeepMarkOptional } from \"ts-essentials\";\nimport { useAccount } from \"wagmi\";\n\n// ============================================================================\n// Types for getLimitOrderByHash\n// ============================================================================\n\ntype LimitOrderByHashParams = string; // orderHash\ntype LimitOrderByHashReturn = LimitOrderFromApi;\n\ntype LimitOrderByHashQueryParams<TData = LimitOrderByHashReturn> = Omit<\n UseQueryOptions<\n LimitOrderByHashReturn,\n Error,\n TData,\n LimitOrderByHashQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrderByHashQueryResult<TData = LimitOrderByHashReturn> =\n UseQueryResult<TData, Error>;\n\ntype LimitOrderByHashQueryInput<TData = LimitOrderByHashReturn> = {\n orderParams?: LimitOrderByHashParams;\n query?: LimitOrderByHashQueryParams<TData>;\n};\n\ntype LimitOrderByHashQueryKey = [\n base: \"limit/order-by-hash\",\n orderParams?: LimitOrderByHashParams,\n];\n\n// ============================================================================\n// Types for getLimitOrders\n// ============================================================================\n\ntype LimitOrdersParams = LimitOrdersUserParams;\ntype LimitOrdersReturn = LimitOrdersApiResponse;\n\ntype LimitOrdersQueryParams<TData = LimitOrdersReturn> = Omit<\n UseQueryOptions<LimitOrdersReturn, Error, TData, LimitOrdersQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrdersQueryResult<TData = LimitOrdersReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype LimitOrdersQueryInput<TData = LimitOrdersReturn> = {\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">;\n chainId: SupportedChainId;\n query?: LimitOrdersQueryParams<TData>;\n};\n\ntype UserLimitOrdersQueryInput<TData = LimitOrdersReturn> = {\n orderParams: Omit<LimitOrdersParams, \"taker\" | \"maker\">;\n chainId: SupportedChainId;\n asMaker: boolean;\n query?: LimitOrdersQueryParams<TData>;\n};\n\ntype LimitOrdersQueryKey = [\n base: \"limit/orders\",\n chainId: SupportedChainId,\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">,\n];\n\n// ============================================================================\n// Hook for getLimitOrderByHash\n// ============================================================================\n\nexport function useLimitOrderByHashQuery<TData = LimitOrderByHashReturn>({\n orderParams,\n query,\n}: LimitOrderByHashQueryInput<TData>): LimitOrderByHashQueryResult<TData> {\n const { sdk } = useLimitOrdersSDK({ chainId: 1 }); // chain doesn't matter\n\n return useQuery<\n LimitOrderByHashReturn,\n Error,\n TData,\n LimitOrderByHashQueryKey\n >({\n queryKey: limitOrderByHashQueryKey(orderParams),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(orderParams, \"orderParams is required\");\n const order = sdk.getLimitOrderByHash(orderParams, { signal });\n return order;\n },\n ...query,\n enabled: !!orderParams && (query?.enabled ?? true),\n });\n}\n\n// ============================================================================\n// Hook for getLimitOrders\n// ============================================================================\n\nexport function useLimitOrdersQuery<TData = LimitOrdersReturn>({\n orderParams,\n chainId,\n query,\n}: LimitOrdersQueryInput<TData>): LimitOrdersQueryResult<TData> {\n const { sdk } = useLimitOrdersSDK({ chainId });\n\n return useQuery<LimitOrdersReturn, Error, TData, LimitOrdersQueryKey>({\n queryKey: limitOrdersQueryKey(orderParams, chainId),\n queryFn: ({ signal }) => {\n if (\"maker\" in orderParams && orderParams.maker) {\n const orders = sdk.getLimitOrders(\n { ...orderParams, maker: orderParams.maker },\n { signal }\n );\n return orders;\n }\n\n if (\"taker\" in orderParams && orderParams.taker) {\n const orders = sdk.getLimitOrders(\n { ...orderParams, taker: orderParams.taker },\n { signal }\n );\n return orders;\n }\n\n throw new Error(\"Either maker or taker must be provided in orderParams\");\n },\n ...query,\n enabled:\n !!(\n (\"maker\" in orderParams && orderParams.maker) ||\n (\"taker\" in orderParams && orderParams.taker)\n ) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function useUserLimitOrdersQuery<TData = LimitOrdersReturn>({\n orderParams: _orderParams,\n asMaker,\n chainId,\n query,\n}: UserLimitOrdersQueryInput<TData>): LimitOrdersQueryResult<TData> {\n const { address: account } = useAccount();\n\n const orderParams = asMaker\n ? { ..._orderParams, maker: account }\n : { ..._orderParams, taker: account };\n\n return useLimitOrdersQuery({ orderParams, query, chainId });\n}\n\nexport function limitOrderByHashQueryKey(\n orderParams?: LimitOrderByHashParams\n): LimitOrderByHashQueryKey {\n return [\"limit/order-by-hash\", orderParams] as const;\n}\n\nexport function limitOrdersQueryKey(\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">,\n chainId: SupportedChainId\n): LimitOrdersQueryKey {\n // specifically lowercase maker/taker addresses for consistent caching\n const orderParamsOverrides =\n \"maker\" in orderParams && orderParams.maker\n ? { maker: orderParams.maker.toLowerCase() }\n : \"taker\" in orderParams && orderParams.taker\n ? { taker: orderParams.taker.toLowerCase() }\n : undefined;\n\n return [\n \"limit/orders\",\n chainId,\n {\n ...orderParams,\n ...orderParamsOverrides,\n },\n ] as const;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitOrders.js","names":["useLimitOrdersSDK","SupportedChainId","useQuery","UseQueryOptions","UseQueryResult","LimitOrderFromApi","LimitOrdersApiResponse","LimitOrdersUserParams","assert","DeepMarkOptional","useAccount","LimitOrderByHashParams","LimitOrderByHashReturn","LimitOrderByHashQueryParams","Omit","Error","TData","LimitOrderByHashQueryKey","LimitOrderByHashQueryResult","LimitOrderByHashQueryInput","orderParams","query","base","LimitOrdersParams","LimitOrdersReturn","LimitOrdersQueryParams","LimitOrdersQueryKey","LimitOrdersQueryResult","LimitOrdersQueryInput","chainId","UserLimitOrdersQueryInput","asMaker","useLimitOrderByHashQuery","t0","$","_c","t1","Symbol","for","sdk","t2","limitOrderByHashQueryKey","t3","t4","signal","order","getLimitOrderByHash","enabled","t5","queryKey","queryFn","useLimitOrdersQuery","limitOrdersQueryKey","maker","orders","getLimitOrders","taker","orders_0","useUserLimitOrdersQuery","_orderParams","address","account","const","orderParamsOverrides","toLowerCase","undefined"],"sources":["../../../../src/hooks/otc/queries/useLimitOrders.ts"],"sourcesContent":["import { useLimitOrdersSDK } from \"@/hooks/useSDK\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n useQuery,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type {\n LimitOrderFromApi,\n LimitOrdersApiResponse,\n LimitOrdersUserParams,\n} from \"@velora-dex/sdk\";\nimport { assert, type DeepMarkOptional } from \"ts-essentials\";\nimport { useAccount } from \"wagmi\";\n\n// ============================================================================\n// Types for getLimitOrderByHash\n// ============================================================================\n\ntype LimitOrderByHashParams = string; // orderHash\ntype LimitOrderByHashReturn = LimitOrderFromApi;\n\ntype LimitOrderByHashQueryParams<TData = LimitOrderByHashReturn> = Omit<\n UseQueryOptions<\n LimitOrderByHashReturn,\n Error,\n TData,\n LimitOrderByHashQueryKey\n >,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrderByHashQueryResult<TData = LimitOrderByHashReturn> =\n UseQueryResult<TData, Error>;\n\ntype LimitOrderByHashQueryInput<TData = LimitOrderByHashReturn> = {\n orderParams?: LimitOrderByHashParams;\n query?: LimitOrderByHashQueryParams<TData>;\n};\n\ntype LimitOrderByHashQueryKey = [\n base: \"limit/order-by-hash\",\n orderParams?: LimitOrderByHashParams,\n];\n\n// ============================================================================\n// Types for getLimitOrders\n// ============================================================================\n\ntype LimitOrdersParams = LimitOrdersUserParams;\ntype LimitOrdersReturn = LimitOrdersApiResponse;\n\ntype LimitOrdersQueryParams<TData = LimitOrdersReturn> = Omit<\n UseQueryOptions<LimitOrdersReturn, Error, TData, LimitOrdersQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype LimitOrdersQueryResult<TData = LimitOrdersReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype LimitOrdersQueryInput<TData = LimitOrdersReturn> = {\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">;\n chainId: SupportedChainId;\n query?: LimitOrdersQueryParams<TData>;\n};\n\ntype UserLimitOrdersQueryInput<TData = LimitOrdersReturn> = {\n orderParams: Omit<LimitOrdersParams, \"taker\" | \"maker\">;\n chainId: SupportedChainId;\n asMaker: boolean;\n query?: LimitOrdersQueryParams<TData>;\n};\n\ntype LimitOrdersQueryKey = [\n base: \"limit/orders\",\n chainId: SupportedChainId,\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">,\n];\n\n// ============================================================================\n// Hook for getLimitOrderByHash\n// ============================================================================\n\nexport function useLimitOrderByHashQuery<TData = LimitOrderByHashReturn>({\n orderParams,\n query,\n}: LimitOrderByHashQueryInput<TData>): LimitOrderByHashQueryResult<TData> {\n const { sdk } = useLimitOrdersSDK({ chainId: 1 }); // chain doesn't matter\n\n return useQuery<\n LimitOrderByHashReturn,\n Error,\n TData,\n LimitOrderByHashQueryKey\n >({\n queryKey: limitOrderByHashQueryKey(orderParams),\n queryFn: ({ signal }) => {\n assert(sdk, \"SDK not initialized\");\n assert(orderParams, \"orderParams is required\");\n const order = sdk.getLimitOrderByHash(orderParams, { signal });\n return order;\n },\n ...query,\n enabled: !!orderParams && (query?.enabled ?? true),\n });\n}\n\n// ============================================================================\n// Hook for getLimitOrders\n// ============================================================================\n\nexport function useLimitOrdersQuery<TData = LimitOrdersReturn>({\n orderParams,\n chainId,\n query,\n}: LimitOrdersQueryInput<TData>): LimitOrdersQueryResult<TData> {\n const { sdk } = useLimitOrdersSDK({ chainId });\n\n return useQuery<LimitOrdersReturn, Error, TData, LimitOrdersQueryKey>({\n queryKey: limitOrdersQueryKey(orderParams, chainId),\n queryFn: ({ signal }) => {\n if (\"maker\" in orderParams && orderParams.maker) {\n const orders = sdk.getLimitOrders(\n { ...orderParams, maker: orderParams.maker },\n { signal }\n );\n return orders;\n }\n\n if (\"taker\" in orderParams && orderParams.taker) {\n const orders = sdk.getLimitOrders(\n { ...orderParams, taker: orderParams.taker },\n { signal }\n );\n return orders;\n }\n\n throw new Error(\"Either maker or taker must be provided in orderParams\");\n },\n ...query,\n enabled:\n !!(\n (\"maker\" in orderParams && orderParams.maker) ||\n (\"taker\" in orderParams && orderParams.taker)\n ) &&\n (query?.enabled ?? true),\n });\n}\n\nexport function useUserLimitOrdersQuery<TData = LimitOrdersReturn>({\n orderParams: _orderParams,\n asMaker,\n chainId,\n query,\n}: UserLimitOrdersQueryInput<TData>): LimitOrdersQueryResult<TData> {\n const { address: account } = useAccount();\n\n const orderParams = asMaker\n ? { ..._orderParams, maker: account }\n : { ..._orderParams, taker: account };\n\n return useLimitOrdersQuery({ orderParams, query, chainId });\n}\n\nexport function limitOrderByHashQueryKey(\n orderParams?: LimitOrderByHashParams\n): LimitOrderByHashQueryKey {\n return [\"limit/order-by-hash\", orderParams] as const;\n}\n\nexport function limitOrdersQueryKey(\n orderParams: DeepMarkOptional<LimitOrdersParams, \"taker\" | \"maker\">,\n chainId: SupportedChainId\n): LimitOrdersQueryKey {\n // specifically lowercase maker/taker addresses for consistent caching\n const orderParamsOverrides =\n \"maker\" in orderParams && orderParams.maker\n ? { maker: orderParams.maker.toLowerCase() }\n : \"taker\" in orderParams && orderParams.taker\n ? { taker: orderParams.taker.toLowerCase() }\n : undefined;\n\n return [\n \"limit/orders\",\n chainId,\n {\n ...orderParams,\n ...orderParamsOverrides,\n },\n ] as const;\n}\n"],"mappings":"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"}