@velora-dex/widget 0.2.5-dev.6 → 0.2.5-dev.8

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 (255) hide show
  1. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  2. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts.map +1 -1
  3. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js +43 -42
  4. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  5. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +2 -1
  6. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  7. package/dist/components/widget/AppHeader/Activities/Drawers.js +30 -32
  8. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  9. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +1 -3
  10. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  11. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +114 -97
  12. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  13. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +3 -1
  14. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +17 -14
  16. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  17. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -2
  18. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  19. package/dist/components/widget/Drawer/state/useDrawerControls.js +16 -17
  20. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  21. package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
  22. package/dist/components/widget/OrderExpiryInput/index.js +76 -73
  23. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  24. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  25. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +3 -0
  26. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  27. package/dist/components/widget/ReceiverAddress/types.d.ts +2 -1
  28. package/dist/components/widget/ReceiverAddress/types.d.ts.map +1 -1
  29. package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
  30. package/dist/components/widget/Screen/GenericScreen.js +9 -8
  31. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  32. package/dist/components/widget/Screen/ScreenContainer.d.ts.map +1 -1
  33. package/dist/components/widget/Screen/ScreenContainer.js +7 -31
  34. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  35. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.d.ts.map +1 -1
  36. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +5 -0
  37. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  38. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +3 -2
  39. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  40. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  41. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  42. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  43. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +24 -20
  44. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  45. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
  46. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  47. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +1 -1
  48. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
  49. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +1 -1
  50. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  51. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  52. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  53. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +1 -1
  54. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
  55. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +1 -1
  56. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  57. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +3 -3
  58. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
  59. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  60. package/dist/configurator/Configurator.d.ts.map +1 -1
  61. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  62. package/dist/configurator/components/common/ButtonGroup.d.ts +12 -0
  63. package/dist/configurator/components/common/ButtonGroup.d.ts.map +1 -0
  64. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  65. package/dist/core/LimitOrderButton.js +49 -23
  66. package/dist/core/LimitOrderButton.js.map +1 -1
  67. package/dist/core/Updaters.d.ts.map +1 -1
  68. package/dist/core/Updaters.js +22 -1
  69. package/dist/core/Updaters.js.map +1 -1
  70. package/dist/core/across/isCrosshcainPossible.d.ts +10 -0
  71. package/dist/core/across/isCrosshcainPossible.d.ts.map +1 -0
  72. package/dist/core/across/isCrosshcainPossible.js +41 -0
  73. package/dist/core/across/isCrosshcainPossible.js.map +1 -0
  74. package/dist/core/across/utils.d.ts +7 -3
  75. package/dist/core/across/utils.d.ts.map +1 -1
  76. package/dist/core/across/utils.js +10 -7
  77. package/dist/core/across/utils.js.map +1 -1
  78. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  79. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +56 -33
  80. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  81. package/dist/core/index.d.ts.map +1 -1
  82. package/dist/core/index.js +72 -17
  83. package/dist/core/index.js.map +1 -1
  84. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  85. package/dist/core/inputs/hooks/useTokenToInputProps.js +76 -66
  86. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  87. package/dist/core/inputs/state/common.d.ts +15 -3
  88. package/dist/core/inputs/state/common.d.ts.map +1 -1
  89. package/dist/core/inputs/state/common.js +51 -12
  90. package/dist/core/inputs/state/common.js.map +1 -1
  91. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  92. package/dist/core/inputs/state/selectedTokenActionsAtom.js +33 -44
  93. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  94. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
  95. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  96. package/dist/core/inputs/state/setTokenByAddressAtom.js +85 -21
  97. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  98. package/dist/core/inputs/state/types.d.ts +9 -1
  99. package/dist/core/inputs/state/types.d.ts.map +1 -1
  100. package/dist/core/limit/state/deadlineAtom.d.ts +10 -2
  101. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  102. package/dist/core/limit/state/deadlineAtom.js +15 -8
  103. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  104. package/dist/core/limit/state/isCrosschainAtom.d.ts +3 -0
  105. package/dist/core/limit/state/isCrosschainAtom.d.ts.map +1 -0
  106. package/dist/core/limit/state/isCrosschainAtom.js +13 -0
  107. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -0
  108. package/dist/core/limit/state/limitInputActionsAtom.d.ts +4 -1
  109. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
  110. package/dist/core/limit/state/limitInputActionsAtom.js +6 -2
  111. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  112. package/dist/core/limit/state/limitInputAmountAtom.js +1 -1
  113. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  114. package/dist/core/limit/state/limitTokenAtoms.d.ts +10 -0
  115. package/dist/core/limit/state/limitTokenAtoms.d.ts.map +1 -0
  116. package/dist/core/limit/state/limitTokenAtoms.js +17 -0
  117. package/dist/core/limit/state/limitTokenAtoms.js.map +1 -0
  118. package/dist/core/limit/state/receiverAddressAtom.d.ts +7 -0
  119. package/dist/core/limit/state/receiverAddressAtom.d.ts.map +1 -0
  120. package/dist/core/limit/state/receiverAddressAtom.js +40 -0
  121. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -0
  122. package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -1
  123. package/dist/core/limit/state/selectedTokenActionsAtom.js +94 -18
  124. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  125. package/dist/core/limit/state/selectedTokenAtom.d.ts +0 -9
  126. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  127. package/dist/core/limit/state/selectedTokenAtom.js +53 -21
  128. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  129. package/dist/core/limit/state/utils.d.ts +9 -1
  130. package/dist/core/limit/state/utils.d.ts.map +1 -1
  131. package/dist/core/limit/state/utils.js +44 -2
  132. package/dist/core/limit/state/utils.js.map +1 -1
  133. package/dist/core/limit/useLimitRate.d.ts +9 -0
  134. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  135. package/dist/core/limit/useLimitRate.js +145 -8
  136. package/dist/core/limit/useLimitRate.js.map +1 -1
  137. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  138. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  139. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  140. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  141. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  142. package/dist/core/limit/useLimitTokenToInputProps.js +132 -72
  143. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  144. package/dist/core/otc/state/deadlineAtom.d.ts +8 -3
  145. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  146. package/dist/core/otc/state/deadlineAtom.js +16 -10
  147. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  148. package/dist/core/otc/state/otcInputActionsAtom.d.ts +4 -1
  149. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
  150. package/dist/core/otc/state/otcInputActionsAtom.js +6 -2
  151. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  152. package/dist/core/screen/hooks/useOnClickOutside.d.ts +2 -0
  153. package/dist/core/screen/hooks/useOnClickOutside.d.ts.map +1 -0
  154. package/dist/core/screen/hooks/useOnClickOutside.js +30 -0
  155. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -0
  156. package/dist/core/screen/screenByType.d.ts +1 -3
  157. package/dist/core/screen/screenByType.d.ts.map +1 -1
  158. package/dist/core/state/chainToAtom.d.ts +2 -0
  159. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  160. package/dist/core/state/chainToAtom.js +37 -7
  161. package/dist/core/state/chainToAtom.js.map +1 -1
  162. package/dist/core/state/configEffectAtom.d.ts +0 -3
  163. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  164. package/dist/core/state/configEffectAtom.js +49 -37
  165. package/dist/core/state/configEffectAtom.js.map +1 -1
  166. package/dist/core/state/enabledChainsAtom.d.ts +3 -0
  167. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  168. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  169. package/dist/core/state/getSelectableDestChains.d.ts +8 -0
  170. package/dist/core/state/getSelectableDestChains.d.ts.map +1 -0
  171. package/dist/core/state/getSelectableDestChains.js +34 -0
  172. package/dist/core/state/getSelectableDestChains.js.map +1 -0
  173. package/dist/events/getters/limit.d.ts.map +1 -1
  174. package/dist/events/getters/limit.js +5 -2
  175. package/dist/events/getters/limit.js.map +1 -1
  176. package/dist/events/hooks/useOnPriceUpdates.d.ts.map +1 -1
  177. package/dist/events/hooks/useOnPriceUpdates.js +37 -25
  178. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  179. package/dist/events/types/formInput.d.ts +1 -1
  180. package/dist/events/types/formInput.d.ts.map +1 -1
  181. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts +2 -0
  182. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts.map +1 -0
  183. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js +24 -0
  184. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -0
  185. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts +6 -0
  186. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts.map +1 -0
  187. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js +9 -0
  188. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -0
  189. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts +4 -0
  190. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts.map +1 -0
  191. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js +12 -0
  192. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -0
  193. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +19 -0
  194. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -0
  195. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +4 -0
  196. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -0
  197. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js +81 -0
  198. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -0
  199. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +3 -0
  200. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  201. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +2 -1
  202. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  203. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  204. package/dist/hooks/swap/prices/usePricesParams.js +8 -7
  205. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  206. package/dist/hooks/swap/prices/useSwapPrices.d.ts +4 -1
  207. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  208. package/dist/hooks/swap/prices/useSwapPrices.js +61 -43
  209. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  210. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +0 -2
  211. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  212. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +6 -8
  213. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  214. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  215. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  216. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -0
  217. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  218. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +54 -21
  219. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  220. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  221. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  222. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +3 -1
  223. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  224. package/dist/hooks/tokens/useAllTokensWithFilter.js +25 -22
  225. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  226. package/dist/hooks/tokens/useTokensFromAcross.d.ts +3 -1
  227. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  228. package/dist/hooks/tokens/useTokensFromAcross.js +36 -25
  229. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  230. package/dist/hooks/useAvailableCrosses.d.ts +7 -2
  231. package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
  232. package/dist/hooks/useAvailableCrosses.js +39 -25
  233. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  234. package/dist/hooks/useBridgeInfo.d.ts +4 -1
  235. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  236. package/dist/hooks/useBridgeInfo.js +26 -11
  237. package/dist/hooks/useBridgeInfo.js.map +1 -1
  238. package/dist/hooks/useClickOutside.d.ts +1 -1
  239. package/dist/hooks/useClickOutside.d.ts.map +1 -1
  240. package/dist/hooks/useClickOutside.js +27 -13
  241. package/dist/hooks/useClickOutside.js.map +1 -1
  242. package/dist/hooks/useIsCrosschainPossible.d.ts +3 -1
  243. package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
  244. package/dist/hooks/useIsCrosschainPossible.js +33 -22
  245. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  246. package/dist/hooks/useSelectableDestChains.d.ts +5 -1
  247. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
  248. package/dist/hooks/useSelectableDestChains.js +42 -36
  249. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  250. package/dist/styles.css +3 -0
  251. package/package.json +2 -2
  252. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts +0 -15
  253. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts.map +0 -1
  254. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +0 -92
  255. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +0 -1
@@ -10,6 +10,8 @@ import { useLimitWrapEthProps } from '../components/widget/WrapEth/hooks/useWrap
10
10
  import { useLimitButtonExtraProps } from './button/hooks/useWidgetButtonExtraProps.js';
11
11
  import { useAtomValue } from './store.js';
12
12
  import { limitPayInputAmountWeiAtom, limitReceiveInputAmountWeiAtom } from './limit/state/limitInputAmountAtom.js';
13
+ import { useDeltaSwapPriceForLimit } from './limit/useLimitRate.js';
14
+ import { isBridgePrice } from '../hooks/swap/prices/delta/queries/useDeltaPriceQuery.js';
13
15
 
14
16
  function LimitOrderDrawerButton(t0) {
15
17
  const $ = distExports.c(20);
@@ -86,7 +88,7 @@ function LimitOrderDrawerButton(t0) {
86
88
  return t1;
87
89
  }
88
90
  function LimitOrderButton() {
89
- const $ = distExports.c(18);
91
+ const $ = distExports.c(22);
90
92
  const tokenFromInputProps = useLimitTokenFromInputProps();
91
93
  const tokenToInputProps = useLimitTokenToInputProps();
92
94
  const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);
@@ -109,46 +111,70 @@ function LimitOrderButton() {
109
111
  t0 = $[4];
110
112
  }
111
113
  const orderProps = t0;
114
+ const isCrosschainOrder = tokenFromInputProps.token && tokenToInputProps.token && tokenFromInputProps.token.network !== tokenToInputProps.token.network;
112
115
  let t1;
113
- if ($[5] !== payAmountWei || $[6] !== receiveAmountWei || $[7] !== tokenFromInputProps.token || $[8] !== tokenToInputProps.token) {
114
- t1 = tokenFromInputProps.token && tokenToInputProps.token && receiveAmountWei && Number(payAmountWei) > 0 && Number(receiveAmountWei) > 0 ? {
116
+ if ($[5] !== isCrosschainOrder) {
117
+ t1 = {
118
+ enabled: isCrosschainOrder,
119
+ tradeMode: "limit"
120
+ };
121
+ $[5] = isCrosschainOrder;
122
+ $[6] = t1;
123
+ } else {
124
+ t1 = $[6];
125
+ }
126
+ const {
127
+ price: deltaCrosschainPrice
128
+ } = useDeltaSwapPriceForLimit(t1);
129
+ let limitPrice;
130
+ if ($[7] !== deltaCrosschainPrice || $[8] !== isCrosschainOrder || $[9] !== payAmountWei || $[10] !== receiveAmountWei || $[11] !== tokenFromInputProps.token || $[12] !== tokenToInputProps.token) {
131
+ limitPrice = tokenFromInputProps.token && tokenToInputProps.token && receiveAmountWei && Number(payAmountWei) > 0 && Number(receiveAmountWei) > 0 ? {
115
132
  srcTokenAddress: tokenFromInputProps.token.address,
116
133
  destTokenAddress: tokenToInputProps.token.address,
117
134
  srcAmount: payAmountWei,
118
- destAmount: receiveAmountWei
135
+ destAmount: receiveAmountWei,
136
+ bridgePrice: isCrosschainOrder && deltaCrosschainPrice && isBridgePrice(deltaCrosschainPrice) ? deltaCrosschainPrice : void 0
119
137
  } : void 0;
120
- $[5] = payAmountWei;
121
- $[6] = receiveAmountWei;
122
- $[7] = tokenFromInputProps.token;
123
- $[8] = tokenToInputProps.token;
124
- $[9] = t1;
138
+ if (isCrosschainOrder && limitPrice) {
139
+ if (deltaCrosschainPrice && isBridgePrice(deltaCrosschainPrice)) {
140
+ limitPrice.bridgePrice = deltaCrosschainPrice;
141
+ } else {
142
+ limitPrice = void 0;
143
+ }
144
+ }
145
+ $[7] = deltaCrosschainPrice;
146
+ $[8] = isCrosschainOrder;
147
+ $[9] = payAmountWei;
148
+ $[10] = receiveAmountWei;
149
+ $[11] = tokenFromInputProps.token;
150
+ $[12] = tokenToInputProps.token;
151
+ $[13] = limitPrice;
125
152
  } else {
126
- t1 = $[9];
153
+ limitPrice = $[13];
127
154
  }
128
- const limitPrice = t1;
129
155
  let t2;
130
- if ($[10] !== tokenFromInputProps.token || $[11] !== tokenToInputProps.token) {
156
+ if ($[14] !== tokenFromInputProps.token || $[15] !== tokenToInputProps.token) {
131
157
  t2 = {
132
158
  tokenFrom: tokenFromInputProps.token,
133
159
  tokenTo: tokenToInputProps.token
134
160
  };
135
- $[10] = tokenFromInputProps.token;
136
- $[11] = tokenToInputProps.token;
137
- $[12] = t2;
161
+ $[14] = tokenFromInputProps.token;
162
+ $[15] = tokenToInputProps.token;
163
+ $[16] = t2;
138
164
  } else {
139
- t2 = $[12];
165
+ t2 = $[16];
140
166
  }
141
167
  const extraProps = useLimitButtonExtraProps(t2);
142
168
  let t3;
143
- if ($[13] !== extraProps || $[14] !== limitPrice || $[15] !== orderProps || $[16] !== wrapEthProps) {
169
+ if ($[17] !== extraProps || $[18] !== limitPrice || $[19] !== orderProps || $[20] !== wrapEthProps) {
144
170
  t3 = /* @__PURE__ */ jsx(LimitOrderDrawerButton, { orderProps, wrapEthProps, limitPrice, ...extraProps });
145
- $[13] = extraProps;
146
- $[14] = limitPrice;
147
- $[15] = orderProps;
148
- $[16] = wrapEthProps;
149
- $[17] = t3;
171
+ $[17] = extraProps;
172
+ $[18] = limitPrice;
173
+ $[19] = orderProps;
174
+ $[20] = wrapEthProps;
175
+ $[21] = t3;
150
176
  } else {
151
- t3 = $[17];
177
+ t3 = $[21];
152
178
  }
153
179
  return t3;
154
180
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LimitOrderButton.js","sources":["../../src/core/LimitOrderButton.tsx"],"sourcesContent":["import type { Button } from \"@/components/ui/button\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useAccount } from \"wagmi\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { LimitTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport type { UserDefinedLimitPrice } from \"@/hooks/swap/tradeFlow/useLimitOrderFlow\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useLimitWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { useLimitButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"./limit/state/limitInputAmountAtom\";\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n limitPrice?: UserDefinedLimitPrice;\n wrapEthProps: WrapEthProps;\n labelOverride?: string;\n};\n\nfunction LimitOrderDrawerButton({\n orderProps,\n drawerContainer,\n limitPrice,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n return (\n <LimitTradeFlowScreenButton\n orderProps={orderProps}\n limitPrice={limitPrice}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n}\n\nexport function LimitOrderButton() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n const tokenToInputProps = useLimitTokenToInputProps();\n\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(limitReceiveInputAmountWeiAtom);\n\n const wrapEthProps = useLimitWrapEthProps();\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n }\n : undefined;\n\n const limitPrice =\n tokenFromInputProps.token &&\n tokenToInputProps.token &&\n receiveAmountWei &&\n Number(payAmountWei) > 0 &&\n Number(receiveAmountWei) > 0\n ? {\n srcTokenAddress: tokenFromInputProps.token.address,\n destTokenAddress: tokenToInputProps.token.address,\n srcAmount: payAmountWei,\n destAmount: receiveAmountWei,\n }\n : undefined;\n\n const extraProps = useLimitButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <LimitOrderDrawerButton\n orderProps={orderProps}\n wrapEthProps={wrapEthProps}\n limitPrice={limitPrice}\n {...extraProps}\n />\n );\n}\n"],"names":["LimitOrderDrawerButton","t0","$","_c","buttonProps","drawerContainer","labelOverride","limitPrice","orderProps","wrapEthProps","isConnected","useAccount","t1","shouldWrap","LimitOrderButton","tokenFromInputProps","useLimitTokenFromInputProps","tokenToInputProps","useLimitTokenToInputProps","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","receiveAmountWei","limitReceiveInputAmountWeiAtom","useLimitWrapEthProps","amount","token","fromToken","toToken","fromAmount","toAmount","undefined","Number","srcTokenAddress","address","destTokenAddress","srcAmount","destAmount","t2","tokenFrom","tokenTo","extraProps","useLimitButtonExtraProps","t3"],"mappings":"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"}
1
+ {"version":3,"file":"LimitOrderButton.js","sources":["../../src/core/LimitOrderButton.tsx"],"sourcesContent":["import type { Button } from \"@/components/ui/button\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useAccount } from \"wagmi\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { LimitTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport type { UserDefinedLimitPrice } from \"@/hooks/swap/tradeFlow/useLimitOrderFlow\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useLimitWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { useLimitButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"./limit/state/limitInputAmountAtom\";\nimport { useDeltaSwapPriceForLimit } from \"./limit/useLimitRate\";\nimport { isBridgePrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n limitPrice?: UserDefinedLimitPrice;\n wrapEthProps: WrapEthProps;\n labelOverride?: string;\n};\n\nfunction LimitOrderDrawerButton({\n orderProps,\n drawerContainer,\n limitPrice,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n return (\n <LimitTradeFlowScreenButton\n orderProps={orderProps}\n limitPrice={limitPrice}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n}\n\nexport function LimitOrderButton() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n const tokenToInputProps = useLimitTokenToInputProps();\n\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(limitReceiveInputAmountWeiAtom);\n\n const wrapEthProps = useLimitWrapEthProps();\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n }\n : undefined;\n\n const isCrosschainOrder =\n tokenFromInputProps.token &&\n tokenToInputProps.token &&\n tokenFromInputProps.token.network !== tokenToInputProps.token.network;\n\n const { price: deltaCrosschainPrice } = useDeltaSwapPriceForLimit({\n enabled: isCrosschainOrder,\n tradeMode: \"limit\",\n });\n\n let limitPrice: UserDefinedLimitPrice | undefined =\n tokenFromInputProps.token &&\n tokenToInputProps.token &&\n receiveAmountWei &&\n Number(payAmountWei) > 0 &&\n Number(receiveAmountWei) > 0\n ? {\n srcTokenAddress: tokenFromInputProps.token.address,\n destTokenAddress: tokenToInputProps.token.address,\n srcAmount: payAmountWei,\n destAmount: receiveAmountWei,\n bridgePrice:\n isCrosschainOrder &&\n deltaCrosschainPrice &&\n isBridgePrice(deltaCrosschainPrice)\n ? deltaCrosschainPrice\n : undefined,\n }\n : undefined;\n\n if (isCrosschainOrder && limitPrice) {\n // for Crosschain LOrder bridgePrice is required\n if (deltaCrosschainPrice && isBridgePrice(deltaCrosschainPrice)) {\n limitPrice.bridgePrice = deltaCrosschainPrice;\n } else {\n // this will disable the button\n limitPrice = undefined;\n }\n }\n\n const extraProps = useLimitButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <LimitOrderDrawerButton\n orderProps={orderProps}\n wrapEthProps={wrapEthProps}\n limitPrice={limitPrice}\n {...extraProps}\n />\n );\n}\n"],"names":["LimitOrderDrawerButton","t0","$","_c","buttonProps","drawerContainer","labelOverride","limitPrice","orderProps","wrapEthProps","isConnected","useAccount","t1","shouldWrap","LimitOrderButton","tokenFromInputProps","useLimitTokenFromInputProps","tokenToInputProps","useLimitTokenToInputProps","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","receiveAmountWei","limitReceiveInputAmountWeiAtom","useLimitWrapEthProps","amount","token","fromToken","toToken","fromAmount","toAmount","undefined","isCrosschainOrder","network","enabled","tradeMode","price","deltaCrosschainPrice","useDeltaSwapPriceForLimit","Number","srcTokenAddress","address","destTokenAddress","srcAmount","destAmount","bridgePrice","isBridgePrice","t2","tokenFrom","tokenTo","extraProps","useLimitButtonExtraProps","t3"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Updaters.d.ts","sourceRoot":"","sources":["../../src/core/Updaters.tsx"],"names":[],"mappings":"AAiBA,eAAO,MAAM,QAAQ,YA4CpB,CAAC"}
1
+ {"version":3,"file":"Updaters.d.ts","sourceRoot":"","sources":["../../src/core/Updaters.tsx"],"names":[],"mappings":"AAiBA,eAAO,MAAM,QAAQ,YA6CpB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { d as distExports } from '../_virtual/index.js';
1
2
  import { useTokenFromPermit1Nonce } from '../hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js';
2
3
  import { useTokenFromPermit2TransferFromNonce } from '../hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js';
3
4
  import { useTokenFromPermitInfo } from '../hooks/permit/hooks/permit1/useTokenFromPermitInfo.js';
@@ -16,10 +17,30 @@ import { useActivateConfigEffect } from './state/configEffectAtom.js';
16
17
  import { useOnPriceUpdates } from '../events/hooks/useOnPriceUpdates.js';
17
18
 
18
19
  const Updaters = () => {
20
+ const $ = distExports.c(2);
19
21
  useFetchTokenLists();
20
22
  useActivateEffects();
21
23
  usePrefetchTokenBalances();
22
- useGetBridgeInfo();
24
+ let t0;
25
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
26
+ t0 = {
27
+ mode: "swap"
28
+ };
29
+ $[0] = t0;
30
+ } else {
31
+ t0 = $[0];
32
+ }
33
+ useGetBridgeInfo(t0);
34
+ let t1;
35
+ if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
36
+ t1 = {
37
+ mode: "limit"
38
+ };
39
+ $[1] = t1;
40
+ } else {
41
+ t1 = $[1];
42
+ }
43
+ useGetBridgeInfo(t1);
23
44
  useGetContracts();
24
45
  useTokenFromPermitInfo();
25
46
  useTokenFromPermit1Nonce();
@@ -1 +1 @@
1
- {"version":3,"file":"Updaters.js","sources":["../../src/core/Updaters.tsx"],"sourcesContent":["import { useTokenFromPermit1Nonce } from \"@/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce\";\nimport { useTokenFromPermit2TransferFromNonce } from \"@/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce\";\nimport { useTokenFromPermitInfo } from \"@/hooks/permit/hooks/permit1/useTokenFromPermitInfo\";\nimport { useGetContracts } from \"@/hooks/sdk/useGetContracts\";\nimport { useGetBridgeInfo } from \"@/hooks/useBridgeInfo\";\nimport { useFetchTokenLists } from \"@/tokens/queries\";\nimport { usePrefetchTokenBalances } from \"@/hooks/tokens/useAllTokensWithFilter\";\nimport { useSafeInfo } from \"@/lib/web3/wagmi/isInsideSafeIframe\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { useOnWalletConnected } from \"@/events/hooks/useOnWalletConnect\";\nimport { useActivateEffects as useActivateEventEffects } from \"@/events/hooks/useActivateEffects\";\nimport { useActivateEffects as useActivateTransactionEffects } from \"@/transactions/state/hooks/useActivateEffects\";\nimport { useActivateEffects as useActivateTokenListEffects } from \"@/tokens/lists/state/effects\";\nimport { useActivateFormInputEffects } from \"./inputs/state/setTokenByAddressAtom\";\nimport { useActivateConfigEffect } from \"./state/configEffectAtom\";\nimport { useOnPriceUpdates } from \"@/events/hooks/useOnPriceUpdates\";\n\nexport const Updaters = () => {\n // fetch tokens from currently enabled lists\n useFetchTokenLists();\n // activate effects for token lists\n useActivateTokenListEffects();\n\n // all balances that would be fetched in TokenSelector for current chain\n usePrefetchTokenBalances();\n useGetBridgeInfo(); // @TODO: prefetch instead\n useGetContracts(); // @TODO: prefetch instead\n\n // for each selected tokenFrom detect its supported Permit1\n useTokenFromPermitInfo();\n // for each selected tokenFrom keep track of Token.nonce if available on Token\n useTokenFromPermit1Nonce();\n // global Permit2 TransferFrom nonce, not token-specific but for chain=Token.network\n useTokenFromPermit2TransferFromNonce();\n\n // check ahead of opening ConnectWallets drawer to prevent Safe button appearing\n // if we are not in a non-Safe iframe\n useSafeInfo();\n\n // check if wallet can batch txs\n useCanBatchTxs();\n\n // events when wallet is connected\n useOnWalletConnected();\n\n // events when price state updates\n useOnPriceUpdates();\n\n // activate effects for state atoms\n useActivateEventEffects();\n\n // activate effects for transaction atoms\n useActivateTransactionEffects();\n\n // activate effects for form input atoms\n useActivateFormInputEffects();\n\n // activate widget config effects\n useActivateConfigEffect();\n\n return null;\n};\n"],"names":["Updaters","useFetchTokenLists","useActivateTokenListEffects","usePrefetchTokenBalances","useGetBridgeInfo","useGetContracts","useTokenFromPermitInfo","useTokenFromPermit1Nonce","useTokenFromPermit2TransferFromNonce","useSafeInfo","useCanBatchTxs","useOnWalletConnected","useOnPriceUpdates","useActivateEventEffects","useActivateTransactionEffects","useActivateFormInputEffects","useActivateConfigEffect"],"mappings":";;;;;;;;;;;;;;;;;AAiBO,MAAMA,WAAWA,MAAA;AAEtBC,EAAAA,kBAAAA,EAAmB;AAEnBC,EAAAA,kBAAAA,EAA4B;AAG5BC,EAAAA,wBAAAA,EAAyB;AACzBC,EAAAA,gBAAAA,EAAiB;AACjBC,EAAAA,eAAAA,EAAgB;AAGhBC,EAAAA,sBAAAA,EAAuB;AAEvBC,EAAAA,wBAAAA,EAAyB;AAEzBC,EAAAA,oCAAAA,EAAqC;AAIrCC,EAAAA,WAAAA,EAAY;AAGZC,EAAAA,cAAAA,EAAe;AAGfC,EAAAA,oBAAAA,EAAqB;AAGrBC,EAAAA,iBAAAA,EAAkB;AAGlBC,EAAAA,oBAAAA,EAAwB;AAGxBC,EAAAA,oBAAAA,EAA8B;AAG9BC,EAAAA,2BAAAA,EAA4B;AAG5BC,EAAAA,uBAAAA,EAAwB;AAAC,EAAA,OAElB,IAAA;AAAI;;;;"}
1
+ {"version":3,"file":"Updaters.js","sources":["../../src/core/Updaters.tsx"],"sourcesContent":["import { useTokenFromPermit1Nonce } from \"@/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce\";\nimport { useTokenFromPermit2TransferFromNonce } from \"@/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce\";\nimport { useTokenFromPermitInfo } from \"@/hooks/permit/hooks/permit1/useTokenFromPermitInfo\";\nimport { useGetContracts } from \"@/hooks/sdk/useGetContracts\";\nimport { useGetBridgeInfo } from \"@/hooks/useBridgeInfo\";\nimport { useFetchTokenLists } from \"@/tokens/queries\";\nimport { usePrefetchTokenBalances } from \"@/hooks/tokens/useAllTokensWithFilter\";\nimport { useSafeInfo } from \"@/lib/web3/wagmi/isInsideSafeIframe\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { useOnWalletConnected } from \"@/events/hooks/useOnWalletConnect\";\nimport { useActivateEffects as useActivateEventEffects } from \"@/events/hooks/useActivateEffects\";\nimport { useActivateEffects as useActivateTransactionEffects } from \"@/transactions/state/hooks/useActivateEffects\";\nimport { useActivateEffects as useActivateTokenListEffects } from \"@/tokens/lists/state/effects\";\nimport { useActivateFormInputEffects } from \"./inputs/state/setTokenByAddressAtom\";\nimport { useActivateConfigEffect } from \"./state/configEffectAtom\";\nimport { useOnPriceUpdates } from \"@/events/hooks/useOnPriceUpdates\";\n\nexport const Updaters = () => {\n // fetch tokens from currently enabled lists\n useFetchTokenLists();\n // activate effects for token lists\n useActivateTokenListEffects();\n\n // all balances that would be fetched in TokenSelector for current chain\n usePrefetchTokenBalances();\n useGetBridgeInfo({ mode: \"swap\" }); // @TODO: prefetch instead\n useGetBridgeInfo({ mode: \"limit\" });\n useGetContracts(); // @TODO: prefetch instead\n\n // for each selected tokenFrom detect its supported Permit1\n useTokenFromPermitInfo();\n // for each selected tokenFrom keep track of Token.nonce if available on Token\n useTokenFromPermit1Nonce();\n // global Permit2 TransferFrom nonce, not token-specific but for chain=Token.network\n useTokenFromPermit2TransferFromNonce();\n\n // check ahead of opening ConnectWallets drawer to prevent Safe button appearing\n // if we are not in a non-Safe iframe\n useSafeInfo();\n\n // check if wallet can batch txs\n useCanBatchTxs();\n\n // events when wallet is connected\n useOnWalletConnected();\n\n // events when price state updates\n useOnPriceUpdates();\n\n // activate effects for state atoms\n useActivateEventEffects();\n\n // activate effects for transaction atoms\n useActivateTransactionEffects();\n\n // activate effects for form input atoms\n useActivateFormInputEffects();\n\n // activate widget config effects\n useActivateConfigEffect();\n\n return null;\n};\n"],"names":["Updaters","$","_c","useFetchTokenLists","useActivateTokenListEffects","usePrefetchTokenBalances","t0","Symbol","for","mode","useGetBridgeInfo","t1","useGetContracts","useTokenFromPermitInfo","useTokenFromPermit1Nonce","useTokenFromPermit2TransferFromNonce","useSafeInfo","useCanBatchTxs","useOnWalletConnected","useOnPriceUpdates","useActivateEventEffects","useActivateTransactionEffects","useActivateFormInputEffects","useActivateConfigEffect"],"mappings":";;;;;;;;;;;;;;;;;;AAiBO,MAAMA,WAAWA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAEtBC,EAAAA,kBAAAA,EAAmB;AAEnBC,EAAAA,kBAAAA,EAA4B;AAG5BC,EAAAA,wBAAAA,EAAyB;AAAC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAL,EAAA,CAAA,CAAA,KAAAM,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACTF,IAAAA,EAAAA,GAAA;AAAA,MAAAG,IAAAA,EAAQ;AAAA,KAAO;AAACR,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAjCS,EAAAA,gBAAAA,CAAiBJ,EAAgB,CAAA;AAAC,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAV,EAAA,CAAA,CAAA,KAAAM,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACjBG,IAAAA,EAAAA,GAAA;AAAA,MAAAF,IAAAA,EAAQ;AAAA,KAAQ;AAACR,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAlCS,EAAAA,gBAAAA,CAAiBC,EAAiB,CAAA;AAClCC,EAAAA,eAAAA,EAAgB;AAGhBC,EAAAA,sBAAAA,EAAuB;AAEvBC,EAAAA,wBAAAA,EAAyB;AAEzBC,EAAAA,oCAAAA,EAAqC;AAIrCC,EAAAA,WAAAA,EAAY;AAGZC,EAAAA,cAAAA,EAAe;AAGfC,EAAAA,oBAAAA,EAAqB;AAGrBC,EAAAA,iBAAAA,EAAkB;AAGlBC,EAAAA,oBAAAA,EAAwB;AAGxBC,EAAAA,oBAAAA,EAA8B;AAG9BC,EAAAA,2BAAAA,EAA4B;AAG5BC,EAAAA,uBAAAA,EAAwB;AAAC,EAAA,OAElB,IAAA;AAAI;;;;"}
@@ -0,0 +1,10 @@
1
+ import { SupportedChainId } from '../../lib/web3/wagmi/types';
2
+ import { Getter } from 'jotai';
3
+ import { BridgeInfoMode } from '../../hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo';
4
+ export declare function isCrosschainPossible({ get, chainIdFrom, chainIdTo, mode, }: {
5
+ get: Getter;
6
+ chainIdFrom: SupportedChainId;
7
+ chainIdTo: SupportedChainId;
8
+ mode: BridgeInfoMode;
9
+ }): boolean;
10
+ //# sourceMappingURL=isCrosshcainPossible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCrosshcainPossible.d.ts","sourceRoot":"","sources":["../../../src/core/across/isCrosshcainPossible.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4DAA4D,CAAC;AAEjG,wBAAgB,oBAAoB,CAAC,EACnC,GAAG,EACH,WAAW,EACX,SAAS,EACT,IAAI,GACL,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;CACtB,GAAG,OAAO,CAwBV"}
@@ -0,0 +1,41 @@
1
+ import { deltaParamAtom } from '../../components/widget/TradeParameters/state/deltaParamAtom.js';
2
+ import { tradeModeAtom } from '../state/tradeModeAtom.js';
3
+ import { isAcrossAvailable } from './utils.js';
4
+ import { widgetConfigAtom } from '../state/configAtom.js';
5
+ import { enabledSrcChainsAtom } from '../state/enabledChainsAtom.js';
6
+ import { getSelectableDestChains } from '../state/getSelectableDestChains.js';
7
+ import { deltaEnabledOnAPI } from '../../lib/constants/delta.js';
8
+
9
+ function isCrosschainPossible({
10
+ get,
11
+ chainIdFrom,
12
+ chainIdTo,
13
+ mode
14
+ }) {
15
+ if (!deltaEnabledOnAPI[chainIdFrom]) return false;
16
+ if (!isAcrossAvailable({
17
+ chainIdFrom,
18
+ chainIdTo,
19
+ mode
20
+ })) return false;
21
+ const tradeMode = get(tradeModeAtom);
22
+ if (tradeMode !== "swap" && tradeMode !== "limit") return false;
23
+ const deltaEnabledInSettings = get(deltaParamAtom);
24
+ if (!deltaEnabledInSettings) return false;
25
+ const {
26
+ enableDelta,
27
+ enableCrossChain
28
+ } = get(widgetConfigAtom);
29
+ if (!enableDelta || !enableCrossChain) return false;
30
+ const enabledSrcChains = get(enabledSrcChainsAtom);
31
+ if (!enabledSrcChains.includes(chainIdFrom)) return false;
32
+ const selectableDestChains = getSelectableDestChains(get, {
33
+ fromChainId: chainIdFrom,
34
+ mode
35
+ });
36
+ if (!selectableDestChains.includes(chainIdTo)) return false;
37
+ return true;
38
+ }
39
+
40
+ export { isCrosschainPossible };
41
+ //# sourceMappingURL=isCrosshcainPossible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCrosshcainPossible.js","sources":["../../../src/core/across/isCrosshcainPossible.ts"],"sourcesContent":["import { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { tradeModeAtom } from \"../state/tradeModeAtom\";\nimport { isAcrossAvailable } from \"./utils\";\nimport { widgetConfigAtom } from \"../state/configAtom\";\nimport { enabledSrcChainsAtom } from \"../state/enabledChainsAtom\";\nimport { getSelectableDestChains } from \"../state/getSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport type { Getter } from \"jotai\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo\";\n\nexport function isCrosschainPossible({\n get,\n chainIdFrom,\n chainIdTo,\n mode,\n}: {\n get: Getter;\n chainIdFrom: SupportedChainId;\n chainIdTo: SupportedChainId;\n mode: BridgeInfoMode;\n}): boolean {\n if (!deltaEnabledOnAPI[chainIdFrom]) return false;\n\n if (!isAcrossAvailable({ chainIdFrom, chainIdTo, mode })) return false;\n\n const tradeMode = get(tradeModeAtom);\n if (tradeMode !== \"swap\" && tradeMode !== \"limit\") return false;\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n if (!deltaEnabledInSettings) return false;\n\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n if (!enableDelta || !enableCrossChain) return false;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainIdFrom)) return false;\n\n const selectableDestChains = getSelectableDestChains(get, {\n fromChainId: chainIdFrom,\n mode,\n });\n if (!selectableDestChains.includes(chainIdTo)) return false;\n\n return true;\n}\n"],"names":["isCrosschainPossible","get","chainIdFrom","chainIdTo","mode","deltaEnabledOnAPI","isAcrossAvailable","tradeMode","tradeModeAtom","deltaEnabledInSettings","deltaParamAtom","enableDelta","enableCrossChain","widgetConfigAtom","enabledSrcChains","enabledSrcChainsAtom","includes","selectableDestChains","getSelectableDestChains","fromChainId"],"mappings":";;;;;;;;AAWO,SAASA,oBAAAA,CAAqB;AAAA,EACnCC,GAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC;AAMF,CAAA,EAAY;AACV,EAAA,IAAI,CAACC,iBAAAA,CAAkBH,WAAW,CAAA,EAAG,OAAO,KAAA;AAE5C,EAAA,IAAI,CAACI,iBAAAA,CAAkB;AAAA,IAAEJ,WAAAA;AAAAA,IAAaC,SAAAA;AAAAA,IAAWC;AAAAA,GAAM,GAAG,OAAO,KAAA;AAEjE,EAAA,MAAMG,SAAAA,GAAYN,IAAIO,aAAa,CAAA;AACnC,EAAA,IAAID,SAAAA,KAAc,MAAA,IAAUA,SAAAA,KAAc,OAAA,EAAS,OAAO,KAAA;AAE1D,EAAA,MAAME,sBAAAA,GAAyBR,IAAIS,cAAc,CAAA;AACjD,EAAA,IAAI,CAACD,wBAAwB,OAAO,KAAA;AAEpC,EAAA,MAAM;AAAA,IAAEE,WAAAA;AAAAA,IAAaC;AAAAA,GAAiB,GAAIX,IAAIY,gBAAgB,CAAA;AAC9D,EAAA,IAAI,CAACF,WAAAA,IAAe,CAACC,gBAAAA,EAAkB,OAAO,KAAA;AAE9C,EAAA,MAAME,gBAAAA,GAAmBb,IAAIc,oBAAoB,CAAA;AACjD,EAAA,IAAI,CAACD,gBAAAA,CAAiBE,QAAAA,CAASd,WAAW,GAAG,OAAO,KAAA;AAEpD,EAAA,MAAMe,oBAAAA,GAAuBC,wBAAwBjB,GAAAA,EAAK;AAAA,IACxDkB,WAAAA,EAAajB,WAAAA;AAAAA,IACbE;AAAAA,GACD,CAAA;AACD,EAAA,IAAI,CAACa,oBAAAA,CAAqBD,QAAAA,CAASb,SAAS,GAAG,OAAO,KAAA;AAEtD,EAAA,OAAO,IAAA;AACT;;;;"}
@@ -1,20 +1,24 @@
1
1
  import { Token } from '../../tokens/state/types';
2
2
  import { SupportedChainId } from '../../lib/web3/wagmi/types';
3
3
  import { TokensFromLists } from '../../tokens/state/fromListsAtom';
4
- export declare function isAcrossAvailable({ chainIdFrom, chainIdTo, }: {
4
+ import { BridgeInfoMode } from '../../hooks/swap/prices/delta/queries/bridgeInfo/types';
5
+ export declare function isAcrossAvailable({ chainIdFrom, chainIdTo, mode, }: {
5
6
  chainIdFrom: SupportedChainId;
6
7
  chainIdTo: SupportedChainId;
8
+ mode: BridgeInfoMode;
7
9
  }): boolean;
8
- export declare function findFirstTokenFromAcross({ fromChainId, toChainId, listByChainId, }: {
10
+ export declare function findFirstTokenFromAcross({ fromChainId, toChainId, listByChainId, mode, }: {
9
11
  fromChainId: SupportedChainId;
10
12
  toChainId: SupportedChainId;
11
13
  listByChainId: Record<number, TokensFromLists<Token>>;
14
+ mode: BridgeInfoMode;
12
15
  }): Token | undefined;
13
16
  type IsTokenFromAcrossInput = {
14
17
  token: Pick<Token, "address">;
15
18
  fromChainId: SupportedChainId;
16
19
  toChainId: SupportedChainId;
20
+ mode: BridgeInfoMode;
17
21
  };
18
- export declare function isTokenFromAcross({ token, fromChainId, toChainId, }: IsTokenFromAcrossInput): boolean | undefined;
22
+ export declare function isTokenFromAcross({ token, fromChainId, toChainId, mode, }: IsTokenFromAcrossInput): boolean | undefined;
19
23
  export {};
20
24
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/across/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAQV;AAED,wBAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,SAAS,EACT,aAAa,GACd,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;CACvD,GAAG,KAAK,GAAG,SAAS,CAcpB;AAED,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,SAAS,GACV,EAAE,sBAAsB,GAAG,OAAO,GAAG,SAAS,CAW9C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/core/across/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAGzF,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,EACT,IAAI,GACL,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;CACtB,GAAG,OAAO,CAQV;AAED,wBAAgB,wBAAwB,CAAC,EACvC,WAAW,EACX,SAAS,EACT,aAAa,EACb,IAAI,GACL,EAAE;IACD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,IAAI,EAAE,cAAc,CAAC;CACtB,GAAG,KAAK,GAAG,SAAS,CAcpB;AAED,KAAK,sBAAsB,GAAG;IAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;CACtB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,SAAS,EACT,IAAI,GACL,EAAE,sBAAsB,GAAG,OAAO,GAAG,SAAS,CAW9C"}
@@ -1,10 +1,11 @@
1
- import { getBridgeInfoQueryData } from '../../hooks/swap/prices/delta/queries/useBridgeInfo.js';
1
+ import { getBridgeInfoQueryData } from '../../hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js';
2
2
 
3
3
  function isAcrossAvailable({
4
4
  chainIdFrom,
5
- chainIdTo
5
+ chainIdTo,
6
+ mode
6
7
  }) {
7
- const cachedBridgeInfo = getBridgeInfoQueryData();
8
+ const cachedBridgeInfo = getBridgeInfoQueryData(mode);
8
9
  if (!cachedBridgeInfo) return false;
9
10
  const acrossTokens = cachedBridgeInfo[chainIdFrom]?.[chainIdTo];
10
11
  return !!acrossTokens?.length;
@@ -12,9 +13,10 @@ function isAcrossAvailable({
12
13
  function findFirstTokenFromAcross({
13
14
  fromChainId,
14
15
  toChainId,
15
- listByChainId
16
+ listByChainId,
17
+ mode
16
18
  }) {
17
- const cachedBridgeInfo = getBridgeInfoQueryData();
19
+ const cachedBridgeInfo = getBridgeInfoQueryData(mode);
18
20
  if (!cachedBridgeInfo) return;
19
21
  const tokenMap = listByChainId[toChainId]?.addressMap;
20
22
  const acrossTokens = cachedBridgeInfo[fromChainId]?.[toChainId];
@@ -24,9 +26,10 @@ function findFirstTokenFromAcross({
24
26
  function isTokenFromAcross({
25
27
  token,
26
28
  fromChainId,
27
- toChainId
29
+ toChainId,
30
+ mode
28
31
  }) {
29
- const cachedBridgeInfo = getBridgeInfoQueryData();
32
+ const cachedBridgeInfo = getBridgeInfoQueryData(mode);
30
33
  if (!cachedBridgeInfo) return;
31
34
  const tokenAddresses = cachedBridgeInfo[fromChainId]?.[toChainId];
32
35
  if (!tokenAddresses) return false;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/core/across/utils.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\n\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { TokensFromLists } from \"@/tokens/state/fromListsAtom\";\nimport { getBridgeInfoQueryData } from \"@/hooks/swap/prices/delta/queries/useBridgeInfo\";\n\nexport function isAcrossAvailable({\n chainIdFrom,\n chainIdTo,\n}: {\n chainIdFrom: SupportedChainId;\n chainIdTo: SupportedChainId;\n}): boolean {\n const cachedBridgeInfo = getBridgeInfoQueryData();\n\n if (!cachedBridgeInfo) return false;\n\n const acrossTokens = cachedBridgeInfo[chainIdFrom]?.[chainIdTo];\n\n return !!acrossTokens?.length;\n}\n\nexport function findFirstTokenFromAcross({\n fromChainId,\n toChainId,\n listByChainId,\n}: {\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n listByChainId: Record<number, TokensFromLists<Token>>;\n}): Token | undefined {\n const cachedBridgeInfo = getBridgeInfoQueryData();\n\n if (!cachedBridgeInfo) return;\n\n const tokenMap = listByChainId[toChainId]?.addressMap;\n\n const acrossTokens = cachedBridgeInfo[fromChainId]?.[toChainId];\n\n const tokenToAddress = acrossTokens?.find(\n (address) => tokenMap?.[address.toLowerCase()]\n );\n\n return tokenToAddress ? tokenMap?.[tokenToAddress.toLowerCase()] : undefined;\n}\n\ntype IsTokenFromAcrossInput = {\n token: Pick<Token, \"address\">;\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n};\n\nexport function isTokenFromAcross({\n token,\n fromChainId,\n toChainId,\n}: IsTokenFromAcrossInput): boolean | undefined {\n const cachedBridgeInfo = getBridgeInfoQueryData();\n if (!cachedBridgeInfo) return;\n const tokenAddresses = cachedBridgeInfo[fromChainId]?.[toChainId];\n\n if (!tokenAddresses) return false;\n const isIncluded = tokenAddresses.find(\n (address) => address.toLowerCase() === token.address.toLowerCase()\n );\n\n return !!isIncluded;\n}\n"],"names":["isAcrossAvailable","chainIdFrom","chainIdTo","cachedBridgeInfo","getBridgeInfoQueryData","acrossTokens","length","findFirstTokenFromAcross","fromChainId","toChainId","listByChainId","tokenMap","addressMap","tokenToAddress","find","address","toLowerCase","undefined","isTokenFromAcross","token","tokenAddresses","isIncluded"],"mappings":";;AAMO,SAASA,iBAAAA,CAAkB;AAAA,EAChCC,WAAAA;AAAAA,EACAC;AAIF,CAAA,EAAY;AACV,EAAA,MAAMC,mBAAmBC,sBAAAA,EAAuB;AAEhD,EAAA,IAAI,CAACD,kBAAkB,OAAO,KAAA;AAE9B,EAAA,MAAME,YAAAA,GAAeF,gBAAAA,CAAiBF,WAAW,CAAA,GAAIC,SAAS,CAAA;AAE9D,EAAA,OAAO,CAAC,CAACG,YAAAA,EAAcC,MAAAA;AACzB;AAEO,SAASC,wBAAAA,CAAyB;AAAA,EACvCC,WAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC;AAKF,CAAA,EAAsB;AACpB,EAAA,MAAMP,mBAAmBC,sBAAAA,EAAuB;AAEhD,EAAA,IAAI,CAACD,gBAAAA,EAAkB;AAEvB,EAAA,MAAMQ,QAAAA,GAAWD,aAAAA,CAAcD,SAAS,CAAA,EAAGG,UAAAA;AAE3C,EAAA,MAAMP,YAAAA,GAAeF,gBAAAA,CAAiBK,WAAW,CAAA,GAAIC,SAAS,CAAA;AAE9D,EAAA,MAAMI,cAAAA,GAAiBR,cAAcS,IAAAA,CAClCC,CAAAA,OAAAA,KAAYJ,WAAWI,OAAAA,CAAQC,WAAAA,EAAa,CAC/C,CAAA;AAEA,EAAA,OAAOH,cAAAA,GAAiBF,QAAAA,GAAWE,cAAAA,CAAeG,WAAAA,EAAa,CAAA,GAAIC,MAAAA;AACrE;AAQO,SAASC,iBAAAA,CAAkB;AAAA,EAChCC,KAAAA;AAAAA,EACAX,WAAAA;AAAAA,EACAC;AACsB,CAAA,EAAwB;AAC9C,EAAA,MAAMN,mBAAmBC,sBAAAA,EAAuB;AAChD,EAAA,IAAI,CAACD,gBAAAA,EAAkB;AACvB,EAAA,MAAMiB,cAAAA,GAAiBjB,gBAAAA,CAAiBK,WAAW,CAAA,GAAIC,SAAS,CAAA;AAEhE,EAAA,IAAI,CAACW,gBAAgB,OAAO,KAAA;AAC5B,EAAA,MAAMC,UAAAA,GAAaD,cAAAA,CAAeN,IAAAA,CAC/BC,CAAAA,OAAAA,KAAYA,OAAAA,CAAQC,aAAY,KAAMG,KAAAA,CAAMJ,OAAAA,CAAQC,WAAAA,EACvD,CAAA;AAEA,EAAA,OAAO,CAAC,CAACK,UAAAA;AACX;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/core/across/utils.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\n\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { TokensFromLists } from \"@/tokens/state/fromListsAtom\";\nimport { type BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport { getBridgeInfoQueryData } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData\";\n\nexport function isAcrossAvailable({\n chainIdFrom,\n chainIdTo,\n mode,\n}: {\n chainIdFrom: SupportedChainId;\n chainIdTo: SupportedChainId;\n mode: BridgeInfoMode;\n}): boolean {\n const cachedBridgeInfo = getBridgeInfoQueryData(mode);\n\n if (!cachedBridgeInfo) return false;\n\n const acrossTokens = cachedBridgeInfo[chainIdFrom]?.[chainIdTo];\n\n return !!acrossTokens?.length;\n}\n\nexport function findFirstTokenFromAcross({\n fromChainId,\n toChainId,\n listByChainId,\n mode,\n}: {\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n listByChainId: Record<number, TokensFromLists<Token>>;\n mode: BridgeInfoMode;\n}): Token | undefined {\n const cachedBridgeInfo = getBridgeInfoQueryData(mode);\n\n if (!cachedBridgeInfo) return;\n\n const tokenMap = listByChainId[toChainId]?.addressMap;\n\n const acrossTokens = cachedBridgeInfo[fromChainId]?.[toChainId];\n\n const tokenToAddress = acrossTokens?.find(\n (address) => tokenMap?.[address.toLowerCase()]\n );\n\n return tokenToAddress ? tokenMap?.[tokenToAddress.toLowerCase()] : undefined;\n}\n\ntype IsTokenFromAcrossInput = {\n token: Pick<Token, \"address\">;\n fromChainId: SupportedChainId;\n toChainId: SupportedChainId;\n mode: BridgeInfoMode;\n};\n\nexport function isTokenFromAcross({\n token,\n fromChainId,\n toChainId,\n mode,\n}: IsTokenFromAcrossInput): boolean | undefined {\n const cachedBridgeInfo = getBridgeInfoQueryData(mode);\n if (!cachedBridgeInfo) return;\n const tokenAddresses = cachedBridgeInfo[fromChainId]?.[toChainId];\n\n if (!tokenAddresses) return false;\n const isIncluded = tokenAddresses.find(\n (address) => address.toLowerCase() === token.address.toLowerCase()\n );\n\n return !!isIncluded;\n}\n"],"names":["isAcrossAvailable","chainIdFrom","chainIdTo","mode","cachedBridgeInfo","getBridgeInfoQueryData","acrossTokens","length","findFirstTokenFromAcross","fromChainId","toChainId","listByChainId","tokenMap","addressMap","tokenToAddress","find","address","toLowerCase","undefined","isTokenFromAcross","token","tokenAddresses","isIncluded"],"mappings":";;AAOO,SAASA,iBAAAA,CAAkB;AAAA,EAChCC,WAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC;AAKF,CAAA,EAAY;AACV,EAAA,MAAMC,gBAAAA,GAAmBC,uBAAuBF,IAAI,CAAA;AAEpD,EAAA,IAAI,CAACC,kBAAkB,OAAO,KAAA;AAE9B,EAAA,MAAME,YAAAA,GAAeF,gBAAAA,CAAiBH,WAAW,CAAA,GAAIC,SAAS,CAAA;AAE9D,EAAA,OAAO,CAAC,CAACI,YAAAA,EAAcC,MAAAA;AACzB;AAEO,SAASC,wBAAAA,CAAyB;AAAA,EACvCC,WAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAC,aAAAA;AAAAA,EACAR;AAMF,CAAA,EAAsB;AACpB,EAAA,MAAMC,gBAAAA,GAAmBC,uBAAuBF,IAAI,CAAA;AAEpD,EAAA,IAAI,CAACC,gBAAAA,EAAkB;AAEvB,EAAA,MAAMQ,QAAAA,GAAWD,aAAAA,CAAcD,SAAS,CAAA,EAAGG,UAAAA;AAE3C,EAAA,MAAMP,YAAAA,GAAeF,gBAAAA,CAAiBK,WAAW,CAAA,GAAIC,SAAS,CAAA;AAE9D,EAAA,MAAMI,cAAAA,GAAiBR,cAAcS,IAAAA,CAClCC,CAAAA,OAAAA,KAAYJ,WAAWI,OAAAA,CAAQC,WAAAA,EAAa,CAC/C,CAAA;AAEA,EAAA,OAAOH,cAAAA,GAAiBF,QAAAA,GAAWE,cAAAA,CAAeG,WAAAA,EAAa,CAAA,GAAIC,MAAAA;AACrE;AASO,SAASC,iBAAAA,CAAkB;AAAA,EAChCC,KAAAA;AAAAA,EACAX,WAAAA;AAAAA,EACAC,SAAAA;AAAAA,EACAP;AACsB,CAAA,EAAwB;AAC9C,EAAA,MAAMC,gBAAAA,GAAmBC,uBAAuBF,IAAI,CAAA;AACpD,EAAA,IAAI,CAACC,gBAAAA,EAAkB;AACvB,EAAA,MAAMiB,cAAAA,GAAiBjB,gBAAAA,CAAiBK,WAAW,CAAA,GAAIC,SAAS,CAAA;AAEhE,EAAA,IAAI,CAACW,gBAAgB,OAAO,KAAA;AAC5B,EAAA,MAAMC,UAAAA,GAAaD,cAAAA,CAAeN,IAAAA,CAC/BC,CAAAA,OAAAA,KAAYA,OAAAA,CAAQC,aAAY,KAAMG,KAAAA,CAAMJ,OAAAA,CAAQC,WAAAA,EACvD,CAAA;AAEA,EAAA,OAAO,CAAC,CAACK,UAAAA;AACX;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWidgetButtonExtraProps.d.ts","sourceRoot":"","sources":["../../../../src/core/button/hooks/useWidgetButtonExtraProps.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAOlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAyDlD,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AACF,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACxC,SAAS,EACT,OAAO,GACR,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAsC7D;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,OAAO,EACP,SAAS,GACV,EAAE,YAAY,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAiCrE;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,OAAO,GACR,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAkB7D"}
1
+ {"version":3,"file":"useWidgetButtonExtraProps.d.ts","sourceRoot":"","sources":["../../../../src/core/button/hooks/useWidgetButtonExtraProps.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAOlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AA2DlD,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AACF,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,EACxC,SAAS,EACT,OAAO,GACR,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAsC7D;AAED,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,OAAO,EACP,SAAS,GACV,EAAE,YAAY,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CA6DrE;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,OAAO,GACR,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAkB7D"}
@@ -1,5 +1,5 @@
1
1
  import { d as distExports } from '../../../_virtual/index.js';
2
- import { useSwapReceiverAddress } from '../../../components/widget/ReceiverAddress/state/receiverAddressAtom.js';
2
+ import { useSwapReceiverAddressValue } from '../../../components/widget/ReceiverAddress/state/receiverAddressAtom.js';
3
3
  import { useIsAccountContract } from '../../../hooks/getCode/useIsAccountContract.js';
4
4
  import { useCurrentSwapPrice } from '../../../hooks/swap/prices/useSwapPrices.js';
5
5
  import { useIsTokenFromInsufficientBalance } from '../../../hooks/tokens/balances/useIsInsufficientTokenBalance.js';
@@ -10,6 +10,8 @@ import { useOtcReceiverAddressValue } from '../../otc/state/receiverAddressAtom.
10
10
  import { useUnsupportedLimitChain } from '../../limit/useLimitNotSupported.js';
11
11
  import { useUnsupportedOtcChain } from '../../otc/useOtcNotSupported.js';
12
12
  import { useUnsupportedLimitTokens } from '../../limit/useLimitTokenToInputProps.js';
13
+ import { useDeltaSwapPriceForLimit } from '../../limit/useLimitRate.js';
14
+ import { useLimitReceiverAddressValue } from '../../limit/state/receiverAddressAtom.js';
13
15
 
14
16
  const errorMessageByApiErrorMessage = {
15
17
  ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT: "Price Impact Too High",
@@ -109,9 +111,7 @@ function useWidgetButtonExtraProps(t0) {
109
111
  } = useCurrentSwapPrice(t2);
110
112
  const isAccountContract = useIsAccountContract().data?.isContract;
111
113
  const isCrosschain = useIsCrossChain();
112
- const {
113
- address: receiver
114
- } = useSwapReceiverAddress();
114
+ const receiver = useSwapReceiverAddressValue();
115
115
  if (!isConnected) {
116
116
  let t32;
117
117
  if ($[4] !== isConnected) {
@@ -164,7 +164,7 @@ function useWidgetButtonExtraProps(t0) {
164
164
  return t4;
165
165
  }
166
166
  function useLimitButtonExtraProps(t0) {
167
- const $ = distExports.c(14);
167
+ const $ = distExports.c(16);
168
168
  const {
169
169
  tokenFrom,
170
170
  tokenTo,
@@ -195,52 +195,75 @@ function useLimitButtonExtraProps(t0) {
195
195
  const {
196
196
  unsupportedTokens
197
197
  } = useUnsupportedLimitTokens();
198
+ const isCrosschain = tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;
199
+ const isCrosschainLimitOrder = isCrosschain && tradeMode === "limit";
200
+ let t3;
201
+ if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
202
+ t3 = {
203
+ tradeMode: "limit",
204
+ enabled: false
205
+ };
206
+ $[4] = t3;
207
+ } else {
208
+ t3 = $[4];
209
+ }
210
+ const {
211
+ error: limitPriceError
212
+ } = useDeltaSwapPriceForLimit(t3);
213
+ const priceError = isCrosschainLimitOrder ? limitPriceError : void 0;
214
+ const limitReceiverAddress = useLimitReceiverAddressValue();
215
+ const isAccountContract = useIsAccountContract().data?.isContract;
198
216
  if (!isConnected) {
199
- let t32;
200
- if ($[4] !== isConnected) {
201
- t32 = {
217
+ let t42;
218
+ if ($[5] !== isConnected) {
219
+ t42 = {
202
220
  disabled: false,
203
221
  isConnected
204
222
  };
205
- $[4] = isConnected;
206
- $[5] = t32;
223
+ $[5] = isConnected;
224
+ $[6] = t42;
207
225
  } else {
208
- t32 = $[5];
226
+ t42 = $[6];
209
227
  }
210
- return t32;
228
+ return t42;
211
229
  }
212
- const disabled = wrongNetwork || tokensAreSame || isTokenFromInsufficientBalance || !!unsupportedTokens;
213
- let t3;
214
- if ($[6] !== isTokenFromInsufficientBalance || $[7] !== wrongNetwork) {
215
- t3 = getButtonLabelOverride({
230
+ const disabled = wrongNetwork || tokensAreSame || isTokenFromInsufficientBalance || !!unsupportedTokens || !!priceError;
231
+ const connectedButNoReceiver = !limitReceiverAddress;
232
+ const receiverRequiredButNotSet = !!isAccountContract && isCrosschain && !connectedButNoReceiver;
233
+ let t4;
234
+ if ($[7] !== isTokenFromInsufficientBalance || $[8] !== receiverRequiredButNotSet || $[9] !== wrongNetwork) {
235
+ t4 = getButtonLabelOverride({
216
236
  wrongNetwork,
217
- isTokenFromInsufficientBalance
237
+ isTokenFromInsufficientBalance,
238
+ receiverRequiredButNotSet
218
239
  });
219
- $[6] = isTokenFromInsufficientBalance;
220
- $[7] = wrongNetwork;
221
- $[8] = t3;
240
+ $[7] = isTokenFromInsufficientBalance;
241
+ $[8] = receiverRequiredButNotSet;
242
+ $[9] = wrongNetwork;
243
+ $[10] = t4;
222
244
  } else {
223
- t3 = $[8];
245
+ t4 = $[10];
224
246
  }
225
- const labelOverride = t3;
247
+ const labelOverride = t4;
226
248
  const className = unsupportedChain ? "pointer-events-none" : void 0;
227
- let t4;
228
- if ($[9] !== className || $[10] !== disabled || $[11] !== isConnected || $[12] !== labelOverride) {
229
- t4 = {
230
- disabled,
249
+ const t5 = disabled || connectedButNoReceiver;
250
+ let t6;
251
+ if ($[11] !== className || $[12] !== isConnected || $[13] !== labelOverride || $[14] !== t5) {
252
+ t6 = {
253
+ disabled: t5,
231
254
  labelOverride,
232
255
  className,
233
256
  isConnected
234
257
  };
235
- $[9] = className;
236
- $[10] = disabled;
237
- $[11] = isConnected;
238
- $[12] = labelOverride;
239
- $[13] = t4;
258
+ $[11] = className;
259
+ $[12] = isConnected;
260
+ $[13] = labelOverride;
261
+ $[14] = t5;
262
+ $[15] = t6;
240
263
  } else {
241
- t4 = $[13];
264
+ t6 = $[15];
242
265
  }
243
- return t4;
266
+ return t6;
244
267
  }
245
268
  function useOtcButtonExtraProps(t0) {
246
269
  const $ = distExports.c(8);