@velora-dex/widget 0.9.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/dist/components/web3/AccountButton.js +1 -1
  2. package/dist/components/web3/AccountButton.js.map +1 -1
  3. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
  4. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +22 -21
  5. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  6. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -1
  7. package/dist/components/web3/ConnectExternalProvider/utils.js +1 -1
  8. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
  9. package/dist/components/web3/ConnectWallets/index.d.ts.map +1 -1
  10. package/dist/components/web3/ConnectWallets/index.js +67 -66
  11. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  12. package/dist/components/web3/ConnectWallets/privy/iframe.js +1 -1
  13. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  14. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  15. package/dist/components/web3/ConnectWallets/walletIcons.js +1 -1
  16. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  17. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts.map +1 -1
  18. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +27 -26
  19. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  20. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  21. package/dist/components/widget/AppHeader/Activities/hooks.js +9 -9
  22. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  23. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  24. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  25. package/dist/components/widget/AppHeader/AppHeader.js +1 -1
  26. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  27. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +1 -1
  28. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  29. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  30. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +2 -2
  31. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  32. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  33. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  34. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  35. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +1 -1
  36. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  37. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  38. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
  39. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  40. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js +1 -1
  41. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  42. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  43. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  44. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  45. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  46. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  47. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
  48. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  49. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +2 -2
  50. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  51. package/dist/core/LimitOrderButton.js +1 -1
  52. package/dist/core/LimitOrderButton.js.map +1 -1
  53. package/dist/core/OtcOrderButton.js +1 -1
  54. package/dist/core/OtcOrderButton.js.map +1 -1
  55. package/dist/core/TradeFlowScreenButton.js +1 -1
  56. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  57. package/dist/core/across/utils.js.map +1 -1
  58. package/dist/core/index.js +1 -1
  59. package/dist/core/index.js.map +1 -1
  60. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  61. package/dist/core/inputs/state/guards.d.ts.map +1 -1
  62. package/dist/core/inputs/state/guards.js.map +1 -1
  63. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  64. package/dist/core/limit/state/limitInputAmountAtom.d.ts.map +1 -1
  65. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  66. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  67. package/dist/core/otc/state/otcInputAmountAtom.d.ts.map +1 -1
  68. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
  69. package/dist/core/state/configAtom.js +2 -2
  70. package/dist/core/state/configAtom.js.map +1 -1
  71. package/dist/core/state/getSelectableDestChains.d.ts +1 -1
  72. package/dist/core/state/getSelectableDestChains.d.ts.map +1 -1
  73. package/dist/core/state/getSelectableDestChains.js.map +1 -1
  74. package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -1
  75. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
  76. package/dist/events/getters/limit.js +1 -1
  77. package/dist/events/getters/limit.js.map +1 -1
  78. package/dist/events/getters/otc.js +1 -1
  79. package/dist/events/getters/otc.js.map +1 -1
  80. package/dist/events/getters/swap.js +1 -1
  81. package/dist/events/getters/swap.js.map +1 -1
  82. package/dist/events/getters/twap.js +1 -1
  83. package/dist/events/getters/twap.js.map +1 -1
  84. package/dist/events/getters/widgetState.js +1 -1
  85. package/dist/events/getters/widgetState.js.map +1 -1
  86. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
  87. package/dist/events/hooks/useOnWalletConnect.js +1 -1
  88. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  89. package/dist/events/types/swap.d.ts.map +1 -1
  90. package/dist/hooks/batch/useBatchWithApproveTxs.js +1 -1
  91. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -1
  92. package/dist/hooks/batch/useCanBatchTxs.d.ts +0 -1
  93. package/dist/hooks/batch/useCanBatchTxs.d.ts.map +1 -1
  94. package/dist/hooks/batch/useCanBatchTxs.js +20 -29
  95. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  96. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
  97. package/dist/hooks/batch/useSendBatchTx.js +1 -1
  98. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  99. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  100. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
  101. package/dist/hooks/connectors/useIsGnosisSafeConnector.js +1 -1
  102. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  103. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
  104. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +1 -1
  105. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  106. package/dist/hooks/getCode/useIsAccountContract.d.ts +1 -1
  107. package/dist/hooks/getCode/useIsAccountContract.d.ts.map +1 -1
  108. package/dist/hooks/getCode/useIsAccountContract.js +1 -1
  109. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  110. package/dist/hooks/getCode/useIsContractAtAddress.d.ts +1 -1
  111. package/dist/hooks/getCode/useIsContractAtAddress.d.ts.map +1 -1
  112. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js +2 -2
  113. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  114. package/dist/hooks/otc/queries/useLimitOrders.d.ts.map +1 -1
  115. package/dist/hooks/otc/queries/useLimitOrders.js +1 -1
  116. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  117. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +3 -3
  118. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  119. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +3 -3
  120. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  121. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.d.ts.map +1 -1
  122. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js +2 -2
  123. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  124. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js +1 -1
  125. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  126. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js +1 -1
  127. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  128. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +1 -1
  129. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  130. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts +2 -2
  131. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +1 -1
  132. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  133. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js +1 -1
  134. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  135. package/dist/hooks/permit/utils/types.d.ts +1 -1
  136. package/dist/hooks/permit/utils/types.d.ts.map +1 -1
  137. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  138. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  139. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
  140. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  141. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
  142. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  143. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +1 -1
  144. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  145. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  146. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  147. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  148. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  149. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +1 -1
  150. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  151. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -1
  152. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  153. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
  154. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  155. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  156. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  157. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  158. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts.map +1 -1
  159. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -1
  160. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts.map +1 -1
  161. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -1
  162. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -1
  163. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -1
  164. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  165. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.d.ts +11 -6
  166. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.d.ts.map +1 -1
  167. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js +1 -1
  168. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js.map +1 -1
  169. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderRequiredBalance.js +2 -2
  170. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderRequiredBalance.js.map +1 -1
  171. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js +1 -1
  172. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  173. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  174. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  175. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  176. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  177. package/dist/hooks/swap/prices/usePricesParams.js +4 -4
  178. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  179. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  180. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  181. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +1 -1
  182. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  183. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  184. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +3 -3
  185. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  186. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +1 -1
  187. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  188. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +1 -1
  189. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  190. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js +1 -1
  191. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  192. package/dist/hooks/tokens/allowance/useTokenAllowance.js +1 -1
  193. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  194. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +1 -1
  195. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  196. package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts.map +1 -1
  197. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  198. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
  199. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  200. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +1 -1
  201. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  202. package/dist/hooks/tokens/balances/useTokenBalance.d.ts +0 -11
  203. package/dist/hooks/tokens/balances/useTokenBalance.d.ts.map +1 -1
  204. package/dist/hooks/tokens/balances/useTokenBalance.js +11 -11
  205. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  206. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  207. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  208. package/dist/hooks/txs/mutations/useApprove.d.ts.map +1 -1
  209. package/dist/hooks/txs/mutations/useApprove.js +2 -2
  210. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  211. package/dist/hooks/txs/mutations/useDepositWeth.js +1 -1
  212. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  213. package/dist/hooks/txs/mutations/useReplaceTx.js +3 -3
  214. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -1
  215. package/dist/hooks/txs/mutations/useSendTx.d.ts.map +1 -1
  216. package/dist/hooks/txs/mutations/useSendTx.js +2 -2
  217. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  218. package/dist/hooks/txs/queries/useAwaitTx.js +4 -4
  219. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  220. package/dist/hooks/txs/queries/useTxResponse.d.ts +88 -1
  221. package/dist/hooks/txs/queries/useTxResponse.d.ts.map +1 -1
  222. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js +1 -1
  223. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -1
  224. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  225. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  226. package/dist/hooks/useBridgeInfo.js.map +1 -1
  227. package/dist/hooks/useChainMatches.js +2 -2
  228. package/dist/hooks/useChainMatches.js.map +1 -1
  229. package/dist/hooks/useConnections.d.ts +3 -0
  230. package/dist/hooks/useConnections.d.ts.map +1 -0
  231. package/dist/hooks/useConnections.js +24 -0
  232. package/dist/hooks/useConnections.js.map +1 -0
  233. package/dist/hooks/useDisconnect.d.ts +3 -0
  234. package/dist/hooks/useDisconnect.d.ts.map +1 -0
  235. package/dist/hooks/useDisconnect.js +29 -0
  236. package/dist/hooks/useDisconnect.js.map +1 -0
  237. package/dist/hooks/useMinViemClient.d.ts.map +1 -1
  238. package/dist/hooks/useMinViemClient.js +9 -9
  239. package/dist/hooks/useMinViemClient.js.map +1 -1
  240. package/dist/hooks/useSDK.d.ts.map +1 -1
  241. package/dist/hooks/useSDK.js.map +1 -1
  242. package/dist/hooks/useSwitchChainWithGuard.js +1 -1
  243. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -1
  244. package/dist/lib/constants/urls.js +1 -1
  245. package/dist/lib/constants/urls.js.map +1 -1
  246. package/dist/lib/utils/twap.js.map +1 -1
  247. package/dist/lib/web3/wagmi/config.d.ts +40 -6
  248. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  249. package/dist/lib/web3/wagmi/config.js.map +1 -1
  250. package/dist/lib/web3/wagmi/constants.d.ts +40 -1
  251. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  252. package/dist/lib/web3/wagmi/external.js +1 -1
  253. package/dist/lib/web3/wagmi/external.js.map +1 -1
  254. package/dist/lib/web3/wagmi/switchChain.d.ts +40 -1
  255. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
  256. package/dist/lib/web3/wagmi/switchChain.js +1 -1
  257. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  258. package/dist/tokens/lists/lists.js.map +1 -1
  259. package/dist/tokens/lists/lists.json.d.ts +12 -31
  260. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
  261. package/dist/transactions/queries/ensureCallsStatus.js +1 -1
  262. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  263. package/dist/transactions/queries/ensureTxReceipt.js +1 -1
  264. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  265. package/dist/wagmi-register.d.ts +7 -0
  266. package/dist/wagmi-register.d.ts.map +1 -0
  267. package/package.json +13 -11
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitTokenToInputProps.js","names":["TokenInputProps","useAtom","useAtomValue","useSetAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtom","useLogger","OnValueChange","useDeltaSwapPriceForLimit","useLimitRate","currentLimitInputAtom","TokenInputExtraProps","useTokenBalance","MEDIUM_STALE_TIME_FOR_REACTIVENESS","toDecimalTrimmed","useLimitInputClasses","selectLimitTokenToAtom","useLimitTokenFrom","useLimitTokenTo","useIsTokenSupportedInDeltaQuery","Token","isFilledArray","useChainId","useSelectableDestChains","SupportedChainId","limitChainToAtom","BridgeRoutesMode","isUnsupportedTokenError","parseDeltaApiError","replaceUnsupportedTokenMessage","isTruthy","useTokenToBalanceUnit","$","_c","tokenTo","t0","Symbol","for","refetchInterval","t1","token","queryOptions","balanceUnit","t2","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","t3","t4","t5","tokenType","const","onFocus","label","useTokenToAmountProps","logger","receiveAmount","setReceiveAmount","isLoading","values","log","value","onAmountChange","setTokenTo","amount","onTokenSelect","UnsupportedLimitTokensResult","unsupportedTokens","useUnsupportedLimitTokens","tokenFrom","address","network","data","isDestTokenSupported","isDestTokenSupportedLoading","isSrcTokenSupported","isSrcTokenSupportedLoading","push","t6","useWarningMessage","isCrosschainLimitOrder","enabled","error","limitPriceError","priceError","deltaPriceError","description","filter","deltaErrorToShow","customUnsupportedTokenMessage","unsupportedTokensWarning","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","tokens","Pick","symbol","tokenSymbols","map","join"],"sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useDeltaSwapPriceForLimit, useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitChainToAtom } from \"../state/chainToAtom\";\nimport type { BridgeRoutesMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport {\n isUnsupportedTokenError,\n parseDeltaApiError,\n replaceUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { isTruthy } from \"@/lib/utils\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n acrossMode,\n}: {\n acrossMode: BridgeRoutesMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(limitChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const isCrosschainLimitOrder =\n tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;\n\n const { error: limitPriceError } = useDeltaSwapPriceForLimit({\n enabled: false, // get result only\n });\n\n const priceError = isCrosschainLimitOrder ? limitPriceError : undefined;\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n const unsupportedTokensWarning = unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined;\n\n const warningMessage =\n unsupportedTokensWarning || deltaErrorToShow || undefined;\n return {\n warningMessage,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps({ acrossMode: \"limit\" });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitTokenToInputProps.js","names":["TokenInputProps","useAtom","useAtomValue","useSetAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtom","useLogger","OnValueChange","useDeltaSwapPriceForLimit","useLimitRate","currentLimitInputAtom","TokenInputExtraProps","useTokenBalance","MEDIUM_STALE_TIME_FOR_REACTIVENESS","toDecimalTrimmed","useLimitInputClasses","selectLimitTokenToAtom","useLimitTokenFrom","useLimitTokenTo","useIsTokenSupportedInDeltaQuery","Token","isFilledArray","useChainId","useSelectableDestChains","SupportedChainId","limitChainToAtom","BridgeRoutesMode","isUnsupportedTokenError","parseDeltaApiError","replaceUnsupportedTokenMessage","isTruthy","useTokenToBalanceUnit","$","_c","tokenTo","t0","Symbol","for","refetchInterval","t1","token","queryOptions","balanceUnit","t2","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","t3","t4","t5","tokenType","const","onFocus","label","useTokenToAmountProps","logger","receiveAmount","setReceiveAmount","isLoading","values","log","value","onAmountChange","setTokenTo","amount","onTokenSelect","UnsupportedLimitTokensResult","unsupportedTokens","useUnsupportedLimitTokens","tokenFrom","address","network","data","isDestTokenSupported","isDestTokenSupportedLoading","isSrcTokenSupported","isSrcTokenSupportedLoading","push","t6","useWarningMessage","isCrosschainLimitOrder","enabled","error","limitPriceError","priceError","deltaPriceError","description","filter","deltaErrorToShow","customUnsupportedTokenMessage","unsupportedTokensWarning","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","tokens","Pick","symbol","tokenSymbols","map","join"],"sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useDeltaSwapPriceForLimit, useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitChainToAtom } from \"../state/chainToAtom\";\nimport type { BridgeRoutesMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport {\n isUnsupportedTokenError,\n parseDeltaApiError,\n replaceUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { isTruthy } from \"@/lib/utils\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n acrossMode,\n}: {\n acrossMode: BridgeRoutesMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(limitChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const isCrosschainLimitOrder =\n tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;\n\n const { error: limitPriceError } = useDeltaSwapPriceForLimit({\n enabled: false, // get result only\n });\n\n const priceError = isCrosschainLimitOrder ? limitPriceError : undefined;\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n const unsupportedTokensWarning = unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined;\n\n const warningMessage =\n unsupportedTokensWarning || deltaErrorToShow || undefined;\n return {\n warningMessage,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps({ acrossMode: \"limit\" });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"otcInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/otcInputAmountAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,iBAAiB;;CAA8B,CAAC;AAE7D,eAAO,MAAM,kBAAkB,8BAI7B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;CAA0C,CAAC;AAE7E,eAAO,MAAM,yBAAyB;;CAA0C,CAAC;AAEjF,eAAO,MAAM,wBAAwB,8BAKnC,CAAC;AAEH,eAAO,MAAM,4BAA4B,0CAOvC,CAAC"}
1
+ {"version":3,"file":"otcInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/otc/state/otcInputAmountAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,iBAAiB;;CAA8B,CAAC;AAE7D,eAAO,MAAM,kBAAkB,8BAI7B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;CAA0C,CAAC;AAE7E,eAAO,MAAM,yBAAyB;;CAGrC,CAAC;AAEF,eAAO,MAAM,wBAAwB,8BAKnC,CAAC;AAEH,eAAO,MAAM,4BAA4B,0CAOvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"otcInputAmountAtom.js","names":["atom","parseUnits","otcTokenFromAtom","otcTokenToAtom","zeroRates","PriceRates","isOtcPriceReversedAtom","GuardAgainstLoneDecimalPoint","otcPriceRatesAtom","otcPriceAmountAtom","get","isReversed","priceRates","rateReversed","rate","otcPayInputAmountAtom","otcReceiveInputAmountAtom","otcPayInputAmountWeiAtom","tokenFrom","payInputAmount","decimals","toString","otcReceiveInputAmountWeiAtom","tokenTo","receiveInputAmount"],"sources":["../../../../src/core/otc/state/otcInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { otcTokenFromAtom, otcTokenToAtom } from \"./selectedTokenAtom\";\nimport { zeroRates } from \"@/core/limit/state/constants\";\nimport type { PriceRates } from \"@/core/limit/types\";\nimport { isOtcPriceReversedAtom } from \"./isOtcPriceReversedAtom\";\nimport { GuardAgainstLoneDecimalPoint } from \"@/core/inputs/state/guards\";\n\nexport const otcPriceRatesAtom = atom<PriceRates>(zeroRates);\n\nexport const otcPriceAmountAtom = atom((get) => {\n const isReversed = get(isOtcPriceReversedAtom);\n const priceRates = get(otcPriceRatesAtom);\n return isReversed ? priceRates.rateReversed : priceRates.rate;\n});\n\nexport const otcPayInputAmountAtom = atom(\"1\", GuardAgainstLoneDecimalPoint);\n\nexport const otcReceiveInputAmountAtom = atom(\"0\", GuardAgainstLoneDecimalPoint);\n\nexport const otcPayInputAmountWeiAtom = atom((get) => {\n // amountWei derived from otcPayInputAmountAtom\n const tokenFrom = get(otcTokenFromAtom);\n const payInputAmount = get(otcPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const otcReceiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from otcReceiveInputAmountAtom\n const tokenTo = get(otcTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(otcReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;;;;AAQA,IAAaQ,IAAoBR,EAAiBI,EAAU,EAE/CK,IAAqBT,GAAMU,MAAQ;CAC9C,IAAMC,IAAaD,EAAIJ,EAAuB,EACxCM,IAAaF,EAAIF,EAAkB;CACzC,OAAOG,IAAaC,EAAWC,eAAeD,EAAWE;EACzD,EAEWC,IAAwBf,EAAK,KAAKO,EAA6B,EAE/DS,IAA4BhB,EAAK,KAAKO,EAA6B,EAEnEU,IAA2BjB,GAAMU,MAAQ;CAEpD,IAAMQ,IAAYR,EAAIR,EAAiB;CAEvC,OAAOD,EADgBS,EAAIK,EACTI,EAAgBD,EAAUE,SAAS,CAACC,UAAU;EAChE,EAEWC,IAA+BtB,GAAMU,MAAQ;CAExD,IAAMa,IAAUb,EAAIP,EAAe;CACnC,IAAIoB,GAEF,OAAOtB,EADoBS,EAAIM,EACbQ,EAAoBD,EAAQH,SAAS,CAACC,UAAU;EAEpE"}
1
+ {"version":3,"file":"otcInputAmountAtom.js","names":["atom","parseUnits","otcTokenFromAtom","otcTokenToAtom","zeroRates","PriceRates","isOtcPriceReversedAtom","GuardAgainstLoneDecimalPoint","otcPriceRatesAtom","otcPriceAmountAtom","get","isReversed","priceRates","rateReversed","rate","otcPayInputAmountAtom","otcReceiveInputAmountAtom","otcPayInputAmountWeiAtom","tokenFrom","payInputAmount","decimals","toString","otcReceiveInputAmountWeiAtom","tokenTo","receiveInputAmount"],"sources":["../../../../src/core/otc/state/otcInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { otcTokenFromAtom, otcTokenToAtom } from \"./selectedTokenAtom\";\nimport { zeroRates } from \"@/core/limit/state/constants\";\nimport type { PriceRates } from \"@/core/limit/types\";\nimport { isOtcPriceReversedAtom } from \"./isOtcPriceReversedAtom\";\nimport { GuardAgainstLoneDecimalPoint } from \"@/core/inputs/state/guards\";\n\nexport const otcPriceRatesAtom = atom<PriceRates>(zeroRates);\n\nexport const otcPriceAmountAtom = atom((get) => {\n const isReversed = get(isOtcPriceReversedAtom);\n const priceRates = get(otcPriceRatesAtom);\n return isReversed ? priceRates.rateReversed : priceRates.rate;\n});\n\nexport const otcPayInputAmountAtom = atom(\"1\", GuardAgainstLoneDecimalPoint);\n\nexport const otcReceiveInputAmountAtom = atom(\n \"0\",\n GuardAgainstLoneDecimalPoint\n);\n\nexport const otcPayInputAmountWeiAtom = atom((get) => {\n // amountWei derived from otcPayInputAmountAtom\n const tokenFrom = get(otcTokenFromAtom);\n const payInputAmount = get(otcPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const otcReceiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from otcReceiveInputAmountAtom\n const tokenTo = get(otcTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(otcReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;;;;AAQA,IAAaQ,IAAoBR,EAAiBI,EAAU,EAE/CK,IAAqBT,GAAMU,MAAQ;CAC9C,IAAMC,IAAaD,EAAIJ,EAAuB,EACxCM,IAAaF,EAAIF,EAAkB;CACzC,OAAOG,IAAaC,EAAWC,eAAeD,EAAWE;EACzD,EAEWC,IAAwBf,EAAK,KAAKO,EAA6B,EAE/DS,IAA4BhB,EACvC,KACAO,EACD,EAEYU,IAA2BjB,GAAMU,MAAQ;CAEpD,IAAMQ,IAAYR,EAAIR,EAAiB;CAEvC,OAAOD,EADgBS,EAAIK,EACTI,EAAgBD,EAAUE,SAAS,CAACC,UAAU;EAChE,EAEWC,IAA+BtB,GAAMU,MAAQ;CAExD,IAAMa,IAAUb,EAAIP,EAAe;CACnC,IAAIoB,GAEF,OAAOtB,EADoBS,EAAIM,EACbQ,EAAoBD,EAAQH,SAAS,CAACC,UAAU;EAEpE"}
@@ -9,8 +9,8 @@ var c = {
9
9
  theme: o(),
10
10
  enableDelta: !0,
11
11
  enableCrossChain: !0,
12
- privyAppId: void 0,
13
- privyClientId: void 0,
12
+ privyAppId: "cmb549ngz00omi90lifm9ifv5",
13
+ privyClientId: "client-WY6LzDz2oxeGCDsUEdenrY8z7Qf7WHMmUKVbxSXZ31RqT",
14
14
  debug: !1,
15
15
  widgetMode: "standalone",
16
16
  enableDegenMode: !0
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.js","names":["atom","useAtomValue","WidgetElements","WidgetConfig","DevURLs","PartnerConfig","ReferrerConfig","MarkRequired","SupportedChainId","emptyArray","emptyObject","atomWithCompare","constructPropertiesEqual","unorderedShallowEqual","TradeMode","getDefaultTheme","PrimitiveConfig","Pick","IterableConfig","PrimitiveConfigState","defaultWidgetConfig","theme","enableDelta","enableCrossChain","privyAppId","import","meta","env","VITE_PRIVY_APP_ID","privyClientId","VITE_PRIVY_CLIENT_ID","debug","widgetMode","enableDegenMode","const","widgetConfigAtom","useWidgetConfig","defaultSubConfig","tokenLists","srcChains","destChains","tradeModes","excludeUI","devURLs","partnerConfig","referrerConfig","tokenListsAtom","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","partnerConfigAtom","debugLabel","referrerConfigAtom"],"sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type {\n WidgetElements,\n WidgetConfig,\n DevURLs,\n PartnerConfig,\n ReferrerConfig,\n} from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual, unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"enableDegenMode\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n | \"partnerConfig\"\n | \"referrerConfig\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"enableDegenMode\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n enableDegenMode: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n partnerConfig: emptyObject,\n referrerConfig: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n // known properties only comparison\n constructPropertiesEqual([\"apiProxyURL\", \"apiURL\", \"explorerURL\"])\n);\n\nexport const partnerConfigAtom = atomWithCompare<PartnerConfig>(\n defaultSubConfig.partnerConfig,\n constructPropertiesEqual([\n \"partner\",\n \"partnerAddress\",\n \"partnerFeeBps\",\n \"partnerTakesSurplus\",\n ])\n);\n\npartnerConfigAtom.debugLabel = \"partnerConfigAtom\";\n\nexport const referrerConfigAtom = atomWithCompare<ReferrerConfig>(\n defaultSubConfig.referrerConfig,\n constructPropertiesEqual([\"referrerAddress\"])\n);\n\nreferrerConfigAtom.debugLabel = \"referrerConfigAtom\";\n"],"mappings":";;;;;;;AAqDA,IAAaoB,IAAsB;CACjCC,OAAON,GAAiB;CACxBO,aAAa;CACbC,kBAAkB;CAClBC,YAAAA,KAAAA;CACAK,eAAAA,KAAAA;CACAE,OAAO;CACPC,YAAY;CACZC,iBAAiB;CAClB,EAEYE,IAAmBnC,EAA2BoB,EAAoB,EAElEgB,UACJnC,EAAakC,EAAiB,EAG1BE,IAAmB;CAC9BC,YAAY7B;CACZ8B,WAAW9B;CACX+B,YAAY/B;CACZgC,YAAYhC;CACZiC,WAAWjC;CACXkC,SAASjC;CACTkC,eAAelC;CACfmC,gBAAgBnC;CACjB,EAIYoC,IAAiBnC,EAC5B0B,EAAiBC,YACjBzB,EACD,EACYkC,IAAgBpC,EAC3B0B,EAAiBE,WACjB1B,EACD,EACYmC,IAAiBrC,EAC5B0B,EAAiBG,YACjB3B,EACD,EAEYoC,IAAiBtC,EAC5B0B,EAAiBI,YACjB5B,EACD,EAEYqC,IAAgBvC,EAC3B0B,EAAiBK,WACjB7B,EACD,EAEYsC,IAAcxC,EACzB0B,EAAiBM,SAEjB/B,EAAyB;CAAC;CAAe;CAAU;CAAc,CACnE,CAAC,EAEYwC,IAAoBzC,EAC/B0B,EAAiBO,eACjBhC,EAAyB;CACvB;CACA;CACA;CACA;CACD,CACH,CAAC;AAEDwC,EAAkBC,aAAa;AAE/B,IAAaC,IAAqB3C,EAChC0B,EAAiBQ,gBACjBjC,EAAyB,CAAC,kBAAkB,CAC9C,CAAC;AAED0C,EAAmBD,aAAa"}
1
+ {"version":3,"file":"configAtom.js","names":["atom","useAtomValue","WidgetElements","WidgetConfig","DevURLs","PartnerConfig","ReferrerConfig","MarkRequired","SupportedChainId","emptyArray","emptyObject","atomWithCompare","constructPropertiesEqual","unorderedShallowEqual","TradeMode","getDefaultTheme","PrimitiveConfig","Pick","IterableConfig","PrimitiveConfigState","defaultWidgetConfig","theme","enableDelta","enableCrossChain","privyAppId","import","meta","env","VITE_PRIVY_APP_ID","privyClientId","VITE_PRIVY_CLIENT_ID","debug","widgetMode","enableDegenMode","const","widgetConfigAtom","useWidgetConfig","defaultSubConfig","tokenLists","srcChains","destChains","tradeModes","excludeUI","devURLs","partnerConfig","referrerConfig","tokenListsAtom","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","partnerConfigAtom","debugLabel","referrerConfigAtom"],"sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type {\n WidgetElements,\n WidgetConfig,\n DevURLs,\n PartnerConfig,\n ReferrerConfig,\n} from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual, unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"enableDegenMode\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n | \"partnerConfig\"\n | \"referrerConfig\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"enableDegenMode\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n enableDegenMode: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n partnerConfig: emptyObject,\n referrerConfig: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n // known properties only comparison\n constructPropertiesEqual([\"apiProxyURL\", \"apiURL\", \"explorerURL\"])\n);\n\nexport const partnerConfigAtom = atomWithCompare<PartnerConfig>(\n defaultSubConfig.partnerConfig,\n constructPropertiesEqual([\n \"partner\",\n \"partnerAddress\",\n \"partnerFeeBps\",\n \"partnerTakesSurplus\",\n ])\n);\n\npartnerConfigAtom.debugLabel = \"partnerConfigAtom\";\n\nexport const referrerConfigAtom = atomWithCompare<ReferrerConfig>(\n defaultSubConfig.referrerConfig,\n constructPropertiesEqual([\"referrerAddress\"])\n);\n\nreferrerConfigAtom.debugLabel = \"referrerConfigAtom\";\n"],"mappings":";;;;;;;AAqDA,IAAaoB,IAAsB;CACjCC,OAAON,GAAiB;CACxBO,aAAa;CACbC,kBAAkB;CAClBC,YAAAA;CACAK,eAAAA;CACAE,OAAO;CACPC,YAAY;CACZC,iBAAiB;CAClB,EAEYE,IAAmBnC,EAA2BoB,EAAoB,EAElEgB,UACJnC,EAAakC,EAAiB,EAG1BE,IAAmB;CAC9BC,YAAY7B;CACZ8B,WAAW9B;CACX+B,YAAY/B;CACZgC,YAAYhC;CACZiC,WAAWjC;CACXkC,SAASjC;CACTkC,eAAelC;CACfmC,gBAAgBnC;CACjB,EAIYoC,IAAiBnC,EAC5B0B,EAAiBC,YACjBzB,EACD,EACYkC,IAAgBpC,EAC3B0B,EAAiBE,WACjB1B,EACD,EACYmC,IAAiBrC,EAC5B0B,EAAiBG,YACjB3B,EACD,EAEYoC,IAAiBtC,EAC5B0B,EAAiBI,YACjB5B,EACD,EAEYqC,IAAgBvC,EAC3B0B,EAAiBK,WACjB7B,EACD,EAEYsC,IAAcxC,EACzB0B,EAAiBM,SAEjB/B,EAAyB;CAAC;CAAe;CAAU;CAAc,CACnE,CAAC,EAEYwC,IAAoBzC,EAC/B0B,EAAiBO,eACjBhC,EAAyB;CACvB;CACA;CACA;CACA;CACD,CACH,CAAC;AAEDwC,EAAkBC,aAAa;AAE/B,IAAaC,IAAqB3C,EAChC0B,EAAiBQ,gBACjBjC,EAAyB,CAAC,kBAAkB,CAC9C,CAAC;AAED0C,EAAmBD,aAAa"}
@@ -1,7 +1,7 @@
1
1
  import { SupportedChainId } from '../../lib/web3/wagmi/types';
2
2
  import { BridgeRoutesMode } from '../../hooks/swap/prices/delta/queries/bridgeInfo/types';
3
3
  import { Getter } from 'jotai';
4
- export declare function getSelectableDestChains(get: Getter, { fromChainId, mode }: {
4
+ export declare function getSelectableDestChains(get: Getter, { fromChainId, mode, }: {
5
5
  fromChainId: SupportedChainId;
6
6
  mode: BridgeRoutesMode;
7
7
  }): SupportedChainId[];
@@ -1 +1 @@
1
- {"version":3,"file":"getSelectableDestChains.d.ts","sourceRoot":"","sources":["../../../src/core/state/getSelectableDestChains.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEpC,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE;IAAE,WAAW,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC/E,gBAAgB,EAAE,CAkBpB"}
1
+ {"version":3,"file":"getSelectableDestChains.d.ts","sourceRoot":"","sources":["../../../src/core/state/getSelectableDestChains.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEpC,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,EACE,WAAW,EACX,IAAI,GACL,EAAE;IAAE,WAAW,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC3D,gBAAgB,EAAE,CAkBpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSelectableDestChains.js","names":["computeSelectableDestChains","deltaEnabledOnAPI","widgetConfigAtom","deltaParamAtom","SupportedChainId","getAvailableCrosses","enabledDestChainsAtom","BridgeRoutesMode","Getter","getSelectableDestChains","get","fromChainId","mode","availableCrosses","enabledDestChains","enableDelta","enableCrossChain","deltaEnabledParam","deltaEnabledOnChain","deltaEnabledGlobally"],"sources":["../../../src/core/state/getSelectableDestChains.ts"],"sourcesContent":["import { computeSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { enabledDestChainsAtom } from \"./enabledChainsAtom\";\nimport type { BridgeRoutesMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport type { Getter } from \"jotai\";\n\nexport function getSelectableDestChains(\n get: Getter,\n { fromChainId, mode }: { fromChainId: SupportedChainId; mode: BridgeRoutesMode }\n): SupportedChainId[] {\n const availableCrosses = getAvailableCrosses({ fromChainId, mode });\n\n const enabledDestChains = get(enabledDestChainsAtom);\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n const deltaEnabledParam = get(deltaParamAtom);\n\n const deltaEnabledOnChain = deltaEnabledOnAPI[fromChainId];\n const deltaEnabledGlobally =\n enableDelta && deltaEnabledParam && deltaEnabledOnChain;\n\n return computeSelectableDestChains({\n fromChainId,\n availableCrosses,\n enabledDestChains,\n enableCrossChain,\n deltaEnabledGlobally,\n });\n}\n"],"mappings":";;;;;;;AAUA,SAAgBS,EACdC,GACA,EAAEC,gBAAaC,WACK;CACpB,IAAMC,IAAmBR,EAAoB;EAAEM;EAAaC;EAAM,CAAC,EAE7DE,IAAoBJ,EAAIJ,EAAsB,EAC9C,EAAES,gBAAaC,wBAAqBN,EAAIR,EAAiB,EACzDe,IAAoBP,EAAIP,EAAe,EAEvCe,IAAsBjB,EAAkBU;CAI9C,OAAOX,EAA4B;EACjCW;EACAE;EACAC;EACAE;EACAG,sBAPAJ,KAAeE,KAAqBC;EAQrC,CAAC"}
1
+ {"version":3,"file":"getSelectableDestChains.js","names":["computeSelectableDestChains","deltaEnabledOnAPI","widgetConfigAtom","deltaParamAtom","SupportedChainId","getAvailableCrosses","enabledDestChainsAtom","BridgeRoutesMode","Getter","getSelectableDestChains","get","fromChainId","mode","availableCrosses","enabledDestChains","enableDelta","enableCrossChain","deltaEnabledParam","deltaEnabledOnChain","deltaEnabledGlobally"],"sources":["../../../src/core/state/getSelectableDestChains.ts"],"sourcesContent":["import { computeSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { enabledDestChainsAtom } from \"./enabledChainsAtom\";\nimport type { BridgeRoutesMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport type { Getter } from \"jotai\";\n\nexport function getSelectableDestChains(\n get: Getter,\n {\n fromChainId,\n mode,\n }: { fromChainId: SupportedChainId; mode: BridgeRoutesMode }\n): SupportedChainId[] {\n const availableCrosses = getAvailableCrosses({ fromChainId, mode });\n\n const enabledDestChains = get(enabledDestChainsAtom);\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n const deltaEnabledParam = get(deltaParamAtom);\n\n const deltaEnabledOnChain = deltaEnabledOnAPI[fromChainId];\n const deltaEnabledGlobally =\n enableDelta && deltaEnabledParam && deltaEnabledOnChain;\n\n return computeSelectableDestChains({\n fromChainId,\n availableCrosses,\n enabledDestChains,\n enableCrossChain,\n deltaEnabledGlobally,\n });\n}\n"],"mappings":";;;;;;;AAUA,SAAgBS,EACdC,GACA,EACEC,gBACAC,WAEkB;CACpB,IAAMC,IAAmBR,EAAoB;EAAEM;EAAaC;EAAM,CAAC,EAE7DE,IAAoBJ,EAAIJ,EAAsB,EAC9C,EAAES,gBAAaC,wBAAqBN,EAAIR,EAAiB,EACzDe,IAAoBP,EAAIP,EAAe,EAEvCe,IAAsBjB,EAAkBU;CAI9C,OAAOX,EAA4B;EACjCW;EACAE;EACAC;EACAE;EACAG,sBAPAJ,KAAeE,KAAqBC;EAQrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"twapInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,sBAAsB;;CAA0C,CAAC;AAE9E,eAAO,MAAM,0BAA0B;;CAA0C,CAAC;AAElF,eAAO,MAAM,yBAAyB,8BAIpC,CAAC;AAEH,eAAO,MAAM,6BAA6B,0CAMxC,CAAC"}
1
+ {"version":3,"file":"twapInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,sBAAsB;;CAA0C,CAAC;AAE9E,eAAO,MAAM,0BAA0B;;CAGtC,CAAC;AAEF,eAAO,MAAM,yBAAyB,8BAIpC,CAAC;AAEH,eAAO,MAAM,6BAA6B,0CAMxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"twapInputAmountAtom.js","names":["atom","parseUnits","twapTokenFromAtom","twapTokenToAtom","GuardAgainstLoneDecimalPoint","twapPayInputAmountAtom","twapReceiveInputAmountAtom","twapPayInputAmountWeiAtom","get","tokenFrom","payInputAmount","decimals","toString","twapReceiveInputAmountWeiAtom","tokenTo","receiveInputAmount"],"sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { GuardAgainstLoneDecimalPoint } from \"@/core/inputs/state/guards\";\n\nexport const twapPayInputAmountAtom = atom(\"0\", GuardAgainstLoneDecimalPoint);\n\nexport const twapReceiveInputAmountAtom = atom(\"0\", GuardAgainstLoneDecimalPoint);\n\nexport const twapPayInputAmountWeiAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const payInputAmount = get(twapPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const twapReceiveInputAmountWeiAtom = atom((get) => {\n const tokenTo = get(twapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(twapReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;;AAKA,IAAaK,IAAyBL,EAAK,KAAKI,EAA6B,EAEhEE,IAA6BN,EAAK,KAAKI,EAA6B,EAEpEG,IAA4BP,GAAMQ,MAAQ;CACrD,IAAMC,IAAYD,EAAIN,EAAkB;CAExC,OAAOD,EADgBO,EAAIH,EACTK,EAAgBD,EAAUE,SAAS,CAACC,UAAU;EAChE,EAEWC,IAAgCb,GAAMQ,MAAQ;CACzD,IAAMM,IAAUN,EAAIL,EAAgB;CACpC,IAAIW,GAEF,OAAOb,EADoBO,EAAIF,EACbS,EAAoBD,EAAQH,SAAS,CAACC,UAAU;EAEpE"}
1
+ {"version":3,"file":"twapInputAmountAtom.js","names":["atom","parseUnits","twapTokenFromAtom","twapTokenToAtom","GuardAgainstLoneDecimalPoint","twapPayInputAmountAtom","twapReceiveInputAmountAtom","twapPayInputAmountWeiAtom","get","tokenFrom","payInputAmount","decimals","toString","twapReceiveInputAmountWeiAtom","tokenTo","receiveInputAmount"],"sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { GuardAgainstLoneDecimalPoint } from \"@/core/inputs/state/guards\";\n\nexport const twapPayInputAmountAtom = atom(\"0\", GuardAgainstLoneDecimalPoint);\n\nexport const twapReceiveInputAmountAtom = atom(\n \"0\",\n GuardAgainstLoneDecimalPoint\n);\n\nexport const twapPayInputAmountWeiAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const payInputAmount = get(twapPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const twapReceiveInputAmountWeiAtom = atom((get) => {\n const tokenTo = get(twapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(twapReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;;AAKA,IAAaK,IAAyBL,EAAK,KAAKI,EAA6B,EAEhEE,IAA6BN,EACxC,KACAI,EACD,EAEYG,IAA4BP,GAAMQ,MAAQ;CACrD,IAAMC,IAAYD,EAAIN,EAAkB;CAExC,OAAOD,EADgBO,EAAIH,EACTK,EAAgBD,EAAUE,SAAS,CAACC,UAAU;EAChE,EAEWC,IAAgCb,GAAMQ,MAAQ;CACzD,IAAMM,IAAUN,EAAIL,EAAgB;CACpC,IAAIW,GAEF,OAAOb,EADoBO,EAAIF,EACbS,EAAoBD,EAAQH,SAAS,CAACC,UAAU;EAEpE"}
@@ -4,7 +4,7 @@ import { limitTokenFromAtom as n, limitTokenToAtom as r } from "../../core/limit
4
4
  import { limitPayInputAmountAtom as i, limitPriceAmountAtom as a, limitReceiveInputAmountAtom as o } from "../../core/limit/state/limitInputAmountAtom.js";
5
5
  import { deadlineAtom as s } from "../../core/limit/state/deadlineAtom.js";
6
6
  import { limitReceiverAddressAtom as c } from "../../core/limit/state/receiverAddressAtom.js";
7
- import { getAccount as l } from "@wagmi/core";
7
+ import { getConnection as l } from "@wagmi/core";
8
8
  //#region src/events/getters/limit.ts
9
9
  function u(e) {
10
10
  let l = e(n), u = e(r), d = e(i), f = e(o), p = e(a), m = e(s), h = e(c);
@@ -1 +1 @@
1
- {"version":3,"file":"limit.js","names":["LimitOrderFormState","getAccount","wagmiConfig","Getter","limitTokenFromAtom","limitTokenToAtom","limitPayInputAmountAtom","limitPriceAmountAtom","limitReceiveInputAmountAtom","deadlineAtom","LimitFormInput","sanitizeTradeFlowToken","limitReceiverAddressAtom","getLimitOrderFormInput","get","tokenFrom","tokenTo","sendAmount","receiveAmount","limitPrice","orderDeadline","receiverAddress","undefined","srcChainId","network","destChainId","form","getLimitOrderState","formInput","account","address","connectedAccount"],"sources":["../../../src/events/getters/limit.ts"],"sourcesContent":["import type { LimitOrderFormState } from \"../types/common\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n} from \"@/core/limit/state/limitTokenAtoms\";\nimport {\n limitPayInputAmountAtom,\n limitPriceAmountAtom,\n limitReceiveInputAmountAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport { deadlineAtom } from \"@/core/limit/state/deadlineAtom\";\nimport type { LimitFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\nimport { limitReceiverAddressAtom } from \"@/core/limit/state/receiverAddressAtom\";\n\nexport function getLimitOrderFormInput(get: Getter): LimitFormInput {\n const tokenFrom = get(limitTokenFromAtom);\n const tokenTo = get(limitTokenToAtom);\n\n const sendAmount = get(limitPayInputAmountAtom);\n const receiveAmount = get(limitReceiveInputAmountAtom);\n\n const limitPrice = get(limitPriceAmountAtom);\n const orderDeadline = get(deadlineAtom);\n\n const receiverAddress = get(limitReceiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n sendAmount,\n receiveAmount,\n srcChainId: tokenFrom.network,\n destChainId: tokenTo?.network,\n limitPrice,\n orderDeadline,\n form: \"limit\",\n receiverAddress,\n };\n}\n\nexport function getLimitOrderState(get: Getter): LimitOrderFormState {\n const formInput = getLimitOrderFormInput(get);\n\n const account = getAccount(wagmiConfig).address;\n\n // for LimitOrders user is the receiver\n const receiverAddress = account;\n\n return {\n ...formInput,\n connectedAccount: account,\n receiverAddress,\n };\n}\n"],"mappings":";;;;;;;;AAkBA,SAAgBa,EAAuBC,GAA6B;CAClE,IAAMC,IAAYD,EAAIV,EAAmB,EACnCY,IAAUF,EAAIT,EAAiB,EAE/BY,IAAaH,EAAIR,EAAwB,EACzCY,IAAgBJ,EAAIN,EAA4B,EAEhDW,IAAaL,EAAIP,EAAqB,EACtCa,IAAgBN,EAAIL,EAAa,EAEjCY,IAAkBP,EAAIF,EAAyB;CAErD,OAAO;EACLG,WAAWJ,EAAuBI,EAAU;EAC5CC,SAASA,IAAUL,EAAuBK,EAAQ,GAAGM,KAAAA;EACrDL;EACAC;EACAK,YAAYR,EAAUS;EACtBC,aAAaT,GAASQ;EACtBL;EACAC;EACAM,MAAM;EACNL;EACD;;AAGH,SAAgBM,EAAmBb,GAAkC;CACnE,IAAMc,IAAYf,EAAuBC,EAAI,EAEvCe,IAAU5B,EAAWC,EAAY,CAAC4B,SAGlCT,IAAkBQ;CAExB,OAAO;EACL,GAAGD;EACHG,kBAAkBF;EAClBR;EACD"}
1
+ {"version":3,"file":"limit.js","names":["LimitOrderFormState","getConnection","wagmiConfig","Getter","limitTokenFromAtom","limitTokenToAtom","limitPayInputAmountAtom","limitPriceAmountAtom","limitReceiveInputAmountAtom","deadlineAtom","LimitFormInput","sanitizeTradeFlowToken","limitReceiverAddressAtom","getLimitOrderFormInput","get","tokenFrom","tokenTo","sendAmount","receiveAmount","limitPrice","orderDeadline","receiverAddress","undefined","srcChainId","network","destChainId","form","getLimitOrderState","formInput","account","address","connectedAccount"],"sources":["../../../src/events/getters/limit.ts"],"sourcesContent":["import type { LimitOrderFormState } from \"../types/common\";\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n} from \"@/core/limit/state/limitTokenAtoms\";\nimport {\n limitPayInputAmountAtom,\n limitPriceAmountAtom,\n limitReceiveInputAmountAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport { deadlineAtom } from \"@/core/limit/state/deadlineAtom\";\nimport type { LimitFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\nimport { limitReceiverAddressAtom } from \"@/core/limit/state/receiverAddressAtom\";\n\nexport function getLimitOrderFormInput(get: Getter): LimitFormInput {\n const tokenFrom = get(limitTokenFromAtom);\n const tokenTo = get(limitTokenToAtom);\n\n const sendAmount = get(limitPayInputAmountAtom);\n const receiveAmount = get(limitReceiveInputAmountAtom);\n\n const limitPrice = get(limitPriceAmountAtom);\n const orderDeadline = get(deadlineAtom);\n\n const receiverAddress = get(limitReceiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n sendAmount,\n receiveAmount,\n srcChainId: tokenFrom.network,\n destChainId: tokenTo?.network,\n limitPrice,\n orderDeadline,\n form: \"limit\",\n receiverAddress,\n };\n}\n\nexport function getLimitOrderState(get: Getter): LimitOrderFormState {\n const formInput = getLimitOrderFormInput(get);\n\n const account = getConnection(wagmiConfig).address;\n\n // for LimitOrders user is the receiver\n const receiverAddress = account;\n\n return {\n ...formInput,\n connectedAccount: account,\n receiverAddress,\n };\n}\n"],"mappings":";;;;;;;;AAkBA,SAAgBa,EAAuBC,GAA6B;CAClE,IAAMC,IAAYD,EAAIV,EAAmB,EACnCY,IAAUF,EAAIT,EAAiB,EAE/BY,IAAaH,EAAIR,EAAwB,EACzCY,IAAgBJ,EAAIN,EAA4B,EAEhDW,IAAaL,EAAIP,EAAqB,EACtCa,IAAgBN,EAAIL,EAAa,EAEjCY,IAAkBP,EAAIF,EAAyB;CAErD,OAAO;EACLG,WAAWJ,EAAuBI,EAAU;EAC5CC,SAASA,IAAUL,EAAuBK,EAAQ,GAAGM,KAAAA;EACrDL;EACAC;EACAK,YAAYR,EAAUS;EACtBC,aAAaT,GAASQ;EACtBL;EACAC;EACAM,MAAM;EACNL;EACD;;AAGH,SAAgBM,EAAmBb,GAAkC;CACnE,IAAMc,IAAYf,EAAuBC,EAAI,EAEvCe,IAAU5B,EAAcC,EAAY,CAAC4B,SAGrCT,IAAkBQ;CAExB,OAAO;EACL,GAAGD;EACHG,kBAAkBF;EAClBR;EACD"}
@@ -4,7 +4,7 @@ import { deadlineAtom as n } from "../../core/otc/state/deadlineAtom.js";
4
4
  import { otcTokenFromAtom as r, otcTokenToAtom as i } from "../../core/otc/state/selectedTokenAtom.js";
5
5
  import { otcPayInputAmountAtom as a, otcPriceAmountAtom as o, otcReceiveInputAmountAtom as s } from "../../core/otc/state/otcInputAmountAtom.js";
6
6
  import { otcReceiverAddressAtom as c } from "../../core/otc/state/receiverAddressAtom.js";
7
- import { getAccount as l } from "@wagmi/core";
7
+ import { getConnection as l } from "@wagmi/core";
8
8
  //#region src/events/getters/otc.ts
9
9
  function u(e) {
10
10
  let l = e(r), u = e(i), d = e(a), f = e(s), p = e(o), m = e(n), h = e(c);
@@ -1 +1 @@
1
- {"version":3,"file":"otc.js","names":["OTCOrderFormState","getAccount","wagmiConfig","Getter","deadlineAtom","otcTokenFromAtom","otcTokenToAtom","otcPayInputAmountAtom","otcPriceAmountAtom","otcReceiveInputAmountAtom","OTCFormInput","otcReceiverAddressAtom","sanitizeTradeFlowToken","getOTCFormInput","get","tokenFrom","tokenTo","sendAmount","receiveAmount","otcPrice","orderDeadline","receiverAddress","undefined","srcChainId","network","destChainId","form","getOTCState","formInput","account","address","connectedAccount"],"sources":["../../../src/events/getters/otc.ts"],"sourcesContent":["import type { OTCOrderFormState } from \"../types/common\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport { deadlineAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPriceAmountAtom,\n otcReceiveInputAmountAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport type { OTCFormInput } from \"../types/formInput\";\nimport { otcReceiverAddressAtom } from \"@/core/otc/state/receiverAddressAtom\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nexport function getOTCFormInput(get: Getter): OTCFormInput {\n const tokenFrom = get(otcTokenFromAtom);\n const tokenTo = get(otcTokenToAtom);\n\n const sendAmount = get(otcPayInputAmountAtom);\n const receiveAmount = get(otcReceiveInputAmountAtom);\n\n const otcPrice = get(otcPriceAmountAtom);\n const orderDeadline = get(deadlineAtom);\n\n const receiverAddress = get(otcReceiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n sendAmount,\n receiveAmount,\n srcChainId: tokenFrom.network,\n destChainId: tokenTo?.network,\n otcPrice,\n orderDeadline,\n form: \"otc\",\n receiverAddress,\n };\n}\n\nexport function getOTCState(get: Getter): OTCOrderFormState {\n const formInput = getOTCFormInput(get);\n\n const account = getAccount(wagmiConfig).address;\n\n return {\n ...formInput,\n connectedAccount: account,\n };\n}\n"],"mappings":";;;;;;;;AAkBA,SAAgBa,EAAgBC,GAA2B;CACzD,IAAMC,IAAYD,EAAIT,EAAiB,EACjCW,IAAUF,EAAIR,EAAe,EAE7BW,IAAaH,EAAIP,EAAsB,EACvCW,IAAgBJ,EAAIL,EAA0B,EAE9CU,IAAWL,EAAIN,EAAmB,EAClCY,IAAgBN,EAAIV,EAAa,EAEjCiB,IAAkBP,EAAIH,EAAuB;CAEnD,OAAO;EACLI,WAAWH,EAAuBG,EAAU;EAC5CC,SAASA,IAAUJ,EAAuBI,EAAQ,GAAGM,KAAAA;EACrDL;EACAC;EACAK,YAAYR,EAAUS;EACtBC,aAAaT,GAASQ;EACtBL;EACAC;EACAM,MAAM;EACNL;EACD;;AAGH,SAAgBM,EAAYb,GAAgC;CAC1D,IAAMc,IAAYf,EAAgBC,EAAI,EAEhCe,IAAU5B,EAAWC,EAAY,CAAC4B;CAExC,OAAO;EACL,GAAGF;EACHG,kBAAkBF;EACnB"}
1
+ {"version":3,"file":"otc.js","names":["OTCOrderFormState","getConnection","wagmiConfig","Getter","deadlineAtom","otcTokenFromAtom","otcTokenToAtom","otcPayInputAmountAtom","otcPriceAmountAtom","otcReceiveInputAmountAtom","OTCFormInput","otcReceiverAddressAtom","sanitizeTradeFlowToken","getOTCFormInput","get","tokenFrom","tokenTo","sendAmount","receiveAmount","otcPrice","orderDeadline","receiverAddress","undefined","srcChainId","network","destChainId","form","getOTCState","formInput","account","address","connectedAccount"],"sources":["../../../src/events/getters/otc.ts"],"sourcesContent":["import type { OTCOrderFormState } from \"../types/common\";\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport { deadlineAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPriceAmountAtom,\n otcReceiveInputAmountAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport type { OTCFormInput } from \"../types/formInput\";\nimport { otcReceiverAddressAtom } from \"@/core/otc/state/receiverAddressAtom\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nexport function getOTCFormInput(get: Getter): OTCFormInput {\n const tokenFrom = get(otcTokenFromAtom);\n const tokenTo = get(otcTokenToAtom);\n\n const sendAmount = get(otcPayInputAmountAtom);\n const receiveAmount = get(otcReceiveInputAmountAtom);\n\n const otcPrice = get(otcPriceAmountAtom);\n const orderDeadline = get(deadlineAtom);\n\n const receiverAddress = get(otcReceiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n sendAmount,\n receiveAmount,\n srcChainId: tokenFrom.network,\n destChainId: tokenTo?.network,\n otcPrice,\n orderDeadline,\n form: \"otc\",\n receiverAddress,\n };\n}\n\nexport function getOTCState(get: Getter): OTCOrderFormState {\n const formInput = getOTCFormInput(get);\n\n const account = getConnection(wagmiConfig).address;\n\n return {\n ...formInput,\n connectedAccount: account,\n };\n}\n"],"mappings":";;;;;;;;AAkBA,SAAgBa,EAAgBC,GAA2B;CACzD,IAAMC,IAAYD,EAAIT,EAAiB,EACjCW,IAAUF,EAAIR,EAAe,EAE7BW,IAAaH,EAAIP,EAAsB,EACvCW,IAAgBJ,EAAIL,EAA0B,EAE9CU,IAAWL,EAAIN,EAAmB,EAClCY,IAAgBN,EAAIV,EAAa,EAEjCiB,IAAkBP,EAAIH,EAAuB;CAEnD,OAAO;EACLI,WAAWH,EAAuBG,EAAU;EAC5CC,SAASA,IAAUJ,EAAuBI,EAAQ,GAAGM,KAAAA;EACrDL;EACAC;EACAK,YAAYR,EAAUS;EACtBC,aAAaT,GAASQ;EACtBL;EACAC;EACAM,MAAM;EACNL;EACD;;AAGH,SAAgBM,EAAYb,GAAgC;CAC1D,IAAMc,IAAYf,EAAgBC,EAAI,EAEhCe,IAAU5B,EAAcC,EAAY,CAAC4B;CAE3C,OAAO;EACL,GAAGF;EACHG,kBAAkBF;EACnB"}
@@ -4,7 +4,7 @@ import { payInputAmountAtom as r, receiveInputAmountAtom as i } from "../../core
4
4
  import { swapSideAtom as a } from "../../components/widget/SwapModeSwitcher/state/swapSideAtom.js";
5
5
  import { receiverAddressAtom as o } from "../../components/widget/ReceiverAddress/state/receiverAddressAtom.js";
6
6
  import { sanitizeTradeFlowToken as s } from "../../lib/utils/tradeFlow.js";
7
- import { getAccount as c } from "@wagmi/core";
7
+ import { getConnection as c } from "@wagmi/core";
8
8
  //#region src/events/getters/swap.ts
9
9
  function l(e) {
10
10
  let r = e(t), i = e(n), c = r.network, l = i?.network, u = e(a), d = e(o);
@@ -1 +1 @@
1
- {"version":3,"file":"swap.js","names":["SwapFormState","swapTokenFromAtom","swapTokenToAtom","payInputAmountAtom","receiveInputAmountAtom","swapSideAtom","getAccount","wagmiConfig","receiverAddressAtom","Getter","SwapFormInput","sanitizeTradeFlowToken","getBaseParams","get","tokenFrom","tokenTo","srcChainId","network","destChainId","side","receiverAddress","undefined","getSwapState","baseState","sendAmount","receiveAmount","account","address","connectedAccount","getSwapFormInput","form"],"sources":["../../../src/events/getters/swap.ts"],"sourcesContent":["import type { SwapFormState } from \"../types/common\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"@/core/inputs/state/selectedTokenAtom\";\nimport {\n payInputAmountAtom,\n receiveInputAmountAtom,\n} from \"@/core/inputs/state/inputAmountAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { receiverAddressAtom } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { Getter } from \"jotai\";\nimport type { SwapFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(swapSideAtom);\n\n const receiverAddress = get(receiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n };\n}\n\nexport function getSwapState(get: Getter): SwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(payInputAmountAtom);\n const receiveAmount = get(receiveInputAmountAtom);\n\n const account = getAccount(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n receiverAddress: baseState.receiverAddress ?? account,\n };\n}\n\nexport function getSwapFormInput(get: Getter): SwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(payInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"swap\",\n };\n }\n\n const receiveAmount = get(receiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"swap\",\n };\n}\n"],"mappings":";;;;;;;;AAiBA,SAASY,EAAcC,GAAa;CAClC,IAAMC,IAAYD,EAAIZ,EAAkB,EAClCc,IAAUF,EAAIX,EAAgB,EAE9Bc,IAAaF,EAAUG,SACvBC,IAAcH,GAASE,SAEvBE,IAAON,EAAIR,EAAa,EAExBe,IAAkBP,EAAIL,EAAoB;CAEhD,OAAO;EACLM,WAAWH,EAAuBG,EAAU;EAC5CC,SAASA,IAAUJ,EAAuBI,EAAQ,GAAGM,KAAAA;EACrDL;EACAE;EACAC;EACAC;EACD;;AAGH,SAAgBE,EAAaT,GAA4B;CACvD,IAAMU,IAAYX,EAAcC,EAAI,EAE9BW,IAAaX,EAAIV,EAAmB,EACpCsB,IAAgBZ,EAAIT,EAAuB,EAE3CsB,IAAUpB,EAAWC,EAAY,CAACoB;CAExC,OAAO;EACL,GAAGJ;EACHC;EACAC;EACAG,kBAAkBF;EAClBN,iBAAiBG,EAAUH,mBAAmBM;EAC/C;;AAGH,SAAgBG,EAAiBhB,GAA4B;CAC3D,IAAMU,IAAYX,EAAcC,EAAI,EAC9BM,IAAOI,EAAUJ;CAEvB,IAAIA,MAAS,QAAQ;EACnB,IAAMK,IAAaX,EAAIV,EAAmB;EAC1C,OAAO;GACL,GAAGoB;GACHJ;GACAK;GACAM,MAAM;GACP;;CAGH,IAAML,IAAgBZ,EAAIT,EAAuB;CACjD,OAAO;EACL,GAAGmB;EACHJ;EACAM;EACAK,MAAM;EACP"}
1
+ {"version":3,"file":"swap.js","names":["SwapFormState","swapTokenFromAtom","swapTokenToAtom","payInputAmountAtom","receiveInputAmountAtom","swapSideAtom","getConnection","wagmiConfig","receiverAddressAtom","Getter","SwapFormInput","sanitizeTradeFlowToken","getBaseParams","get","tokenFrom","tokenTo","srcChainId","network","destChainId","side","receiverAddress","undefined","getSwapState","baseState","sendAmount","receiveAmount","account","address","connectedAccount","getSwapFormInput","form"],"sources":["../../../src/events/getters/swap.ts"],"sourcesContent":["import type { SwapFormState } from \"../types/common\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"@/core/inputs/state/selectedTokenAtom\";\nimport {\n payInputAmountAtom,\n receiveInputAmountAtom,\n} from \"@/core/inputs/state/inputAmountAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { receiverAddressAtom } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { Getter } from \"jotai\";\nimport type { SwapFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(swapSideAtom);\n\n const receiverAddress = get(receiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n };\n}\n\nexport function getSwapState(get: Getter): SwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(payInputAmountAtom);\n const receiveAmount = get(receiveInputAmountAtom);\n\n const account = getConnection(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n receiverAddress: baseState.receiverAddress ?? account,\n };\n}\n\nexport function getSwapFormInput(get: Getter): SwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(payInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"swap\",\n };\n }\n\n const receiveAmount = get(receiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"swap\",\n };\n}\n"],"mappings":";;;;;;;;AAiBA,SAASY,EAAcC,GAAa;CAClC,IAAMC,IAAYD,EAAIZ,EAAkB,EAClCc,IAAUF,EAAIX,EAAgB,EAE9Bc,IAAaF,EAAUG,SACvBC,IAAcH,GAASE,SAEvBE,IAAON,EAAIR,EAAa,EAExBe,IAAkBP,EAAIL,EAAoB;CAEhD,OAAO;EACLM,WAAWH,EAAuBG,EAAU;EAC5CC,SAASA,IAAUJ,EAAuBI,EAAQ,GAAGM,KAAAA;EACrDL;EACAE;EACAC;EACAC;EACD;;AAGH,SAAgBE,EAAaT,GAA4B;CACvD,IAAMU,IAAYX,EAAcC,EAAI,EAE9BW,IAAaX,EAAIV,EAAmB,EACpCsB,IAAgBZ,EAAIT,EAAuB,EAE3CsB,IAAUpB,EAAcC,EAAY,CAACoB;CAE3C,OAAO;EACL,GAAGJ;EACHC;EACAC;EACAG,kBAAkBF;EAClBN,iBAAiBG,EAAUH,mBAAmBM;EAC/C;;AAGH,SAAgBG,EAAiBhB,GAA4B;CAC3D,IAAMU,IAAYX,EAAcC,EAAI,EAC9BM,IAAOI,EAAUJ;CAEvB,IAAIA,MAAS,QAAQ;EACnB,IAAMK,IAAaX,EAAIV,EAAmB;EAC1C,OAAO;GACL,GAAGoB;GACHJ;GACAK;GACAM,MAAM;GACP;;CAGH,IAAML,IAAgBZ,EAAIT,EAAuB;CACjD,OAAO;EACL,GAAGmB;EACHJ;EACAM;EACAK,MAAM;EACP"}
@@ -5,7 +5,7 @@ import { twapSideAtom as i } from "../../core/twap/state/twapSideAtom.js";
5
5
  import { twapReceiverAddressAtom as a } from "../../core/twap/state/twapReceiverAddressAtom.js";
6
6
  import { twapPayInputAmountAtom as o, twapReceiveInputAmountAtom as s } from "../../core/twap/state/twapInputAmountAtom.js";
7
7
  import { twapDeadlinesAtom as c, twapSlippageAtom as l, twapSplitAtom as u } from "../../core/twap/state/twapParamsAtom.js";
8
- import { getAccount as d } from "@wagmi/core";
8
+ import { getConnection as d } from "@wagmi/core";
9
9
  //#region src/events/getters/twap.ts
10
10
  function f(e) {
11
11
  let o = e(n), s = e(r), d = o.network, f = s?.network, p = e(i), m = e(a), h = e(u), g = e(l), { orderDeadline: _, orderInterval: v } = e(c);
@@ -1 +1 @@
1
- {"version":3,"file":"twap.js","names":["TwapFormState","getAccount","wagmiConfig","Getter","sanitizeTradeFlowToken","twapTokenFromAtom","twapTokenToAtom","twapSideAtom","twapReceiverAddressAtom","twapPayInputAmountAtom","twapReceiveInputAmountAtom","TwapFormInput","twapDeadlinesAtom","twapSlippageAtom","twapSplitAtom","getBaseParams","get","tokenFrom","tokenTo","srcChainId","network","destChainId","side","receiverAddress","orderSplit","slippage","orderDeadline","orderInterval","undefined","getTwapState","baseState","sendAmount","receiveAmount","account","address","connectedAccount","getTwapFormInput","form"],"sources":["../../../src/events/getters/twap.ts"],"sourcesContent":["import type { TwapFormState } from \"../types/common\";\n\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\nimport {\n twapTokenFromAtom,\n twapTokenToAtom,\n} from \"@/core/twap/state/twapTokenAtoms\";\nimport { twapSideAtom } from \"@/core/twap/state/twapSideAtom\";\nimport { twapReceiverAddressAtom } from \"@/core/twap/state/twapReceiverAddressAtom\";\nimport {\n twapPayInputAmountAtom,\n twapReceiveInputAmountAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport type { TwapFormInput } from \"../types/formInput\";\nimport {\n twapDeadlinesAtom,\n twapSlippageAtom,\n twapSplitAtom,\n} from \"@/core/twap/state/twapParamsAtom\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(twapTokenFromAtom);\n const tokenTo = get(twapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(twapSideAtom);\n\n const receiverAddress = get(twapReceiverAddressAtom);\n\n const orderSplit = get(twapSplitAtom);\n const slippage = get(twapSlippageAtom);\n\n const { orderDeadline, orderInterval } = get(twapDeadlinesAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n orderSplit,\n slippage,\n orderDeadline,\n orderInterval,\n };\n}\n\nexport function getTwapState(get: Getter): TwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(twapPayInputAmountAtom);\n const receiveAmount = get(twapReceiveInputAmountAtom);\n\n const account = getAccount(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n receiverAddress: baseState.receiverAddress ?? account,\n };\n}\n\nexport function getTwapFormInput(get: Getter): TwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(twapPayInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"twap\",\n };\n }\n\n const receiveAmount = get(twapReceiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"twap\",\n };\n}\n"],"mappings":";;;;;;;;;AAuBA,SAASe,EAAcC,GAAa;CAClC,IAAMC,IAAYD,EAAIX,EAAkB,EAClCa,IAAUF,EAAIV,EAAgB,EAE9Ba,IAAaF,EAAUG,SACvBC,IAAcH,GAASE,SAEvBE,IAAON,EAAIT,EAAa,EAExBgB,IAAkBP,EAAIR,EAAwB,EAE9CgB,IAAaR,EAAIF,EAAc,EAC/BW,IAAWT,EAAIH,EAAiB,EAEhC,EAAEa,kBAAeC,qBAAkBX,EAAIJ,EAAkB;CAE/D,OAAO;EACLK,WAAWb,EAAuBa,EAAU;EAC5CC,SAASA,IAAUd,EAAuBc,EAAQ,GAAGU,KAAAA;EACrDT;EACAE;EACAC;EACAC;EACAC;EACAC;EACAC;EACAC;EACD;;AAGH,SAAgBE,EAAab,GAA4B;CACvD,IAAMc,IAAYf,EAAcC,EAAI,EAE9Be,IAAaf,EAAIP,EAAuB,EACxCuB,IAAgBhB,EAAIN,EAA2B,EAE/CuB,IAAUhC,EAAWC,EAAY,CAACgC;CAExC,OAAO;EACL,GAAGJ;EACHC;EACAC;EACAG,kBAAkBF;EAClBV,iBAAiBO,EAAUP,mBAAmBU;EAC/C;;AAGH,SAAgBG,EAAiBpB,GAA4B;CAC3D,IAAMc,IAAYf,EAAcC,EAAI,EAC9BM,IAAOQ,EAAUR;CAEvB,IAAIA,MAAS,QAAQ;EACnB,IAAMS,IAAaf,EAAIP,EAAuB;EAC9C,OAAO;GACL,GAAGqB;GACHR;GACAS;GACAM,MAAM;GACP;;CAGH,IAAML,IAAgBhB,EAAIN,EAA2B;CACrD,OAAO;EACL,GAAGoB;EACHR;EACAU;EACAK,MAAM;EACP"}
1
+ {"version":3,"file":"twap.js","names":["TwapFormState","getConnection","wagmiConfig","Getter","sanitizeTradeFlowToken","twapTokenFromAtom","twapTokenToAtom","twapSideAtom","twapReceiverAddressAtom","twapPayInputAmountAtom","twapReceiveInputAmountAtom","TwapFormInput","twapDeadlinesAtom","twapSlippageAtom","twapSplitAtom","getBaseParams","get","tokenFrom","tokenTo","srcChainId","network","destChainId","side","receiverAddress","orderSplit","slippage","orderDeadline","orderInterval","undefined","getTwapState","baseState","sendAmount","receiveAmount","account","address","connectedAccount","getTwapFormInput","form"],"sources":["../../../src/events/getters/twap.ts"],"sourcesContent":["import type { TwapFormState } from \"../types/common\";\n\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { Getter } from \"jotai\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\nimport {\n twapTokenFromAtom,\n twapTokenToAtom,\n} from \"@/core/twap/state/twapTokenAtoms\";\nimport { twapSideAtom } from \"@/core/twap/state/twapSideAtom\";\nimport { twapReceiverAddressAtom } from \"@/core/twap/state/twapReceiverAddressAtom\";\nimport {\n twapPayInputAmountAtom,\n twapReceiveInputAmountAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport type { TwapFormInput } from \"../types/formInput\";\nimport {\n twapDeadlinesAtom,\n twapSlippageAtom,\n twapSplitAtom,\n} from \"@/core/twap/state/twapParamsAtom\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(twapTokenFromAtom);\n const tokenTo = get(twapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(twapSideAtom);\n\n const receiverAddress = get(twapReceiverAddressAtom);\n\n const orderSplit = get(twapSplitAtom);\n const slippage = get(twapSlippageAtom);\n\n const { orderDeadline, orderInterval } = get(twapDeadlinesAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n orderSplit,\n slippage,\n orderDeadline,\n orderInterval,\n };\n}\n\nexport function getTwapState(get: Getter): TwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(twapPayInputAmountAtom);\n const receiveAmount = get(twapReceiveInputAmountAtom);\n\n const account = getConnection(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n receiverAddress: baseState.receiverAddress ?? account,\n };\n}\n\nexport function getTwapFormInput(get: Getter): TwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(twapPayInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"twap\",\n };\n }\n\n const receiveAmount = get(twapReceiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"twap\",\n };\n}\n"],"mappings":";;;;;;;;;AAuBA,SAASe,EAAcC,GAAa;CAClC,IAAMC,IAAYD,EAAIX,EAAkB,EAClCa,IAAUF,EAAIV,EAAgB,EAE9Ba,IAAaF,EAAUG,SACvBC,IAAcH,GAASE,SAEvBE,IAAON,EAAIT,EAAa,EAExBgB,IAAkBP,EAAIR,EAAwB,EAE9CgB,IAAaR,EAAIF,EAAc,EAC/BW,IAAWT,EAAIH,EAAiB,EAEhC,EAAEa,kBAAeC,qBAAkBX,EAAIJ,EAAkB;CAE/D,OAAO;EACLK,WAAWb,EAAuBa,EAAU;EAC5CC,SAASA,IAAUd,EAAuBc,EAAQ,GAAGU,KAAAA;EACrDT;EACAE;EACAC;EACAC;EACAC;EACAC;EACAC;EACAC;EACD;;AAGH,SAAgBE,EAAab,GAA4B;CACvD,IAAMc,IAAYf,EAAcC,EAAI,EAE9Be,IAAaf,EAAIP,EAAuB,EACxCuB,IAAgBhB,EAAIN,EAA2B,EAE/CuB,IAAUhC,EAAcC,EAAY,CAACgC;CAE3C,OAAO;EACL,GAAGJ;EACHC;EACAC;EACAG,kBAAkBF;EAClBV,iBAAiBO,EAAUP,mBAAmBU;EAC/C;;AAGH,SAAgBG,EAAiBpB,GAA4B;CAC3D,IAAMc,IAAYf,EAAcC,EAAI,EAC9BM,IAAOQ,EAAUR;CAEvB,IAAIA,MAAS,QAAQ;EACnB,IAAMS,IAAaf,EAAIP,EAAuB;EAC9C,OAAO;GACL,GAAGqB;GACHR;GACAS;GACAM,MAAM;GACP;;CAGH,IAAML,IAAgBhB,EAAIN,EAA2B;CACrD,OAAO;EACL,GAAGoB;EACHR;EACAU;EACAK,MAAM;EACP"}
@@ -5,7 +5,7 @@ import { getLimitOrderState as r } from "./limit.js";
5
5
  import { getOTCState as i } from "./otc.js";
6
6
  import { getSettingsState as a } from "./settings.js";
7
7
  import { getTwapState as o } from "./twap.js";
8
- import { getAccount as s } from "@wagmi/core";
8
+ import { getConnection as s } from "@wagmi/core";
9
9
  //#region src/events/getters/widgetState.ts
10
10
  function c() {
11
11
  let { address: e, chainId: n, connector: r } = s(t);
@@ -1 +1 @@
1
- {"version":3,"file":"widgetState.js","names":["Getter","AccountState","WidgetState","getSwapState","getLimitOrderState","getOTCState","tradeModeAtom","getSettingsState","getAccount","wagmiConfig","getTwapState","accountState","address","chainId","connector","connectorData","name","icon","id","type","undefined","getWidgetState","get","currentTradeMode","formState","swap","limit","otc","twap","settingsState"],"sources":["../../../src/events/getters/widgetState.ts"],"sourcesContent":["import type { Getter } from \"jotai\";\nimport type { AccountState, WidgetState } from \"../types/common\";\nimport { getSwapState } from \"./swap\";\nimport { getLimitOrderState } from \"./limit\";\nimport { getOTCState } from \"./otc\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { getSettingsState } from \"./settings\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { getTwapState } from \"./twap\";\n\nfunction accountState(): AccountState {\n const { address, chainId, connector } = getAccount(wagmiConfig);\n\n const connectorData = connector\n ? {\n name: connector.name,\n icon: connector.icon,\n id: connector.id,\n type: connector.type,\n }\n : undefined;\n return { address, chainId, connector: connectorData };\n}\n\nexport function getWidgetState(get: Getter): WidgetState {\n const currentTradeMode = get(tradeModeAtom);\n const formState = {\n swap: getSwapState(get),\n limit: getLimitOrderState(get),\n otc: getOTCState(get),\n twap: getTwapState(get),\n };\n\n return {\n currentTradeMode,\n formState,\n settingsState: getSettingsState(get),\n accountState: accountState(),\n };\n}\n"],"mappings":";;;;;;;;;AAWA,SAASW,IAA6B;CACpC,IAAM,EAAEC,YAASC,YAASC,iBAAcN,EAAWC,EAAY;CAU/D,OAAO;EAAEG;EAASC;EAASC,WARLA,IAClB;GACEE,MAAMF,EAAUE;GAChBC,MAAMH,EAAUG;GAChBC,IAAIJ,EAAUI;GACdC,MAAML,EAAUK;GACjB,GACDC,KAAAA;EACiD;;AAGvD,SAAgBC,EAAeC,GAA0B;CASvD,OAAO;EACLC,kBATuBD,EAAIhB,EAS3BiB;EACAC,WAAAA;GARAC,MAAMtB,EAAamB,EAAI;GACvBI,OAAOtB,EAAmBkB,EAAI;GAC9BK,KAAKtB,EAAYiB,EAAI;GACrBM,MAAMlB,EAAaY,EAAG;GAKtBE;EACAK,eAAetB,EAAiBe,EAAI;EACpCX,cAAcA,GAAa;EAC5B"}
1
+ {"version":3,"file":"widgetState.js","names":["Getter","AccountState","WidgetState","getSwapState","getLimitOrderState","getOTCState","tradeModeAtom","getSettingsState","getConnection","wagmiConfig","getTwapState","accountState","address","chainId","connector","connectorData","name","icon","id","type","undefined","getWidgetState","get","currentTradeMode","formState","swap","limit","otc","twap","settingsState"],"sources":["../../../src/events/getters/widgetState.ts"],"sourcesContent":["import type { Getter } from \"jotai\";\nimport type { AccountState, WidgetState } from \"../types/common\";\nimport { getSwapState } from \"./swap\";\nimport { getLimitOrderState } from \"./limit\";\nimport { getOTCState } from \"./otc\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { getSettingsState } from \"./settings\";\nimport { getConnection } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { getTwapState } from \"./twap\";\n\nfunction accountState(): AccountState {\n const { address, chainId, connector } = getConnection(wagmiConfig);\n\n const connectorData = connector\n ? {\n name: connector.name,\n icon: connector.icon,\n id: connector.id,\n type: connector.type,\n }\n : undefined;\n return { address, chainId, connector: connectorData };\n}\n\nexport function getWidgetState(get: Getter): WidgetState {\n const currentTradeMode = get(tradeModeAtom);\n const formState = {\n swap: getSwapState(get),\n limit: getLimitOrderState(get),\n otc: getOTCState(get),\n twap: getTwapState(get),\n };\n\n return {\n currentTradeMode,\n formState,\n settingsState: getSettingsState(get),\n accountState: accountState(),\n };\n}\n"],"mappings":";;;;;;;;;AAWA,SAASW,IAA6B;CACpC,IAAM,EAAEC,YAASC,YAASC,iBAAcN,EAAcC,EAAY;CAUlE,OAAO;EAAEG;EAASC;EAASC,WARLA,IAClB;GACEE,MAAMF,EAAUE;GAChBC,MAAMH,EAAUG;GAChBC,IAAIJ,EAAUI;GACdC,MAAML,EAAUK;GACjB,GACDC,KAAAA;EACiD;;AAGvD,SAAgBC,EAAeC,GAA0B;CASvD,OAAO;EACLC,kBATuBD,EAAIhB,EAS3BiB;EACAC,WAAAA;GARAC,MAAMtB,EAAamB,EAAI;GACvBI,OAAOtB,EAAmBkB,EAAI;GAC9BK,KAAKtB,EAAYiB,EAAI;GACrBM,MAAMlB,EAAaY,EAAG;GAKtBE;EACAK,eAAetB,EAAiBe,EAAI;EACpCX,cAAcA,GAAa;EAC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAYA,wBAAgB,oBAAoB,SA8CnC"}
1
+ {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAcA,wBAAgB,oBAAoB,SA8CnC"}
@@ -2,7 +2,7 @@ import { useWidgetEvents as e } from "../../core/state/widgetEventsAtom.js";
2
2
  import { isExternalConnector as t } from "../../components/web3/ConnectExternalProvider/utils.js";
3
3
  import { getWalletMetadata as n } from "../../components/web3/ConnectWallets/walletIcons.js";
4
4
  import { c as r } from "react-compiler-runtime";
5
- import { useAccountEffect as i } from "wagmi";
5
+ import { useConnectionEffect as i } from "wagmi";
6
6
  import { safe as a } from "wagmi/connectors";
7
7
  //#region src/events/hooks/useOnWalletConnect.ts
8
8
  function o() {
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.js","names":["isExternalConnector","getWalletMetadata","useWidgetEvents","EIP1193Provider","useAccountEffect","safe","ConnectWalletConnectorAction","OnConnectParams","Parameters","NonNullable","useOnWalletConnected","$","_c","onConnectWallet","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","provider","getProvider","isEmbedded","type","isExternal","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon"],"sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { EIP1193Provider } from \"viem\";\nimport { useAccountEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\nimport type { ConnectWalletConnectorAction } from \"../types/connectWallet\";\n\ntype OnConnectParams = Parameters<\n NonNullable<NonNullable<Parameters<typeof useAccountEffect>[0]>[\"onConnect\"]>\n>[0];\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useAccountEffect({\n onConnect: async ({\n address,\n connector,\n chainId,\n isReconnected,\n }: Partial<OnConnectParams>) => {\n // in some eager connect cases with external provider, account properties are not available yet,\n // especially when external provider = Safe iframe provider\n if (!connector || !address || !chainId) return;\n\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n const isExternal = isExternalConnector(connector);\n\n let connectorAction: ConnectWalletConnectorAction = \"Click\";\n if (isReconnected) {\n connectorAction = \"Eager\";\n } else if (isEmbedded) {\n connectorAction = \"Embedded\";\n } else if (isExternal) {\n connectorAction = \"External\";\n }\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider: provider as EIP1193Provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"mappings":";;;;;;;AAYA,SAAOU,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,uBAA4BX,GAAiB,EAACY;CAE9CV,AAF8CO,EAAA,OAAAE,IA4C7CC,IAAAH,EAAA,MA1CgBG,IAAA,EAAAC,WACJ,OAAAC,MAAA;EAAO,IAAA,EAAAC,YAAAC,cAAAC,YAAAC,qBAAAJ;EAQhB,IAAI,CAACE,KAAD,CAAeD,KAAf,CAA2BE,GAAO;EAEtC,IAAAE,IAAuB,MAAMpB,EAAkBiB,EAAU,EACzDI,IAAiB,MAAMJ,EAASK,aAAc,EAE9CC,IAAmBN,EAASO,SAAUpB,EAAIoB,MAC1CC,IAAmB1B,EAAoBkB,EAAU,EAEjDS,IAAoD;EASpDd,AARIO,IACFO,IAAkBA,UACTH,IACTG,IAAkBA,aACTD,MACTC,IAAkBA,aAGpBd,IAAkB,EAAAe,OACT;GAAAC,MACC;GAAuBC,QACrB;IAAAC,eACSb,EAASO;IAAKO,eACdd,EAASW;IAAKF;IAEnBL;IAA2BW,SAC5BhB;IAAOE;IAAAe,YAEJb,EAAcQ;IAAKM,YACnBd,EAAce;IAC5B;GACF,EACD,CAAC;IAEL,EAAAzB,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IA1CDV,EAAiBU,EA0Cf"}
1
+ {"version":3,"file":"useOnWalletConnect.js","names":["isExternalConnector","getWalletMetadata","useWidgetEvents","EIP1193Provider","useConnectionEffect","safe","ConnectWalletConnectorAction","OnConnectParams","Parameters","NonNullable","useOnWalletConnected","$","_c","onConnectWallet","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","provider","getProvider","isEmbedded","type","isExternal","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon"],"sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { EIP1193Provider } from \"viem\";\nimport { useConnectionEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\nimport type { ConnectWalletConnectorAction } from \"../types/connectWallet\";\n\ntype OnConnectParams = Parameters<\n NonNullable<\n NonNullable<Parameters<typeof useConnectionEffect>[0]>[\"onConnect\"]\n >\n>[0];\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useConnectionEffect({\n onConnect: async ({\n address,\n connector,\n chainId,\n isReconnected,\n }: Partial<OnConnectParams>) => {\n // in some eager connect cases with external provider, account properties are not available yet,\n // especially when external provider = Safe iframe provider\n if (!connector || !address || !chainId) return;\n\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n const isExternal = isExternalConnector(connector);\n\n let connectorAction: ConnectWalletConnectorAction = \"Click\";\n if (isReconnected) {\n connectorAction = \"Eager\";\n } else if (isEmbedded) {\n connectorAction = \"Embedded\";\n } else if (isExternal) {\n connectorAction = \"External\";\n }\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider: provider as EIP1193Provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"mappings":";;;;;;;AAcA,SAAOU,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACL,EAAAC,uBAA4BX,GAAiB,EAACY;CAE9CV,AAF8CO,EAAA,OAAAE,IA4C7CC,IAAAH,EAAA,MA1CmBG,IAAA,EAAAC,WACP,OAAAC,MAAA;EAAO,IAAA,EAAAC,YAAAC,cAAAC,YAAAC,qBAAAJ;EAQhB,IAAI,CAACE,KAAD,CAAeD,KAAf,CAA2BE,GAAO;EAEtC,IAAAE,IAAuB,MAAMpB,EAAkBiB,EAAU,EACzDI,IAAiB,MAAMJ,EAASK,aAAc,EAE9CC,IAAmBN,EAASO,SAAUpB,EAAIoB,MAC1CC,IAAmB1B,EAAoBkB,EAAU,EAEjDS,IAAoD;EASpDd,AARIO,IACFO,IAAkBA,UACTH,IACTG,IAAkBA,aACTD,MACTC,IAAkBA,aAGpBd,IAAkB,EAAAe,OACT;GAAAC,MACC;GAAuBC,QACrB;IAAAC,eACSb,EAASO;IAAKO,eACdd,EAASW;IAAKF;IAEnBL;IAA2BW,SAC5BhB;IAAOE;IAAAe,YAEJb,EAAcQ;IAAKM,YACnBd,EAAce;IAC5B;GACF,EACD,CAAC;IAEL,EAAAzB,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IA1CDV,EAAoBU,EA0ClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/events/types/swap.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AACjF,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAEpF,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,kBAAkB,CAAC;CAC3B,CAAC;AAEF,KAAK,gBAAgB,GAAG,cAAc,GAAG;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG,cAAc,GAAG;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,KAAK,sBAAsB,GAAG,gBAAgB,GAAG;IAC/C,MAAM,EAAE,IAAI,CAAC;CACd,CAAC;AAEF,KAAK,6BAA6B,GAAG,gBAAgB,GAAG;IACtD,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG,eAAe,GAAG;IAC3C,KAAK,EAAE,qBAAqB,CAAC;CAC9B,CAAC;AAEF,KAAK,2BAA2B,GAAG,sBAAsB,GAAG;IAC1D,SAAS,EAAE,kBAAkB,CAAC;CAC/B,CAAC;AAEF,KAAK,kCAAkC,GAAG,6BAA6B,GAAG;IACxE,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF,KAAK,wBAAwB,GAAG,mBAAmB,CAAC;AAEpD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,YAAY,EAAE,gBAAgB,GAAG,eAAe,CAAC;IACjD,cAAc,EAAE,gBAAgB,GAAG,eAAe,CAAC;IACnD,WAAW,EACT,sBAAsB,GACtB,6BAA6B,GAC7B,mBAAmB,CAAC;IACtB,gBAAgB,EACd,2BAA2B,GAC3B,kCAAkC,GAClC,wBAAwB,CAAC;IAC3B,aAAa,EAAE,oBAAoB,CAAC;IACpC,gBAAgB,EAAE,yBAAyB,GAAG,wBAAwB,CAAC;CACxE,CAAC;AAEF,KAAK,aAAa,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvE,KAAK,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;AAGjD,MAAM,MAAM,MAAM,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;AAGnE,MAAM,MAAM,SAAS,GAAG,iCAAiC,CAAC,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/events/types/swap.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kDAAkD,CAAC;AACjF,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAEpF,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,kBAAkB,CAAC;CAC3B,CAAC;AAEF,KAAK,gBAAgB,GAAG,cAAc,GAAG;IACvC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG,cAAc,GAAG;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,KAAK,sBAAsB,GAAG,gBAAgB,GAAG;IAC/C,MAAM,EAAE,IAAI,CAAC;CACd,CAAC;AAEF,KAAK,6BAA6B,GAAG,gBAAgB,GAAG;IACtD,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG,eAAe,GAAG;IAC3C,KAAK,EAAE,qBAAqB,CAAC;CAC9B,CAAC;AAEF,KAAK,2BAA2B,GAAG,sBAAsB,GAAG;IAC1D,SAAS,EAAE,kBAAkB,CAAC;CAC/B,CAAC;AAEF,KAAK,kCAAkC,GAAG,6BAA6B,GAAG;IACxE,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF,KAAK,wBAAwB,GAAG,mBAAmB,CAAC;AAEpD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,YAAY,EAAE,gBAAgB,GAAG,eAAe,CAAC;IACjD,cAAc,EAAE,gBAAgB,GAAG,eAAe,CAAC;IACnD,WAAW,EACP,sBAAsB,GACtB,6BAA6B,GAC7B,mBAAmB,CAAC;IACxB,gBAAgB,EACZ,2BAA2B,GAC3B,kCAAkC,GAClC,wBAAwB,CAAC;IAC7B,aAAa,EAAE,oBAAoB,CAAC;IACpC,gBAAgB,EAAE,yBAAyB,GAAG,wBAAwB,CAAC;CACxE,CAAC;AAEF,KAAK,aAAa,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvE,KAAK,gBAAgB,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;AAGjD,MAAM,MAAM,MAAM,GAAG,8BAA8B,CAAC,aAAa,CAAC,CAAC;AAGnE,MAAM,MAAM,SAAS,GAAG,iCAAiC,CAAC,gBAAgB,CAAC,CAAC"}
@@ -2,7 +2,7 @@ import { isTupleAtLeastLength as e } from "../../lib/utils/tuple.js";
2
2
  import { useCanBatchTxs as t } from "./useCanBatchTxs.js";
3
3
  import { TokenApprovalPolicy as n, constructApproveCall as r, useGetTokenApprovalPolicy as i } from "../../lib/utils/approval.js";
4
4
  import { assert as a } from "ts-essentials";
5
- import { useAccount as o } from "wagmi";
5
+ import { useConnection as o } from "wagmi";
6
6
  //#region src/hooks/batch/useBatchWithApproveTxs.ts
7
7
  function s() {
8
8
  let n = t().forCurrentChain, { address: r, chainId: s } = o(), u = i();
@@ -1 +1 @@
1
- {"version":3,"file":"useBatchWithApproveTxs.js","names":["Call","assert","Prettify","isTupleAtLeastLength","SendTransactionParameters","constructApproveCall","TokenApprovalPolicy","useGetTokenApprovalPolicy","GetTokenApprovalPolicyFunction","GenericTokenAllowance","useAccount","useCanBatchTxs","TokenApprovalProps","Pick","TxParams","account","Exclude","SendTxWithApprovalsInput","approveProps","txsParams","SendTxWithApprovalsInput1","SendTxWithApprovalsInput2","SendTxWithApprovalsInput3","CallsResult","calls","txParams","TxParamsResult","TxParamsOrCalls","UseBatchWithApproveTxsResult","addTxWithApprovals","options","Promise","useBatchWithApproveTxs","canBatchTx","forCurrentChain","address","chainId","_chainId","getTokenApprovalPolicy","from","validApproveProps","filter","isMinFilledApprovalProps","length","approvalCalls","batchApproveTxs","approveTxParams","map","call","to","data","value","allTxParams","MinApprovalProps","Required","spender","allowanceToSet","token","BatchApproveTxsInput","DataCallVariant","BatchApproveTxsResult","approveProp","setCall","amount","approvalMode","SHOULD_RESET_BEFORE_APPROVE","resetCall","push"],"sources":["../../../src/hooks/batch/useBatchWithApproveTxs.ts"],"sourcesContent":["import type { Call } from \"viem\";\nimport { assert, type Prettify } from \"ts-essentials\";\nimport { isTupleAtLeastLength } from \"@/lib/utils/tuple\";\nimport type { SendTransactionParameters } from \"@wagmi/core\";\nimport {\n constructApproveCall,\n TokenApprovalPolicy,\n useGetTokenApprovalPolicy,\n type GetTokenApprovalPolicyFunction,\n} from \"@/lib/utils/approval\";\nimport type { GenericTokenAllowance } from \"../tokens/allowance/types\";\nimport { useAccount } from \"wagmi\";\nimport { useCanBatchTxs } from \"./useCanBatchTxs\";\n\nexport type TokenApprovalProps = Pick<\n GenericTokenAllowance,\n \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\"\n>;\n\nexport type TxParams = Prettify<\n Pick<SendTransactionParameters, \"to\" | \"data\" | \"value\" | \"chainId\"> & {\n account: Exclude<SendTransactionParameters[\"account\"], object>;\n }\n>;\n\ntype SendTxWithApprovalsInput = {\n approveProps?: TokenApprovalProps[];\n txsParams: [TxParams, ...TxParams[]];\n};\n\ntype SendTxWithApprovalsInput1 = {\n approveProps?: TokenApprovalProps[];\n txsParams: [TxParams, TxParams, ...TxParams[]];\n};\ntype SendTxWithApprovalsInput2 = {\n approveProps?: [TokenApprovalProps, ...TokenApprovalProps[]];\n txsParams: [TxParams, ...TxParams[]];\n};\ntype SendTxWithApprovalsInput3 = {\n approveProps?: [];\n txsParams: [TxParams];\n};\n\ntype CallsResult = {\n calls: [TxParams, ...TxParams[]];\n txParams?: never;\n};\n\ntype TxParamsResult = {\n calls?: never;\n txParams: TxParams;\n};\n\ntype TxParamsOrCalls = CallsResult | TxParamsResult;\n\ntype UseBatchWithApproveTxsResult = {\n addTxWithApprovals(options: SendTxWithApprovalsInput1): Promise<CallsResult>;\n addTxWithApprovals(options: SendTxWithApprovalsInput2): Promise<CallsResult>;\n addTxWithApprovals(\n options: SendTxWithApprovalsInput3\n ): Promise<TxParamsResult>;\n addTxWithApprovals(\n options: SendTxWithApprovalsInput\n ): Promise<TxParamsOrCalls>;\n};\n\nexport function useBatchWithApproveTxs(): UseBatchWithApproveTxsResult {\n const canBatchTx = useCanBatchTxs().forCurrentChain;\n\n const { address: account, chainId: _chainId } = useAccount();\n\n const getTokenApprovalPolicy = useGetTokenApprovalPolicy();\n\n const addTxWithApprovals = async ({\n approveProps,\n txsParams,\n }: SendTxWithApprovalsInput): Promise<TxParamsOrCalls> => {\n const from = txsParams[0].account || account;\n const chainId = txsParams[0].chainId || _chainId;\n\n assert(from, \"account must be defined\");\n assert(chainId, \"chainId must be defined\");\n\n const validApproveProps = approveProps?.filter(isMinFilledApprovalProps);\n\n if (!validApproveProps || validApproveProps.length === 0) {\n if (isTupleAtLeastLength(txsParams, 2)) {\n return {\n calls: txsParams,\n };\n }\n return {\n txParams: txsParams[0],\n };\n }\n\n assert(canBatchTx, \"wallet must be able to batch txs\");\n\n const { calls: approvalCalls } = await batchApproveTxs({\n approveProps: validApproveProps,\n getTokenApprovalPolicy,\n });\n\n const approveTxParams = approvalCalls.map<TxParams>((call) => ({\n to: call.to,\n data: call.data,\n value: 0n,\n account: from,\n chainId,\n }));\n\n const allTxParams = [...approveTxParams, ...txsParams] as typeof txsParams;\n\n if (isTupleAtLeastLength(allTxParams, 2)) {\n return {\n calls: allTxParams,\n };\n }\n\n return {\n txParams: allTxParams[0],\n };\n };\n\n return {\n addTxWithApprovals:\n addTxWithApprovals as UseBatchWithApproveTxsResult[\"addTxWithApprovals\"],\n };\n}\n\ntype MinApprovalProps = Required<\n Pick<TokenApprovalProps, \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\">\n>;\n\nfunction isMinFilledApprovalProps(\n approveProps: TokenApprovalProps\n): approveProps is TokenApprovalProps & MinApprovalProps {\n return !!(\n approveProps.spender &&\n approveProps.allowanceToSet &&\n approveProps.token &&\n approveProps.chainId\n );\n}\n\ntype BatchApproveTxsInput = {\n approveProps: MinApprovalProps[];\n getTokenApprovalPolicy: GetTokenApprovalPolicyFunction;\n};\n\ntype DataCallVariant = Pick<Call, \"data\" | \"value\" | \"to\">;\n\ntype BatchApproveTxsResult = {\n calls: DataCallVariant[];\n};\n\nasync function batchApproveTxs({\n approveProps,\n getTokenApprovalPolicy,\n}: BatchApproveTxsInput): Promise<BatchApproveTxsResult> {\n const calls: DataCallVariant[] = [];\n\n for (const approveProp of approveProps) {\n const setCall = constructApproveCall({\n spender: approveProp.spender,\n amount: approveProp.allowanceToSet,\n token: approveProp.token,\n });\n\n const approvalMode = await getTokenApprovalPolicy({\n address: approveProp.token,\n chainId: approveProp.chainId,\n });\n\n if (approvalMode === TokenApprovalPolicy.SHOULD_RESET_BEFORE_APPROVE) {\n const resetCall = constructApproveCall({\n spender: approveProp.spender,\n amount: 0n,\n token: approveProp.token,\n });\n\n calls.push(resetCall);\n }\n\n calls.push(setCall);\n }\n\n return {\n calls,\n };\n}\n"],"mappings":";;;;;;AAkEA,SAAgBgC,IAAuD;CACrE,IAAMC,IAAatB,GAAgB,CAACuB,iBAE9B,EAAEC,SAASpB,GAASqB,SAASC,MAAa3B,GAAY,EAEtD4B,IAAyB/B,GAA2B;CAqD1D,OAAO,EAEHsB,2BArD8B,EAChCX,iBACAC,mBACwD;EACxD,IAAMoB,IAAOpB,EAAU,GAAGJ,WAAWA,GAC/BqB,IAAUjB,EAAU,GAAGiB,WAAWC;EAGxCpC,AADAA,EAAOsC,GAAM,0BAA0B,EACvCtC,EAAOmC,GAAS,0BAA0B;EAE1C,IAAMI,IAAoBtB,GAAcuB,OAAOC,EAAyB;EAExE,IAAI,CAACF,KAAqBA,EAAkBG,WAAW,GAMrD,OALIxC,EAAqBgB,GAAW,EAAE,GAC7B,EACLK,OAAOL,GACR,GAEI,EACLM,UAAUN,EAAU,IACrB;EAGHlB,EAAOgC,GAAY,mCAAmC;EAEtD,IAAM,EAAET,OAAOoB,MAAkB,MAAMC,EAAgB;GACrD3B,cAAcsB;GACdF;GACD,CAAC,EAUIc,IAAc,CAAC,GARGR,EAAcG,KAAeC,OAAU;GAC7DC,IAAID,EAAKC;GACTC,MAAMF,EAAKE;GACXC,OAAO;GACPpC,SAASwB;GACTH;GACD,EAEuBU,EAAiB,GAAG3B,EAAU;EAQtD,OANIhB,EAAqBiD,GAAa,EAAE,GAC/B,EACL5B,OAAO4B,GACR,GAGI,EACL3B,UAAU2B,EAAY,IACvB;IAMF;;AAOH,SAASV,EACPxB,GACuD;CACvD,OAAO,CAAC,EACNA,EAAaqC,WACbrC,EAAasC,kBACbtC,EAAauC,SACbvC,EAAakB;;AAejB,eAAeS,EAAgB,EAC7B3B,iBACAoB,6BACuD;CACvD,IAAMd,IAA2B,EAAE;CAEnC,KAAK,IAAMqC,KAAe3C,GAAc;EACtC,IAAM4C,IAAUzD,EAAqB;GACnCkD,SAASM,EAAYN;GACrBQ,QAAQF,EAAYL;GACpBC,OAAOI,EAAYJ;GACpB,CAAC;EAOF,IAAIO,MALuB1B,EAAuB;GAChDH,SAAS0B,EAAYJ;GACrBrB,SAASyB,EAAYzB;GACtB,CAAC,KAEmB9B,EAAoB2D,6BAA6B;GACpE,IAAMC,IAAY7D,EAAqB;IACrCkD,SAASM,EAAYN;IACrBQ,QAAQ;IACRN,OAAOI,EAAYJ;IACpB,CAAC;GAEFjC,EAAM2C,KAAKD,EAAU;;EAGvB1C,EAAM2C,KAAKL,EAAQ;;CAGrB,OAAO,EACLtC,UACD"}
1
+ {"version":3,"file":"useBatchWithApproveTxs.js","names":["Call","assert","Prettify","isTupleAtLeastLength","SendTransactionParameters","constructApproveCall","TokenApprovalPolicy","useGetTokenApprovalPolicy","GetTokenApprovalPolicyFunction","GenericTokenAllowance","useConnection","useCanBatchTxs","TokenApprovalProps","Pick","TxParams","account","Exclude","SendTxWithApprovalsInput","approveProps","txsParams","SendTxWithApprovalsInput1","SendTxWithApprovalsInput2","SendTxWithApprovalsInput3","CallsResult","calls","txParams","TxParamsResult","TxParamsOrCalls","UseBatchWithApproveTxsResult","addTxWithApprovals","options","Promise","useBatchWithApproveTxs","canBatchTx","forCurrentChain","address","chainId","_chainId","getTokenApprovalPolicy","from","validApproveProps","filter","isMinFilledApprovalProps","length","approvalCalls","batchApproveTxs","approveTxParams","map","call","to","data","value","allTxParams","MinApprovalProps","Required","spender","allowanceToSet","token","BatchApproveTxsInput","DataCallVariant","BatchApproveTxsResult","approveProp","setCall","amount","approvalMode","SHOULD_RESET_BEFORE_APPROVE","resetCall","push"],"sources":["../../../src/hooks/batch/useBatchWithApproveTxs.ts"],"sourcesContent":["import type { Call } from \"viem\";\nimport { assert, type Prettify } from \"ts-essentials\";\nimport { isTupleAtLeastLength } from \"@/lib/utils/tuple\";\nimport type { SendTransactionParameters } from \"@wagmi/core\";\nimport {\n constructApproveCall,\n TokenApprovalPolicy,\n useGetTokenApprovalPolicy,\n type GetTokenApprovalPolicyFunction,\n} from \"@/lib/utils/approval\";\nimport type { GenericTokenAllowance } from \"../tokens/allowance/types\";\nimport { useConnection } from \"wagmi\";\nimport { useCanBatchTxs } from \"./useCanBatchTxs\";\n\nexport type TokenApprovalProps = Pick<\n GenericTokenAllowance,\n \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\"\n>;\n\nexport type TxParams = Prettify<\n Pick<SendTransactionParameters, \"to\" | \"data\" | \"value\" | \"chainId\"> & {\n account: Exclude<SendTransactionParameters[\"account\"], object>;\n }\n>;\n\ntype SendTxWithApprovalsInput = {\n approveProps?: TokenApprovalProps[];\n txsParams: [TxParams, ...TxParams[]];\n};\n\ntype SendTxWithApprovalsInput1 = {\n approveProps?: TokenApprovalProps[];\n txsParams: [TxParams, TxParams, ...TxParams[]];\n};\ntype SendTxWithApprovalsInput2 = {\n approveProps?: [TokenApprovalProps, ...TokenApprovalProps[]];\n txsParams: [TxParams, ...TxParams[]];\n};\ntype SendTxWithApprovalsInput3 = {\n approveProps?: [];\n txsParams: [TxParams];\n};\n\ntype CallsResult = {\n calls: [TxParams, ...TxParams[]];\n txParams?: never;\n};\n\ntype TxParamsResult = {\n calls?: never;\n txParams: TxParams;\n};\n\ntype TxParamsOrCalls = CallsResult | TxParamsResult;\n\ntype UseBatchWithApproveTxsResult = {\n addTxWithApprovals(options: SendTxWithApprovalsInput1): Promise<CallsResult>;\n addTxWithApprovals(options: SendTxWithApprovalsInput2): Promise<CallsResult>;\n addTxWithApprovals(\n options: SendTxWithApprovalsInput3\n ): Promise<TxParamsResult>;\n addTxWithApprovals(\n options: SendTxWithApprovalsInput\n ): Promise<TxParamsOrCalls>;\n};\n\nexport function useBatchWithApproveTxs(): UseBatchWithApproveTxsResult {\n const canBatchTx = useCanBatchTxs().forCurrentChain;\n\n const { address: account, chainId: _chainId } = useConnection();\n\n const getTokenApprovalPolicy = useGetTokenApprovalPolicy();\n\n const addTxWithApprovals = async ({\n approveProps,\n txsParams,\n }: SendTxWithApprovalsInput): Promise<TxParamsOrCalls> => {\n const from = txsParams[0].account || account;\n const chainId = txsParams[0].chainId || _chainId;\n\n assert(from, \"account must be defined\");\n assert(chainId, \"chainId must be defined\");\n\n const validApproveProps = approveProps?.filter(isMinFilledApprovalProps);\n\n if (!validApproveProps || validApproveProps.length === 0) {\n if (isTupleAtLeastLength(txsParams, 2)) {\n return {\n calls: txsParams,\n };\n }\n return {\n txParams: txsParams[0],\n };\n }\n\n assert(canBatchTx, \"wallet must be able to batch txs\");\n\n const { calls: approvalCalls } = await batchApproveTxs({\n approveProps: validApproveProps,\n getTokenApprovalPolicy,\n });\n\n const approveTxParams = approvalCalls.map<TxParams>((call) => ({\n to: call.to,\n data: call.data,\n value: 0n,\n account: from,\n chainId,\n }));\n\n const allTxParams = [...approveTxParams, ...txsParams] as typeof txsParams;\n\n if (isTupleAtLeastLength(allTxParams, 2)) {\n return {\n calls: allTxParams,\n };\n }\n\n return {\n txParams: allTxParams[0],\n };\n };\n\n return {\n addTxWithApprovals:\n addTxWithApprovals as UseBatchWithApproveTxsResult[\"addTxWithApprovals\"],\n };\n}\n\ntype MinApprovalProps = Required<\n Pick<TokenApprovalProps, \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\">\n>;\n\nfunction isMinFilledApprovalProps(\n approveProps: TokenApprovalProps\n): approveProps is TokenApprovalProps & MinApprovalProps {\n return !!(\n approveProps.spender &&\n approveProps.allowanceToSet &&\n approveProps.token &&\n approveProps.chainId\n );\n}\n\ntype BatchApproveTxsInput = {\n approveProps: MinApprovalProps[];\n getTokenApprovalPolicy: GetTokenApprovalPolicyFunction;\n};\n\ntype DataCallVariant = Pick<Call, \"data\" | \"value\" | \"to\">;\n\ntype BatchApproveTxsResult = {\n calls: DataCallVariant[];\n};\n\nasync function batchApproveTxs({\n approveProps,\n getTokenApprovalPolicy,\n}: BatchApproveTxsInput): Promise<BatchApproveTxsResult> {\n const calls: DataCallVariant[] = [];\n\n for (const approveProp of approveProps) {\n const setCall = constructApproveCall({\n spender: approveProp.spender,\n amount: approveProp.allowanceToSet,\n token: approveProp.token,\n });\n\n const approvalMode = await getTokenApprovalPolicy({\n address: approveProp.token,\n chainId: approveProp.chainId,\n });\n\n if (approvalMode === TokenApprovalPolicy.SHOULD_RESET_BEFORE_APPROVE) {\n const resetCall = constructApproveCall({\n spender: approveProp.spender,\n amount: 0n,\n token: approveProp.token,\n });\n\n calls.push(resetCall);\n }\n\n calls.push(setCall);\n }\n\n return {\n calls,\n };\n}\n"],"mappings":";;;;;;AAkEA,SAAgBgC,IAAuD;CACrE,IAAMC,IAAatB,GAAgB,CAACuB,iBAE9B,EAAEC,SAASpB,GAASqB,SAASC,MAAa3B,GAAe,EAEzD4B,IAAyB/B,GAA2B;CAqD1D,OAAO,EAEHsB,2BArD8B,EAChCX,iBACAC,mBACwD;EACxD,IAAMoB,IAAOpB,EAAU,GAAGJ,WAAWA,GAC/BqB,IAAUjB,EAAU,GAAGiB,WAAWC;EAGxCpC,AADAA,EAAOsC,GAAM,0BAA0B,EACvCtC,EAAOmC,GAAS,0BAA0B;EAE1C,IAAMI,IAAoBtB,GAAcuB,OAAOC,EAAyB;EAExE,IAAI,CAACF,KAAqBA,EAAkBG,WAAW,GAMrD,OALIxC,EAAqBgB,GAAW,EAAE,GAC7B,EACLK,OAAOL,GACR,GAEI,EACLM,UAAUN,EAAU,IACrB;EAGHlB,EAAOgC,GAAY,mCAAmC;EAEtD,IAAM,EAAET,OAAOoB,MAAkB,MAAMC,EAAgB;GACrD3B,cAAcsB;GACdF;GACD,CAAC,EAUIc,IAAc,CAAC,GARGR,EAAcG,KAAeC,OAAU;GAC7DC,IAAID,EAAKC;GACTC,MAAMF,EAAKE;GACXC,OAAO;GACPpC,SAASwB;GACTH;GACD,EAEuBU,EAAiB,GAAG3B,EAAU;EAQtD,OANIhB,EAAqBiD,GAAa,EAAE,GAC/B,EACL5B,OAAO4B,GACR,GAGI,EACL3B,UAAU2B,EAAY,IACvB;IAMF;;AAOH,SAASV,EACPxB,GACuD;CACvD,OAAO,CAAC,EACNA,EAAaqC,WACbrC,EAAasC,kBACbtC,EAAauC,SACbvC,EAAakB;;AAejB,eAAeS,EAAgB,EAC7B3B,iBACAoB,6BACuD;CACvD,IAAMd,IAA2B,EAAE;CAEnC,KAAK,IAAMqC,KAAe3C,GAAc;EACtC,IAAM4C,IAAUzD,EAAqB;GACnCkD,SAASM,EAAYN;GACrBQ,QAAQF,EAAYL;GACpBC,OAAOI,EAAYJ;GACpB,CAAC;EAOF,IAAIO,MALuB1B,EAAuB;GAChDH,SAAS0B,EAAYJ;GACrBrB,SAASyB,EAAYzB;GACtB,CAAC,KAEmB9B,EAAoB2D,6BAA6B;GACpE,IAAMC,IAAY7D,EAAqB;IACrCkD,SAASM,EAAYN;IACrBQ,QAAQ;IACRN,OAAOI,EAAYJ;IACpB,CAAC;GAEFjC,EAAM2C,KAAKD,EAAU;;EAGvB1C,EAAM2C,KAAKL,EAAQ;;CAGrB,OAAO,EACLtC,UACD"}
@@ -2,7 +2,6 @@ import { CapabilitiesSchema } from 'viem';
2
2
  type AtomicCapabilities = Required<Pick<CapabilitiesSchema["getCapabilities"]["ReturnType"], "atomic">>;
3
3
  type AtomicStatus = AtomicCapabilities["atomic"]["status"];
4
4
  type CanBatchTxsResult = {
5
- byChain?: Record<number, AtomicStatus>;
6
5
  forCurrentChain?: boolean;
7
6
  currentChainStatus?: AtomicStatus;
8
7
  isLoading: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useCanBatchTxs.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK/C,KAAK,kBAAkB,GAAG,QAAQ,CAChC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CACpE,CAAC;AAEF,KAAK,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE3D,KAAK,iBAAiB,GAAG;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,cAAc,IAAI,iBAAiB,CAqClD"}
1
+ {"version":3,"file":"useCanBatchTxs.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK/C,KAAK,kBAAkB,GAAG,QAAQ,CAChC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CACpE,CAAC;AAEF,KAAK,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE3D,KAAK,iBAAiB,GAAG;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAClC,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,cAAc,IAAI,iBAAiB,CAqClD"}
@@ -1,37 +1,28 @@
1
1
  import { useLogger as e } from "../../core/logger.js";
2
2
  import { c as t } from "react-compiler-runtime";
3
- import "react";
4
3
  import "viem";
5
- import { useAccount as n, useCapabilities as r } from "wagmi";
4
+ import { useCapabilities as n, useConnection as r } from "wagmi";
6
5
  //#region src/hooks/batch/useCanBatchTxs.ts
7
6
  function i() {
8
- let i = t(10), { address: o, chainId: s, connector: c } = n(), l = c?.uid, u;
9
- i[0] !== o || i[1] !== l ? (u = {
10
- account: o,
11
- scopeKey: l
12
- }, i[0] = o, i[1] = l, i[2] = u) : u = i[2];
13
- let { data: d, isLoading: f } = r(u);
14
- e("BATCH::useCanBatchTxs::wagmi").once.log("capabilities", d);
15
- let p;
16
- bb0: {
17
- if (!d) {
18
- p = void 0;
19
- break bb0;
20
- }
21
- let e;
22
- i[3] === d ? e = i[4] : (e = Object.fromEntries(Object.entries(d).map(a)), i[3] = d, i[4] = e), p = e;
23
- }
24
- let m = p, h = s ? m?.[s] : void 0, g = h === "supported" || h === "ready", _;
25
- return i[5] !== m || i[6] !== h || i[7] !== f || i[8] !== g ? (_ = {
26
- byChain: m,
27
- forCurrentChain: g,
28
- currentChainStatus: h,
29
- isLoading: f
30
- }, i[5] = m, i[6] = h, i[7] = f, i[8] = g, i[9] = _) : _ = i[9], _;
31
- }
32
- function a(e) {
33
- let [t, n] = e;
34
- return [t, n.atomicBatch?.supported && "supported" || n.atomic?.status || "unsupported"];
7
+ let i = t(11), { address: a, chainId: o, connector: s } = r(), c = !!(a && o), l;
8
+ i[0] === c ? l = i[1] : (l = { enabled: c }, i[0] = c, i[1] = l);
9
+ let u = s?.uid, d;
10
+ i[2] !== a || i[3] !== o || i[4] !== l || i[5] !== u ? (d = {
11
+ query: l,
12
+ account: a,
13
+ scopeKey: u,
14
+ chainId: o
15
+ }, i[2] = a, i[3] = o, i[4] = l, i[5] = u, i[6] = d) : d = i[6];
16
+ let { data: f, isLoading: p } = n(d);
17
+ e("BATCH::useCanBatchTxs::wagmi").once.log("capabilities", f);
18
+ let m;
19
+ f && (m = f.atomicBatch?.supported ? "supported" : f.atomic?.status ? f.atomic?.status : "unsupported");
20
+ let h = m === "supported" || m === "ready", g;
21
+ return i[7] !== m || i[8] !== p || i[9] !== h ? (g = {
22
+ forCurrentChain: h,
23
+ currentChainStatus: m,
24
+ isLoading: p
25
+ }, i[7] = m, i[8] = p, i[9] = h, i[10] = g) : g = i[10], g;
35
26
  }
36
27
  //#endregion
37
28
  export { i as useCanBatchTxs };
@@ -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;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
+ {"version":3,"file":"useCanBatchTxs.js","names":["CapabilitiesSchema","useConnection","useCapabilities","Config","useLogger","SupportedChainId","AtomicCapabilities","Required","Pick","AtomicStatus","CanBatchTxsResult","forCurrentChain","currentChainStatus","isLoading","useCanBatchTxs","$","_c","address","account","chainId","connector","t0","t1","enabled","t2","uid","t3","query","scopeKey","data","logger","once","log","undefined","atomicBatch","supported","atomic","status","t4","t5"],"sources":["../../../src/hooks/batch/useCanBatchTxs.ts"],"sourcesContent":["import { type CapabilitiesSchema } from \"viem\";\nimport { useConnection, useCapabilities, type Config } from \"wagmi\";\nimport { useLogger } from \"@/core/logger\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype AtomicCapabilities = Required<\n Pick<CapabilitiesSchema[\"getCapabilities\"][\"ReturnType\"], \"atomic\">\n>;\n\ntype AtomicStatus = AtomicCapabilities[\"atomic\"][\"status\"];\n\ntype CanBatchTxsResult = {\n forCurrentChain?: boolean;\n currentChainStatus?: AtomicStatus;\n isLoading: boolean;\n};\n\nexport function useCanBatchTxs(): CanBatchTxsResult {\n const { address: account, chainId, connector } = useConnection();\n\n const { data, isLoading } = useCapabilities<Config, SupportedChainId>({\n query: {\n enabled: !!(account && chainId), // with optional chainId a different result shape is returned, so don't make a request if unavailable\n },\n account,\n scopeKey: connector?.uid, // unique for App session & wallet connection\n chainId, // If chain is specified, capabilities are returned for that chain only; otherwise for all chains.\n // WalletConnect caches results based on `chainId`, so results without `input.chainId` can be reused across chain switches.\n // This is fine when capabilities include all chains at once, but for Safe via WalletConnect they can include only the current chain,\n // so after a chain switch (supported in the new Safe UI) the cached result can remain for the old chain.\n // Conclusion: always pass `chainId` to getCapabilities() to avoid caching issues with WalletConnect + Safe.\n });\n const logger = useLogger(\"BATCH::useCanBatchTxs::wagmi\");\n\n logger.once.log(\"capabilities\", data);\n\n let currentChainStatus: CanBatchTxsResult[\"currentChainStatus\"] = undefined;\n if (data) {\n if (data[\"atomicBatch\"]?.supported) {\n currentChainStatus = \"supported\";\n } else if (data.atomic?.status) {\n currentChainStatus = data.atomic?.status;\n } else {\n currentChainStatus = \"unsupported\";\n }\n }\n\n return {\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":";;;;;AAiBA,SAAOc,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACL,EAAAC,SAAAC,GAAAC,YAAAC,iBAAiDnB,GAAe,EAInDoB,IAAA,CAAC,EAAEH,KAAAC,IAAmBG;CAAA,AAAAP,EAAA,OAAAM,IAChCC,IAAAP,EAAA,MAFMO,IAAA,EAAAC,SACIF,GACV,EAAAN,EAAA,KAAAM,GAAAN,EAAA,KAAAO;CAES,IAAAE,IAAAJ,GAASK,KAAKC;CAAA,AAAAX,EAAA,OAAAG,KAAAH,EAAA,OAAAI,KAAAJ,EAAA,OAAAO,KAAAP,EAAA,OAAAS,KAL4CE,IAAA;EAAAC,OAC7DL;EAENJ;EAAAU,UAESJ;EAAcL;EAMzB,EAAAJ,EAAA,KAAAG,GAAAH,EAAA,KAAAI,GAAAJ,EAAA,KAAAO,GAAAP,EAAA,KAAAS,GAAAT,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAXD,IAAA,EAAAc,SAAAhB,iBAA4BX,EAA0CwB,EAWpE;CAGFI,EAFyB,+BAEzBA,CAAMC,KAAKC,IAAK,gBAAgBH,EAAK;CAErC,IAAAjB;CACA,AAAIiB,MACF,AAKEjB,IALEiB,EAAIK,aAA0BC,YACXvB,cACZiB,EAAIO,QAAeC,SACPR,EAAIO,QAAeC,SAEnBzB;CAOrB,IAAA0B,IAAA1B,MAAuB,eAAeA,MAAuB,SAAO2B;CAGvE,OAHuExB,EAAA,OAAAH,KAAAG,EAAA,OAAAF,KAAAE,EAAA,OAAAuB,KAHjEC,IAAA;EAAA5B,iBAGH2B;EAAoE1B;EAAAC;EAGvE,EAAAE,EAAA,KAAAH,GAAAG,EAAA,KAAAF,GAAAE,EAAA,KAAAuB,GAAAvB,EAAA,MAAAwB,KAAAA,IAAAxB,EAAA,KANMwB"}