@velora-dex/widget 0.1.2 → 0.1.3

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 (213) hide show
  1. package/dist/components/web3/providers.d.ts +3 -0
  2. package/dist/components/web3/providers.d.ts.map +1 -1
  3. package/dist/components/web3/providers.js +18 -3
  4. package/dist/components/web3/providers.js.map +1 -1
  5. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  6. package/dist/components/widget/AppHeader/Activities/Drawers.js +33 -29
  7. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  8. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  9. package/dist/components/widget/AppHeader/Activities/hooks.js +193 -106
  10. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  11. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  12. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +67 -42
  13. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  14. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +207 -191
  16. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  17. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  18. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +10 -3
  19. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  20. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
  21. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js +37 -39
  22. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  23. package/dist/components/widget/TokenInput/EmptyInput.d.ts +1 -1
  24. package/dist/components/widget/TokenInput/EmptyInput.d.ts.map +1 -1
  25. package/dist/components/widget/TokenInput/EmptyInput.js +16 -14
  26. package/dist/components/widget/TokenInput/EmptyInput.js.map +1 -1
  27. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  28. package/dist/components/widget/TokenInput/index.js +92 -91
  29. package/dist/components/widget/TokenInput/index.js.map +1 -1
  30. package/dist/components/widget/TokenSwitcher/TokenSwitcher.d.ts.map +1 -1
  31. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js +34 -31
  32. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  33. package/dist/configurator/Configurator.d.ts.map +1 -1
  34. package/dist/core/Updaters.d.ts.map +1 -1
  35. package/dist/core/Updaters.js +9 -5
  36. package/dist/core/Updaters.js.map +1 -1
  37. package/dist/core/across/utils.d.ts.map +1 -1
  38. package/dist/core/across/utils.js +4 -4
  39. package/dist/core/across/utils.js.map +1 -1
  40. package/dist/core/constants.d.ts +5 -0
  41. package/dist/core/constants.d.ts.map +1 -1
  42. package/dist/core/constants.js +11 -1
  43. package/dist/core/constants.js.map +1 -1
  44. package/dist/core/index.d.ts.map +1 -1
  45. package/dist/core/index.js +191 -120
  46. package/dist/core/index.js.map +1 -1
  47. package/dist/core/inputs/hooks/types.d.ts +1 -1
  48. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  49. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  50. package/dist/core/inputs/hooks/useTokenFromInputProps.js +36 -43
  51. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  52. package/dist/core/inputs/hooks/useTokenSwitcherProps.d.ts.map +1 -1
  53. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +17 -7
  54. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  55. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  56. package/dist/core/inputs/hooks/useTokenToInputProps.js +64 -77
  57. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  58. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts +1 -1
  59. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  60. package/dist/core/inputs/state/selectedTokenActionsAtom.js +58 -28
  61. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  62. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  63. package/dist/core/inputs/state/setTokenByAddressAtom.js +10 -9
  64. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  65. package/dist/core/inputs/state/subscriptions.d.ts.map +1 -1
  66. package/dist/core/inputs/state/subscriptions.js +2 -1
  67. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  68. package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -1
  69. package/dist/core/limit/state/selectedTokenActionsAtom.js +3 -3
  70. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  71. package/dist/core/limit/useLimitTokenFromInputProps.d.ts.map +1 -1
  72. package/dist/core/limit/useLimitTokenFromInputProps.js +35 -42
  73. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  74. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  75. package/dist/core/limit/useLimitTokenToInputProps.js +9 -20
  76. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  77. package/dist/core/otc/state/selectedTokenActionsAtom.d.ts.map +1 -1
  78. package/dist/core/otc/state/selectedTokenActionsAtom.js +3 -3
  79. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
  80. package/dist/core/otc/useOtcTokenFromInputProps.d.ts.map +1 -1
  81. package/dist/core/otc/useOtcTokenFromInputProps.js +35 -42
  82. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  83. package/dist/core/otc/useOtcTokenToInputProps.d.ts.map +1 -1
  84. package/dist/core/otc/useOtcTokenToInputProps.js +9 -20
  85. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  86. package/dist/core/state/configActionsAtom.d.ts +5 -2
  87. package/dist/core/state/configActionsAtom.d.ts.map +1 -1
  88. package/dist/core/state/configActionsAtom.js +24 -12
  89. package/dist/core/state/configActionsAtom.js.map +1 -1
  90. package/dist/core/state/configAtom.d.ts +33 -11
  91. package/dist/core/state/configAtom.d.ts.map +1 -1
  92. package/dist/core/state/configAtom.js +15 -1
  93. package/dist/core/state/configAtom.js.map +1 -1
  94. package/dist/core/state/configEffectAtom.d.ts +5 -0
  95. package/dist/core/state/configEffectAtom.d.ts.map +1 -0
  96. package/dist/core/state/configEffectAtom.js +56 -0
  97. package/dist/core/state/configEffectAtom.js.map +1 -0
  98. package/dist/core/state/enabledChainsAtom.d.ts +10 -0
  99. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -0
  100. package/dist/core/state/enabledChainsAtom.js +101 -0
  101. package/dist/core/state/enabledChainsAtom.js.map +1 -0
  102. package/dist/core/state/enabledTradeModesAtom.d.ts +3 -0
  103. package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -0
  104. package/dist/core/state/enabledTradeModesAtom.js +31 -0
  105. package/dist/core/state/enabledTradeModesAtom.js.map +1 -0
  106. package/dist/core/state/tradeModeAtom.d.ts +2 -1
  107. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  108. package/dist/core/state/tradeModeAtom.js +9 -2
  109. package/dist/core/state/tradeModeAtom.js.map +1 -1
  110. package/dist/core/subscriptions.d.ts.map +1 -1
  111. package/dist/core/subscriptions.js +0 -2
  112. package/dist/core/subscriptions.js.map +1 -1
  113. package/dist/core/types.d.ts +12 -0
  114. package/dist/core/types.d.ts.map +1 -1
  115. package/dist/hooks/otc/mutations/useFillOrder.js +4 -1
  116. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  117. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts +5 -2
  118. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts.map +1 -1
  119. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +19 -2
  120. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
  121. package/dist/hooks/tokens/data/useCombineTokensWithFetched.d.ts.map +1 -1
  122. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +41 -39
  123. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  124. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  125. package/dist/hooks/txs/queries/useAwaitTx.js +11 -7
  126. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  127. package/dist/hooks/useAvailableCrosses.d.ts +3 -2
  128. package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
  129. package/dist/hooks/useAvailableCrosses.js +23 -20
  130. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  131. package/dist/hooks/useGlobalDeltaEnabled.d.ts +1 -0
  132. package/dist/hooks/useGlobalDeltaEnabled.d.ts.map +1 -1
  133. package/dist/hooks/useGlobalDeltaEnabled.js +22 -17
  134. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  135. package/dist/hooks/useSelectableDestChains.d.ts +14 -0
  136. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -0
  137. package/dist/hooks/useSelectableDestChains.js +91 -0
  138. package/dist/hooks/useSelectableDestChains.js.map +1 -0
  139. package/dist/index.d.ts +2 -0
  140. package/dist/index.d.ts.map +1 -1
  141. package/dist/index.js +1 -0
  142. package/dist/index.js.map +1 -1
  143. package/dist/lib/constants/delta.js +1 -1
  144. package/dist/lib/constants/delta.js.map +1 -1
  145. package/dist/lib/constants/index.js +1 -1
  146. package/dist/lib/constants/index.js.map +1 -1
  147. package/dist/lib/tradeMode.d.ts +4 -0
  148. package/dist/lib/tradeMode.d.ts.map +1 -0
  149. package/dist/lib/tradeMode.js +8 -0
  150. package/dist/lib/tradeMode.js.map +1 -0
  151. package/dist/lib/utils/atomWithCompare.d.ts +2 -0
  152. package/dist/lib/utils/atomWithCompare.d.ts.map +1 -0
  153. package/dist/lib/utils/atomWithCompare.js +13 -0
  154. package/dist/lib/utils/atomWithCompare.js.map +1 -0
  155. package/dist/lib/utils/index.d.ts +2 -0
  156. package/dist/lib/utils/index.d.ts.map +1 -1
  157. package/dist/lib/utils/index.js +17 -1
  158. package/dist/lib/utils/index.js.map +1 -1
  159. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  160. package/dist/lib/web3/wagmi/config.js +2 -1
  161. package/dist/lib/web3/wagmi/config.js.map +1 -1
  162. package/dist/lib/web3/wagmi/constants.d.ts +2 -1
  163. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  164. package/dist/lib/web3/wagmi/constants.js.map +1 -1
  165. package/dist/lib/web3/wagmi/switchChain.d.ts +1169 -0
  166. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -0
  167. package/dist/lib/web3/wagmi/switchChain.js +23 -0
  168. package/dist/lib/web3/wagmi/switchChain.js.map +1 -0
  169. package/dist/lib/web3/wagmi/types.d.ts +2 -2
  170. package/dist/lib/web3/wagmi/types.d.ts.map +1 -1
  171. package/dist/styles.css +3 -0
  172. package/dist/tokens/lists/constants.d.ts +1 -0
  173. package/dist/tokens/lists/constants.d.ts.map +1 -1
  174. package/dist/tokens/lists/constants.js +6 -2
  175. package/dist/tokens/lists/constants.js.map +1 -1
  176. package/dist/tokens/lists/lists.json.d.ts +23 -44
  177. package/dist/tokens/lists/lists.json.js +354 -1
  178. package/dist/tokens/lists/lists.json.js.map +1 -1
  179. package/dist/tokens/lists/state/effects.d.ts +2 -0
  180. package/dist/tokens/lists/state/effects.d.ts.map +1 -0
  181. package/dist/tokens/lists/state/effects.js +25 -0
  182. package/dist/tokens/lists/state/effects.js.map +1 -0
  183. package/dist/tokens/lists/state/tokenListsActionsAtom.js +3 -3
  184. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  185. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +16 -7
  186. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts.map +1 -1
  187. package/dist/tokens/lists/state/tokenListsStateAtom.js +50 -5
  188. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  189. package/dist/tokens/lists/types.d.ts.map +1 -1
  190. package/dist/tokens/lists/utils.js +1 -1
  191. package/dist/tokens/queries.d.ts +4 -2
  192. package/dist/tokens/queries.d.ts.map +1 -1
  193. package/dist/tokens/queries.js +25 -15
  194. package/dist/tokens/queries.js.map +1 -1
  195. package/dist/tokens/state/fromListsAtom.js +4 -4
  196. package/dist/tokens/state/fromListsAtom.js.map +1 -1
  197. package/dist/transactions/queries/ensureTxReceipt.d.ts +3 -2
  198. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  199. package/dist/transactions/queries/ensureTxReceipt.js +26 -6
  200. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  201. package/dist/transactions/state/hooks/useTransactions.d.ts +2 -0
  202. package/dist/transactions/state/hooks/useTransactions.d.ts.map +1 -1
  203. package/dist/transactions/state/hooks/useTransactions.js +59 -1
  204. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  205. package/package.json +5 -4
  206. package/dist/tokens/lists/hooks.d.ts +0 -2
  207. package/dist/tokens/lists/hooks.d.ts.map +0 -1
  208. package/dist/tokens/lists/hooks.js +0 -26
  209. package/dist/tokens/lists/hooks.js.map +0 -1
  210. package/dist/tokens/lists/state/observer.d.ts +0 -2
  211. package/dist/tokens/lists/state/observer.d.ts.map +0 -1
  212. package/dist/tokens/lists/state/observer.js +0 -18
  213. package/dist/tokens/lists/state/observer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenSwitcherProps.js","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\nimport { switchSwapTokensAtom } from \"../state/selectedTokenActionsAtom\";\n\nexport const useSwapTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useSwapTokenTo();\n const switchTokens = useSetAtom(switchSwapTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n };\n};\n"],"names":["useSwapTokenSwitcherProps","$","_c","tokenTo","useSwapTokenTo","switchTokens","useSetAtom","switchSwapTokensAtom","t0","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;AAKO,MAAMA,4BAA4BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACvC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,YAAAA,GAAqBC,WAAAC,oBAA+B,CAAA;AAG9B,EAAA,MAAAC,EAAAA,KAAEL,OAAAA;AAAO,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAR,EAAA,CAAA,CAAA,KAAAI,gBAAAJ,CAAAA,QAAAO,EAAAA,EAAA;AADxBC,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeF,EAAAA;AAAAA,MAASG,cAAAA,EACbN;AAAAA,KAAY;AAC7BJ,IAAAA,CAAAA,MAAAI,YAAAA;AAAAJ,IAAAA,CAAAA,MAAAO,EAAAA;AAAAP,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHMQ,EAAAA;AAGN;;;;"}
1
+ {"version":3,"file":"useTokenSwitcherProps.js","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\nimport { switchSwapTokensAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\n\nexport const useSwapTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useSwapTokenTo();\n const enabledSrcChains = useEnabledSrcChains();\n const switchTokens = useSetAtom(switchSwapTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo && enabledSrcChains.includes(tokenTo.network),\n onSwitchTokens: switchTokens,\n };\n};\n"],"names":["useSwapTokenSwitcherProps","$","_c","tokenTo","useSwapTokenTo","enabledSrcChains","useEnabledSrcChains","switchTokens","useSetAtom","switchSwapTokensAtom","t0","includes","network","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;;AAMO,MAAMA,4BAA4BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACvC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,mBAAyBC,mBAAAA,EAAoB;AAC7C,EAAA,MAAAC,YAAAA,GAAqBC,WAAAC,oBAA+B,CAAA;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,EAAA,CAAA,CAAA,KAAAI,oBAAAJ,CAAAA,QAAAE,OAAAA,EAAA;AAGhCO,IAAAA,EAAAA,GAAA,CAAA,CAAEP,OAAAA,IAAWE,gBAAAA,CAAgBM,QAAAA,CAAUR,QAAOS,OAAQ,CAAA;AAACX,IAAAA,CAAAA,MAAAI,gBAAAA;AAAAJ,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAM,gBAAAN,CAAAA,QAAAS,EAAAA,EAAA;AADtEG,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeJ,EAAAA;AAAAA,MAAuDK,cAAAA,EAC3DR;AAAAA,KAAY;AAC7BN,IAAAA,CAAAA,MAAAM,YAAAA;AAAAN,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHMY,EAAAA;AAGN;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAiB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAkBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AA0LF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAyBzB,CAAC"}
1
+ {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAmBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAmLF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAyBzB,CAAC"}
@@ -3,14 +3,13 @@ import { d as distExports } from '../../../_virtual/index.js';
3
3
  import { useSwapTokenTo, useSwapTokenFrom } from '../state/selectedTokenAtom.js';
4
4
  import { swapChainToAtom } from '../../state/chainToAtom.js';
5
5
  import { useSetAtom, useAtom, useAtomValue } from 'jotai';
6
- import { useAvailableCrosses } from '../../../hooks/useAvailableCrosses.js';
6
+ import { useSelectableDestChains } from '../../../hooks/useSelectableDestChains.js';
7
7
  import { useChainId } from 'wagmi';
8
8
  import { receiveInputAmountAtom } from '../state/inputAmountAtom.js';
9
9
  import { formatUnits } from 'viem';
10
10
  import { useSwapSide } from '../../../components/widget/SwapModeSwitcher/state/swapSideAtom.js';
11
11
  import { currentSwapInputAtom } from '../../state/currentSwapInputAtom.js';
12
12
  import { useIsCrossChain } from '../../state/isCrosschainAtom.js';
13
- import { useGlobalDeltaEnabled } from '../../../hooks/useGlobalDeltaEnabled.js';
14
13
  import { getDestAmountAfterFee } from '../../../lib/utils/price.js';
15
14
  import { calculateFeeUSD } from '../../../lib/utils/fee.js';
16
15
  import { parseDeltaApiError, replaceUnsupportedTokenMessage, isUnsupportedTokenError, customUnsupportedTokenMessage } from '../../../lib/utils/delta.js';
@@ -220,7 +219,7 @@ const useWarningMessage = (t0) => {
220
219
  return warningMessage;
221
220
  };
222
221
  const useExtraProps = (t0) => {
223
- const $ = distExports.c(22);
222
+ const $ = distExports.c(20);
224
223
  let t1;
225
224
  if ($[0] !== t0) {
226
225
  t1 = t0 === void 0 ? {} : t0;
@@ -232,102 +231,90 @@ const useExtraProps = (t0) => {
232
231
  const {
233
232
  isPriceLoading
234
233
  } = t1;
235
- const chainId = useChainId();
234
+ const appChainId = useChainId();
236
235
  const [chainTo, setChainTo] = useAtom(swapChainToAtom);
237
- let t2;
238
- if ($[2] !== chainId) {
239
- t2 = {
240
- fromChainId: chainId
241
- };
242
- $[2] = chainId;
243
- $[3] = t2;
244
- } else {
245
- t2 = $[3];
246
- }
247
236
  const {
248
- availableCrosses: t3
249
- } = useAvailableCrosses(t2);
250
- let t4;
251
- if ($[4] !== t3) {
252
- t4 = t3 === void 0 ? [] : t3;
253
- $[4] = t3;
254
- $[5] = t4;
237
+ selectableChains
238
+ } = useSelectableDestChains(appChainId);
239
+ const showNetworkSwitcher = chainTo !== void 0;
240
+ let t2;
241
+ if ($[2] !== chainTo || $[3] !== selectableChains || $[4] !== setChainTo || $[5] !== showNetworkSwitcher) {
242
+ t2 = showNetworkSwitcher ? {
243
+ networks: selectableChains,
244
+ selectedNetwork: chainTo,
245
+ allOption: false,
246
+ onSelect: (chainId) => chainId !== "all" && setChainTo(chainId),
247
+ disabled: selectableChains.length <= 1
248
+ } : void 0;
249
+ $[2] = chainTo;
250
+ $[3] = selectableChains;
251
+ $[4] = setChainTo;
252
+ $[5] = showNetworkSwitcher;
253
+ $[6] = t2;
255
254
  } else {
256
- t4 = $[5];
255
+ t2 = $[6];
257
256
  }
258
- const availableCrosses = t4;
259
- const {
260
- enabledInConfig: deltaEnabledInConfig,
261
- enabledInSettings: deltaEnabledInSettings,
262
- enabledOnCurrentChain: deltaEnabledOnCurrentChain
263
- } = useGlobalDeltaEnabled();
257
+ const networkSwitcherProps = t2;
264
258
  const setCurrentInput = useSetAtom(currentSwapInputAtom);
265
259
  const side = useSwapSide();
266
260
  const isSell = side === "SELL";
267
261
  const isLoading = isPriceLoading && isSell;
268
- let t5;
269
- if ($[6] !== availableCrosses || $[7] !== chainId || $[8] !== chainTo || $[9] !== deltaEnabledInConfig || $[10] !== deltaEnabledInSettings || $[11] !== deltaEnabledOnCurrentChain || $[12] !== setChainTo) {
270
- t5 = chainTo !== void 0 ? {
271
- networks: [chainId].concat(availableCrosses),
272
- selectedNetwork: chainTo,
273
- allOption: false,
274
- onSelect: (chainId_0) => chainId_0 !== "all" && setChainTo(chainId_0),
275
- disabled: availableCrosses.length === 0 || !deltaEnabledInConfig || !deltaEnabledInSettings || !deltaEnabledOnCurrentChain
276
- } : void 0;
277
- $[6] = availableCrosses;
278
- $[7] = chainId;
279
- $[8] = chainTo;
280
- $[9] = deltaEnabledInConfig;
281
- $[10] = deltaEnabledInSettings;
282
- $[11] = deltaEnabledOnCurrentChain;
283
- $[12] = setChainTo;
284
- $[13] = t5;
262
+ let t3;
263
+ if ($[7] !== setCurrentInput) {
264
+ t3 = () => setCurrentInput("to");
265
+ $[7] = setCurrentInput;
266
+ $[8] = t3;
285
267
  } else {
286
- t5 = $[13];
268
+ t3 = $[8];
287
269
  }
288
- let t6;
289
- if ($[14] !== setCurrentInput) {
290
- t6 = () => setCurrentInput("to");
291
- $[14] = setCurrentInput;
292
- $[15] = t6;
270
+ let t4;
271
+ if ($[9] === Symbol.for("react.memo_cache_sentinel")) {
272
+ t4 = /* @__PURE__ */ jsx("span", { children: "Receive" });
273
+ $[9] = t4;
293
274
  } else {
294
- t6 = $[15];
275
+ t4 = $[9];
295
276
  }
296
- let t7;
297
- if ($[16] === Symbol.for("react.memo_cache_sentinel")) {
298
- t7 = /* @__PURE__ */ jsx("span", { children: "Receive" });
299
- $[16] = t7;
277
+ let t5;
278
+ if ($[10] !== showNetworkSwitcher) {
279
+ t5 = showNetworkSwitcher && /* @__PURE__ */ jsx("span", { className: "text-contrast-5", children: "on" });
280
+ $[10] = showNetworkSwitcher;
281
+ $[11] = t5;
300
282
  } else {
301
- t7 = $[16];
283
+ t5 = $[11];
302
284
  }
303
- let t8;
304
- if ($[17] === Symbol.for("react.memo_cache_sentinel")) {
305
- t8 = /* @__PURE__ */ jsxs(Fragment, { children: [
306
- t7,
285
+ let t6;
286
+ if ($[12] !== t5) {
287
+ t6 = /* @__PURE__ */ jsxs(Fragment, { children: [
288
+ t4,
307
289
  " ",
308
- /* @__PURE__ */ jsx("span", { className: "text-contrast-5", children: "on" })
290
+ t5
309
291
  ] });
310
- $[17] = t8;
292
+ $[12] = t5;
293
+ $[13] = t6;
311
294
  } else {
312
- t8 = $[17];
295
+ t6 = $[13];
313
296
  }
314
- let t9;
315
- if ($[18] !== isLoading || $[19] !== t5 || $[20] !== t6) {
316
- t9 = {
317
- networkSwitcherProps: t5,
297
+ const t7 = selectableChains.length === 0;
298
+ let t8;
299
+ if ($[14] !== isLoading || $[15] !== networkSwitcherProps || $[16] !== t3 || $[17] !== t6 || $[18] !== t7) {
300
+ t8 = {
301
+ networkSwitcherProps,
318
302
  tokenType: "to",
319
- onFocus: t6,
320
- label: t8,
321
- isLoading
303
+ onFocus: t3,
304
+ label: t6,
305
+ isLoading,
306
+ disabled: t7
322
307
  };
323
- $[18] = isLoading;
324
- $[19] = t5;
325
- $[20] = t6;
326
- $[21] = t9;
308
+ $[14] = isLoading;
309
+ $[15] = networkSwitcherProps;
310
+ $[16] = t3;
311
+ $[17] = t6;
312
+ $[18] = t7;
313
+ $[19] = t8;
327
314
  } else {
328
- t9 = $[21];
315
+ t8 = $[19];
329
316
  }
330
- return t9;
317
+ return t8;
331
318
  };
332
319
  const useTokenToInputProps = (t0) => {
333
320
  const $ = distExports.c(24);
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"jotai\";\n\nimport { useAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? price.receivedDestUSDBeforeFee\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n readOnly: isCrossChain,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(price.partnerFee, destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: { isPriceLoading?: boolean } = {}): TokenInputExtraProps => {\n const chainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n // chainFrom -> chainTo is not possible (no Across tokens available)\n const { availableCrosses = [] } = useAvailableCrosses({\n fromChainId: chainId,\n });\n\n const {\n enabledInConfig: deltaEnabledInConfig,\n enabledInSettings: deltaEnabledInSettings,\n enabledOnCurrentChain: deltaEnabledOnCurrentChain,\n } = useGlobalDeltaEnabled();\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n return {\n networkSwitcherProps:\n chainTo !== undefined\n ? {\n networks: [chainId].concat(availableCrosses),\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && setChainTo(chainId),\n disabled:\n availableCrosses.length === 0 ||\n !deltaEnabledInConfig ||\n !deltaEnabledInSettings ||\n !deltaEnabledOnCurrentChain,\n }\n : undefined,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({ priceMode, priceError });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","readOnly","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","receivedDestUSD","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","parseDeltaApiError","deltaPriceError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","setChainTo","availableCrosses","useAvailableCrosses","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","useGlobalDeltaEnabled","setCurrentInput","useSetAtom","currentSwapInputAtom","t5","networks","concat","selectedNetwork","allOption","onSelect","chainId_0","disabled","length","t6","t7","t8","t9","networkSwitcherProps","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"jotai\";\n\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? price.receivedDestUSDBeforeFee\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n readOnly: isCrossChain,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(price.partnerFee, destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: { isPriceLoading?: boolean } = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains(appChainId);\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({ priceMode, priceError });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","readOnly","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","receivedDestUSD","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","parseDeltaApiError","deltaPriceError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","appChainId","setChainTo","selectableChains","useSelectableDestChains","showNetworkSwitcher","networks","selectedNetwork","allOption","onSelect","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentSwapInputAtom","t5","t6","t7","t8","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Token } from '../../../tokens/state/types';
2
2
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
- export declare const switchSwapTokensAtom: import('jotai').WritableAtom<null, [], Promise<void>> & {
3
+ export declare const switchSwapTokensAtom: import('jotai').WritableAtom<null, [], void> & {
4
4
  init: null;
5
5
  };
6
6
  export declare const selectSwapTokenFromAtom: import('jotai').WritableAtom<null, [newTokenFrom: Token], Promise<void>> & {
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAQlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAQ/D,eAAO,MAAM,oBAAoB;;CA8E/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAyEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAwGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SAiEvE,CAAC"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAQlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAY/D,eAAO,MAAM,oBAAoB;;CA4E/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAoEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAuGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SAiEvE,CAAC"}
@@ -1,30 +1,34 @@
1
1
  import { atom } from 'jotai';
2
- import { switchChain } from '@wagmi/core';
3
2
  import { swapTokenFromAtom, swapTokenToAtom } from './selectedTokenAtom.js';
4
3
  import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
5
4
  import { areTokensSame } from '../../../tokens/utils/areTokensSame.js';
6
5
  import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
7
- import { isAcrossAvailable, isTokenFromAcross, findFirstTokenFromAcross } from '../../across/utils.js';
6
+ import { isTokenFromAcross, findFirstTokenFromAcross, isAcrossAvailable } from '../../across/utils.js';
8
7
  import { deltaParamAtom } from '../../../components/widget/TradeParameters/state/deltaParamAtom.js';
9
8
  import { widgetConfigAtom } from '../../state/configAtom.js';
10
9
  import { setSwapModeAtom } from '../../../components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js';
11
10
  import { jotaiStore } from './store.js';
12
11
  import { tradeModeAtom } from '../../state/tradeModeAtom.js';
13
12
  import { allTokensByChainAtom } from '../../../tokens/state/allTokensByChainAtom.js';
13
+ import { deltaEnabledOnAPI } from '../../../lib/constants/delta.js';
14
+ import { enabledSrcChainsAtom } from '../../state/enabledChainsAtom.js';
15
+ import { switchChain } from '../../../lib/web3/wagmi/switchChain.js';
16
+ import { getSelectableDestChains } from '../../state/configEffectAtom.js';
14
17
 
15
- const switchSwapTokensAtom = atom(null, async (get, set) => {
18
+ const switchSwapTokensAtom = atom(null, (get, set) => {
16
19
  const tokenTo = get(swapTokenToAtom);
17
20
  if (!tokenTo) return;
21
+ const enabledSrcChains = get(enabledSrcChainsAtom);
22
+ if (!enabledSrcChains.includes(tokenTo.network)) return;
18
23
  const tokenFrom = get(swapTokenFromAtom);
19
24
  if (tokenFrom.network !== tokenTo.network) {
20
- await switchChain(wagmiConfig, {
25
+ switchChain({
21
26
  chainId: tokenTo.network
22
27
  });
23
28
  }
24
29
  set(swapTokenFromAtom, tokenTo);
25
- const deltaEnabledInSettings = get(deltaParamAtom);
26
- const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;
27
- const crosschainPossible = deltaEnabledInSettings && deltaEnabledInConfig && isAcrossAvailable({
30
+ const crosschainPossible = isCrosschainPossible({
31
+ get,
28
32
  // tokenTo is now is from position
29
33
  chainIdFrom: tokenTo.network,
30
34
  // considering tokenFrom in to position, is crosschain possible?
@@ -57,25 +61,25 @@ const switchSwapTokensAtom = atom(null, async (get, set) => {
57
61
  const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo) ? defaultTokenFrom : defaultTokenTo;
58
62
  set(swapTokenToAtom, newTokenTo);
59
63
  } else {
60
- const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo) ? defaultTokenTo : tokenFrom;
64
+ const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo) ? tokenFrom : defaultTokenFrom;
61
65
  set(swapTokenToAtom, newTokenTo);
62
66
  }
63
67
  }
64
68
  });
65
69
  const selectSwapTokenFromAtom = atom(null, async (get, set, newTokenFrom) => {
70
+ const enabledSrcChains = get(enabledSrcChainsAtom);
71
+ if (!enabledSrcChains.includes(newTokenFrom.network)) return;
66
72
  const tokenFrom = get(swapTokenFromAtom);
67
73
  const tokenTo = get(swapTokenToAtom);
68
74
  if (newTokenFrom.network !== wagmiConfig.state.chainId) {
69
- await switchChain(wagmiConfig, {
75
+ switchChain({
70
76
  chainId: newTokenFrom.network
71
77
  });
72
78
  }
73
79
  set(swapTokenFromAtom, newTokenFrom);
74
80
  if (!tokenTo) return;
75
- const tradeMode = get(tradeModeAtom);
76
- const deltaEnabledInSettings = get(deltaParamAtom);
77
- const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;
78
- const crosschainPossible = tradeMode === "swap" && deltaEnabledInSettings && deltaEnabledInConfig && isAcrossAvailable({
81
+ const crosschainPossible = isCrosschainPossible({
82
+ get,
79
83
  chainIdFrom: newTokenFrom.network,
80
84
  chainIdTo: tokenTo.network
81
85
  });
@@ -106,8 +110,10 @@ const selectSwapTokenFromAtom = atom(null, async (get, set, newTokenFrom) => {
106
110
  }
107
111
  });
108
112
  const selectSwapTokenToAtom = atom(null, async (get, set, newTokenTo) => {
109
- const newTokenToNetwork = newTokenTo.network;
110
113
  let tokenFrom = get(swapTokenFromAtom);
114
+ const selectableDestChains = getSelectableDestChains(get, tokenFrom.network);
115
+ if (!selectableDestChains.includes(newTokenTo.network)) return;
116
+ const newTokenToNetwork = newTokenTo.network;
111
117
  let tokenTo = get(swapTokenToAtom);
112
118
  if (areTokensSame(newTokenTo, tokenFrom)) {
113
119
  const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(newTokenToNetwork, "swap");
@@ -128,10 +134,8 @@ const selectSwapTokenToAtom = atom(null, async (get, set, newTokenTo) => {
128
134
  set(swapTokenToAtom, newTokenTo);
129
135
  tokenTo = newTokenTo;
130
136
  let needResetTokenFrom = false;
131
- const tradeMode = get(tradeModeAtom);
132
- const deltaEnabledInSettings = get(deltaParamAtom);
133
- const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;
134
- const crosschainPossible = tradeMode === "swap" && deltaEnabledInSettings && deltaEnabledInConfig && isAcrossAvailable({
137
+ const crosschainPossible = isCrosschainPossible({
138
+ get,
135
139
  chainIdFrom: tokenFrom.network,
136
140
  chainIdTo: tokenTo.network
137
141
  });
@@ -148,7 +152,8 @@ const selectSwapTokenToAtom = atom(null, async (get, set, newTokenTo) => {
148
152
  if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {
149
153
  needResetTokenFrom = true;
150
154
  }
151
- if (needResetTokenFrom) {
155
+ const enabledSrcChains = get(enabledSrcChainsAtom);
156
+ if (needResetTokenFrom && enabledSrcChains.includes(tokenTo.network)) {
152
157
  const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(tokenTo.network, "swap");
153
158
  const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom) ? defaultTokenTo : defaultTokenFrom;
154
159
  set(swapTokenFromAtom, newTokenFrom);
@@ -158,12 +163,14 @@ const selectSwapTokenToAtom = atom(null, async (get, set, newTokenTo) => {
158
163
  set(setSwapModeAtom, "delta");
159
164
  }
160
165
  if (tokenFrom.network !== wagmiConfig.state.chainId) {
161
- switchChain(wagmiConfig, {
166
+ switchChain({
162
167
  chainId: tokenFrom.network
163
168
  });
164
169
  }
165
170
  });
166
171
  const syncSwapTokensAfterChainSwitch = (chainId) => {
172
+ const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);
173
+ if (!enabledSrcChains.includes(chainId)) return;
167
174
  const tokenFrom = jotaiStore.get(swapTokenFromAtom);
168
175
  if (tokenFrom.network === chainId) return;
169
176
  const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(chainId, "swap");
@@ -171,9 +178,8 @@ const syncSwapTokensAfterChainSwitch = (chainId) => {
171
178
  jotaiStore.set(swapTokenFromAtom, newTokenFrom);
172
179
  const tokenTo = jotaiStore.get(swapTokenToAtom);
173
180
  if (!tokenTo) return;
174
- const deltaEnabledInSettings = jotaiStore.get(deltaParamAtom);
175
- const deltaEnabledInConfig = jotaiStore.get(widgetConfigAtom).enableDelta;
176
- const crosschainPossible = deltaEnabledInSettings && deltaEnabledInConfig && isAcrossAvailable({
181
+ const crosschainPossible = isCrosschainPossible({
182
+ get: jotaiStore.get,
177
183
  chainIdFrom: chainId,
178
184
  chainIdTo: tokenTo.network
179
185
  });
@@ -193,15 +199,39 @@ const syncSwapTokensAfterChainSwitch = (chainId) => {
193
199
  }
194
200
  jotaiStore.set(setSwapModeAtom, "delta");
195
201
  } else {
196
- if (
197
- // if tokenFrom that we just set is the same as tokenTo,
198
- areTokensSame(newTokenFrom, tokenTo) || // or if chains are different,
199
- newTokenFrom.network !== tokenTo.network
200
- ) {
202
+ const selectableDestChains = getSelectableDestChains(jotaiStore.get, newTokenFrom.network);
203
+ if (selectableDestChains.includes(chainId)) {
201
204
  jotaiStore.set(swapTokenToAtom, defaultTokenTo);
205
+ } else {
206
+ jotaiStore.set(swapTokenToAtom, void 0);
202
207
  }
203
208
  }
204
209
  };
210
+ function isCrosschainPossible({
211
+ get,
212
+ chainIdFrom,
213
+ chainIdTo
214
+ }) {
215
+ if (!deltaEnabledOnAPI[chainIdFrom]) return false;
216
+ if (!isAcrossAvailable({
217
+ chainIdFrom,
218
+ chainIdTo
219
+ })) return false;
220
+ const tradeMode = get(tradeModeAtom);
221
+ if (tradeMode !== "swap") return false;
222
+ const deltaEnabledInSettings = get(deltaParamAtom);
223
+ if (!deltaEnabledInSettings) return false;
224
+ const {
225
+ enableDelta,
226
+ enableCrossChain
227
+ } = get(widgetConfigAtom);
228
+ if (!enableDelta || !enableCrossChain) return false;
229
+ const enabledSrcChains = get(enabledSrcChainsAtom);
230
+ if (!enabledSrcChains.includes(chainIdFrom)) return false;
231
+ const selectableDestChains = getSelectableDestChains(get, chainIdFrom);
232
+ if (!selectableDestChains.includes(chainIdTo)) return false;
233
+ return true;
234
+ }
205
235
 
206
236
  export { selectSwapTokenFromAtom, selectSwapTokenToAtom, switchSwapTokensAtom, syncSwapTokensAfterChainSwitch };
207
237
  //# sourceMappingURL=selectedTokenActionsAtom.js.map