@velora-dex/widget 0.2.5-dev.0 → 0.2.5-dev.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 (235) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/dropdown-menu.d.ts +3 -2
  3. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  4. package/dist/components/ui/dropdown-menu.js +44 -22
  5. package/dist/components/ui/dropdown-menu.js.map +1 -1
  6. package/dist/components/ui/tooltip.d.ts +4 -2
  7. package/dist/components/ui/tooltip.d.ts.map +1 -1
  8. package/dist/components/ui/tooltip.js +44 -27
  9. package/dist/components/ui/tooltip.js.map +1 -1
  10. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +7 -7
  11. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  12. package/dist/components/web3/providers.d.ts.map +1 -1
  13. package/dist/components/web3/providers.js +1 -2
  14. package/dist/components/web3/providers.js.map +1 -1
  15. package/dist/components/widget/AppHeader/Activities/ActivityItems.js +1 -1
  16. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  17. package/dist/components/widget/AppHeader/AppHeader.js +1 -1
  18. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  19. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -1
  20. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  21. package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
  22. package/dist/components/widget/Dialog/state/dialogAtom.js +2 -1
  23. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  24. package/dist/components/widget/Drawer/Overlay.js +1 -1
  25. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  26. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  27. package/dist/components/widget/Drawer/state/useDrawerControls.js +2 -1
  28. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  29. package/dist/components/widget/ImportToken/ImportToken.js +1 -1
  30. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  31. package/dist/components/widget/OrderExpiryInput/index.js +1 -1
  32. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  33. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
  34. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +2 -1
  35. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  36. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
  37. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  38. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +1 -1
  39. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  40. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +2 -2
  41. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  42. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +2 -1
  43. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  44. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +1 -1
  45. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  46. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -1
  47. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +2 -1
  48. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
  49. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +1 -1
  50. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  51. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +1 -1
  52. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  53. package/dist/configurator/components/common/DetailWithTooltip.d.ts +1 -0
  54. package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -1
  55. package/dist/core/DevTools.d.ts.map +1 -1
  56. package/dist/core/LimitOrderButton.js +1 -1
  57. package/dist/core/LimitOrderButton.js.map +1 -1
  58. package/dist/core/OtcOrderButton.js +1 -1
  59. package/dist/core/OtcOrderButton.js.map +1 -1
  60. package/dist/core/index.d.ts.map +1 -1
  61. package/dist/core/index.js +94 -102
  62. package/dist/core/index.js.map +1 -1
  63. package/dist/core/inputs/hooks/useTokenFromInputProps.js +1 -1
  64. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  65. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +1 -1
  66. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  67. package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -1
  68. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  69. package/dist/core/inputs/state/common.d.ts.map +1 -1
  70. package/dist/core/inputs/state/common.js +2 -1
  71. package/dist/core/inputs/state/common.js.map +1 -1
  72. package/dist/core/inputs/state/selectedTokenActionsAtom.js +1 -1
  73. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  74. package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
  75. package/dist/core/inputs/state/selectedTokenAtom.js +2 -1
  76. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  77. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  78. package/dist/core/inputs/state/setTokenByAddressAtom.js +2 -1
  79. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  80. package/dist/core/limit/state/currentLimitInputAtom.d.ts +2 -2
  81. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  82. package/dist/core/limit/state/deadlineAtom.js +2 -1
  83. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  84. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  85. package/dist/core/limit/state/selectedTokenAtom.js +2 -2
  86. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  87. package/dist/core/limit/useLimitDetailsListProps.js +1 -1
  88. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  89. package/dist/core/limit/useLimitPriceDifference.js +1 -1
  90. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  91. package/dist/core/limit/useLimitPriceInputProps.js +1 -1
  92. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  93. package/dist/core/limit/useLimitRate.js +1 -1
  94. package/dist/core/limit/useLimitRate.js.map +1 -1
  95. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  96. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  97. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  98. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  99. package/dist/core/limit/useLimitTokenToInputProps.js +1 -1
  100. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  101. package/dist/core/logger.js +1 -1
  102. package/dist/core/logger.js.map +1 -1
  103. package/dist/core/otc/state/currentOtcInputAtom.d.ts +2 -2
  104. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  105. package/dist/core/otc/state/deadlineAtom.js +2 -1
  106. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  107. package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -1
  108. package/dist/core/otc/state/receiverAddressAtom.js +2 -1
  109. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  110. package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -1
  111. package/dist/core/otc/state/selectedTokenAtom.js +2 -2
  112. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  113. package/dist/core/otc/useOtcDetailsListProps.js +1 -1
  114. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  115. package/dist/core/otc/useOtcPriceDifference.js +1 -1
  116. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  117. package/dist/core/otc/useOtcPriceInputProps.js +1 -1
  118. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  119. package/dist/core/otc/useOtcTokenFromInputProps.js +1 -1
  120. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  121. package/dist/core/otc/useOtcTokenSwitcherProps.js +1 -1
  122. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  123. package/dist/core/otc/useOtcTokenToInputProps.js +1 -1
  124. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  125. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  126. package/dist/core/state/chainToAtom.js +2 -1
  127. package/dist/core/state/chainToAtom.js.map +1 -1
  128. package/dist/core/state/configActionsAtom.d.ts.map +1 -1
  129. package/dist/core/state/configActionsAtom.js +1 -3
  130. package/dist/core/state/configActionsAtom.js.map +1 -1
  131. package/dist/core/state/configAtom.d.ts +2 -4
  132. package/dist/core/state/configAtom.d.ts.map +1 -1
  133. package/dist/core/state/configAtom.js +5 -8
  134. package/dist/core/state/configAtom.js.map +1 -1
  135. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  136. package/dist/core/state/configEffectAtom.js +2 -1
  137. package/dist/core/state/configEffectAtom.js.map +1 -1
  138. package/dist/core/state/containerAtom.d.ts.map +1 -1
  139. package/dist/core/state/containerAtom.js +2 -1
  140. package/dist/core/state/containerAtom.js.map +1 -1
  141. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  142. package/dist/core/state/enabledChainsAtom.js +2 -1
  143. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  144. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  145. package/dist/core/state/externalProviderAtom.js +2 -1
  146. package/dist/core/state/externalProviderAtom.js.map +1 -1
  147. package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
  148. package/dist/core/state/isCrosschainAtom.js +2 -1
  149. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  150. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  151. package/dist/core/state/tradeModeAtom.js +2 -1
  152. package/dist/core/state/tradeModeAtom.js.map +1 -1
  153. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  154. package/dist/core/state/widgetEventsAtom.js +2 -1
  155. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  156. package/dist/core/store.d.ts +29 -0
  157. package/dist/core/store.d.ts.map +1 -0
  158. package/dist/core/store.js +15 -0
  159. package/dist/core/store.js.map +1 -0
  160. package/dist/core/swapDetails/useSwapDetailsListProps.js +1 -1
  161. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  162. package/dist/core/types.d.ts +0 -6
  163. package/dist/core/types.d.ts.map +1 -1
  164. package/dist/events/effects/price.js +1 -1
  165. package/dist/events/effects/price.js.map +1 -1
  166. package/dist/events/effects/swapMode.js +1 -1
  167. package/dist/events/effects/swapMode.js.map +1 -1
  168. package/dist/events/hooks/useActivateEffects.js +1 -1
  169. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  170. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  171. package/dist/hooks/gas/useGasPrices.js +2 -2
  172. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  173. package/dist/hooks/otc/mutations/useFillOrder.js +0 -4
  174. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  175. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -1
  176. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js +2 -1
  177. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  178. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
  179. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  180. package/dist/hooks/swap/prices/usePricesParams.js +6 -1
  181. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  182. package/dist/hooks/swap/prices/useSwapPrices.js +1 -1
  183. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  184. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
  185. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  186. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  187. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  188. package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
  189. package/dist/hooks/tokens/prices/queries.js +2 -2
  190. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  191. package/dist/hooks/tokens/useAllTokensWithFilter.js +1 -1
  192. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  193. package/dist/hooks/tokens/useTokenTaxFee.js +2 -2
  194. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  195. package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
  196. package/dist/hooks/txs/queries/useTxHistory.js +2 -2
  197. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  198. package/dist/hooks/useEIP1559Enabled.js +1 -1
  199. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  200. package/dist/hooks/useGlobalDeltaEnabled.js +1 -1
  201. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  202. package/dist/hooks/useSDK.d.ts.map +1 -1
  203. package/dist/hooks/useSDK.js +11 -11
  204. package/dist/hooks/useSDK.js.map +1 -1
  205. package/dist/hooks/useSlippage.js +1 -1
  206. package/dist/hooks/useSlippage.js.map +1 -1
  207. package/dist/lib/constants/index.d.ts +2 -0
  208. package/dist/lib/constants/index.d.ts.map +1 -1
  209. package/dist/lib/constants/index.js +4 -1
  210. package/dist/lib/constants/index.js.map +1 -1
  211. package/dist/lib/utils/explorer.d.ts.map +1 -1
  212. package/dist/lib/utils/explorer.js +3 -3
  213. package/dist/lib/utils/explorer.js.map +1 -1
  214. package/dist/styles.css +4 -0
  215. package/dist/tokens/hooks.js +1 -1
  216. package/dist/tokens/hooks.js.map +1 -1
  217. package/dist/tokens/lists/state/effects.js +1 -2
  218. package/dist/tokens/lists/state/effects.js.map +1 -1
  219. package/dist/tokens/queries.js +1 -1
  220. package/dist/tokens/queries.js.map +1 -1
  221. package/dist/transactions/state/hooks/useActivateEffects.js +1 -1
  222. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  223. package/dist/transactions/state/hooks/useTransactions.js +1 -1
  224. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  225. package/dist/transactions/state/transactionsActionAtom.js +1 -1
  226. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  227. package/package.json +4 -3
  228. package/dist/core/inputs/state/store.d.ts +0 -2
  229. package/dist/core/inputs/state/store.d.ts.map +0 -1
  230. package/dist/core/inputs/state/store.js +0 -6
  231. package/dist/core/inputs/state/store.js.map +0 -1
  232. package/dist/lib/constants/urls.d.ts +0 -4
  233. package/dist/lib/constants/urls.d.ts.map +0 -1
  234. package/dist/lib/constants/urls.js +0 -30
  235. package/dist/lib/constants/urls.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useIsLimitOrderInsufficientBalance.js","sources":["../../../../src/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.ts"],"sourcesContent":["import { useAtomValue } from \"jotai\";\nimport { formatUnits } from \"viem\";\n\nimport { useIsInsufficientTokenBalance } from \"./useIsInsufficientTokenBalance\";\nimport { useLimitOrderRequiredBalance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\nimport { useOtcTokenFrom } from \"@/core/otc/state/selectedTokenAtom\";\nimport { otcPayInputAmountWeiAtom } from \"@/core/otc/state/otcInputAmountAtom\";\n\nimport { useLimitTokenFrom } from \"@/core/limit/state/selectedTokenAtom\";\nimport { limitPayInputAmountWeiAtom } from \"@/core/limit/state/limitInputAmountAtom\";\nimport { useDeltaLimitOrderRequiredBalance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport const useIsInsufficientBalanceToFillLimitOrder = () => {\n const tokenFrom = useLimitTokenFrom();\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const { data } = useDeltaLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOtcOrder = () => {\n const tokenFrom = useOtcTokenFrom();\n const payAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const { data } = useLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOrder = ({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n}: {\n tokenFrom: Token;\n payAmountWei: string;\n requiredBalanceToFillWei?: string;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: payAmountWei,\n });\n\n const isInsufficientBalanceToFill = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei:\n requiredBalanceToFillWei && requiredBalanceToFillWei !== \"0\"\n ? (BigInt(payAmountWei) + BigInt(requiredBalanceToFillWei)).toString()\n : undefined,\n });\n\n const requiredBalanceToFillUnit =\n isInsufficientBalanceToFill && requiredBalanceToFillWei\n ? formatUnits(BigInt(requiredBalanceToFillWei), tokenFrom.decimals)\n : undefined;\n\n return {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillWei,\n requiredBalanceToFillUnit,\n };\n};\n"],"names":["useIsInsufficientBalanceToFillLimitOrder","$","_c","tokenFrom","useLimitTokenFrom","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","t0","Symbol","for","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t1","address","tokenAddress","query","data","useDeltaLimitOrderRequiredBalance","t2","toLowerCase","requiredBalanceToFillWei","t3","useIsInsufficientBalanceToFillOrder","useIsInsufficientBalanceToFillOtcOrder","useOtcTokenFrom","otcPayInputAmountWeiAtom","useLimitOrderRequiredBalance","token","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","BigInt","toString","undefined","isInsufficientBalanceToFill","t4","formatUnits","decimals","requiredBalanceToFillUnit","t5"],"mappings":"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"}
1
+ {"version":3,"file":"useIsLimitOrderInsufficientBalance.js","sources":["../../../../src/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport { formatUnits } from \"viem\";\n\nimport { useIsInsufficientTokenBalance } from \"./useIsInsufficientTokenBalance\";\nimport { useLimitOrderRequiredBalance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\nimport { useOtcTokenFrom } from \"@/core/otc/state/selectedTokenAtom\";\nimport { otcPayInputAmountWeiAtom } from \"@/core/otc/state/otcInputAmountAtom\";\n\nimport { useLimitTokenFrom } from \"@/core/limit/state/selectedTokenAtom\";\nimport { limitPayInputAmountWeiAtom } from \"@/core/limit/state/limitInputAmountAtom\";\nimport { useDeltaLimitOrderRequiredBalance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport const useIsInsufficientBalanceToFillLimitOrder = () => {\n const tokenFrom = useLimitTokenFrom();\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const { data } = useDeltaLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOtcOrder = () => {\n const tokenFrom = useOtcTokenFrom();\n const payAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const { data } = useLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOrder = ({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n}: {\n tokenFrom: Token;\n payAmountWei: string;\n requiredBalanceToFillWei?: string;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: payAmountWei,\n });\n\n const isInsufficientBalanceToFill = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei:\n requiredBalanceToFillWei && requiredBalanceToFillWei !== \"0\"\n ? (BigInt(payAmountWei) + BigInt(requiredBalanceToFillWei)).toString()\n : undefined,\n });\n\n const requiredBalanceToFillUnit =\n isInsufficientBalanceToFill && requiredBalanceToFillWei\n ? formatUnits(BigInt(requiredBalanceToFillWei), tokenFrom.decimals)\n : undefined;\n\n return {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillWei,\n requiredBalanceToFillUnit,\n };\n};\n"],"names":["useIsInsufficientBalanceToFillLimitOrder","$","_c","tokenFrom","useLimitTokenFrom","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","t0","Symbol","for","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t1","address","tokenAddress","query","data","useDeltaLimitOrderRequiredBalance","t2","toLowerCase","requiredBalanceToFillWei","t3","useIsInsufficientBalanceToFillOrder","useIsInsufficientBalanceToFillOtcOrder","useOtcTokenFrom","otcPayInputAmountWeiAtom","useLimitOrderRequiredBalance","token","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","BigInt","toString","undefined","isInsufficientBalanceToFill","t4","formatUnits","decimals","requiredBalanceToFillUnit","t5"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/prices/queries.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAEV,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAa/D,wBAAsB,4BAA4B,CAAC,EACjD,OAAO,EACP,sBAAsB,EACtB,MAAM,GACP,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,yBAmEA;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,mBAAmB,CAErB;AAED,wBAAgB,gCAAgC,CAAC,EAC/C,OAAO,EACP,sBAAsB,EACtB,OAAO,GACR,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,eAAe,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAgB1E"}
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../../src/hooks/tokens/prices/queries.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAEV,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAY/D,wBAAsB,4BAA4B,CAAC,EACjD,OAAO,EACP,sBAAsB,EACtB,MAAM,GACP,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,yBAmEA;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,mBAAmB,CAErB;AAED,wBAAgB,gCAAgC,CAAC,EAC/C,OAAO,EACP,sBAAsB,EACtB,OAAO,GACR,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,eAAe,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAgB1E"}
@@ -1,8 +1,8 @@
1
1
  import { queryClient } from '../../../lib/queryClient.js';
2
+ import { API_URL } from '../../../lib/constants/index.js';
2
3
  import { ONE_MINUTE_MS, LONG_STALE_TIME_FOR_REACTIVENESS } from '../../../lib/constants/time.js';
3
4
  import axios from 'axios';
4
5
  import { isAddress } from 'viem';
5
- import { getApiURL } from '../../../lib/constants/urls.js';
6
6
 
7
7
  const keysToSkip = ["source", "address", "updatedAt"];
8
8
  function shouldTryOverride(key) {
@@ -17,7 +17,7 @@ async function fetchTokenPricesWithFallback({
17
17
  data: {
18
18
  prices
19
19
  }
20
- } = await axios.get(`${getApiURL()}/fiat/prices/${chainId}`, {
20
+ } = await axios.get(`${API_URL}/fiat/prices/${chainId}`, {
21
21
  signal
22
22
  });
23
23
  if (!fallbackToCachedPrices) return prices;
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sources":["../../../../src/hooks/tokens/prices/queries.ts"],"sourcesContent":["import { queryClient } from \"@/lib/queryClient\";\nimport {\n LONG_STALE_TIME_FOR_REACTIVENESS,\n ONE_MINUTE_MS,\n} from \"@/lib/constants/time\";\n\nimport axios from \"axios\";\nimport { isAddress } from \"viem\";\n\nimport type { UseQueryOptions } from \"@tanstack/react-query\";\nimport type {\n FiatPriceFromApi,\n FiatPriceMap,\n TokenPricesQueryKey,\n} from \"./types\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getApiURL } from \"@/lib/constants/urls\";\n\nconst keysToSkip: (keyof FiatPriceFromApi)[] = [\n \"source\",\n \"address\",\n \"updatedAt\",\n];\n\nfunction shouldTryOverride(key: string): boolean {\n return !keysToSkip.includes(key as keyof FiatPriceFromApi);\n}\n\nexport async function fetchTokenPricesWithFallback({\n chainId,\n fallbackToCachedPrices,\n signal,\n}: {\n chainId: SupportedChainId;\n fallbackToCachedPrices?: boolean;\n signal?: AbortSignal;\n}) {\n const {\n data: { prices },\n } = await axios.get<{ prices: FiatPriceMap }>(\n `${getApiURL()}/fiat/prices/${chainId}`,\n { signal }\n );\n\n if (!fallbackToCachedPrices) return prices;\n\n // fiat-fetcher gives the prices either from coingecko or chainlink,\n // and in case of chainlink there are some missing values in price object\n\n const lastPrices = queryClient.getQueryData<FiatPriceMap>(\n constructTokenPricesQueryKey(chainId)\n );\n\n if (!lastPrices) return prices;\n\n const combined = Object.entries(prices).reduce<FiatPriceMap>(\n (acc, [address, price]) => {\n // skip if address is not valid\n if (!isAddress(address)) return acc;\n\n const lastPrice = lastPrices[address];\n // no previous price, do nothing\n if (!lastPrice) return acc;\n\n // assume that coinGecko prices have more data\n // and we don't want to change them\n if (price.source === \"coinGecko\") return acc;\n\n // no need to override the price when from the same source\n if (price.source === lastPrice.source) return acc;\n\n // make sure we have all the keys\n // not just the ones that are in the new price object\n const mergedPrice = { ...lastPrice, ...price };\n\n let changed = false;\n\n for (const key of Object.keys(mergedPrice)) {\n if (shouldTryOverride(key)) {\n const val =\n price[key as keyof typeof price] ??\n ((changed = true), lastPrice[key as keyof typeof lastPrice]);\n\n (mergedPrice[\n key as keyof typeof mergedPrice\n ] as FiatPriceFromApi[keyof FiatPriceFromApi]) = val;\n }\n }\n\n // we updated the price\n if (changed) {\n // let's keep updatedAt, source from the last price\n mergedPrice.updatedAt = lastPrice.updatedAt;\n mergedPrice.source = lastPrice.source;\n }\n\n acc[address] = mergedPrice;\n return acc;\n },\n prices\n );\n\n return combined;\n}\n\nexport function constructTokenPricesQueryKey(\n chainId: number\n): TokenPricesQueryKey {\n return [\"token-prices\", chainId];\n}\n\nexport function constructTokenPricesQueryOptions({\n chainId,\n fallbackToCachedPrices,\n enabled,\n}: {\n chainId: SupportedChainId;\n fallbackToCachedPrices?: boolean;\n enabled?: boolean;\n}): UseQueryOptions<FiatPriceMap, Error, FiatPriceMap, TokenPricesQueryKey> {\n {\n return {\n queryKey: constructTokenPricesQueryKey(chainId),\n queryFn: ({ signal }) =>\n fetchTokenPricesWithFallback({\n chainId,\n fallbackToCachedPrices,\n signal,\n }),\n enabled,\n notifyOnChangeProps: [\"data\", \"isLoading\", \"isError\"],\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n refetchInterval: ONE_MINUTE_MS,\n };\n }\n}\n"],"names":["keysToSkip","shouldTryOverride","key","includes","fetchTokenPricesWithFallback","chainId","fallbackToCachedPrices","signal","data","prices","axios","get","getApiURL","lastPrices","queryClient","getQueryData","constructTokenPricesQueryKey","combined","Object","entries","reduce","acc","address","price","isAddress","lastPrice","source","mergedPrice","changed","keys","val","updatedAt","constructTokenPricesQueryOptions","enabled","queryKey","queryFn","notifyOnChangeProps","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","refetchInterval","ONE_MINUTE_MS"],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sources":["../../../../src/hooks/tokens/prices/queries.ts"],"sourcesContent":["import { queryClient } from \"@/lib/queryClient\";\nimport { API_URL } from \"@/lib/constants\";\nimport {\n LONG_STALE_TIME_FOR_REACTIVENESS,\n ONE_MINUTE_MS,\n} from \"@/lib/constants/time\";\n\nimport axios from \"axios\";\nimport { isAddress } from \"viem\";\n\nimport type { UseQueryOptions } from \"@tanstack/react-query\";\nimport type {\n FiatPriceFromApi,\n FiatPriceMap,\n TokenPricesQueryKey,\n} from \"./types\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nconst keysToSkip: (keyof FiatPriceFromApi)[] = [\n \"source\",\n \"address\",\n \"updatedAt\",\n];\n\nfunction shouldTryOverride(key: string): boolean {\n return !keysToSkip.includes(key as keyof FiatPriceFromApi);\n}\n\nexport async function fetchTokenPricesWithFallback({\n chainId,\n fallbackToCachedPrices,\n signal,\n}: {\n chainId: SupportedChainId;\n fallbackToCachedPrices?: boolean;\n signal?: AbortSignal;\n}) {\n const {\n data: { prices },\n } = await axios.get<{ prices: FiatPriceMap }>(\n `${API_URL}/fiat/prices/${chainId}`,\n { signal }\n );\n\n if (!fallbackToCachedPrices) return prices;\n\n // fiat-fetcher gives the prices either from coingecko or chainlink,\n // and in case of chainlink there are some missing values in price object\n\n const lastPrices = queryClient.getQueryData<FiatPriceMap>(\n constructTokenPricesQueryKey(chainId)\n );\n\n if (!lastPrices) return prices;\n\n const combined = Object.entries(prices).reduce<FiatPriceMap>(\n (acc, [address, price]) => {\n // skip if address is not valid\n if (!isAddress(address)) return acc;\n\n const lastPrice = lastPrices[address];\n // no previous price, do nothing\n if (!lastPrice) return acc;\n\n // assume that coinGecko prices have more data\n // and we don't want to change them\n if (price.source === \"coinGecko\") return acc;\n\n // no need to override the price when from the same source\n if (price.source === lastPrice.source) return acc;\n\n // make sure we have all the keys\n // not just the ones that are in the new price object\n const mergedPrice = { ...lastPrice, ...price };\n\n let changed = false;\n\n for (const key of Object.keys(mergedPrice)) {\n if (shouldTryOverride(key)) {\n const val =\n price[key as keyof typeof price] ??\n ((changed = true), lastPrice[key as keyof typeof lastPrice]);\n\n (mergedPrice[\n key as keyof typeof mergedPrice\n ] as FiatPriceFromApi[keyof FiatPriceFromApi]) = val;\n }\n }\n\n // we updated the price\n if (changed) {\n // let's keep updatedAt, source from the last price\n mergedPrice.updatedAt = lastPrice.updatedAt;\n mergedPrice.source = lastPrice.source;\n }\n\n acc[address] = mergedPrice;\n return acc;\n },\n prices\n );\n\n return combined;\n}\n\nexport function constructTokenPricesQueryKey(\n chainId: number\n): TokenPricesQueryKey {\n return [\"token-prices\", chainId];\n}\n\nexport function constructTokenPricesQueryOptions({\n chainId,\n fallbackToCachedPrices,\n enabled,\n}: {\n chainId: SupportedChainId;\n fallbackToCachedPrices?: boolean;\n enabled?: boolean;\n}): UseQueryOptions<FiatPriceMap, Error, FiatPriceMap, TokenPricesQueryKey> {\n {\n return {\n queryKey: constructTokenPricesQueryKey(chainId),\n queryFn: ({ signal }) =>\n fetchTokenPricesWithFallback({\n chainId,\n fallbackToCachedPrices,\n signal,\n }),\n enabled,\n notifyOnChangeProps: [\"data\", \"isLoading\", \"isError\"],\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n refetchInterval: ONE_MINUTE_MS,\n };\n }\n}\n"],"names":["keysToSkip","shouldTryOverride","key","includes","fetchTokenPricesWithFallback","chainId","fallbackToCachedPrices","signal","data","prices","axios","get","API_URL","lastPrices","queryClient","getQueryData","constructTokenPricesQueryKey","combined","Object","entries","reduce","acc","address","price","isAddress","lastPrice","source","mergedPrice","changed","keys","val","updatedAt","constructTokenPricesQueryOptions","enabled","queryKey","queryFn","notifyOnChangeProps","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","refetchInterval","ONE_MINUTE_MS"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { d as distExports } from '../../_virtual/index.js';
2
2
  import { sortTokens } from '../../tokens/utils/sorting.js';
3
3
  import { filterTokens } from '../../tokens/utils/filtering.js';
4
4
  import { useAllTokens } from '../../tokens/hooks.js';
5
- import { useAtomValue } from 'jotai';
5
+ import { useAtomValue } from '../../core/store.js';
6
6
  import { useMemo } from 'react';
7
7
  import { useNativeToken } from './useNativeToken.js';
8
8
  import { useAttachTokenBalanceMultichain } from './balances/useAttachTokenBalanceMultichain.js';
@@ -1 +1 @@
1
- {"version":3,"file":"useAllTokensWithFilter.js","sources":["../../../src/hooks/tokens/useAllTokensWithFilter.ts"],"sourcesContent":["import { sortTokens } from \"@/tokens/utils/sorting\";\nimport { filterTokens } from \"@/tokens/utils/filtering\";\nimport { useAllTokens } from \"@/tokens/hooks\";\nimport type { Token, TokenMaybeWithUsdBalance } from \"@/tokens/state/types\";\nimport { useAtomValue } from \"jotai\";\nimport { useMemo } from \"react\";\nimport { useNativeToken } from \"./useNativeToken\";\nimport { useAttachTokenBalanceMultichain } from \"./balances/useAttachTokenBalanceMultichain\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { useTokensFromAcross } from \"./useTokensFromAcross\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { isAddress } from \"viem\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\n\nexport const useAllTokensWithFilter = ({\n tokenFilter,\n forcedChainId,\n searchOnOtherChainsIfNothingFound,\n withETH = true,\n}: {\n tokenFilter: string;\n forcedChainId?: SupportedChainId;\n searchOnOtherChainsIfNothingFound?: boolean;\n withETH?: boolean;\n}): TokenMaybeWithUsdBalance[] => {\n const appChainId = useChainId();\n\n const allTokens = useAllTokens(forcedChainId);\n const nativeToken = useNativeToken(forcedChainId);\n\n const allIncludedTokens = withETH\n ? [nativeToken].concat(allTokens)\n : allTokens;\n\n const filteredTokens = useMemo(() => {\n return filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: allIncludedTokens,\n });\n }, [tokenFilter, allIncludedTokens]);\n\n const isTokenFilterValidAddress = isAddress(tokenFilter);\n const searchOnAllChains =\n (isTokenFilterValidAddress && searchOnOtherChainsIfNothingFound) || // if it's a token address, always search on other chains, if allowed\n // -- we want to show this token on all chains.\n (filteredTokens.length === 0 &&\n // not already found tokens on current chain &&\n // filter given, and explicitly asked to search other chains\n !!tokenFilter &&\n searchOnOtherChainsIfNothingFound);\n\n const { tokens: tokensFromAllChains, addressMap: tokensFromAllChainsMap } =\n useAllTokensFromChains({\n // no need to exclude any chains, we actually want to search on all chains in this scenario\n // excludeChains: forcedChainId ? [forcedChainId] : [appChainId],\n includeChains: !searchOnAllChains ? emptyArray : undefined,\n });\n\n const { addressesMap, tokensToDisplay } = useMemo(() => {\n if (searchOnAllChains)\n return {\n tokensToDisplay: tokensFromAllChains,\n addressesMap: tokensFromAllChainsMap,\n };\n\n const currentChainId = forcedChainId ?? appChainId;\n const allTokensWithNativeAddresses = allIncludedTokens.map(\n ({ address }) => address\n );\n\n return {\n tokensToDisplay: allIncludedTokens,\n addressesMap: {\n [currentChainId]: allTokensWithNativeAddresses,\n },\n };\n }, [\n appChainId,\n forcedChainId,\n searchOnAllChains,\n tokensFromAllChains,\n tokensFromAllChainsMap,\n allIncludedTokens,\n ]);\n\n const attachTokenBalance = useAttachTokenBalanceMultichain({\n addressesMap,\n });\n\n const filteredAndSortedTokens = useMemo<TokenMaybeWithUsdBalance[]>(() => {\n return filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: tokensToDisplay,\n })\n .map(attachTokenBalance)\n .sort(sortTokens);\n }, [attachTokenBalance, tokenFilter, tokensToDisplay]);\n\n return filteredAndSortedTokens;\n};\n\nexport const usePrefetchTokenBalances = () => {\n // will fetch balances for all tokens from tokenLists for current chain,\n // if necessary, can be made to fetch for all chains, but that may be too many requests\n useAllTokensWithFilter({\n tokenFilter: \"\",\n });\n};\n\ntype AllTokensFromChainsInput = {\n includeChains?: number[];\n excludeChains?: number[];\n};\n\n/**\n * @description\n * Returns tokens and token address maps from all chains, optionally filtered by include/exclude chains.\n * If no chains are specified, it will return all tokens from all chains.\n * If includeChains is specified, it will only return tokens from those chains.\n * If excludeChains is specified, it will exclude tokens from those chains.\n */\nexport function useAllTokensFromChains({\n includeChains,\n excludeChains,\n}: AllTokensFromChainsInput): {\n tokens: Token[];\n addressMap: Record<number, string[]>;\n} {\n const { listByChainId: tokensListsByChain } =\n useAtomValue(allTokensByChainAtom);\n\n return useMemo(() => {\n const tokens: Token[] = [];\n const addressMap: Record<number, string[]> = {};\n\n for (const [_chainId, { tokens: _tokens }] of Object.entries(\n tokensListsByChain\n )) {\n const chainId = Number(_chainId);\n if (includeChains && !includeChains.includes(chainId)) continue;\n if (excludeChains && excludeChains.includes(chainId)) continue;\n\n tokens.push(..._tokens);\n addressMap[chainId] = _tokens.map((token) => token.address);\n }\n\n return { tokens, addressMap };\n }, [tokensListsByChain, includeChains, excludeChains]);\n}\n\nexport function useAcrossTokenLists({\n tokenFilter,\n fromChainId,\n toChainId,\n}: {\n tokenFilter: string;\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n}) {\n const { crossTokens } = useTokensFromAcross({\n fromChainId,\n toChainId,\n });\n\n const attachTokenBalance = useAttachTokenBalanceMultichain({\n addressesMap: {\n [toChainId]: crossTokens.map((token) => token.address),\n },\n });\n\n return useMemo<TokenMaybeWithUsdBalance[]>(\n () =>\n filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: crossTokens,\n })\n .map(attachTokenBalance)\n .sort(sortTokens),\n [attachTokenBalance, crossTokens, tokenFilter]\n );\n}\n"],"names":["useAllTokensWithFilter","t0","$","_c","tokenFilter","forcedChainId","searchOnOtherChainsIfNothingFound","withETH","t1","undefined","appChainId","useChainId","allTokens","useAllTokens","nativeToken","useNativeToken","t2","concat","allIncludedTokens","filteredTokens","filterTokens","filterString","trim","tokenArray","isTokenFilterValidAddress","isAddress","searchOnAllChains","length","t3","emptyArray","t4","includeChains","tokens","tokensFromAllChains","addressMap","tokensFromAllChainsMap","useAllTokensFromChains","t5","bb0","t6","tokensToDisplay","addressesMap","currentChainId","map","_temp","allTokensWithNativeAddresses","t7","t8","attachTokenBalance","useAttachTokenBalanceMultichain","sort","sortTokens","filteredAndSortedTokens","usePrefetchTokenBalances","Symbol","for","excludeChains","listByChainId","tokensListsByChain","useAtomValue","allTokensByChainAtom","useMemo","_chainId","_tokens","Object","entries","chainId","Number","includes","push","token","address","useAcrossTokenLists","fromChainId","toChainId","crossTokens","useTokensFromAcross","_temp3"],"mappings":";;;;;;;;;;;;;;AAeO,MAAMA,yBAAyBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,WAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,iCAAAA;AAAAA,IAAAC,OAAAA,EAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAIrC,EAAA,MAAAM,OAAAA,GAAAC,EAAAA,KAAAC,MAAAA,GAAA,IAAA,GAAAD,EAAAA;AAOA,EAAA,MAAAE,aAAmBC,UAAAA,EAAW;AAE9B,EAAA,MAAAC,SAAAA,GAAkBC,aAAaR,aAAa,CAAA;AAC5C,EAAA,MAAAS,WAAAA,GAAoBC,eAAeV,aAAa,CAAA;AAAE,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAU,SAAAA,IAAAV,CAAAA,QAAAY,WAAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAK,OAAAA,EAAA;AAExBS,IAAAA,EAAAA,GAAAT,UACtB,CAACO,WAAW,CAAA,CAACG,MAAAA,CAAQL,SACb,CAAA,GAFcA,SAAAA;AAEbV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAY,WAAAA;AAAAZ,IAAAA,CAAAA,MAAAK,OAAAA;AAAAL,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAFb,EAAA,MAAAgB,iBAAAA,GAA0BF,EAAAA;AAI1B,EAAA,MAAAG,iBACSC,YAAAA,CAAa;AAAA,IAAAC,YAAAA,EACJjB,YAAWkB,IAAAA,EAAM;AAAA,IAACC,UAAAA,EACpBL;AAAAA,GACZ,CAAA;AAGJ,EAAA,MAAAM,yBAAAA,GAAkCC,UAAUrB,WAAW,CAAA;AACvD,EAAA,MAAAsB,iBAAAA,GACGF,6BAAAlB,iCAAAA,IAEAa,cAAAA,CAAcQ,WAAY,CAAA,IAA1B,CAGE,CAACvB,WAAAA,IAHHE,iCAAAA;AAUgB,EAAA,MAAAsB,EAAAA,GAAA,CAACF,iBAAAA,GAADG,UAAAA,GAAApB,MAAAA;AAA2C,EAAA,IAAAqB,EAAAA;AAAA,EAAA,IAAA5B,CAAAA,QAAA0B,EAAAA,EAAA;AAHrCE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,aAAAA,EAGNH;AAAAA,KACjB;AAAC1B,IAAAA,CAAAA,MAAA0B,EAAAA;AAAA1B,IAAAA,CAAAA,MAAA4B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5B,EAAA,CAAA,CAAA;AAAA,EAAA;AALH,EAAA,MAAA;AAAA,IAAA8B,MAAAA,EAAAC,mBAAAA;AAAAA,IAAAC,UAAAA,EAAAC;AAAAA,GAAA,GACEC,uBAAuBN,EAItB,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAAC,EAAAA,GAAAA,EAAA;AAGH,IAAA,IAAIZ,iBAAAA,EAAiB;AAAA,MAAA,IAAAa,GAAAA;AAAA,MAAA,IAAArC,EAAA,CAAA,CAAA,KAAA+B,uBAAA/B,CAAAA,QAAAiC,sBAAAA,EAAA;AACZI,QAAAA,GAAAA,GAAA;AAAA,UAAAC,eAAAA,EACYP,mBAAAA;AAAAA,UAAmBQ,YAAAA,EACtBN;AAAAA,SAChB;AAACjC,QAAAA,CAAAA,MAAA+B,mBAAAA;AAAA/B,QAAAA,CAAAA,MAAAiC,sBAAAA;AAAAjC,QAAAA,CAAAA,MAAAqC,GAAAA;AAAAA,MAAA,CAAA,MAAA;AAAAA,QAAAA,GAAAA,GAAArC,EAAA,CAAA,CAAA;AAAA,MAAA;AAHDmC,MAAAA,EAAAA,GAAOE,GAAAA;AAAP,MAAA,MAAAD,GAAAA;AAAAA,IAGE;AAEJ,IAAA,MAAAI,iBAAuBrC,aAAAA,IAAAK,UAAAA;AAA4B,IAAA,IAAA6B,GAAAA;AAAA,IAAA,IAAArC,CAAAA,QAAAgB,iBAAAA,EAAA;AACdqB,MAAAA,GAAAA,GAAArB,iBAAAA,CAAiByB,GAAAA,CACpDC,KACF,CAAA;AAAC1C,MAAAA,CAAAA,MAAAgB,iBAAAA;AAAAhB,MAAAA,CAAAA,OAAAqC,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,IAAA;AAFD,IAAA,MAAA2C,4BAAAA,GAAqCN,GAAAA;AAEnC,IAAA,IAAAO,GAAAA;AAAA,IAAA,IAAA5C,EAAA,EAAA,CAAA,KAAA2C,gCAAA3C,CAAAA,SAAAwC,cAAAA,EAAA;AAIcI,MAAAA,GAAAA,GAAA;AAAA,QAAA,CACXJ,cAAc,GAAGG;AAAAA,OACpB;AAAC3C,MAAAA,CAAAA,OAAA2C,4BAAAA;AAAA3C,MAAAA,CAAAA,OAAAwC,cAAAA;AAAAxC,MAAAA,CAAAA,OAAA4C,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,IAAA;AAAA,IAAA,IAAA6C,EAAAA;AAAA,IAAA,IAAA7C,EAAA,EAAA,CAAA,KAAAgB,qBAAAhB,CAAAA,SAAA4C,GAAAA,EAAA;AAJIC,MAAAA,EAAAA,GAAA;AAAA,QAAAP,eAAAA,EACYtB,iBAAAA;AAAAA,QAAiBuB,YAAAA,EACpBK;AAAAA,OAGhB;AAAC5C,MAAAA,CAAAA,OAAAgB,iBAAAA;AAAAhB,MAAAA,CAAAA,OAAA4C,GAAAA;AAAA5C,MAAAA,CAAAA,OAAA6C,EAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,EAAAA,GAAA7C,EAAA,EAAA,CAAA;AAAA,IAAA;AALDmC,IAAAA,EAAAA,GAAOU,EAAAA;AAAAA,EAKL;AAjBJ,EAAA,MAAA;AAAA,IAAAN,YAAAA;AAAAA,IAAAD;AAAAA,GAAA,GAA0CH,EAAAA;AAyBvC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAArC,CAAAA,SAAAuC,YAAAA,EAAA;AAEwDF,IAAAA,EAAAA,GAAA;AAAA,MAAAE;AAAAA,KAE3D;AAACvC,IAAAA,CAAAA,OAAAuC,YAAAA;AAAAvC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,EAAA;AAFD,EAAA,MAAA8C,kBAAAA,GAA2BC,gCAAgCV,EAE1D,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAA5C,CAAAA,CAAA,EAAA,CAAA,KAAA8C,kBAAAA,IAAA9C,CAAAA,SAAAE,WAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAAsC,eAAAA,EAAA;AAGMM,IAAAA,EAAAA,GAAA1B,YAAAA,CAAa;AAAA,MAAAC,YAAAA,EACJjB,YAAWkB,IAAAA,EAAM;AAAA,MAACC,UAAAA,EACpBiB;AAAAA,KACb,CAAA,CAACG,GAAAA,CACKK,kBAAkB,CAAA,CAACE,KAClBC,UAAU,CAAA;AAACjD,IAAAA,CAAAA,OAAA8C,kBAAAA;AAAA9C,IAAAA,CAAAA,OAAAE,WAAAA;AAAAF,IAAAA,CAAAA,OAAAsC,eAAAA;AAAAtC,IAAAA,CAAAA,OAAA4C,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,EAAA;AANrB,EAAA,MAAAkD,uBAAAA,GACEN,EAAAA;AAMqD,EAAA,OAEhDM,uBAAAA;AAAuB;AAGzB,MAAMC,2BAA2BA,MAAA;AAAA,EAAA,MAAAnD,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAF,EAAAA;AAAA,EAAA,IAAAC,EAAA,CAAA,CAAA,KAAAoD,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGftD,IAAAA,EAAAA,GAAA;AAAA,MAAAG,WAAAA,EACR;AAAA,KACf;AAACF,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAFDF,EAAAA,sBAAAA,CAAuBC,EAEtB,CAAA;AAAC;AAeG,SAASmC,sBAAAA,CAAuB;AAAA,EACrCL,aAAAA;AAAAA,EACAyB;AACwB,CAAA,EAGxB;AACA,EAAA,MAAM;AAAA,IAAEC,aAAAA,EAAeC;AAAAA,GAAmB,GACxCC,aAAaC,oBAAoB,CAAA;AAEnC,EAAA,OAAOC,QAAQ,MAAM;AACnB,IAAA,MAAM7B,SAAkB,EAAA;AACxB,IAAA,MAAME,aAAuC,EAAC;AAE9C,IAAA,KAAA,MAAW,CAAC4B,QAAAA,EAAU;AAAA,MAAE9B,MAAAA,EAAQ+B;AAAAA,KAAS,CAAA,IAAKC,MAAAA,CAAOC,OAAAA,CACnDP,kBACF,CAAA,EAAG;AACD,MAAA,MAAMQ,OAAAA,GAAUC,OAAOL,QAAQ,CAAA;AAC/B,MAAA,IAAI/B,aAAAA,IAAiB,CAACA,aAAAA,CAAcqC,QAAAA,CAASF,OAAO,CAAA,EAAG;AACvD,MAAA,IAAIV,aAAAA,IAAiBA,aAAAA,CAAcY,QAAAA,CAASF,OAAO,CAAA,EAAG;AAEtDlC,MAAAA,MAAAA,CAAOqC,IAAAA,CAAK,GAAGN,OAAO,CAAA;AACtB7B,MAAAA,UAAAA,CAAWgC,OAAO,CAAA,GAAIH,OAAAA,CAAQpB,GAAAA,CAAK2B,CAAAA,KAAAA,KAAUA,MAAMC,OAAO,CAAA;AAAA,IAC5D;AAEA,IAAA,OAAO;AAAA,MAAEvC,MAAAA;AAAAA,MAAQE;AAAAA,KAAW;AAAA,EAC9B,CAAA,EAAG,CAACwB,kBAAAA,EAAoB3B,aAAAA,EAAeyB,aAAa,CAAC,CAAA;AACvD;AAEO,SAAAgB,oBAAAvE,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAA6B,EAAA,MAAA;AAAA,IAAAC,WAAAA;AAAAA,IAAAqE,WAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAzE,EAAAA;AAQnC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAuE,eAAAvE,CAAAA,QAAAwE,SAAAA,EAAA;AAC6ClE,IAAAA,EAAAA,GAAA;AAAA,MAAAiE,WAAAA;AAAAA,MAAAC;AAAAA,KAG5C;AAACxE,IAAAA,CAAAA,MAAAuE,WAAAA;AAAAvE,IAAAA,CAAAA,MAAAwE,SAAAA;AAAAxE,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAHD,EAAA,MAAA;AAAA,IAAAyE;AAAAA,GAAA,GAAwBC,oBAAoBpE,EAG3C,CAAA;AAAE,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAd,CAAAA,QAAAyE,WAAAA,EAAA;AAIc3D,IAAAA,EAAAA,GAAA2D,WAAAA,CAAWhC,IAAKkC,MAAwB,CAAA;AAAC3E,IAAAA,CAAAA,MAAAyE,WAAAA;AAAAzE,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA0B,EAAAA;AAAA,EAAA,IAAA1B,EAAA,CAAA,CAAA,KAAAc,MAAAd,CAAAA,QAAAwE,SAAAA,EAAA;AAFC9C,IAAAA,EAAAA,GAAA;AAAA,MAAAa,YAAAA,EAC3C;AAAA,QAAA,CACXiC,SAAS,GAAG1D;AAAAA;AACf,KACF;AAACd,IAAAA,CAAAA,MAAAc,EAAAA;AAAAd,IAAAA,CAAAA,MAAAwE,SAAAA;AAAAxE,IAAAA,CAAAA,MAAA0B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA1B,EAAA,CAAA,CAAA;AAAA,EAAA;AAJD,EAAA,MAAA8C,kBAAAA,GAA2BC,gCAAgCrB,EAI1D,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAA5B,CAAAA,CAAA,CAAA,CAAA,KAAA8C,kBAAAA,IAAA9C,CAAAA,QAAAyE,WAAAA,IAAAzE,CAAAA,CAAA,EAAA,CAAA,KAAAE,WAAAA,EAAA;AAIC0B,IAAAA,EAAAA,GAAAV,YAAAA,CAAa;AAAA,MAAAC,YAAAA,EACGjB,YAAWkB,IAAAA,EAAM;AAAA,MAACC,UAAAA,EACpBoD;AAAAA,KACb,CAAA,CAAChC,GAAAA,CACKK,kBAAkB,CAAA,CAACE,KAClBC,UAAU,CAAA;AAACjD,IAAAA,CAAAA,MAAA8C,kBAAAA;AAAA9C,IAAAA,CAAAA,MAAAyE,WAAAA;AAAAzE,IAAAA,CAAAA,OAAAE,WAAAA;AAAAF,IAAAA,CAAAA,OAAA4B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALnB4B,EAAAA;AAKmB;AA3BlB,SAAA+C,OAAAP,KAAAA,EAAA;AAAA,EAAA,OAgBuCA,KAAAA,CAAKC,OAAAA;AAAQ;AAxJrB,SAAA3B,MAAA3C,EAAAA,EAAA;AAqD/B,EAAA,MAAA;AAAA,IAAAsE;AAAAA,GAAA,GAAAtE,EAAAA;AAAW,EAAA,OAAKsE,OAAAA;AAAO;;;;"}
1
+ {"version":3,"file":"useAllTokensWithFilter.js","sources":["../../../src/hooks/tokens/useAllTokensWithFilter.ts"],"sourcesContent":["import { sortTokens } from \"@/tokens/utils/sorting\";\nimport { filterTokens } from \"@/tokens/utils/filtering\";\nimport { useAllTokens } from \"@/tokens/hooks\";\nimport type { Token, TokenMaybeWithUsdBalance } from \"@/tokens/state/types\";\nimport { useAtomValue } from \"@/core/store\";\nimport { useMemo } from \"react\";\nimport { useNativeToken } from \"./useNativeToken\";\nimport { useAttachTokenBalanceMultichain } from \"./balances/useAttachTokenBalanceMultichain\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { useTokensFromAcross } from \"./useTokensFromAcross\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { isAddress } from \"viem\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\n\nexport const useAllTokensWithFilter = ({\n tokenFilter,\n forcedChainId,\n searchOnOtherChainsIfNothingFound,\n withETH = true,\n}: {\n tokenFilter: string;\n forcedChainId?: SupportedChainId;\n searchOnOtherChainsIfNothingFound?: boolean;\n withETH?: boolean;\n}): TokenMaybeWithUsdBalance[] => {\n const appChainId = useChainId();\n\n const allTokens = useAllTokens(forcedChainId);\n const nativeToken = useNativeToken(forcedChainId);\n\n const allIncludedTokens = withETH\n ? [nativeToken].concat(allTokens)\n : allTokens;\n\n const filteredTokens = useMemo(() => {\n return filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: allIncludedTokens,\n });\n }, [tokenFilter, allIncludedTokens]);\n\n const isTokenFilterValidAddress = isAddress(tokenFilter);\n const searchOnAllChains =\n (isTokenFilterValidAddress && searchOnOtherChainsIfNothingFound) || // if it's a token address, always search on other chains, if allowed\n // -- we want to show this token on all chains.\n (filteredTokens.length === 0 &&\n // not already found tokens on current chain &&\n // filter given, and explicitly asked to search other chains\n !!tokenFilter &&\n searchOnOtherChainsIfNothingFound);\n\n const { tokens: tokensFromAllChains, addressMap: tokensFromAllChainsMap } =\n useAllTokensFromChains({\n // no need to exclude any chains, we actually want to search on all chains in this scenario\n // excludeChains: forcedChainId ? [forcedChainId] : [appChainId],\n includeChains: !searchOnAllChains ? emptyArray : undefined,\n });\n\n const { addressesMap, tokensToDisplay } = useMemo(() => {\n if (searchOnAllChains)\n return {\n tokensToDisplay: tokensFromAllChains,\n addressesMap: tokensFromAllChainsMap,\n };\n\n const currentChainId = forcedChainId ?? appChainId;\n const allTokensWithNativeAddresses = allIncludedTokens.map(\n ({ address }) => address\n );\n\n return {\n tokensToDisplay: allIncludedTokens,\n addressesMap: {\n [currentChainId]: allTokensWithNativeAddresses,\n },\n };\n }, [\n appChainId,\n forcedChainId,\n searchOnAllChains,\n tokensFromAllChains,\n tokensFromAllChainsMap,\n allIncludedTokens,\n ]);\n\n const attachTokenBalance = useAttachTokenBalanceMultichain({\n addressesMap,\n });\n\n const filteredAndSortedTokens = useMemo<TokenMaybeWithUsdBalance[]>(() => {\n return filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: tokensToDisplay,\n })\n .map(attachTokenBalance)\n .sort(sortTokens);\n }, [attachTokenBalance, tokenFilter, tokensToDisplay]);\n\n return filteredAndSortedTokens;\n};\n\nexport const usePrefetchTokenBalances = () => {\n // will fetch balances for all tokens from tokenLists for current chain,\n // if necessary, can be made to fetch for all chains, but that may be too many requests\n useAllTokensWithFilter({\n tokenFilter: \"\",\n });\n};\n\ntype AllTokensFromChainsInput = {\n includeChains?: number[];\n excludeChains?: number[];\n};\n\n/**\n * @description\n * Returns tokens and token address maps from all chains, optionally filtered by include/exclude chains.\n * If no chains are specified, it will return all tokens from all chains.\n * If includeChains is specified, it will only return tokens from those chains.\n * If excludeChains is specified, it will exclude tokens from those chains.\n */\nexport function useAllTokensFromChains({\n includeChains,\n excludeChains,\n}: AllTokensFromChainsInput): {\n tokens: Token[];\n addressMap: Record<number, string[]>;\n} {\n const { listByChainId: tokensListsByChain } =\n useAtomValue(allTokensByChainAtom);\n\n return useMemo(() => {\n const tokens: Token[] = [];\n const addressMap: Record<number, string[]> = {};\n\n for (const [_chainId, { tokens: _tokens }] of Object.entries(\n tokensListsByChain\n )) {\n const chainId = Number(_chainId);\n if (includeChains && !includeChains.includes(chainId)) continue;\n if (excludeChains && excludeChains.includes(chainId)) continue;\n\n tokens.push(..._tokens);\n addressMap[chainId] = _tokens.map((token) => token.address);\n }\n\n return { tokens, addressMap };\n }, [tokensListsByChain, includeChains, excludeChains]);\n}\n\nexport function useAcrossTokenLists({\n tokenFilter,\n fromChainId,\n toChainId,\n}: {\n tokenFilter: string;\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n}) {\n const { crossTokens } = useTokensFromAcross({\n fromChainId,\n toChainId,\n });\n\n const attachTokenBalance = useAttachTokenBalanceMultichain({\n addressesMap: {\n [toChainId]: crossTokens.map((token) => token.address),\n },\n });\n\n return useMemo<TokenMaybeWithUsdBalance[]>(\n () =>\n filterTokens({\n filterString: tokenFilter.trim(),\n tokenArray: crossTokens,\n })\n .map(attachTokenBalance)\n .sort(sortTokens),\n [attachTokenBalance, crossTokens, tokenFilter]\n );\n}\n"],"names":["useAllTokensWithFilter","t0","$","_c","tokenFilter","forcedChainId","searchOnOtherChainsIfNothingFound","withETH","t1","undefined","appChainId","useChainId","allTokens","useAllTokens","nativeToken","useNativeToken","t2","concat","allIncludedTokens","filteredTokens","filterTokens","filterString","trim","tokenArray","isTokenFilterValidAddress","isAddress","searchOnAllChains","length","t3","emptyArray","t4","includeChains","tokens","tokensFromAllChains","addressMap","tokensFromAllChainsMap","useAllTokensFromChains","t5","bb0","t6","tokensToDisplay","addressesMap","currentChainId","map","_temp","allTokensWithNativeAddresses","t7","t8","attachTokenBalance","useAttachTokenBalanceMultichain","sort","sortTokens","filteredAndSortedTokens","usePrefetchTokenBalances","Symbol","for","excludeChains","listByChainId","tokensListsByChain","useAtomValue","allTokensByChainAtom","useMemo","_chainId","_tokens","Object","entries","chainId","Number","includes","push","token","address","useAcrossTokenLists","fromChainId","toChainId","crossTokens","useTokensFromAcross","_temp3"],"mappings":";;;;;;;;;;;;;;AAeO,MAAMA,yBAAyBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,WAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,iCAAAA;AAAAA,IAAAC,OAAAA,EAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAIrC,EAAA,MAAAM,OAAAA,GAAAC,EAAAA,KAAAC,MAAAA,GAAA,IAAA,GAAAD,EAAAA;AAOA,EAAA,MAAAE,aAAmBC,UAAAA,EAAW;AAE9B,EAAA,MAAAC,SAAAA,GAAkBC,aAAaR,aAAa,CAAA;AAC5C,EAAA,MAAAS,WAAAA,GAAoBC,eAAeV,aAAa,CAAA;AAAE,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAU,SAAAA,IAAAV,CAAAA,QAAAY,WAAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAK,OAAAA,EAAA;AAExBS,IAAAA,EAAAA,GAAAT,UACtB,CAACO,WAAW,CAAA,CAACG,MAAAA,CAAQL,SACb,CAAA,GAFcA,SAAAA;AAEbV,IAAAA,CAAAA,MAAAU,SAAAA;AAAAV,IAAAA,CAAAA,MAAAY,WAAAA;AAAAZ,IAAAA,CAAAA,MAAAK,OAAAA;AAAAL,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAFb,EAAA,MAAAgB,iBAAAA,GAA0BF,EAAAA;AAI1B,EAAA,MAAAG,iBACSC,YAAAA,CAAa;AAAA,IAAAC,YAAAA,EACJjB,YAAWkB,IAAAA,EAAM;AAAA,IAACC,UAAAA,EACpBL;AAAAA,GACZ,CAAA;AAGJ,EAAA,MAAAM,yBAAAA,GAAkCC,UAAUrB,WAAW,CAAA;AACvD,EAAA,MAAAsB,iBAAAA,GACGF,6BAAAlB,iCAAAA,IAEAa,cAAAA,CAAcQ,WAAY,CAAA,IAA1B,CAGE,CAACvB,WAAAA,IAHHE,iCAAAA;AAUgB,EAAA,MAAAsB,EAAAA,GAAA,CAACF,iBAAAA,GAADG,UAAAA,GAAApB,MAAAA;AAA2C,EAAA,IAAAqB,EAAAA;AAAA,EAAA,IAAA5B,CAAAA,QAAA0B,EAAAA,EAAA;AAHrCE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,aAAAA,EAGNH;AAAAA,KACjB;AAAC1B,IAAAA,CAAAA,MAAA0B,EAAAA;AAAA1B,IAAAA,CAAAA,MAAA4B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5B,EAAA,CAAA,CAAA;AAAA,EAAA;AALH,EAAA,MAAA;AAAA,IAAA8B,MAAAA,EAAAC,mBAAAA;AAAAA,IAAAC,UAAAA,EAAAC;AAAAA,GAAA,GACEC,uBAAuBN,EAItB,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAAC,EAAAA,GAAAA,EAAA;AAGH,IAAA,IAAIZ,iBAAAA,EAAiB;AAAA,MAAA,IAAAa,GAAAA;AAAA,MAAA,IAAArC,EAAA,CAAA,CAAA,KAAA+B,uBAAA/B,CAAAA,QAAAiC,sBAAAA,EAAA;AACZI,QAAAA,GAAAA,GAAA;AAAA,UAAAC,eAAAA,EACYP,mBAAAA;AAAAA,UAAmBQ,YAAAA,EACtBN;AAAAA,SAChB;AAACjC,QAAAA,CAAAA,MAAA+B,mBAAAA;AAAA/B,QAAAA,CAAAA,MAAAiC,sBAAAA;AAAAjC,QAAAA,CAAAA,MAAAqC,GAAAA;AAAAA,MAAA,CAAA,MAAA;AAAAA,QAAAA,GAAAA,GAAArC,EAAA,CAAA,CAAA;AAAA,MAAA;AAHDmC,MAAAA,EAAAA,GAAOE,GAAAA;AAAP,MAAA,MAAAD,GAAAA;AAAAA,IAGE;AAEJ,IAAA,MAAAI,iBAAuBrC,aAAAA,IAAAK,UAAAA;AAA4B,IAAA,IAAA6B,GAAAA;AAAA,IAAA,IAAArC,CAAAA,QAAAgB,iBAAAA,EAAA;AACdqB,MAAAA,GAAAA,GAAArB,iBAAAA,CAAiByB,GAAAA,CACpDC,KACF,CAAA;AAAC1C,MAAAA,CAAAA,MAAAgB,iBAAAA;AAAAhB,MAAAA,CAAAA,OAAAqC,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,IAAA;AAFD,IAAA,MAAA2C,4BAAAA,GAAqCN,GAAAA;AAEnC,IAAA,IAAAO,GAAAA;AAAA,IAAA,IAAA5C,EAAA,EAAA,CAAA,KAAA2C,gCAAA3C,CAAAA,SAAAwC,cAAAA,EAAA;AAIcI,MAAAA,GAAAA,GAAA;AAAA,QAAA,CACXJ,cAAc,GAAGG;AAAAA,OACpB;AAAC3C,MAAAA,CAAAA,OAAA2C,4BAAAA;AAAA3C,MAAAA,CAAAA,OAAAwC,cAAAA;AAAAxC,MAAAA,CAAAA,OAAA4C,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,IAAA;AAAA,IAAA,IAAA6C,EAAAA;AAAA,IAAA,IAAA7C,EAAA,EAAA,CAAA,KAAAgB,qBAAAhB,CAAAA,SAAA4C,GAAAA,EAAA;AAJIC,MAAAA,EAAAA,GAAA;AAAA,QAAAP,eAAAA,EACYtB,iBAAAA;AAAAA,QAAiBuB,YAAAA,EACpBK;AAAAA,OAGhB;AAAC5C,MAAAA,CAAAA,OAAAgB,iBAAAA;AAAAhB,MAAAA,CAAAA,OAAA4C,GAAAA;AAAA5C,MAAAA,CAAAA,OAAA6C,EAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,EAAAA,GAAA7C,EAAA,EAAA,CAAA;AAAA,IAAA;AALDmC,IAAAA,EAAAA,GAAOU,EAAAA;AAAAA,EAKL;AAjBJ,EAAA,MAAA;AAAA,IAAAN,YAAAA;AAAAA,IAAAD;AAAAA,GAAA,GAA0CH,EAAAA;AAyBvC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAArC,CAAAA,SAAAuC,YAAAA,EAAA;AAEwDF,IAAAA,EAAAA,GAAA;AAAA,MAAAE;AAAAA,KAE3D;AAACvC,IAAAA,CAAAA,OAAAuC,YAAAA;AAAAvC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,EAAA;AAFD,EAAA,MAAA8C,kBAAAA,GAA2BC,gCAAgCV,EAE1D,CAAA;AAAE,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAA5C,CAAAA,CAAA,EAAA,CAAA,KAAA8C,kBAAAA,IAAA9C,CAAAA,SAAAE,WAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAAsC,eAAAA,EAAA;AAGMM,IAAAA,EAAAA,GAAA1B,YAAAA,CAAa;AAAA,MAAAC,YAAAA,EACJjB,YAAWkB,IAAAA,EAAM;AAAA,MAACC,UAAAA,EACpBiB;AAAAA,KACb,CAAA,CAACG,GAAAA,CACKK,kBAAkB,CAAA,CAACE,KAClBC,UAAU,CAAA;AAACjD,IAAAA,CAAAA,OAAA8C,kBAAAA;AAAA9C,IAAAA,CAAAA,OAAAE,WAAAA;AAAAF,IAAAA,CAAAA,OAAAsC,eAAAA;AAAAtC,IAAAA,CAAAA,OAAA4C,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,EAAA;AANrB,EAAA,MAAAkD,uBAAAA,GACEN,EAAAA;AAMqD,EAAA,OAEhDM,uBAAAA;AAAuB;AAGzB,MAAMC,2BAA2BA,MAAA;AAAA,EAAA,MAAAnD,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAF,EAAAA;AAAA,EAAA,IAAAC,EAAA,CAAA,CAAA,KAAAoD,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGftD,IAAAA,EAAAA,GAAA;AAAA,MAAAG,WAAAA,EACR;AAAA,KACf;AAACF,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAFDF,EAAAA,sBAAAA,CAAuBC,EAEtB,CAAA;AAAC;AAeG,SAASmC,sBAAAA,CAAuB;AAAA,EACrCL,aAAAA;AAAAA,EACAyB;AACwB,CAAA,EAGxB;AACA,EAAA,MAAM;AAAA,IAAEC,aAAAA,EAAeC;AAAAA,GAAmB,GACxCC,aAAaC,oBAAoB,CAAA;AAEnC,EAAA,OAAOC,QAAQ,MAAM;AACnB,IAAA,MAAM7B,SAAkB,EAAA;AACxB,IAAA,MAAME,aAAuC,EAAC;AAE9C,IAAA,KAAA,MAAW,CAAC4B,QAAAA,EAAU;AAAA,MAAE9B,MAAAA,EAAQ+B;AAAAA,KAAS,CAAA,IAAKC,MAAAA,CAAOC,OAAAA,CACnDP,kBACF,CAAA,EAAG;AACD,MAAA,MAAMQ,OAAAA,GAAUC,OAAOL,QAAQ,CAAA;AAC/B,MAAA,IAAI/B,aAAAA,IAAiB,CAACA,aAAAA,CAAcqC,QAAAA,CAASF,OAAO,CAAA,EAAG;AACvD,MAAA,IAAIV,aAAAA,IAAiBA,aAAAA,CAAcY,QAAAA,CAASF,OAAO,CAAA,EAAG;AAEtDlC,MAAAA,MAAAA,CAAOqC,IAAAA,CAAK,GAAGN,OAAO,CAAA;AACtB7B,MAAAA,UAAAA,CAAWgC,OAAO,CAAA,GAAIH,OAAAA,CAAQpB,GAAAA,CAAK2B,CAAAA,KAAAA,KAAUA,MAAMC,OAAO,CAAA;AAAA,IAC5D;AAEA,IAAA,OAAO;AAAA,MAAEvC,MAAAA;AAAAA,MAAQE;AAAAA,KAAW;AAAA,EAC9B,CAAA,EAAG,CAACwB,kBAAAA,EAAoB3B,aAAAA,EAAeyB,aAAa,CAAC,CAAA;AACvD;AAEO,SAAAgB,oBAAAvE,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAA6B,EAAA,MAAA;AAAA,IAAAC,WAAAA;AAAAA,IAAAqE,WAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAzE,EAAAA;AAQnC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAuE,eAAAvE,CAAAA,QAAAwE,SAAAA,EAAA;AAC6ClE,IAAAA,EAAAA,GAAA;AAAA,MAAAiE,WAAAA;AAAAA,MAAAC;AAAAA,KAG5C;AAACxE,IAAAA,CAAAA,MAAAuE,WAAAA;AAAAvE,IAAAA,CAAAA,MAAAwE,SAAAA;AAAAxE,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAHD,EAAA,MAAA;AAAA,IAAAyE;AAAAA,GAAA,GAAwBC,oBAAoBpE,EAG3C,CAAA;AAAE,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAd,CAAAA,QAAAyE,WAAAA,EAAA;AAIc3D,IAAAA,EAAAA,GAAA2D,WAAAA,CAAWhC,IAAKkC,MAAwB,CAAA;AAAC3E,IAAAA,CAAAA,MAAAyE,WAAAA;AAAAzE,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA0B,EAAAA;AAAA,EAAA,IAAA1B,EAAA,CAAA,CAAA,KAAAc,MAAAd,CAAAA,QAAAwE,SAAAA,EAAA;AAFC9C,IAAAA,EAAAA,GAAA;AAAA,MAAAa,YAAAA,EAC3C;AAAA,QAAA,CACXiC,SAAS,GAAG1D;AAAAA;AACf,KACF;AAACd,IAAAA,CAAAA,MAAAc,EAAAA;AAAAd,IAAAA,CAAAA,MAAAwE,SAAAA;AAAAxE,IAAAA,CAAAA,MAAA0B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA1B,EAAA,CAAA,CAAA;AAAA,EAAA;AAJD,EAAA,MAAA8C,kBAAAA,GAA2BC,gCAAgCrB,EAI1D,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAA5B,CAAAA,CAAA,CAAA,CAAA,KAAA8C,kBAAAA,IAAA9C,CAAAA,QAAAyE,WAAAA,IAAAzE,CAAAA,CAAA,EAAA,CAAA,KAAAE,WAAAA,EAAA;AAIC0B,IAAAA,EAAAA,GAAAV,YAAAA,CAAa;AAAA,MAAAC,YAAAA,EACGjB,YAAWkB,IAAAA,EAAM;AAAA,MAACC,UAAAA,EACpBoD;AAAAA,KACb,CAAA,CAAChC,GAAAA,CACKK,kBAAkB,CAAA,CAACE,KAClBC,UAAU,CAAA;AAACjD,IAAAA,CAAAA,MAAA8C,kBAAAA;AAAA9C,IAAAA,CAAAA,MAAAyE,WAAAA;AAAAzE,IAAAA,CAAAA,OAAAE,WAAAA;AAAAF,IAAAA,CAAAA,OAAA4B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALnB4B,EAAAA;AAKmB;AA3BlB,SAAA+C,OAAAP,KAAAA,EAAA;AAAA,EAAA,OAgBuCA,KAAAA,CAAKC,OAAAA;AAAQ;AAxJrB,SAAA3B,MAAA3C,EAAAA,EAAA;AAqD/B,EAAA,MAAA;AAAA,IAAAsE;AAAAA,GAAA,GAAAtE,EAAAA;AAAW,EAAA,OAAKsE,OAAAA;AAAO;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
+ import { API_URL } from '../../lib/constants/index.js';
2
3
  import { LONG_STALE_TIME_FOR_REACTIVENESS } from '../../lib/constants/time.js';
3
- import { getApiURL } from '../../lib/constants/urls.js';
4
4
  import { useQuery } from '@tanstack/react-query';
5
5
  import axios from 'axios';
6
6
  import { assert } from 'ts-essentials';
@@ -35,7 +35,7 @@ function useTokenTaxFee(t0) {
35
35
  assert(chainId, "chainId is required");
36
36
  const {
37
37
  data
38
- } = await axios.get(`${getApiURL()}/delta/tokens/${chainId}/${tokenAddress}`);
38
+ } = await axios.get(`${API_URL}/delta/tokens/${chainId}/${tokenAddress}`);
39
39
  return data;
40
40
  };
41
41
  $[5] = chainId;
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenTaxFee.js","sources":["../../../src/hooks/tokens/useTokenTaxFee.ts"],"sourcesContent":["import { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { getApiURL } from \"@/lib/constants/urls\";\nimport { useQuery, type UseQueryResult } from \"@tanstack/react-query\";\nimport axios from \"axios\";\nimport { assert } from \"ts-essentials\";\n\ntype UseTokenTaxFeeInput = {\n tokenAddress?: string;\n chainId?: number;\n};\n\ntype TokenTaxFeeResponse = {\n // empty object when not a tax Token\n sellTax?: number; // used as srcTokenDexTransferFee in GET /prices\n buyTax?: number; // used as destTokenDexTransferFee in GET /prices\n // for Delta no support for tax Tokens so far\n};\n\nexport function useTokenTaxFee({\n tokenAddress,\n chainId,\n}: UseTokenTaxFeeInput): UseQueryResult<TokenTaxFeeResponse, Error> {\n return useQuery<\n TokenTaxFeeResponse,\n Error,\n TokenTaxFeeResponse,\n [\"token-tax-fee\", string?, number?]\n >({\n queryKey: [\"token-tax-fee\", tokenAddress?.toLowerCase(), chainId],\n queryFn: async () => {\n assert(tokenAddress, \"tokenAddress is required\");\n assert(chainId, \"chainId is required\");\n\n const { data } = await axios.get<TokenTaxFeeResponse>(\n `${getApiURL()}/delta/tokens/${chainId}/${tokenAddress}`\n );\n return data;\n },\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n enabled: !!tokenAddress && !!chainId,\n });\n}\n"],"names":["useTokenTaxFee","t0","$","_c","tokenAddress","chainId","t1","toLowerCase","t2","t3","assert","data","axios","get","getApiURL","t4","t5","queryKey","queryFn","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","enabled","useQuery"],"mappings":";;;;;;;AAkBO,SAAAA,eAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAwB,EAAA,MAAA;AAAA,IAAAC,YAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAGT,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,YAAAA,EAAA;AAOUE,IAAAA,EAAAA,GAAAF,cAAYG,WAAAA,EAAc;AAACL,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAG,WAAAH,CAAAA,QAAAI,EAAAA,EAAA;AAA7CE,IAAAA,EAAAA,IAAC,eAAA,EAAiBF,EAAAA,EAA6BD,OAAO,CAAA;AAACH,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,EAAA,CAAA,CAAA,KAAAG,WAAAH,CAAAA,QAAAE,YAAAA,EAAA;AACxDK,IAAAA,EAAAA,eAAA;AACPC,MAAAA,MAAAA,CAAON,cAAc,0BAA0B,CAAA;AAC/CM,MAAAA,MAAAA,CAAOL,SAAS,qBAAqB,CAAA;AAErC,MAAA,MAAA;AAAA,QAAAM;AAAAA,OAAA,GAAiB,MAAMC,KAAAA,CAAKC,GAAAA,CAC1B,CAAA,EAAGC,SAAAA,EAAW,CAAA,cAAA,EAAiBT,OAAO,CAAA,CAAA,EAAID,YAAY,CAAA,CACxD,CAAA;AAAE,MAAA,OACKO,IAAAA;AAAAA,IAAI,CAAA;AACZT,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAEQ,EAAA,MAAAa,EAAAA,GAAA,CAAC,CAACX,YAAAA,IAAF,CAAmB,CAACC,OAAAA;AAAO,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAM,EAAAA,IAAAN,CAAAA,QAAAO,EAAAA,IAAAP,CAAAA,CAAA,EAAA,CAAA,KAAAa,EAAAA,EAAA;AAZpCC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,QAAAA,EACUT,EAAAA;AAAAA,MAAuDU,OAAAA,EACxDT,EAAAA;AAAAA,MAQRU,SAAAA,EACUC,gCAAAA;AAAAA,MAAgCC,OAAAA,EAClCN;AAAAA,KACX;AAACb,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAP,IAAAA,CAAAA,OAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAlBMoB,SAKLN,EAaD,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useTokenTaxFee.js","sources":["../../../src/hooks/tokens/useTokenTaxFee.ts"],"sourcesContent":["import { API_URL } from \"@/lib/constants\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { useQuery, type UseQueryResult } from \"@tanstack/react-query\";\nimport axios from \"axios\";\nimport { assert } from \"ts-essentials\";\n\ntype UseTokenTaxFeeInput = {\n tokenAddress?: string;\n chainId?: number;\n};\n\ntype TokenTaxFeeResponse = {\n // empty object when not a tax Token\n sellTax?: number; // used as srcTokenDexTransferFee in GET /prices\n buyTax?: number; // used as destTokenDexTransferFee in GET /prices\n // for Delta no support for tax Tokens so far\n};\n\nexport function useTokenTaxFee({\n tokenAddress,\n chainId,\n}: UseTokenTaxFeeInput): UseQueryResult<TokenTaxFeeResponse, Error> {\n return useQuery<\n TokenTaxFeeResponse,\n Error,\n TokenTaxFeeResponse,\n [\"token-tax-fee\", string?, number?]\n >({\n queryKey: [\"token-tax-fee\", tokenAddress?.toLowerCase(), chainId],\n queryFn: async () => {\n assert(tokenAddress, \"tokenAddress is required\");\n assert(chainId, \"chainId is required\");\n\n const { data } = await axios.get<TokenTaxFeeResponse>(\n `${API_URL}/delta/tokens/${chainId}/${tokenAddress}`\n );\n return data;\n },\n staleTime: LONG_STALE_TIME_FOR_REACTIVENESS,\n enabled: !!tokenAddress && !!chainId,\n });\n}\n"],"names":["useTokenTaxFee","t0","$","_c","tokenAddress","chainId","t1","toLowerCase","t2","t3","assert","data","axios","get","API_URL","t4","t5","queryKey","queryFn","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","enabled","useQuery"],"mappings":";;;;;;;AAkBO,SAAAA,eAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAwB,EAAA,MAAA;AAAA,IAAAC,YAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAGT,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,YAAAA,EAAA;AAOUE,IAAAA,EAAAA,GAAAF,cAAYG,WAAAA,EAAc;AAACL,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAG,WAAAH,CAAAA,QAAAI,EAAAA,EAAA;AAA7CE,IAAAA,EAAAA,IAAC,eAAA,EAAiBF,EAAAA,EAA6BD,OAAO,CAAA;AAACH,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,EAAA,CAAA,CAAA,KAAAG,WAAAH,CAAAA,QAAAE,YAAAA,EAAA;AACxDK,IAAAA,EAAAA,eAAA;AACPC,MAAAA,MAAAA,CAAON,cAAc,0BAA0B,CAAA;AAC/CM,MAAAA,MAAAA,CAAOL,SAAS,qBAAqB,CAAA;AAErC,MAAA,MAAA;AAAA,QAAAM;AAAAA,OAAA,GAAiB,MAAMC,KAAAA,CAAKC,GAAAA,CAC1B,CAAA,EAAGC,OAAO,CAAA,cAAA,EAAiBT,OAAO,CAAA,CAAA,EAAID,YAAY,CAAA,CACpD,CAAA;AAAE,MAAA,OACKO,IAAAA;AAAAA,IAAI,CAAA;AACZT,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAEQ,EAAA,MAAAa,EAAAA,GAAA,CAAC,CAACX,YAAAA,IAAF,CAAmB,CAACC,OAAAA;AAAO,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAM,EAAAA,IAAAN,CAAAA,QAAAO,EAAAA,IAAAP,CAAAA,CAAA,EAAA,CAAA,KAAAa,EAAAA,EAAA;AAZpCC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,QAAAA,EACUT,EAAAA;AAAAA,MAAuDU,OAAAA,EACxDT,EAAAA;AAAAA,MAQRU,SAAAA,EACUC,gCAAAA;AAAAA,MAAgCC,OAAAA,EAClCN;AAAAA,KACX;AAACb,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAP,IAAAA,CAAAA,OAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAlBMoB,SAKLN,EAaD,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTxHistory.d.ts","sourceRoot":"","sources":["../../../../src/hooks/txs/queries/useTxHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAqB,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAMvD,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AA8FF,KAAK,UAAU,GAAG,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAExD,QAAA,MAAM,8BAA8B,oBAAoB,CAAC;AACzD,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,OAAO,8BAA8B;IAC3C,MAAM,EAAE,UAAU;CACnB,CAAC;AAEF,KAAK,wBAAwB,CAAC,KAAK,GAAG,mBAAmB,EAAE,IAAI,IAAI,CACjE,eAAe,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,EAC3E,UAAU,GAAG,SAAS,CACvB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,GAAG,mBAAmB,EAAE,EAAE,EAC9D,MAAM,EACN,KAAK,GACN,EAAE;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC;CACzC,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAgC/B"}
1
+ {"version":3,"file":"useTxHistory.d.ts","sourceRoot":"","sources":["../../../../src/hooks/txs/queries/useTxHistory.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAqB,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAKvD,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AA8FF,KAAK,UAAU,GAAG,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAExD,QAAA,MAAM,8BAA8B,oBAAoB,CAAC;AACzD,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,OAAO,8BAA8B;IAC3C,MAAM,EAAE,UAAU;CACnB,CAAC;AAEF,KAAK,wBAAwB,CAAC,KAAK,GAAG,mBAAmB,EAAE,IAAI,IAAI,CACjE,eAAe,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,EAC3E,UAAU,GAAG,SAAS,CACvB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,GAAG,mBAAmB,EAAE,EAAE,EAC9D,MAAM,EACN,KAAK,GACN,EAAE;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC;CACzC,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAgC/B"}
@@ -1,4 +1,5 @@
1
1
  import { d as distExports } from '../../../_virtual/index.js';
2
+ import { API_PROXY_URL } from '../../../lib/constants/index.js';
2
3
  import { assertProp } from '../../../lib/utils/index.js';
3
4
  import { useQueryClient, useQuery } from '@tanstack/react-query';
4
5
  import axios from 'axios';
@@ -7,7 +8,6 @@ import { isHash, isAddress } from 'viem';
7
8
  import { isSupportedChainId } from '../../../lib/web3/wagmi/utils.js';
8
9
  import { getLogger } from '../../../core/logger.js';
9
10
  import Big from 'big.js';
10
- import { getApiProxyURL } from '../../../lib/constants/urls.js';
11
11
 
12
12
  const logger = getLogger("SwapTxHistory");
13
13
  function formatSwapTxsData({
@@ -46,7 +46,7 @@ function formatSwapTxsData({
46
46
  }
47
47
  async function fetchSwapTxs(params, signal) {
48
48
  const metaParams = constructMetaParams(params);
49
- const url = `${getApiProxyURL()}/swap/txs?parameters=${JSON.stringify(metaParams)}`;
49
+ const url = `${API_PROXY_URL}/swap/txs?parameters=${JSON.stringify(metaParams)}`;
50
50
  const {
51
51
  data
52
52
  } = await axios.get(url, {
@@ -1 +1 @@
1
- {"version":3,"file":"useTxHistory.js","sources":["../../../../src/hooks/txs/queries/useTxHistory.ts"],"sourcesContent":["import { assertProp } from \"@/lib/utils\";\nimport {\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport axios from \"axios\";\n\nimport {\n constructMetaParams,\n type MetabaseResponse,\n} from \"@/lib/utils/metabase\";\nimport type { MarkOptional } from \"ts-essentials\";\nimport type { TransactionItemSwap } from \"@/transactions/types\";\nimport { isAddress, isHash, type Address } from \"viem\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { getLogger } from \"@/core/logger\";\nimport Big from \"big.js\";\nimport { getApiProxyURL } from \"@/lib/constants/urls\";\n\ntype SwapTxParams = {\n account: Address;\n chainId?: number;\n limit?: number;\n offset?: number;\n};\n\ntype SwapTxRow = [\n txhash: string,\n chainId: number,\n srctoken: string,\n srcamount: number,\n srcamountusd: number,\n desttoken: string,\n destamount: number,\n destamountusd: number,\n txorigin: string,\n initiator: string,\n entrytimestamp: string,\n txgasused: number, // can falsely return 0, also this is not gasUsed, this is gasLimit; better rely on gas data from GRP table if available\n txgasprice: number,\n side: string, // \"true\" = BUY, \"false\" = SELL\n];\n\ntype SwapTxsResponse = MetabaseResponse<SwapTxRow>;\n\nconst logger = getLogger(\"SwapTxHistory\");\n\nfunction formatSwapTxsData(\n { data }: SwapTxsResponse,\n { account }: SwapTxParams\n): TransactionItemSwap[] {\n const transactionItems: TransactionItemSwap[] = [];\n\n for (const row of data.rows) {\n const [\n txhash,\n chainId,\n srctoken,\n srcamount,\n srcamountusd,\n desttoken,\n destamount,\n destamountusd,\n ,\n ,\n entrytimestamp,\n txgasused,\n txgasprice,\n ,\n ] = row;\n\n if (\n !isSupportedChainId(chainId) ||\n !isHash(txhash) ||\n !isAddress(srctoken) ||\n !isAddress(desttoken)\n ) {\n logger.warn(\"Invalid swap tx data row, skipping\", row);\n continue;\n }\n\n transactionItems.push({\n account,\n transactionHash: txhash,\n chainId,\n dropped: false,\n timestamp: new Date(entrytimestamp).getTime(),\n action: \"swap\",\n transactionSpecificData: {\n action: \"swap\",\n source: \"metabase\",\n srcTokenAddress: srctoken,\n srcAmount: Big(srcamount).toFixed(),\n srcAmountUSD: Big(srcamountusd).toFixed(),\n destTokenAddress: desttoken,\n destAmount: Big(destamount).toFixed(),\n destAmountUSD: Big(destamountusd).toFixed(),\n gasCost: Big(txgasused).mul(txgasprice).toFixed(),\n },\n });\n }\n\n return transactionItems;\n}\n\nasync function fetchSwapTxs(\n params: SwapTxParams,\n signal?: AbortSignal\n): Promise<TransactionItemSwap[]> {\n const metaParams = constructMetaParams(params);\n\n const url = `${getApiProxyURL()}/swap/txs?parameters=${JSON.stringify(metaParams)}`;\n\n const { data } = await axios.get<SwapTxsResponse>(url, { signal });\n\n return formatSwapTxsData(data, params);\n}\n\ntype SwapParams = MarkOptional<SwapTxParams, \"account\">;\n\nconst SWAP_TX_HISTORY_QUERY_KEY_BASE = \"swap/tx-history\";\ntype SwapTxHistoryQueryKey = [\n base: typeof SWAP_TX_HISTORY_QUERY_KEY_BASE,\n params: SwapParams,\n];\n\ntype SwapTxHistoryQueryParams<TData = TransactionItemSwap[]> = Omit<\n UseQueryOptions<TransactionItemSwap[], Error, TData, SwapTxHistoryQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\n\nexport function useSwapTxHistory<TData = TransactionItemSwap[]>({\n params,\n query,\n}: {\n params: SwapParams;\n query?: SwapTxHistoryQueryParams<TData>;\n}): UseQueryResult<TData, Error> {\n const queryClient = useQueryClient();\n\n return useQuery<TransactionItemSwap[], Error, TData, SwapTxHistoryQueryKey>({\n queryKey: [SWAP_TX_HISTORY_QUERY_KEY_BASE, params],\n queryFn: ({ signal }) => {\n assertProp(params, \"account\");\n if (params.chainId) {\n // don't bother with picking past data for different limit & offset, it's too hard to get right data slice given different chainIds\n const { chainId, ...queryParamsWithoutChainId } = params;\n const queryKeyWithoutChainId: SwapTxHistoryQueryKey = [\n SWAP_TX_HISTORY_QUERY_KEY_BASE,\n queryParamsWithoutChainId,\n ];\n\n const query = queryClient.getQueryCache().find<TransactionItemSwap[]>({\n queryKey: queryKeyWithoutChainId,\n stale: false, // get only non-stale data\n });\n\n const dataForAllChains = query?.state.data;\n\n if (dataForAllChains) {\n return dataForAllChains.filter((tx) => tx.chainId === chainId);\n }\n }\n\n return fetchSwapTxs(params, signal);\n },\n ...query,\n enabled: !!params.account && (query?.enabled ?? true),\n });\n}\n"],"names":["logger","getLogger","formatSwapTxsData","data","account","transactionItems","row","rows","txhash","chainId","srctoken","srcamount","srcamountusd","desttoken","destamount","destamountusd","entrytimestamp","txgasused","txgasprice","isSupportedChainId","isHash","isAddress","warn","push","transactionHash","dropped","timestamp","Date","getTime","action","transactionSpecificData","source","srcTokenAddress","srcAmount","Big","toFixed","srcAmountUSD","destTokenAddress","destAmount","destAmountUSD","gasCost","mul","fetchSwapTxs","params","signal","metaParams","constructMetaParams","url","getApiProxyURL","JSON","stringify","axios","get","SWAP_TX_HISTORY_QUERY_KEY_BASE","useSwapTxHistory","t0","$","_c","query","queryClient","useQueryClient","t1","t2","t3","assertProp","queryParamsWithoutChainId","queryKeyWithoutChainId","query_0","getQueryCache","find","queryKey","stale","dataForAllChains","state","filter","tx","enabled","t4","queryFn","useQuery"],"mappings":"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"}
1
+ {"version":3,"file":"useTxHistory.js","sources":["../../../../src/hooks/txs/queries/useTxHistory.ts"],"sourcesContent":["import { API_PROXY_URL } from \"@/lib/constants\";\nimport { assertProp } from \"@/lib/utils\";\nimport {\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport axios from \"axios\";\n\nimport {\n constructMetaParams,\n type MetabaseResponse,\n} from \"@/lib/utils/metabase\";\nimport type { MarkOptional } from \"ts-essentials\";\nimport type { TransactionItemSwap } from \"@/transactions/types\";\nimport { isAddress, isHash, type Address } from \"viem\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { getLogger } from \"@/core/logger\";\nimport Big from \"big.js\";\n\ntype SwapTxParams = {\n account: Address;\n chainId?: number;\n limit?: number;\n offset?: number;\n};\n\ntype SwapTxRow = [\n txhash: string,\n chainId: number,\n srctoken: string,\n srcamount: number,\n srcamountusd: number,\n desttoken: string,\n destamount: number,\n destamountusd: number,\n txorigin: string,\n initiator: string,\n entrytimestamp: string,\n txgasused: number, // can falsely return 0, also this is not gasUsed, this is gasLimit; better rely on gas data from GRP table if available\n txgasprice: number,\n side: string, // \"true\" = BUY, \"false\" = SELL\n];\n\ntype SwapTxsResponse = MetabaseResponse<SwapTxRow>;\n\nconst logger = getLogger(\"SwapTxHistory\");\n\nfunction formatSwapTxsData(\n { data }: SwapTxsResponse,\n { account }: SwapTxParams\n): TransactionItemSwap[] {\n const transactionItems: TransactionItemSwap[] = [];\n\n for (const row of data.rows) {\n const [\n txhash,\n chainId,\n srctoken,\n srcamount,\n srcamountusd,\n desttoken,\n destamount,\n destamountusd,\n ,\n ,\n entrytimestamp,\n txgasused,\n txgasprice,\n ,\n ] = row;\n\n if (\n !isSupportedChainId(chainId) ||\n !isHash(txhash) ||\n !isAddress(srctoken) ||\n !isAddress(desttoken)\n ) {\n logger.warn(\"Invalid swap tx data row, skipping\", row);\n continue;\n }\n\n transactionItems.push({\n account,\n transactionHash: txhash,\n chainId,\n dropped: false,\n timestamp: new Date(entrytimestamp).getTime(),\n action: \"swap\",\n transactionSpecificData: {\n action: \"swap\",\n source: \"metabase\",\n srcTokenAddress: srctoken,\n srcAmount: Big(srcamount).toFixed(),\n srcAmountUSD: Big(srcamountusd).toFixed(),\n destTokenAddress: desttoken,\n destAmount: Big(destamount).toFixed(),\n destAmountUSD: Big(destamountusd).toFixed(),\n gasCost: Big(txgasused).mul(txgasprice).toFixed(),\n },\n });\n }\n\n return transactionItems;\n}\n\nasync function fetchSwapTxs(\n params: SwapTxParams,\n signal?: AbortSignal\n): Promise<TransactionItemSwap[]> {\n const metaParams = constructMetaParams(params);\n\n const url = `${API_PROXY_URL}/swap/txs?parameters=${JSON.stringify(metaParams)}`;\n\n const { data } = await axios.get<SwapTxsResponse>(url, { signal });\n\n return formatSwapTxsData(data, params);\n}\n\ntype SwapParams = MarkOptional<SwapTxParams, \"account\">;\n\nconst SWAP_TX_HISTORY_QUERY_KEY_BASE = \"swap/tx-history\";\ntype SwapTxHistoryQueryKey = [\n base: typeof SWAP_TX_HISTORY_QUERY_KEY_BASE,\n params: SwapParams,\n];\n\ntype SwapTxHistoryQueryParams<TData = TransactionItemSwap[]> = Omit<\n UseQueryOptions<TransactionItemSwap[], Error, TData, SwapTxHistoryQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\n\nexport function useSwapTxHistory<TData = TransactionItemSwap[]>({\n params,\n query,\n}: {\n params: SwapParams;\n query?: SwapTxHistoryQueryParams<TData>;\n}): UseQueryResult<TData, Error> {\n const queryClient = useQueryClient();\n\n return useQuery<TransactionItemSwap[], Error, TData, SwapTxHistoryQueryKey>({\n queryKey: [SWAP_TX_HISTORY_QUERY_KEY_BASE, params],\n queryFn: ({ signal }) => {\n assertProp(params, \"account\");\n if (params.chainId) {\n // don't bother with picking past data for different limit & offset, it's too hard to get right data slice given different chainIds\n const { chainId, ...queryParamsWithoutChainId } = params;\n const queryKeyWithoutChainId: SwapTxHistoryQueryKey = [\n SWAP_TX_HISTORY_QUERY_KEY_BASE,\n queryParamsWithoutChainId,\n ];\n\n const query = queryClient.getQueryCache().find<TransactionItemSwap[]>({\n queryKey: queryKeyWithoutChainId,\n stale: false, // get only non-stale data\n });\n\n const dataForAllChains = query?.state.data;\n\n if (dataForAllChains) {\n return dataForAllChains.filter((tx) => tx.chainId === chainId);\n }\n }\n\n return fetchSwapTxs(params, signal);\n },\n ...query,\n enabled: !!params.account && (query?.enabled ?? true),\n });\n}\n"],"names":["logger","getLogger","formatSwapTxsData","data","account","transactionItems","row","rows","txhash","chainId","srctoken","srcamount","srcamountusd","desttoken","destamount","destamountusd","entrytimestamp","txgasused","txgasprice","isSupportedChainId","isHash","isAddress","warn","push","transactionHash","dropped","timestamp","Date","getTime","action","transactionSpecificData","source","srcTokenAddress","srcAmount","Big","toFixed","srcAmountUSD","destTokenAddress","destAmount","destAmountUSD","gasCost","mul","fetchSwapTxs","params","signal","metaParams","constructMetaParams","url","API_PROXY_URL","JSON","stringify","axios","get","SWAP_TX_HISTORY_QUERY_KEY_BASE","useSwapTxHistory","t0","$","_c","query","queryClient","useQueryClient","t1","t2","t3","assertProp","queryParamsWithoutChainId","queryKeyWithoutChainId","query_0","getQueryCache","find","queryKey","stale","dataForAllChains","state","filter","tx","enabled","t4","queryFn","useQuery"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { d as distExports } from '../_virtual/index.js';
2
2
  import { eip1559EnabledAtom } from '../components/widget/TradeParameters/state/eip1559ParamAtom.js';
3
- import { useAtomValue } from 'jotai';
3
+ import { useAtomValue } from '../core/store.js';
4
4
  import { useChainId } from 'wagmi';
5
5
  import { gasPricesConfig } from './gas/config.js';
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"useEIP1559Enabled.js","sources":["../../src/hooks/useEIP1559Enabled.ts"],"sourcesContent":["import { eip1559EnabledAtom } from \"@/components/widget/TradeParameters/state/eip1559ParamAtom\";\nimport { useAtomValue } from \"jotai\";\nimport { useChainId } from \"wagmi\";\nimport { gasPricesConfig } from \"./gas/config\";\n\nexport function useEIP1559Enabled() {\n const chainId = useChainId();\n const eip1559EnabledInSettings = useAtomValue(eip1559EnabledAtom);\n const eip1559EnabledOnApi = gasPricesConfig[chainId].eip1559;\n return {\n enabled: eip1559EnabledInSettings && eip1559EnabledOnApi,\n eip1559EnabledInSettings,\n eip1559EnabledOnApi,\n };\n}\n"],"names":["useEIP1559Enabled","$","_c","chainId","useChainId","eip1559EnabledInSettings","useAtomValue","eip1559EnabledAtom","eip1559EnabledOnApi","gasPricesConfig","eip1559","t0","t1","enabled"],"mappings":";;;;;;AAKO,SAAAA,iBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAAC,wBAAAA,GAAiCC,aAAaC,kBAAkB,CAAA;AAChE,EAAA,MAAAC,mBAAAA,GAA4BC,eAAAA,CAAgBN,OAAO,CAAA,CAACO,OAAAA;AAEzC,EAAA,MAAAC,KAAAN,wBAAAA,IAAAG,mBAAAA;AAA+C,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAI,wBAAAA,IAAAJ,CAAAA,QAAAO,mBAAAA,IAAAP,CAAAA,CAAA,CAAA,CAAA,KAAAU,EAAAA,EAAA;AADnDC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,OAAAA,EACIF,EAAAA;AAAAA,MAA+CN,wBAAAA;AAAAA,MAAAG;AAAAA,KAG1D;AAACP,IAAAA,CAAAA,MAAAI,wBAAAA;AAAAJ,IAAAA,CAAAA,MAAAO,mBAAAA;AAAAP,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAJMW,EAAAA;AAIN;;;;"}
1
+ {"version":3,"file":"useEIP1559Enabled.js","sources":["../../src/hooks/useEIP1559Enabled.ts"],"sourcesContent":["import { eip1559EnabledAtom } from \"@/components/widget/TradeParameters/state/eip1559ParamAtom\";\nimport { useAtomValue } from \"@/core/store\";\nimport { useChainId } from \"wagmi\";\nimport { gasPricesConfig } from \"./gas/config\";\n\nexport function useEIP1559Enabled() {\n const chainId = useChainId();\n const eip1559EnabledInSettings = useAtomValue(eip1559EnabledAtom);\n const eip1559EnabledOnApi = gasPricesConfig[chainId].eip1559;\n return {\n enabled: eip1559EnabledInSettings && eip1559EnabledOnApi,\n eip1559EnabledInSettings,\n eip1559EnabledOnApi,\n };\n}\n"],"names":["useEIP1559Enabled","$","_c","chainId","useChainId","eip1559EnabledInSettings","useAtomValue","eip1559EnabledAtom","eip1559EnabledOnApi","gasPricesConfig","eip1559","t0","t1","enabled"],"mappings":";;;;;;AAKO,SAAAA,iBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAAC,wBAAAA,GAAiCC,aAAaC,kBAAkB,CAAA;AAChE,EAAA,MAAAC,mBAAAA,GAA4BC,eAAAA,CAAgBN,OAAO,CAAA,CAACO,OAAAA;AAEzC,EAAA,MAAAC,KAAAN,wBAAAA,IAAAG,mBAAAA;AAA+C,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAI,wBAAAA,IAAAJ,CAAAA,QAAAO,mBAAAA,IAAAP,CAAAA,CAAA,CAAA,CAAA,KAAAU,EAAAA,EAAA;AADnDC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,OAAAA,EACIF,EAAAA;AAAAA,MAA+CN,wBAAAA;AAAAA,MAAAG;AAAAA,KAG1D;AAACP,IAAAA,CAAAA,MAAAI,wBAAAA;AAAAJ,IAAAA,CAAAA,MAAAO,mBAAAA;AAAAP,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAJMW,EAAAA;AAIN;;;;"}
@@ -3,7 +3,7 @@ import { swapModeAtom } from '../components/widget/SwapModeSwitcher/state/swapMo
3
3
  import { deltaParamAtom } from '../components/widget/TradeParameters/state/deltaParamAtom.js';
4
4
  import { deltaEnabledOnAPI } from '../lib/constants/delta.js';
5
5
  import { useWidgetConfig } from '../core/state/configAtom.js';
6
- import { useAtomValue } from 'jotai';
6
+ import { useAtomValue } from '../core/store.js';
7
7
  import { useChainId } from 'wagmi';
8
8
 
9
9
  const useGlobalDeltaEnabled = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useGlobalDeltaEnabled.js","sources":["../../src/hooks/useGlobalDeltaEnabled.ts"],"sourcesContent":["import { swapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeAtom\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { useWidgetConfig } from \"@/core/state/configAtom\";\nimport { useAtomValue } from \"jotai\";\nimport { useChainId } from \"wagmi\";\n\nexport const useGlobalDeltaEnabled = () => {\n const chainId = useChainId();\n const widgetConfig = useWidgetConfig();\n const deltaParam = useAtomValue(deltaParamAtom);\n const swapMode = useAtomValue(swapModeAtom);\n\n const enabledInConfig = widgetConfig.enableDelta;\n const enabledInSettings = deltaParam;\n const enabledOnCurrentChain = deltaEnabledOnAPI[chainId];\n const enabledGlobally =\n enabledInConfig && enabledInSettings && enabledOnCurrentChain;\n\n return {\n enabledGlobally,\n enabledInConfig,\n enabledInSettings,\n enabledOnCurrentChain,\n isDeltaMode: swapMode === \"delta\",\n };\n};\n"],"names":["useGlobalDeltaEnabled","$","_c","chainId","useChainId","widgetConfig","useWidgetConfig","deltaParam","useAtomValue","deltaParamAtom","swapMode","swapModeAtom","enabledInConfig","enableDelta","enabledInSettings","enabledOnCurrentChain","deltaEnabledOnAPI","enabledGlobally","t0","t1","isDeltaMode"],"mappings":";;;;;;;;AAOO,MAAMA,wBAAwBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACnC,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAAC,eAAqBC,eAAAA,EAAgB;AACrC,EAAA,MAAAC,UAAAA,GAAmBC,aAAaC,cAAc,CAAA;AAC9C,EAAA,MAAAC,QAAAA,GAAiBF,aAAaG,YAAY,CAAA;AAE1C,EAAA,MAAAC,kBAAwBP,YAAAA,CAAYQ,WAAAA;AACpC,EAAA,MAAAC,iBAAAA,GAA0BP,UAAAA;AAC1B,EAAA,MAAAQ,qBAAAA,GAA8BC,kBAAkBb,OAAO,CAAA;AACvD,EAAA,MAAAc,eAAAA,GACEL,mBAAAE,iBAAAA,IAAAC,qBAAAA;AAOa,EAAA,MAAAG,KAAAR,QAAAA,KAAa,OAAA;AAAO,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAlB,EAAA,CAAA,CAAA,KAAAgB,mBAAAhB,CAAAA,CAAA,CAAA,MAAAW,eAAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAa,iBAAAA,IAAAb,EAAA,CAAA,CAAA,KAAAc,yBAAAd,CAAAA,QAAAiB,EAAAA,EAAA;AAL5BC,IAAAA,EAAAA,GAAA;AAAA,MAAAF,eAAAA;AAAAA,MAAAL,eAAAA;AAAAA,MAAAE,iBAAAA;AAAAA,MAAAC,qBAAAA;AAAAA,MAAAK,WAAAA,EAKQF;AAAAA,KACf;AAACjB,IAAAA,CAAAA,MAAAgB,eAAAA;AAAAhB,IAAAA,CAAAA,MAAAW,eAAAA;AAAAX,IAAAA,CAAAA,MAAAa,iBAAAA;AAAAb,IAAAA,CAAAA,MAAAc,qBAAAA;AAAAd,IAAAA,CAAAA,MAAAiB,EAAAA;AAAAjB,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANMkB,EAAAA;AAMN;;;;"}
1
+ {"version":3,"file":"useGlobalDeltaEnabled.js","sources":["../../src/hooks/useGlobalDeltaEnabled.ts"],"sourcesContent":["import { swapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeAtom\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { useWidgetConfig } from \"@/core/state/configAtom\";\nimport { useAtomValue } from \"@/core/store\";\nimport { useChainId } from \"wagmi\";\n\nexport const useGlobalDeltaEnabled = () => {\n const chainId = useChainId();\n const widgetConfig = useWidgetConfig();\n const deltaParam = useAtomValue(deltaParamAtom);\n const swapMode = useAtomValue(swapModeAtom);\n\n const enabledInConfig = widgetConfig.enableDelta;\n const enabledInSettings = deltaParam;\n const enabledOnCurrentChain = deltaEnabledOnAPI[chainId];\n const enabledGlobally =\n enabledInConfig && enabledInSettings && enabledOnCurrentChain;\n\n return {\n enabledGlobally,\n enabledInConfig,\n enabledInSettings,\n enabledOnCurrentChain,\n isDeltaMode: swapMode === \"delta\",\n };\n};\n"],"names":["useGlobalDeltaEnabled","$","_c","chainId","useChainId","widgetConfig","useWidgetConfig","deltaParam","useAtomValue","deltaParamAtom","swapMode","swapModeAtom","enabledInConfig","enableDelta","enabledInSettings","enabledOnCurrentChain","deltaEnabledOnAPI","enabledGlobally","t0","t1","isDeltaMode"],"mappings":";;;;;;;;AAOO,MAAMA,wBAAwBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACnC,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAAC,eAAqBC,eAAAA,EAAgB;AACrC,EAAA,MAAAC,UAAAA,GAAmBC,aAAaC,cAAc,CAAA;AAC9C,EAAA,MAAAC,QAAAA,GAAiBF,aAAaG,YAAY,CAAA;AAE1C,EAAA,MAAAC,kBAAwBP,YAAAA,CAAYQ,WAAAA;AACpC,EAAA,MAAAC,iBAAAA,GAA0BP,UAAAA;AAC1B,EAAA,MAAAQ,qBAAAA,GAA8BC,kBAAkBb,OAAO,CAAA;AACvD,EAAA,MAAAc,eAAAA,GACEL,mBAAAE,iBAAAA,IAAAC,qBAAAA;AAOa,EAAA,MAAAG,KAAAR,QAAAA,KAAa,OAAA;AAAO,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAlB,EAAA,CAAA,CAAA,KAAAgB,mBAAAhB,CAAAA,CAAA,CAAA,MAAAW,eAAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAa,iBAAAA,IAAAb,EAAA,CAAA,CAAA,KAAAc,yBAAAd,CAAAA,QAAAiB,EAAAA,EAAA;AAL5BC,IAAAA,EAAAA,GAAA;AAAA,MAAAF,eAAAA;AAAAA,MAAAL,eAAAA;AAAAA,MAAAE,iBAAAA;AAAAA,MAAAC,qBAAAA;AAAAA,MAAAK,WAAAA,EAKQF;AAAAA,KACf;AAACjB,IAAAA,CAAAA,MAAAgB,eAAAA;AAAAhB,IAAAA,CAAAA,MAAAW,eAAAA;AAAAX,IAAAA,CAAAA,MAAAa,iBAAAA;AAAAb,IAAAA,CAAAA,MAAAc,qBAAAA;AAAAd,IAAAA,CAAAA,MAAAiB,EAAAA;AAAAjB,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANMkB,EAAAA;AAMN;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"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"}
@@ -2,18 +2,18 @@ import axios from 'axios';
2
2
  import { useMemo } from 'react';
3
3
  import { constructAxiosFetcher, constructPartialSDK, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructPostDeltaOrder, constructGetBridgeInfo, constructIsTokenSupportedInDelta, constructViemContractCaller, constructCancelDeltaOrder, constructSignDeltaOrder, constructGetRate, constructGetSpender, constructBuildTx, constructFillOrderDirectly, constructPreSignDeltaOrder, constructGetLimitOrders, constructBuildLimitOrder, constructPostLimitOrder, constructAllLimitOrdersHandlers, constructFetchFetcher } from '@velora-dex/sdk';
4
4
  import { encodeFunctionData } from 'viem';
5
+ import { API_URL } from '../lib/constants/index.js';
5
6
  import { useLogger } from '../core/logger.js';
6
- import { getApiURL } from '../lib/constants/urls.js';
7
7
 
8
8
  const fetcher = constructAxiosFetcher(axios);
9
9
  function useMarketSwapSDK({
10
10
  chainId,
11
- apiURL
11
+ apiURL = API_URL
12
12
  }) {
13
13
  "use no memo";
14
14
  const sdk = useMemo(() => {
15
15
  const SDKconfig = {
16
- apiURL: apiURL ?? getApiURL(),
16
+ apiURL,
17
17
  chainId,
18
18
  fetcher
19
19
  };
@@ -28,7 +28,7 @@ function useMarketSwapSDK({
28
28
  }
29
29
  function useLimitOrdersSDK({
30
30
  chainId,
31
- apiURL,
31
+ apiURL = API_URL,
32
32
  account,
33
33
  client
34
34
  }) {
@@ -37,7 +37,7 @@ function useLimitOrdersSDK({
37
37
  const sdk = useMemo(() => {
38
38
  logger.log("init sdk");
39
39
  const SDKconfig = {
40
- apiURL: apiURL ?? getApiURL(),
40
+ apiURL,
41
41
  chainId,
42
42
  fetcher
43
43
  };
@@ -82,7 +82,7 @@ const constructCalldataContractCaller = () => {
82
82
  };
83
83
  const useFetchOnlySDK = ({
84
84
  chainId,
85
- apiURL
85
+ apiURL = API_URL
86
86
  }) => {
87
87
  "use no memo";
88
88
  const sdk = useMemo(() => {
@@ -98,7 +98,7 @@ const useFetchOnlySDK = ({
98
98
  });
99
99
  };
100
100
  return constructPartialSDK({
101
- apiURL: apiURL ?? getApiURL(),
101
+ apiURL,
102
102
  chainId,
103
103
  fetcher: fetcher2
104
104
  }, constructPostDeltaOrder);
@@ -112,7 +112,7 @@ const useFetchOnlySDK = ({
112
112
  };
113
113
  const useCalldataSDK = ({
114
114
  chainId,
115
- apiURL,
115
+ apiURL = API_URL,
116
116
  client
117
117
  }) => {
118
118
  "use no memo";
@@ -122,7 +122,7 @@ const useCalldataSDK = ({
122
122
  logger.log("init sdk");
123
123
  const contractCaller = constructCalldataContractCaller();
124
124
  const SDKconfig = {
125
- apiURL: apiURL ?? getApiURL(),
125
+ apiURL,
126
126
  chainId,
127
127
  fetcher,
128
128
  contractCaller
@@ -138,7 +138,7 @@ const useCalldataSDK = ({
138
138
  };
139
139
  function useDeltaSDK({
140
140
  chainId,
141
- apiURL,
141
+ apiURL = API_URL,
142
142
  account,
143
143
  client
144
144
  }) {
@@ -147,7 +147,7 @@ function useDeltaSDK({
147
147
  const sdk = useMemo(() => {
148
148
  logger.log("init sdk");
149
149
  const SDKconfig = {
150
- apiURL: apiURL ?? getApiURL(),
150
+ apiURL,
151
151
  chainId,
152
152
  fetcher
153
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder,\n constructFillOrderDirectly,\n type GetLimitOrdersFunctions,\n type BuildLimitOrderFunctions,\n type PostLimitOrderFunctions,\n type FillOrderDirectlyFunctions,\n type ContractCallerFunctions,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { useLogger } from \"@/core/logger\";\nimport { getApiURL } from \"@/lib/constants/urls\";\n\nconst fetcher = constructAxiosFetcher(axios);\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyLimitOrdersSDK = Prettify<\n GetLimitOrdersFunctions & BuildLimitOrderFunctions & PostLimitOrderFunctions\n>;\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyLimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n> {\n \"use no memo\";\n\n const logger = useLogger(\"LimitOrdersSDK\");\n\n const sdk = useMemo(() => {\n logger.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllLimitOrdersHandlers\n );\n }, [client, account, apiURL, chainId, logger]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n if (typeof window === \"undefined\") return;\n const _fetcher = constructFetchFetcher(window.fetch);\n const fetcher: typeof _fetcher = (params) => {\n return _fetcher({\n ...params,\n requestParams: {\n ...params.requestParams,\n keepalive: true,\n },\n });\n };\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials always\n // which is incompatible with API CORS settings\n return constructPartialSDK(\n {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL,\n client,\n}: Omit<LimitOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOrderDirectlyFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const logger = useLogger(\"CalldataSDK\");\n\n const sdk = useMemo(() => {\n if (!client) return;\n logger.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOrderDirectly,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder\n );\n }, [client, logger, apiURL, chainId]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK & SignDeltaOrderFunctions & CancelDeltaOrderFunctions\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n // react-compiler fails here and sdk is created anew\n\n const logger = useLogger(\"DeltaSDK\");\n\n const sdk = useMemo(() => {\n logger.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder\n );\n }, [logger, apiURL, chainId, client, account]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["fetcher","constructAxiosFetcher","axios","useMarketSwapSDK","chainId","apiURL","sdk","useMemo","SDKconfig","getApiURL","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","appVersion","version","useLimitOrdersSDK","account","client","logger","useLogger","log","constructGetLimitOrders","constructBuildLimitOrder","constructPostLimitOrder","contractCaller","constructViemContractCaller","constructAllLimitOrdersHandlers","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","encodeFunctionData","staticCall","Error","signTypedDataCall","useFetchOnlySDK","window","_fetcher","constructFetchFetcher","fetch","requestParams","keepalive","constructPostDeltaOrder","useCalldataSDK","constructFillOrderDirectly","constructPreSignDeltaOrder","constructBuildDeltaOrder","useDeltaSDK","constructGetDeltaOrders","constructGetDeltaPrice","constructGetBridgeInfo","constructIsTokenSupportedInDelta","constructCancelDeltaOrder","constructSignDeltaOrder"],"mappings":"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"}
1
+ {"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder,\n constructFillOrderDirectly,\n type GetLimitOrdersFunctions,\n type BuildLimitOrderFunctions,\n type PostLimitOrderFunctions,\n type FillOrderDirectlyFunctions,\n type ContractCallerFunctions,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { API_URL } from \"@/lib/constants\";\nimport { useLogger } from \"@/core/logger\";\n\nconst fetcher = constructAxiosFetcher(axios);\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL = API_URL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyLimitOrdersSDK = Prettify<\n GetLimitOrdersFunctions & BuildLimitOrderFunctions & PostLimitOrderFunctions\n>;\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyLimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL = API_URL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n> {\n \"use no memo\";\n\n const logger = useLogger(\"LimitOrdersSDK\");\n\n const sdk = useMemo(() => {\n logger.log(\"init sdk\");\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllLimitOrdersHandlers\n );\n }, [client, account, apiURL, chainId, logger]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL = API_URL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n if (typeof window === \"undefined\") return;\n const _fetcher = constructFetchFetcher(window.fetch);\n const fetcher: typeof _fetcher = (params) => {\n return _fetcher({\n ...params,\n requestParams: {\n ...params.requestParams,\n keepalive: true,\n },\n });\n };\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials always\n // which is incompatible with API CORS settings\n return constructPartialSDK(\n { apiURL, chainId, fetcher },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL = API_URL,\n client,\n}: Omit<LimitOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOrderDirectlyFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const logger = useLogger(\"CalldataSDK\");\n\n const sdk = useMemo(() => {\n if (!client) return;\n logger.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOrderDirectly,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder\n );\n }, [client, logger, apiURL, chainId]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK & SignDeltaOrderFunctions & CancelDeltaOrderFunctions\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL = API_URL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n // react-compiler fails here and sdk is created anew\n\n const logger = useLogger(\"DeltaSDK\");\n\n const sdk = useMemo(() => {\n logger.log(\"init sdk\");\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder\n );\n }, [logger, apiURL, chainId, client, account]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["fetcher","constructAxiosFetcher","axios","useMarketSwapSDK","chainId","apiURL","API_URL","sdk","useMemo","SDKconfig","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","appVersion","version","useLimitOrdersSDK","account","client","logger","useLogger","log","constructGetLimitOrders","constructBuildLimitOrder","constructPostLimitOrder","contractCaller","constructViemContractCaller","constructAllLimitOrdersHandlers","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","encodeFunctionData","staticCall","Error","signTypedDataCall","useFetchOnlySDK","window","_fetcher","constructFetchFetcher","fetch","requestParams","keepalive","constructPostDeltaOrder","useCalldataSDK","constructFillOrderDirectly","constructPreSignDeltaOrder","constructBuildDeltaOrder","useDeltaSDK","constructGetDeltaOrders","constructGetDeltaPrice","constructGetBridgeInfo","constructIsTokenSupportedInDelta","constructCancelDeltaOrder","constructSignDeltaOrder"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { stablecoinDefaultSlippage } from '../components/widget/TradeParameters/
3
3
  import { slippageParamAtom } from '../components/widget/TradeParameters/state/slippageParamAtom.js';
4
4
  import { useIsAddressStablecoin } from '../tokens/stabeCoins/hooks.js';
5
5
  import { useWidgetTokens } from '../core/inputs/state/common.js';
6
- import { useAtomValue } from 'jotai';
6
+ import { useAtomValue } from '../core/store.js';
7
7
  import { useChainId } from 'wagmi';
8
8
 
9
9
  const useSlippage = (tradeMode) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useSlippage.js","sources":["../../src/hooks/useSlippage.ts"],"sourcesContent":["import { stablecoinDefaultSlippage } from \"@/components/widget/TradeParameters/state/constants\";\nimport { slippageParamAtom } from \"@/components/widget/TradeParameters/state/slippageParamAtom\";\nimport { useIsAddressStablecoin } from \"@/tokens/stabeCoins/hooks\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { useAtomValue } from \"jotai\";\nimport { useChainId } from \"wagmi\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\n\nexport const useSlippage = (tradeMode: TradeMode) => {\n const slippageFromParams = useAtomValue(slippageParamAtom);\n const chainId = useChainId();\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const tokensAreStablecoins = useIsAddressStablecoin(\n // overhead of this is minimal, don't memoize\n [tokenFrom?.address, tokenTo?.address], // undefined will result in false\n chainId\n );\n\n const resolvedSlippage = tokensAreStablecoins\n ? stablecoinDefaultSlippage // override slippage for stablecoins\n : slippageFromParams; // otherwise use user-defined slippage\n\n return { resolvedSlippage, slippageFromParams };\n};\n"],"names":["useSlippage","tradeMode","$","_c","slippageFromParams","useAtomValue","slippageParamAtom","chainId","useChainId","tokenFrom","tokenTo","useWidgetTokens","t0","address","t1","t2","tokensAreStablecoins","useIsAddressStablecoin","resolvedSlippage","stablecoinDefaultSlippage","t3"],"mappings":";;;;;;;;AAQO,MAAMA,cAAcC,CAAAA,SAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACzB,EAAA,MAAAC,kBAAAA,GAA2BC,aAAaC,iBAAiB,CAAA;AACzD,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAA;AAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+BC,gBAAgBV,SAAS,CAAA;AAIrD,EAAA,MAAAW,KAAAH,SAAAA,EAASI,OAAAA;AAAW,EAAA,MAAAC,KAAAJ,OAAAA,EAAOG,OAAAA;AAAS,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAU,MAAAV,CAAAA,QAAAY,EAAAA,EAAA;AAArCC,IAAAA,EAAAA,GAAA,CAACH,IAAoBE,EAAgB,CAAA;AAACZ,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAFxC,EAAA,MAAAc,oBAAAA,GAA6BC,sBAAAA,CAE3BF,EAAAA,EACAR,OACF,CAAA;AAEA,EAAA,MAAAW,gBAAAA,GAAyBF,uBAAAG,yBAAAA,GAAAf,kBAAAA;AAEF,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAlB,EAAA,CAAA,CAAA,KAAAgB,oBAAAhB,CAAAA,QAAAE,kBAAAA,EAAA;AAEhBgB,IAAAA,EAAAA,GAAA;AAAA,MAAAF,gBAAAA;AAAAA,MAAAd;AAAAA,KAAuC;AAACF,IAAAA,CAAAA,MAAAgB,gBAAAA;AAAAhB,IAAAA,CAAAA,MAAAE,kBAAAA;AAAAF,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAxCkB,EAAAA;AAAwC;;;;"}
1
+ {"version":3,"file":"useSlippage.js","sources":["../../src/hooks/useSlippage.ts"],"sourcesContent":["import { stablecoinDefaultSlippage } from \"@/components/widget/TradeParameters/state/constants\";\nimport { slippageParamAtom } from \"@/components/widget/TradeParameters/state/slippageParamAtom\";\nimport { useIsAddressStablecoin } from \"@/tokens/stabeCoins/hooks\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { useAtomValue } from \"@/core/store\";\nimport { useChainId } from \"wagmi\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\n\nexport const useSlippage = (tradeMode: TradeMode) => {\n const slippageFromParams = useAtomValue(slippageParamAtom);\n const chainId = useChainId();\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const tokensAreStablecoins = useIsAddressStablecoin(\n // overhead of this is minimal, don't memoize\n [tokenFrom?.address, tokenTo?.address], // undefined will result in false\n chainId\n );\n\n const resolvedSlippage = tokensAreStablecoins\n ? stablecoinDefaultSlippage // override slippage for stablecoins\n : slippageFromParams; // otherwise use user-defined slippage\n\n return { resolvedSlippage, slippageFromParams };\n};\n"],"names":["useSlippage","tradeMode","$","_c","slippageFromParams","useAtomValue","slippageParamAtom","chainId","useChainId","tokenFrom","tokenTo","useWidgetTokens","t0","address","t1","t2","tokensAreStablecoins","useIsAddressStablecoin","resolvedSlippage","stablecoinDefaultSlippage","t3"],"mappings":";;;;;;;;AAQO,MAAMA,cAAcC,CAAAA,SAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACzB,EAAA,MAAAC,kBAAAA,GAA2BC,aAAaC,iBAAiB,CAAA;AACzD,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAC3B,EAAA,MAAA;AAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+BC,gBAAgBV,SAAS,CAAA;AAIrD,EAAA,MAAAW,KAAAH,SAAAA,EAASI,OAAAA;AAAW,EAAA,MAAAC,KAAAJ,OAAAA,EAAOG,OAAAA;AAAS,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAU,MAAAV,CAAAA,QAAAY,EAAAA,EAAA;AAArCC,IAAAA,EAAAA,GAAA,CAACH,IAAoBE,EAAgB,CAAA;AAACZ,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAFxC,EAAA,MAAAc,oBAAAA,GAA6BC,sBAAAA,CAE3BF,EAAAA,EACAR,OACF,CAAA;AAEA,EAAA,MAAAW,gBAAAA,GAAyBF,uBAAAG,yBAAAA,GAAAf,kBAAAA;AAEF,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAlB,EAAA,CAAA,CAAA,KAAAgB,oBAAAhB,CAAAA,QAAAE,kBAAAA,EAAA;AAEhBgB,IAAAA,EAAAA,GAAA;AAAA,MAAAF,gBAAAA;AAAAA,MAAAd;AAAAA,KAAuC;AAACF,IAAAA,CAAAA,MAAAgB,gBAAAA;AAAAhB,IAAAA,CAAAA,MAAAE,kBAAAA;AAAAF,IAAAA,CAAAA,MAAAkB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAxCkB,EAAAA;AAAwC;;;;"}
@@ -1,3 +1,5 @@
1
+ export declare const API_URL: any;
2
+ export declare const API_PROXY_URL: any;
1
3
  export declare const emptyArray: never[];
2
4
  export declare const emptyObject: Record<string, never>;
3
5
  export declare const WRAP_ETH_GAS_LIMIT_INACCURATE = 30000;