@velora-dex/widget 0.0.23 → 0.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. package/dist/_virtual/index.js +1 -1
  2. package/dist/components/ui/accordion.js.map +1 -1
  3. package/dist/components/ui/badge.js.map +1 -1
  4. package/dist/components/ui/button.js.map +1 -1
  5. package/dist/components/ui/card.js.map +1 -1
  6. package/dist/components/ui/dialog.js.map +1 -1
  7. package/dist/components/ui/drawer.d.ts +2 -2
  8. package/dist/components/ui/drawer.d.ts.map +1 -1
  9. package/dist/components/ui/drawer.js +2 -2
  10. package/dist/components/ui/drawer.js.map +1 -1
  11. package/dist/components/ui/dropdown-menu.js.map +1 -1
  12. package/dist/components/ui/input.js.map +1 -1
  13. package/dist/components/ui/progress.js.map +1 -1
  14. package/dist/components/ui/skeleton.js.map +1 -1
  15. package/dist/components/ui/sonner.d.ts.map +1 -1
  16. package/dist/components/ui/sonner.js +1 -2
  17. package/dist/components/ui/sonner.js.map +1 -1
  18. package/dist/components/ui/switch.js.map +1 -1
  19. package/dist/components/ui/tooltip.js.map +1 -1
  20. package/dist/components/web3/AccountButton.js.map +1 -1
  21. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  22. package/dist/components/web3/ConnectWallets/WalletConnectButtons.d.ts.map +1 -1
  23. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js +23 -14
  24. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  25. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  26. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  27. package/dist/components/web3/ConnectWallets/privy/connectRunner.d.ts.map +1 -1
  28. package/dist/components/web3/ConnectWallets/privy/connectRunner.js +0 -2
  29. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  30. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  31. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  32. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +30 -0
  33. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  34. package/dist/components/web3/ConnectWallets/walletIcons.js +84 -2
  35. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  36. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts.map +1 -1
  37. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +69 -65
  38. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  39. package/dist/components/web3/providers.d.ts +3 -0
  40. package/dist/components/web3/providers.d.ts.map +1 -1
  41. package/dist/components/web3/providers.js +18 -1
  42. package/dist/components/web3/providers.js.map +1 -1
  43. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  44. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  45. package/dist/components/widget/AppHeader/AppHeader.js +49 -55
  46. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  47. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  48. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  49. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  50. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  51. package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js.map +1 -1
  52. package/dist/components/widget/Dialog/DialogRoot.js.map +1 -1
  53. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +2 -2
  54. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  55. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  56. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  57. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +125 -78
  58. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  59. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +5 -2
  60. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  61. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +10 -8
  62. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  63. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.d.ts +5 -2
  64. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.d.ts.map +1 -1
  65. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js +10 -8
  66. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  67. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts +11 -0
  68. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts.map +1 -0
  69. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +101 -0
  70. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -0
  71. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.d.ts +5 -0
  72. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.d.ts.map +1 -0
  73. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +186 -0
  74. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -0
  75. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts +6 -2
  76. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts.map +1 -1
  77. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js +33 -20
  78. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  79. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +1 -1
  80. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  81. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  82. package/dist/components/widget/Drawer/Overlay.d.ts +9 -0
  83. package/dist/components/widget/Drawer/Overlay.d.ts.map +1 -0
  84. package/dist/components/widget/Drawer/Overlay.js +62 -0
  85. package/dist/components/widget/Drawer/Overlay.js.map +1 -0
  86. package/dist/components/widget/Drawer/index.d.ts +3 -1
  87. package/dist/components/widget/Drawer/index.d.ts.map +1 -1
  88. package/dist/components/widget/Drawer/index.js +65 -37
  89. package/dist/components/widget/Drawer/index.js.map +1 -1
  90. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +27 -1
  91. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  92. package/dist/components/widget/Drawer/state/useDrawerControls.js +91 -2
  93. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  94. package/dist/components/widget/Dropdown/DropdownWithItems.d.ts.map +1 -1
  95. package/dist/components/widget/Dropdown/DropdownWithItems.js +5 -3
  96. package/dist/components/widget/Dropdown/DropdownWithItems.js.map +1 -1
  97. package/dist/components/widget/Dropdown/types.d.ts +2 -1
  98. package/dist/components/widget/Dropdown/types.d.ts.map +1 -1
  99. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  100. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  101. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  102. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  103. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  104. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  105. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  106. package/dist/components/widget/Line/Line.js.map +1 -1
  107. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  108. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.d.ts.map +1 -1
  109. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js +14 -10
  110. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  111. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.d.ts.map +1 -1
  112. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +10 -8
  113. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  114. package/dist/components/widget/NetworkSwitcher/types.d.ts +2 -2
  115. package/dist/components/widget/NetworkSwitcher/types.d.ts.map +1 -1
  116. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  117. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  118. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  119. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  120. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  121. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  122. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -2
  123. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  124. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.d.ts +1 -1
  125. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.d.ts.map +1 -1
  126. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js +5 -1
  127. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  128. package/dist/components/widget/RowVirtualizer/types.d.ts +1 -0
  129. package/dist/components/widget/RowVirtualizer/types.d.ts.map +1 -1
  130. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  131. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  132. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  133. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  134. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  135. package/dist/components/widget/SwapRate/SwapRate.js +3 -0
  136. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  137. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  138. package/dist/components/widget/TokenBadge/TokenBadge.d.ts.map +1 -1
  139. package/dist/components/widget/TokenBadge/TokenBadge.js +1 -1
  140. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  141. package/dist/components/widget/TokenInput/EmptyInput.js.map +1 -1
  142. package/dist/components/widget/TokenInput/index.js +1 -1
  143. package/dist/components/widget/TokenInput/index.js.map +1 -1
  144. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  145. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  146. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  147. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  148. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  149. package/dist/components/widget/TradeOverview/Stepper.d.ts.map +1 -1
  150. package/dist/components/widget/TradeOverview/Stepper.js +39 -21
  151. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  152. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  153. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  154. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  155. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  156. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  157. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +40 -72
  158. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  159. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts +23 -3
  160. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  161. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +68 -20
  162. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  163. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  164. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  165. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  166. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  167. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  169. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  170. package/dist/components/widget/TradeOverview/TradeOverview.js +40 -56
  171. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  172. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  173. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  174. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  175. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  176. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  177. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  178. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  179. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  180. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js +2 -2
  181. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  182. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.d.ts.map +1 -1
  183. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js +42 -19
  184. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  185. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  186. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js +3 -3
  187. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  188. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  189. package/dist/components/widget/TradeParameters/state/slippageParamActionsAtom.js.map +1 -1
  190. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  191. package/dist/components/widget/Warning/Warning.js.map +1 -1
  192. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  193. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  194. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  195. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts.map +1 -1
  196. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js +18 -24
  197. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  198. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  199. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  200. package/dist/configurator/Configurator.d.ts.map +1 -1
  201. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  202. package/dist/core/Toaster.js.map +1 -1
  203. package/dist/core/TradeFlowButton.js +154 -126
  204. package/dist/core/TradeFlowButton.js.map +1 -1
  205. package/dist/core/Updaters.d.ts.map +1 -1
  206. package/dist/core/Updaters.js +2 -0
  207. package/dist/core/Updaters.js.map +1 -1
  208. package/dist/core/across/utils.d.ts.map +1 -1
  209. package/dist/core/across/utils.js +1 -2
  210. package/dist/core/across/utils.js.map +1 -1
  211. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  212. package/dist/core/index.d.ts.map +1 -1
  213. package/dist/core/index.js +90 -55
  214. package/dist/core/index.js.map +1 -1
  215. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  216. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  217. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  218. package/dist/core/inputs/hooks/useTokenToInputProps.js +16 -19
  219. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  220. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  221. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  222. package/dist/core/inputs/state/selectedTokenActionsAtom.js +2 -2
  223. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  224. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  225. package/dist/core/inputs/state/store.d.ts +6 -0
  226. package/dist/core/inputs/state/store.d.ts.map +1 -0
  227. package/dist/core/inputs/state/store.js +6 -0
  228. package/dist/core/inputs/state/store.js.map +1 -0
  229. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  230. package/dist/core/logger.d.ts.map +1 -1
  231. package/dist/core/logger.js +4 -5
  232. package/dist/core/logger.js.map +1 -1
  233. package/dist/core/state/chainToAtom.d.ts +2 -2
  234. package/dist/core/state/chainToAtom.js.map +1 -1
  235. package/dist/core/state/configActionsAtom.d.ts +1 -1
  236. package/dist/core/state/configActionsAtom.js.map +1 -1
  237. package/dist/core/state/configAtom.js.map +1 -1
  238. package/dist/core/state/externalProviderAtom.js.map +1 -1
  239. package/dist/core/swapDetails/fees.js.map +1 -1
  240. package/dist/core/swapDetails/orderRouting.js.map +1 -1
  241. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  242. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  243. package/dist/core/swapDetails/useSwapDetailsListProps.js +0 -1
  244. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  245. package/dist/core/swapDetails/youGet.d.ts +1 -3
  246. package/dist/core/swapDetails/youGet.d.ts.map +1 -1
  247. package/dist/core/swapDetails/youGet.js +1 -3
  248. package/dist/core/swapDetails/youGet.js.map +1 -1
  249. package/dist/crosschain_token_list.json +3230 -0
  250. package/dist/external/.pnpm/{react-compiler-runtime@19.1.0-rc.2_react@19.1.0 → react-compiler-runtime@19.1.0-rc.2_react@19.1.1}/external/react-compiler-runtime/dist/index.js.map +1 -1
  251. package/dist/external/.pnpm/{vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33 → vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__7f2d7d5ed11750fbec42b3f5689c802d}/external/vaul/dist/index.js.map +1 -1
  252. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  253. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  254. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  255. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  256. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  257. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  258. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  259. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  260. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  261. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  262. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  263. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  264. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  265. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  266. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  267. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  268. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  269. package/dist/hooks/permit/utils/construct.js.map +1 -1
  270. package/dist/hooks/permit/utils/detect.js.map +1 -1
  271. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  272. package/dist/hooks/permit/utils/encodeArgs.js +1 -1
  273. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  274. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  275. package/dist/hooks/permit/utils/utils.js.map +1 -1
  276. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  277. package/dist/hooks/sdk/useSpender.js.map +1 -1
  278. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +3 -2
  279. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  280. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  281. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +8 -6
  282. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  283. package/dist/hooks/swap/prices/delta/orders/utils.js +7 -4
  284. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  285. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
  286. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +2 -1
  287. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  288. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +16 -2
  289. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  290. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +64 -3
  291. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  292. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  293. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +8 -0
  294. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  295. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +12 -3
  296. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  297. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  298. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  299. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +14 -1
  300. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  301. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +60 -2
  302. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  303. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  304. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  305. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  306. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  307. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  308. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  309. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  310. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  311. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -4
  312. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  313. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +207 -458
  314. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  315. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  316. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +1 -1
  317. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  318. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +1 -0
  319. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  320. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +210 -411
  321. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  322. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  323. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  324. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  325. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  326. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.d.ts.map +1 -1
  327. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +18 -7
  328. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  329. package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts +3 -2
  330. package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts.map +1 -1
  331. package/dist/hooks/tokens/balances/useInvalidateTokenData.js +60 -77
  332. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  333. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  334. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  335. package/dist/hooks/tokens/balances/useSelectedTokenBalances.d.ts +5 -0
  336. package/dist/hooks/tokens/balances/useSelectedTokenBalances.d.ts.map +1 -0
  337. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js +38 -0
  338. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -0
  339. package/dist/hooks/tokens/balances/useTokenBalance.d.ts +15 -0
  340. package/dist/hooks/tokens/balances/useTokenBalance.d.ts.map +1 -1
  341. package/dist/hooks/tokens/balances/useTokenBalance.js +2 -0
  342. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  343. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  344. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  345. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  346. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  347. package/dist/hooks/tokens/useTokenLists.js.map +1 -1
  348. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  349. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  350. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  351. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  352. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  353. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  354. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  355. package/dist/hooks/txs/queries/utils.d.ts +3 -0
  356. package/dist/hooks/txs/queries/utils.d.ts.map +1 -0
  357. package/dist/hooks/txs/queries/utils.js +6 -0
  358. package/dist/hooks/txs/queries/utils.js.map +1 -0
  359. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  360. package/dist/hooks/useBridgeInfo.js.map +1 -1
  361. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  362. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  363. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  364. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  365. package/dist/hooks/useMinViemClient.js.map +1 -1
  366. package/dist/hooks/useSDK.js +1 -1
  367. package/dist/hooks/useSDK.js.map +1 -1
  368. package/dist/hooks/useSlippage.js.map +1 -1
  369. package/dist/lib/constants/index.d.ts +1 -1
  370. package/dist/lib/constants/index.d.ts.map +1 -1
  371. package/dist/lib/constants/index.js +1 -1
  372. package/dist/lib/constants/index.js.map +1 -1
  373. package/dist/lib/ipfs.js.map +1 -1
  374. package/dist/lib/queryClient.d.ts.map +1 -1
  375. package/dist/lib/queryClient.js +32 -2
  376. package/dist/lib/queryClient.js.map +1 -1
  377. package/dist/lib/utils/copyToClipboard.js.map +1 -1
  378. package/dist/lib/utils/delta.js.map +1 -1
  379. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  380. package/dist/lib/utils/index.js.map +1 -1
  381. package/dist/lib/utils/logger.js.map +1 -1
  382. package/dist/lib/utils/price.d.ts +2 -6
  383. package/dist/lib/utils/price.d.ts.map +1 -1
  384. package/dist/lib/utils/price.js +6 -13
  385. package/dist/lib/utils/price.js.map +1 -1
  386. package/dist/lib/utils/priceImpact.d.ts.map +1 -1
  387. package/dist/lib/utils/priceImpact.js +1 -1
  388. package/dist/lib/utils/priceImpact.js.map +1 -1
  389. package/dist/lib/utils/providerErrors.js.map +1 -1
  390. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  391. package/dist/lib/utils/toasts.d.ts +2 -2
  392. package/dist/lib/utils/toasts.d.ts.map +1 -1
  393. package/dist/lib/utils/toasts.js +0 -24
  394. package/dist/lib/utils/toasts.js.map +1 -1
  395. package/dist/lib/web3/wagmi/config.d.ts +12 -2
  396. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  397. package/dist/lib/web3/wagmi/config.js +5 -2
  398. package/dist/lib/web3/wagmi/config.js.map +1 -1
  399. package/dist/lib/web3/wagmi/constants.d.ts +12 -2
  400. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  401. package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts +25 -0
  402. package/dist/lib/web3/wagmi/isInsideSafeIframe.d.ts.map +1 -0
  403. package/dist/lib/web3/wagmi/isInsideSafeIframe.js +113 -0
  404. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -0
  405. package/dist/styles.css +84 -12
  406. package/dist/tokens/lists/constants.js.map +1 -1
  407. package/dist/tokens/lists/download.js.map +1 -1
  408. package/dist/tokens/lists/hooks.js.map +1 -1
  409. package/dist/tokens/lists/lists.json.d.ts +84 -2
  410. package/dist/tokens/lists/lists.json.js +104 -2
  411. package/dist/tokens/lists/lists.json.js.map +1 -1
  412. package/dist/tokens/lists/state/observer.js +2 -2
  413. package/dist/tokens/lists/state/observer.js.map +1 -1
  414. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  415. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +2 -2
  416. package/dist/tokens/lists/utils.js +1 -1
  417. package/dist/tokens/overrides.js.map +1 -1
  418. package/dist/tokens/queries.js.map +1 -1
  419. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  420. package/dist/tokens/state/constructTokens.js.map +1 -1
  421. package/dist/tokens/state/tokensAtom.js.map +1 -1
  422. package/dist/tokens/utils/filtering.js.map +1 -1
  423. package/dist/tokens/utils/sets.js.map +1 -1
  424. package/dist/tokens/utils/sorting.js.map +1 -1
  425. package/dist/tokens/utils/transferAmountsFromReceipt.d.ts +51 -0
  426. package/dist/tokens/utils/transferAmountsFromReceipt.d.ts.map +1 -0
  427. package/dist/tokens/utils/transferAmountsFromReceipt.js +281 -0
  428. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -0
  429. package/package.json +33 -32
  430. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts +0 -25
  431. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts.map +0 -1
  432. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js +0 -103
  433. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js.map +0 -1
  434. /package/dist/external/.pnpm/{react-compiler-runtime@19.1.0-rc.2_react@19.1.0 → react-compiler-runtime@19.1.0-rc.2_react@19.1.1}/external/react-compiler-runtime/dist/index.js +0 -0
  435. /package/dist/external/.pnpm/{vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33 → vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__7f2d7d5ed11750fbec42b3f5689c802d}/external/vaul/dist/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenFromAtom } from \"../state/selectedTokenAtom\";\nimport { supportedChainIds } from \"@/lib/web3/wagmi/constants\";\nimport { useChainId, useSwitchChain } from \"wagmi\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = ({\n price,\n}: {\n price?: DeltaOrMarketPrice;\n}): MarkRequired<TokenInputAmountProps, \"token\"> => {\n const logger = useLogger(\"TokenFrom::AmountProps\");\n const tokenFrom = useTokenFromAtom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n const balanceToDisplay = toDecimalTrimmed(balanceUnit);\n\n return {\n amount: amountValue,\n tokenBalanceUnit: balanceToDisplay,\n token: tokenFrom,\n usdEstimation: price?.srcUSD,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance();\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useExtraProps = ({\n tokenFrom,\n isPriceLoading,\n price,\n}: {\n price?: DeltaOrMarketPrice;\n isPriceLoading?: boolean;\n tokenFrom: Token;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const { switchChain } = useSwitchChain();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const side = useSwapSide();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance && (!isETH(tokenFrom) || !!price);\n\n return {\n networkSwitcherProps: {\n networks: supportedChainIds,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId: SupportedChainId) => switchChain({ chainId }),\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentSwapInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n showMaxButton,\n onMaxClick: () => {\n setCurrentSwapInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n const gasCost = price?.gasCost; // gasLimit\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n\n if (gasCost && gasPriceMultiplier) {\n const gasFeeETH = Big(gasCost)\n // have to add extra 200k because instant multiplier is not accurate enough\n .plus(200000)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps({\n price,\n });\n\n const amountWei =\n override?.amountWei ??\n parseUnits(\n tokenFromAmounts.amount,\n tokenFromAmounts.token.decimals\n ).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFromAmounts.token.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFromAmounts.token,\n });\n const extraProps = useExtraProps({\n isPriceLoading,\n tokenFrom: tokenFromAmounts.token,\n price,\n });\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n };\n};\n"],"names":["useTokenFromAmountProps","t0","$","_c","price","logger","useLogger","tokenFrom","useTokenFromAtom","amountValue","setAmountValue","useAtom","payInputAmountAtom","t1","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t2","token","queryOptions","balanceUnit","useTokenBalance","t3","toDecimalTrimmed","balanceToDisplay","t4","srcUSD","t5","values","log","value","t6","amount","tokenBalanceUnit","usdEstimation","onAmountChange","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","useIsTokenFromInsufficientBalance","needsApproval","lockIcon","shouldDisplay","tokenBadgePropsOverride","insufficientBalanceMessageProps","useExtraProps","isPriceLoading","appChainId","useChainId","switchChain","useSwitchChain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","setPayInputAmount","side","useSwapSide","isLoading","data","gasPrices","useGasPrices","hasBalance","showMaxButton","isETH","chainId","networks","supportedChainIds","selectedNetwork","allOption","onSelect","t7","t8","legacyPrices","gasCost","gasPriceMultiplier","instant","gasFeeETH","Big","plus","mul","div","balanceWithDeductedGas","minus","toString","t9","networkSwitcherProps","tokenType","onFocus","label","onMaxClick","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","formatUnits","BigInt","tokenConditionalProps","extraProps"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenFromInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useTokenFromAtom } from \"../state/selectedTokenAtom\";\nimport { supportedChainIds } from \"@/lib/web3/wagmi/constants\";\nimport { useChainId, useSwitchChain } from \"wagmi\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useAtom, useSetAtom } from \"jotai\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = ({\n price,\n}: {\n price?: DeltaOrMarketPrice;\n}): MarkRequired<TokenInputAmountProps, \"token\"> => {\n const logger = useLogger(\"TokenFrom::AmountProps\");\n const tokenFrom = useTokenFromAtom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n const balanceToDisplay = toDecimalTrimmed(balanceUnit);\n\n return {\n amount: amountValue,\n tokenBalanceUnit: balanceToDisplay,\n token: tokenFrom,\n usdEstimation: price?.srcUSD,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: swapModeToSpender[swapMode],\n amountToApproveInWei: amountWei,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance();\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useExtraProps = ({\n tokenFrom,\n isPriceLoading,\n price,\n}: {\n price?: DeltaOrMarketPrice;\n isPriceLoading?: boolean;\n tokenFrom: Token;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const { switchChain } = useSwitchChain();\n\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const side = useSwapSide();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance && (!isETH(tokenFrom) || !!price);\n\n return {\n networkSwitcherProps: {\n networks: supportedChainIds,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId: SupportedChainId) => switchChain({ chainId }),\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentSwapInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n showMaxButton,\n onMaxClick: () => {\n setCurrentSwapInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n const gasCost = price?.gasCost; // gasLimit\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n\n if (gasCost && gasPriceMultiplier) {\n const gasFeeETH = Big(gasCost)\n // have to add extra 200k because instant multiplier is not accurate enough\n .plus(200000)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps({\n price,\n });\n\n const amountWei =\n override?.amountWei ??\n parseUnits(\n tokenFromAmounts.amount,\n tokenFromAmounts.token.decimals\n ).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFromAmounts.token.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFromAmounts.token,\n });\n const extraProps = useExtraProps({\n isPriceLoading,\n tokenFrom: tokenFromAmounts.token,\n price,\n });\n\n return {\n ...tokenFromAmounts,\n amount,\n ...tokenConditionalProps,\n ...extraProps,\n };\n};\n"],"names":["useTokenFromAmountProps","t0","$","_c","price","logger","useLogger","tokenFrom","useTokenFromAtom","amountValue","setAmountValue","useAtom","payInputAmountAtom","t1","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t2","token","queryOptions","balanceUnit","useTokenBalance","t3","toDecimalTrimmed","balanceToDisplay","t4","srcUSD","t5","values","log","value","t6","amount","tokenBalanceUnit","usdEstimation","onAmountChange","useTokenConditionalProps","amountWei","swapMode","swapModeToSpender","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","useIsTokenFromInsufficientBalance","needsApproval","lockIcon","shouldDisplay","tokenBadgePropsOverride","insufficientBalanceMessageProps","useExtraProps","isPriceLoading","appChainId","useChainId","switchChain","useSwitchChain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","setPayInputAmount","side","useSwapSide","isLoading","data","gasPrices","useGasPrices","hasBalance","showMaxButton","isETH","chainId","networks","supportedChainIds","selectedNetwork","allOption","onSelect","t7","t8","legacyPrices","gasCost","gasPriceMultiplier","instant","gasFeeETH","Big","plus","mul","div","balanceWithDeductedGas","minus","toString","t9","networkSwitcherProps","tokenType","onFocus","label","onMaxClick","useTokenFromInputProps","activeSwapMode","override","tokenFromAmounts","parseUnits","decimals","formatUnits","BigInt","tokenConditionalProps","extraProps"],"mappings":"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"}
@@ -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 { useTokenToAtom } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\nimport { switchTokensAtom } from \"../state/selectedTokenActionsAtom\";\n\nexport const useTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useTokenToAtom();\n const switchTokens = useSetAtom(switchTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n };\n};\n"],"names":["useTokenSwitcherProps","$","_c","tokenTo","useTokenToAtom","switchTokens","useSetAtom","switchTokensAtom","t0","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;AAKO,MAAMA,wBAAwBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACnC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,YAAAA,GAAqBC,WAAAC,gBAA2B,CAAA;AAG1B,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,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA;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 { useTokenToAtom } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\nimport { switchTokensAtom } from \"../state/selectedTokenActionsAtom\";\n\nexport const useTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useTokenToAtom();\n const switchTokens = useSetAtom(switchTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n };\n};\n"],"names":["useTokenSwitcherProps","$","_c","tokenTo","useTokenToAtom","switchTokens","useSetAtom","switchTokensAtom","t0","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;AAKO,MAAMA,wBAAwBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACnC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,YAAAA,GAAqBC,WAAAC,gBAA2B,CAAA;AAG1B,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 +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;AAUpE,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;AAiJF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAoBzB,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;AAiB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAUpE,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;AAsJF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAoBzB,CAAC"}
@@ -61,40 +61,40 @@ const useTokenToAmountProps = (t0) => {
61
61
  t3 = $[4];
62
62
  }
63
63
  const balanceToDisplay = t3;
64
- const t4 = price?.destUSD;
65
- let t5;
64
+ const usdEstimation = price && "destUSDBeforeFee" in price ? price.destUSDBeforeFee : price?.destUSD;
65
+ let t4;
66
66
  if ($[5] !== logger || $[6] !== setAmountValue) {
67
- t5 = (values) => {
67
+ t4 = (values) => {
68
68
  logger.log("onAmountChange::values", values);
69
69
  setAmountValue(values.value);
70
70
  };
71
71
  $[5] = logger;
72
72
  $[6] = setAmountValue;
73
- $[7] = t5;
73
+ $[7] = t4;
74
74
  } else {
75
- t5 = $[7];
75
+ t4 = $[7];
76
76
  }
77
- let t6;
78
- if ($[8] !== amountValue || $[9] !== balanceToDisplay || $[10] !== isCrossChain || $[11] !== t4 || $[12] !== t5 || $[13] !== tokenTo) {
79
- t6 = {
80
- usdEstimation: t4,
77
+ let t5;
78
+ if ($[8] !== amountValue || $[9] !== balanceToDisplay || $[10] !== isCrossChain || $[11] !== t4 || $[12] !== tokenTo || $[13] !== usdEstimation) {
79
+ t5 = {
80
+ usdEstimation,
81
81
  amount: amountValue,
82
82
  tokenBalanceUnit: balanceToDisplay,
83
83
  token: tokenTo,
84
84
  readOnly: isCrossChain,
85
- onAmountChange: t5
85
+ onAmountChange: t4
86
86
  };
87
87
  $[8] = amountValue;
88
88
  $[9] = balanceToDisplay;
89
89
  $[10] = isCrossChain;
90
90
  $[11] = t4;
91
- $[12] = t5;
92
- $[13] = tokenTo;
93
- $[14] = t6;
91
+ $[12] = tokenTo;
92
+ $[13] = usdEstimation;
93
+ $[14] = t5;
94
94
  } else {
95
- t6 = $[14];
95
+ t5 = $[14];
96
96
  }
97
- return t6;
97
+ return t5;
98
98
  };
99
99
  const useExtraProps = (t0) => {
100
100
  const $ = distExports.c(31);
@@ -163,10 +163,7 @@ const useExtraProps = (t0) => {
163
163
  let t5;
164
164
  if ($[8] !== isSell || $[9] !== price || $[10] !== priceMode || $[11] !== token) {
165
165
  t5 = isSell && price && token && (priceMode === "delta" || priceMode === "market" && price.partnerFee > 0) ? {
166
- amountWei: getDestAmountAfterFee({
167
- price,
168
- priceMode
169
- }),
166
+ amountWei: getDestAmountAfterFee(price),
170
167
  swapFeesUSD: price.destUSD ? calculateFeeUSD(price.partnerFee, price.destUSD).toString() : void 0,
171
168
  networkCostUSD: price.gasCostUSD,
172
169
  token,
@@ -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 { useTokenFromAtom, useTokenToAtom } from \"../state/selectedTokenAtom\";\n\nimport { chainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, 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 { parseDeltaApiError } 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\";\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}: {\n price?: DeltaOrMarketPrice;\n}): TokenInputAmountProps => {\n const logger = useLogger(\"TokenTo::AmountProps\");\n const tokenTo = useTokenToAtom();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n const balanceToDisplay = toDecimalTrimmed(balanceUnit);\n\n return {\n usdEstimation: price?.destUSD,\n amount: amountValue,\n tokenBalanceUnit: balanceToDisplay,\n token: tokenTo,\n readOnly: isCrossChain,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token,\n}: {\n isPriceLoading?: boolean;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n price?: DeltaOrMarketPrice;\n token?: Token;\n}): TokenInputExtraProps => {\n const chainId = useChainId();\n const [chainTo, setChainTo] = useAtom(chainToAtom);\n const tokenFrom = useTokenFromAtom();\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 {\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 setCurrentSwapInput = 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 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, priceMode }),\n swapFeesUSD: price.destUSD\n ? calculateFeeUSD(price.partnerFee, price.destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n const deltaWarning = parseDeltaApiError(priceError)?.description;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? \"Pay Token isn't supported on Delta\"\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\" ? deltaWarning || crosschainDeltaWarning : undefined;\n\n return {\n networkSwitcherProps:\n chainTo !== undefined\n ? {\n networks: [chainId].concat(availableCrosses),\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: setChainTo,\n disabled:\n availableCrosses.length === 0 ||\n !deltaEnabledInConfig ||\n !deltaEnabledInSettings ||\n !deltaEnabledOnCurrentChain,\n }\n : undefined,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentSwapInput(\"to\"),\n label: (\n <>\n <span>Receive</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n youGetProps,\n warningMessage,\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 extraProps = useExtraProps({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token: tokenToAmounts.token,\n });\n\n const amount =\n override?.amountWei && tokenToAmounts.token\n ? formatUnits(BigInt(override.amountWei), tokenToAmounts.token.decimals)\n : tokenToAmounts.amount;\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","price","logger","useLogger","tokenTo","useTokenToAtom","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","t1","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t2","token","queryOptions","balanceUnit","useTokenBalance","t3","toDecimalTrimmed","balanceToDisplay","t4","destUSD","t5","values","log","value","t6","usdEstimation","amount","tokenBalanceUnit","readOnly","onAmountChange","useExtraProps","isPriceLoading","priceMode","priceError","chainId","useChainId","chainTo","setChainTo","chainToAtom","tokenFrom","useTokenFromAtom","fromChainId","availableCrosses","useAvailableCrosses","undefined","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","useGlobalDeltaEnabled","address","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","side","useSwapSide","isSell","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","deltaWarning","parseDeltaApiError","description","crosschainDeltaWarning","warningMessage","networks","concat","selectedNetwork","allOption","onSelect","disabled","length","t7","t8","t9","t10","networkSwitcherProps","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals"],"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 { useTokenFromAtom, useTokenToAtom } from \"../state/selectedTokenAtom\";\n\nimport { chainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, 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 { parseDeltaApiError } 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\";\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}: {\n price?: DeltaOrMarketPrice;\n}): TokenInputAmountProps => {\n const logger = useLogger(\"TokenTo::AmountProps\");\n const tokenTo = useTokenToAtom();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n const balanceToDisplay = toDecimalTrimmed(balanceUnit);\n\n const usdEstimation =\n price && \"destUSDBeforeFee\" in price\n ? price.destUSDBeforeFee\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit: balanceToDisplay,\n token: tokenTo,\n readOnly: isCrossChain,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token,\n}: {\n isPriceLoading?: boolean;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n price?: DeltaOrMarketPrice;\n token?: Token;\n}): TokenInputExtraProps => {\n const chainId = useChainId();\n const [chainTo, setChainTo] = useAtom(chainToAtom);\n const tokenFrom = useTokenFromAtom();\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 {\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 setCurrentSwapInput = 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 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: price.destUSD\n ? calculateFeeUSD(price.partnerFee, price.destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n const deltaWarning = parseDeltaApiError(priceError)?.description;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? \"Pay Token isn't supported on Delta\"\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\" ? deltaWarning || crosschainDeltaWarning : undefined;\n\n return {\n networkSwitcherProps:\n chainTo !== undefined\n ? {\n networks: [chainId].concat(availableCrosses),\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: setChainTo,\n disabled:\n availableCrosses.length === 0 ||\n !deltaEnabledInConfig ||\n !deltaEnabledInSettings ||\n !deltaEnabledOnCurrentChain,\n }\n : undefined,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentSwapInput(\"to\"),\n label: (\n <>\n <span>Receive</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n youGetProps,\n warningMessage,\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 extraProps = useExtraProps({\n isPriceLoading,\n priceMode,\n priceError,\n price,\n token: tokenToAmounts.token,\n });\n\n const amount =\n override?.amountWei && tokenToAmounts.token\n ? formatUnits(BigInt(override.amountWei), tokenToAmounts.token.decimals)\n : tokenToAmounts.amount;\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","price","logger","useLogger","tokenTo","useTokenToAtom","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","t1","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t2","token","queryOptions","balanceUnit","useTokenBalance","t3","toDecimalTrimmed","balanceToDisplay","usdEstimation","destUSDBeforeFee","destUSD","t4","values","log","value","t5","amount","tokenBalanceUnit","readOnly","onAmountChange","useExtraProps","isPriceLoading","priceMode","priceError","chainId","useChainId","chainTo","setChainTo","chainToAtom","tokenFrom","useTokenFromAtom","fromChainId","availableCrosses","useAvailableCrosses","undefined","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","useGlobalDeltaEnabled","address","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","setCurrentSwapInput","useSetAtom","currentSwapInputAtom","side","useSwapSide","isSell","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","deltaWarning","parseDeltaApiError","description","crosschainDeltaWarning","warningMessage","t6","networks","concat","selectedNetwork","allOption","onSelect","disabled","length","t7","t8","t9","t10","networkSwitcherProps","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"inputAmountAtom.js","sources":["../../../../src/core/inputs/state/inputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { tokenFromAtom, tokenToAtom } from \"./selectedTokenAtom\";\nimport { parseUnits } from \"viem\";\n\nexport const payInputAmountAtom = atom(\"0\");\n\nexport const receiveInputAmountAtom = atom(\"0\");\n\nexport const payInputAmountWeiAtom = atom((get) => {\n // amountWei derived from payInputAmountAtom\n const tokenFrom = get(tokenFromAtom);\n const payInputAmount = get(payInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const receiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from receiveInputAmountAtom\n const tokenTo = get(tokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(receiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"names":["payInputAmountAtom","atom","receiveInputAmountAtom","payInputAmountWeiAtom","get","tokenFrom","tokenFromAtom","payInputAmount","parseUnits","decimals","toString","receiveInputAmountWeiAtom","tokenTo","tokenToAtom","receiveInputAmount"],"mappings":";;;;AAIO,MAAMA,kBAAAA,GAAqBC,KAAK,GAAG;AAEnC,MAAMC,sBAAAA,GAAyBD,KAAK,GAAG;AAEvC,MAAME,qBAAAA,GAAwBF,KAAMG,CAAAA,GAAAA,KAAQ;AAEjD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,aAAa,CAAA;AACnC,EAAA,MAAMC,cAAAA,GAAiBH,IAAIJ,kBAAkB,CAAA;AAC7C,EAAA,OAAOQ,UAAAA,CAAWD,cAAAA,EAAgBF,SAAAA,CAAUI,QAAQ,EAAEC,QAAAA,EAAS;AACjE,CAAC;AAEM,MAAMC,yBAAAA,GAA4BV,KAAMG,CAAAA,GAAAA,KAAQ;AAErD,EAAA,MAAMQ,OAAAA,GAAUR,IAAIS,WAAW,CAAA;AAC/B,EAAA,IAAID,OAAAA,EAAS;AACX,IAAA,MAAME,kBAAAA,GAAqBV,IAAIF,sBAAsB,CAAA;AACrD,IAAA,OAAOM,UAAAA,CAAWM,kBAAAA,EAAoBF,OAAAA,CAAQH,QAAQ,EAAEC,QAAAA,EAAS;AAAA;AAErE,CAAC;;;;"}
1
+ {"version":3,"file":"inputAmountAtom.js","sources":["../../../../src/core/inputs/state/inputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { tokenFromAtom, tokenToAtom } from \"./selectedTokenAtom\";\nimport { parseUnits } from \"viem\";\n\nexport const payInputAmountAtom = atom(\"0\");\n\nexport const receiveInputAmountAtom = atom(\"0\");\n\nexport const payInputAmountWeiAtom = atom((get) => {\n // amountWei derived from payInputAmountAtom\n const tokenFrom = get(tokenFromAtom);\n const payInputAmount = get(payInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const receiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from receiveInputAmountAtom\n const tokenTo = get(tokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(receiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"names":["payInputAmountAtom","atom","receiveInputAmountAtom","payInputAmountWeiAtom","get","tokenFrom","tokenFromAtom","payInputAmount","parseUnits","decimals","toString","receiveInputAmountWeiAtom","tokenTo","tokenToAtom","receiveInputAmount"],"mappings":";;;;AAIO,MAAMA,kBAAAA,GAAqBC,KAAK,GAAG;AAEnC,MAAMC,sBAAAA,GAAyBD,KAAK,GAAG;AAEvC,MAAME,qBAAAA,GAAwBF,KAAMG,CAAAA,GAAAA,KAAQ;AAEjD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,aAAa,CAAA;AACnC,EAAA,MAAMC,cAAAA,GAAiBH,IAAIJ,kBAAkB,CAAA;AAC7C,EAAA,OAAOQ,UAAAA,CAAWD,cAAAA,EAAgBF,SAAAA,CAAUI,QAAQ,EAAEC,QAAAA,EAAS;AACjE,CAAC;AAEM,MAAMC,yBAAAA,GAA4BV,KAAMG,CAAAA,GAAAA,KAAQ;AAErD,EAAA,MAAMQ,OAAAA,GAAUR,IAAIS,WAAW,CAAA;AAC/B,EAAA,IAAID,OAAAA,EAAS;AACX,IAAA,MAAME,kBAAAA,GAAqBV,IAAIF,sBAAsB,CAAA;AACrD,IAAA,OAAOM,UAAAA,CAAWM,kBAAAA,EAAoBF,OAAAA,CAAQH,QAAQ,EAAEC,QAAAA,EAAS;AAAA,EACnE;AACF,CAAC;;;;"}
@@ -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;AAK/D,eAAO,MAAM,gBAAgB;;CAqE3B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;CAoE/B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;CAkC5B,CAAC;AAEH,eAAO,MAAM,0BAA0B,GAAI,SAAS,gBAAgB,SA8DnE,CAAC"}
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;AAM/D,eAAO,MAAM,gBAAgB;;CAqE3B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;CAoE/B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;CAkC5B,CAAC;AAEH,eAAO,MAAM,0BAA0B,GAAI,SAAS,gBAAgB,SA4DnE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { getDefaultStore, atom } from 'jotai';
1
+ import { atom } from 'jotai';
2
2
  import { switchChain } from '@wagmi/core';
3
3
  import { tokenFromAtom, tokenToAtom } from './selectedTokenAtom.js';
4
4
  import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
@@ -8,6 +8,7 @@ import { isAcrossAvailable, isTokenFromAcross, findFirstTokenFromAcross } from '
8
8
  import { deltaParamAtom } from '../../../components/widget/TradeParameters/state/deltaParamAtom.js';
9
9
  import { widgetConfigAtom } from '../../state/configAtom.js';
10
10
  import { setSwapModeAtom } from '../../../components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js';
11
+ import { jotaiStore } from './store.js';
11
12
 
12
13
  const switchTokensAtom = atom(null, async (get, set) => {
13
14
  const tokenTo = get(tokenToAtom);
@@ -117,7 +118,6 @@ const selectTokenToAtom = atom(null, (get, set, newTokenTo) => {
117
118
  set(tokenToAtom, newTokenTo);
118
119
  });
119
120
  const syncTokensAfterChainSwitch = (chainId) => {
120
- const jotaiStore = getDefaultStore();
121
121
  const tokenFrom = jotaiStore.get(tokenFromAtom);
122
122
  const tokenTo = jotaiStore.get(tokenToAtom);
123
123
  if (tokenFrom.network === chainId) return;
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom, getDefaultStore } from \"jotai\";\nimport { switchChain } from \"@wagmi/core\";\n\nimport { tokenToAtom, tokenFromAtom } from \"./selectedTokenAtom\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\n\nimport type { Token } from \"@/tokens/state/types\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n findFirstTokenFromAcross,\n isAcrossAvailable,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\n\nexport const switchTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(tokenToAtom);\n\n if (!tokenTo) return;\n\n const tokenFrom = get(tokenFromAtom);\n\n // switch a token from a different chain?\n if (tokenFrom.network !== tokenTo.network) {\n // await for chain switch first\n await switchChain(wagmiConfig, {\n chainId: tokenTo.network,\n });\n }\n\n // then set the tokenFrom\n set(tokenFromAtom, tokenTo);\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: tokenTo.network,\n chainIdTo: tokenFrom.network,\n });\n\n if (crosschainPossible) {\n const tokenFromIsFromAcross = isTokenFromAcross({\n token: tokenFrom,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (tokenFromIsFromAcross && !areTokensSame(tokenFrom, tokenTo)) {\n // can use tokenFrom as tokenTo because it's an Across token\n set(tokenToAtom, tokenFrom);\n } else {\n // otherwise, we either set tokenTo to the first Across token,\n // or reset tokenTo\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenTo.network,\n toChainId: tokenFrom.network,\n });\n set(tokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network\n );\n\n if (tokenTo.network !== tokenFrom.network) {\n // if cross-chain, then we can't use tokenFrom as tokenTo, so pick from defaults\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(tokenToAtom, newTokenTo);\n } else {\n // otherwise, we set either tokenFrom or defaultTokenTo\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenTo\n : tokenFrom;\n\n set(tokenToAtom, newTokenTo);\n }\n }\n});\n\nexport const selectTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n const tokenFrom = get(tokenFromAtom);\n const tokenTo = get(tokenToAtom);\n\n // selecting a token from a different chain?\n if (newTokenFrom.network !== wagmiConfig.state.chainId) {\n // await for chain switch first\n await switchChain(wagmiConfig, {\n chainId: newTokenFrom.network,\n });\n }\n\n // then set the tokenFrom\n set(tokenFromAtom, newTokenFrom);\n\n if (!tokenTo) return;\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: tokenTo.network,\n chainIdTo: newTokenFrom.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n set(tokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network\n );\n\n // cross-chain not possible between new chainFrom and chainTo,\n // so need to reset tokenTo to default\n if (newTokenFrom.network !== tokenTo.network) {\n const newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(tokenToAtom, newTokenTo);\n } else {\n // or simply flip the tokens if they are from the same chain\n if (areTokensSame(newTokenFrom, tokenTo)) {\n set(tokenToAtom, tokenFrom);\n }\n // otherwise do nothing, tokenTo is already on the same chain and different from newTokenFrom\n }\n }\n }\n);\n\nexport const selectTokenToAtom = atom(null, (get, set, newTokenTo: Token) => {\n const newTokenToNetwork = newTokenTo.network;\n\n const tokenFrom = get(tokenFromAtom);\n const tokenTo = get(tokenToAtom);\n\n if (areTokensSame(newTokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] =\n pickDefaultTokenPair(newTokenToNetwork);\n\n const fromDefaults = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n // Will be true if crosschain tokens were selected\n const wasCrosschain = tokenTo && tokenFrom.network !== tokenTo?.network;\n\n const newTokenFrom = wasCrosschain\n ? // We cannot flip the tokens if switching from the crosschain, because if we do, we will end up with tokenFrom network different from app chainId.\n // Switching app chainId when selecting tokenTo is not what we want, because we cannot dictate the main network when selecting tokenTo.\n // Maybe user wants to trade singlechain but we are forcing crosschain.\n fromDefaults\n : // Otherwise, we can flip the tokens, or pick from defaults\n (tokenTo ?? fromDefaults);\n\n set(tokenFromAtom, newTokenFrom);\n }\n\n // crosschain? set SwapMode to Delta\n if (tokenFrom.network !== newTokenToNetwork) {\n set(setSwapModeAtom, \"delta\");\n }\n\n set(tokenToAtom, newTokenTo);\n});\n\nexport const syncTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const jotaiStore = getDefaultStore();\n\n const tokenFrom = jotaiStore.get(tokenFromAtom);\n const tokenTo = jotaiStore.get(tokenToAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(chainId);\n\n // reassignment for clarity\n const newTokenFrom = defaultTokenFrom;\n\n // update tokenFrom\n jotaiStore.set(tokenFromAtom, newTokenFrom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const deltaEnabledInSettings = jotaiStore.get(deltaParamAtom);\n const deltaEnabledInConfig = jotaiStore.get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n jotaiStore.set(tokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n if (\n // if tokenFrom that we just set is the same as tokenTo,\n areTokensSame(newTokenFrom, tokenTo) ||\n // or if chains are different,\n newTokenFrom.network !== tokenTo.network\n ) {\n // then set defaultTokenTo for the new chain\n jotaiStore.set(tokenToAtom, defaultTokenTo);\n }\n }\n};\n"],"names":["switchTokensAtom","atom","get","set","tokenTo","tokenToAtom","tokenFrom","tokenFromAtom","network","switchChain","wagmiConfig","chainId","deltaEnabledInSettings","deltaParamAtom","deltaEnabledInConfig","widgetConfigAtom","enableDelta","crosschainPossible","isAcrossAvailable","chainIdFrom","chainIdTo","tokenFromIsFromAcross","isTokenFromAcross","token","fromChainId","toChainId","areTokensSame","maybeAcrossToken","findFirstTokenFromAcross","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","newTokenTo","selectTokenFromAtom","newTokenFrom","state","isTokenToFromAcross","selectTokenToAtom","newTokenToNetwork","fromDefaults","wasCrosschain","setSwapModeAtom","syncTokensAfterChainSwitch","jotaiStore","getDefaultStore"],"mappings":"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"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { switchChain } from \"@wagmi/core\";\n\nimport { tokenToAtom, tokenFromAtom } from \"./selectedTokenAtom\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\n\nimport type { Token } from \"@/tokens/state/types\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n findFirstTokenFromAcross,\n isAcrossAvailable,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { jotaiStore } from \"./store\";\n\nexport const switchTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(tokenToAtom);\n\n if (!tokenTo) return;\n\n const tokenFrom = get(tokenFromAtom);\n\n // switch a token from a different chain?\n if (tokenFrom.network !== tokenTo.network) {\n // await for chain switch first\n await switchChain(wagmiConfig, {\n chainId: tokenTo.network,\n });\n }\n\n // then set the tokenFrom\n set(tokenFromAtom, tokenTo);\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: tokenTo.network,\n chainIdTo: tokenFrom.network,\n });\n\n if (crosschainPossible) {\n const tokenFromIsFromAcross = isTokenFromAcross({\n token: tokenFrom,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (tokenFromIsFromAcross && !areTokensSame(tokenFrom, tokenTo)) {\n // can use tokenFrom as tokenTo because it's an Across token\n set(tokenToAtom, tokenFrom);\n } else {\n // otherwise, we either set tokenTo to the first Across token,\n // or reset tokenTo\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenTo.network,\n toChainId: tokenFrom.network,\n });\n set(tokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network\n );\n\n if (tokenTo.network !== tokenFrom.network) {\n // if cross-chain, then we can't use tokenFrom as tokenTo, so pick from defaults\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(tokenToAtom, newTokenTo);\n } else {\n // otherwise, we set either tokenFrom or defaultTokenTo\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenTo\n : tokenFrom;\n\n set(tokenToAtom, newTokenTo);\n }\n }\n});\n\nexport const selectTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n const tokenFrom = get(tokenFromAtom);\n const tokenTo = get(tokenToAtom);\n\n // selecting a token from a different chain?\n if (newTokenFrom.network !== wagmiConfig.state.chainId) {\n // await for chain switch first\n await switchChain(wagmiConfig, {\n chainId: newTokenFrom.network,\n });\n }\n\n // then set the tokenFrom\n set(tokenFromAtom, newTokenFrom);\n\n if (!tokenTo) return;\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n const deltaEnabledInConfig = get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: tokenTo.network,\n chainIdTo: newTokenFrom.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n set(tokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network\n );\n\n // cross-chain not possible between new chainFrom and chainTo,\n // so need to reset tokenTo to default\n if (newTokenFrom.network !== tokenTo.network) {\n const newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(tokenToAtom, newTokenTo);\n } else {\n // or simply flip the tokens if they are from the same chain\n if (areTokensSame(newTokenFrom, tokenTo)) {\n set(tokenToAtom, tokenFrom);\n }\n // otherwise do nothing, tokenTo is already on the same chain and different from newTokenFrom\n }\n }\n }\n);\n\nexport const selectTokenToAtom = atom(null, (get, set, newTokenTo: Token) => {\n const newTokenToNetwork = newTokenTo.network;\n\n const tokenFrom = get(tokenFromAtom);\n const tokenTo = get(tokenToAtom);\n\n if (areTokensSame(newTokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] =\n pickDefaultTokenPair(newTokenToNetwork);\n\n const fromDefaults = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n // Will be true if crosschain tokens were selected\n const wasCrosschain = tokenTo && tokenFrom.network !== tokenTo?.network;\n\n const newTokenFrom = wasCrosschain\n ? // We cannot flip the tokens if switching from the crosschain, because if we do, we will end up with tokenFrom network different from app chainId.\n // Switching app chainId when selecting tokenTo is not what we want, because we cannot dictate the main network when selecting tokenTo.\n // Maybe user wants to trade singlechain but we are forcing crosschain.\n fromDefaults\n : // Otherwise, we can flip the tokens, or pick from defaults\n (tokenTo ?? fromDefaults);\n\n set(tokenFromAtom, newTokenFrom);\n }\n\n // crosschain? set SwapMode to Delta\n if (tokenFrom.network !== newTokenToNetwork) {\n set(setSwapModeAtom, \"delta\");\n }\n\n set(tokenToAtom, newTokenTo);\n});\n\nexport const syncTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const tokenFrom = jotaiStore.get(tokenFromAtom);\n const tokenTo = jotaiStore.get(tokenToAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(chainId);\n\n // reassignment for clarity\n const newTokenFrom = defaultTokenFrom;\n\n // update tokenFrom\n jotaiStore.set(tokenFromAtom, newTokenFrom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const deltaEnabledInSettings = jotaiStore.get(deltaParamAtom);\n const deltaEnabledInConfig = jotaiStore.get(widgetConfigAtom).enableDelta;\n\n const crosschainPossible =\n deltaEnabledInSettings &&\n deltaEnabledInConfig &&\n isAcrossAvailable({\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n jotaiStore.set(tokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n if (\n // if tokenFrom that we just set is the same as tokenTo,\n areTokensSame(newTokenFrom, tokenTo) ||\n // or if chains are different,\n newTokenFrom.network !== tokenTo.network\n ) {\n // then set defaultTokenTo for the new chain\n jotaiStore.set(tokenToAtom, defaultTokenTo);\n }\n }\n};\n"],"names":["switchTokensAtom","atom","get","set","tokenTo","tokenToAtom","tokenFrom","tokenFromAtom","network","switchChain","wagmiConfig","chainId","deltaEnabledInSettings","deltaParamAtom","deltaEnabledInConfig","widgetConfigAtom","enableDelta","crosschainPossible","isAcrossAvailable","chainIdFrom","chainIdTo","tokenFromIsFromAcross","isTokenFromAcross","token","fromChainId","toChainId","areTokensSame","maybeAcrossToken","findFirstTokenFromAcross","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","newTokenTo","selectTokenFromAtom","newTokenFrom","state","isTokenToFromAcross","selectTokenToAtom","newTokenToNetwork","fromDefaults","wasCrosschain","setSwapModeAtom","syncTokensAfterChainSwitch","jotaiStore"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { type Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId);\n\nexport const tokenFromAtom = atom(defaultTokenFrom);\n\nexport const tokenToAtom = atom<Token>();\n\nexport const useTokenFromAtom = () => {\n return useAtomValue(tokenFromAtom);\n};\n\nexport const useTokenToAtom = () => {\n return useAtomValue(tokenToAtom);\n};\n\nexport const useWidgetTokens = () => {\n const tokenFrom = useTokenFromAtom();\n const tokenTo = useTokenToAtom();\n return { tokenFrom, tokenTo };\n};\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","tokenFromAtom","atom","tokenToAtom","useTokenFromAtom","useAtomValue","useTokenToAtom","useWidgetTokens","$","_c","tokenFrom","tokenTo","t0"],"mappings":";;;;;AAKA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,oBAAAA,CAAqBC,WAAAA,CAAYC,MAAMC,OAAO,CAAA;AAElE,MAAMC,aAAAA,GAAgBC,KAAKN,gBAAgB;AAE3C,MAAMO,cAAcD,IAAAA;AAEpB,MAAME,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAAJ,aAA0B,CAAA;AAAC;AAG7B,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OACrBD,aAAAF,WAAwB,CAAA;AAAC;AAG3B,MAAMI,kBAAkBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7B,EAAA,MAAAC,YAAkBN,gBAAAA,EAAiB;AACnC,EAAA,MAAAO,UAAgBL,cAAAA,EAAe;AAAE,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAE,aAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAC1BC,IAAAA,EAAAA,GAAA;AAAA,MAAAF,SAAAA;AAAAA,MAAAC;AAAAA,KAAA;AAAsBH,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,OAAtBI,EAAAA;AAAsB;;;;"}
1
+ {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { type Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId);\n\nexport const tokenFromAtom = atom(defaultTokenFrom);\n\nexport const tokenToAtom = atom<Token>();\n\nexport const useTokenFromAtom = () => {\n return useAtomValue(tokenFromAtom);\n};\n\nexport const useTokenToAtom = () => {\n return useAtomValue(tokenToAtom);\n};\n\nexport const useWidgetTokens = () => {\n const tokenFrom = useTokenFromAtom();\n const tokenTo = useTokenToAtom();\n return { tokenFrom, tokenTo };\n};\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","tokenFromAtom","atom","tokenToAtom","useTokenFromAtom","useAtomValue","useTokenToAtom","useWidgetTokens","$","_c","tokenFrom","tokenTo","t0"],"mappings":";;;;;AAKA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,oBAAAA,CAAqBC,WAAAA,CAAYC,MAAMC,OAAO,CAAA;AAElE,MAAMC,aAAAA,GAAgBC,KAAKN,gBAAgB;AAE3C,MAAMO,cAAcD,IAAAA;AAEpB,MAAME,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAAJ,aAA0B,CAAA;AAAC;AAG7B,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OACrBD,aAAAF,WAAwB,CAAA;AAAC;AAG3B,MAAMI,kBAAkBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7B,EAAA,MAAAC,YAAkBN,gBAAAA,EAAiB;AACnC,EAAA,MAAAO,UAAgBL,cAAAA,EAAe;AAAE,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAE,aAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAC1BC,IAAAA,EAAAA,GAAA;AAAA,MAAAF,SAAAA;AAAAA,MAAAC;AAAAA,KAAA;AAAsBH,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAtBI,EAAAA;AAAsB;;;;"}
@@ -0,0 +1,6 @@
1
+ export declare const jotaiStore: {
2
+ get: <Value>(atom: import('jotai').Atom<Value>) => Value;
3
+ set: <Value, Args extends unknown[], Result>(atom: import('jotai').WritableAtom<Value, Args, Result>, ...args: Args) => Result;
4
+ sub: (atom: import('jotai').Atom<unknown>, listener: () => void) => () => void;
5
+ };
6
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/store.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;;0GAComH,GAAI;;CADxlH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { createStore } from 'jotai';
2
+
3
+ const jotaiStore = createStore();
4
+
5
+ export { jotaiStore };
6
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sources":["../../../../src/core/inputs/state/store.ts"],"sourcesContent":["import { createStore } from \"jotai\";\n\nexport const jotaiStore = createStore();\n"],"names":["jotaiStore","createStore"],"mappings":";;AAEO,MAAMA,aAAaC,WAAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptions.js","sources":["../../../../src/core/inputs/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { syncTokensAfterChainSwitch } from \"./selectedTokenActionsAtom\";\nimport { getLogger } from \"@/core/logger\";\n\nexport const subscribeToWalletChainIdChanges = () => {\n return wagmiConfig.subscribe(\n ({ chainId }) => chainId,\n (newChainId) => {\n getLogger(\"Subscription\").log(\"Sync tokens after wallet chainId change\", {\n newChainId,\n stateChainId: wagmiConfig.state.chainId,\n });\n\n syncTokensAfterChainSwitch(newChainId);\n }\n );\n};\n"],"names":["subscribeToWalletChainIdChanges","wagmiConfig","subscribe","chainId","newChainId","getLogger","log","stateChainId","state","syncTokensAfterChainSwitch"],"mappings":";;;;AAIO,MAAMA,kCAAkCA,MAAM;AACnD,EAAA,OAAOC,WAAAA,CAAYC,UACjB,CAAC;AAAA,IAAEC;AAAAA,GAAQ,KAAMA,SAChBC,CAAAA,UAAAA,KAAe;AACdC,IAAAA,SAAAA,CAAU,cAAc,CAAA,CAAEC,GAAAA,CAAI,yCAAA,EAA2C;AAAA,MACvEF,UAAAA;AAAAA,MACAG,YAAAA,EAAcN,YAAYO,KAAAA,CAAML;AAAAA,KACjC,CAAA;AAEDM,IAAAA,0BAAAA,CAA2BL,UAAU,CAAA;AAAA,GAEzC,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"subscriptions.js","sources":["../../../../src/core/inputs/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { syncTokensAfterChainSwitch } from \"./selectedTokenActionsAtom\";\nimport { getLogger } from \"@/core/logger\";\n\nexport const subscribeToWalletChainIdChanges = () => {\n return wagmiConfig.subscribe(\n ({ chainId }) => chainId,\n (newChainId) => {\n getLogger(\"Subscription\").log(\"Sync tokens after wallet chainId change\", {\n newChainId,\n stateChainId: wagmiConfig.state.chainId,\n });\n\n syncTokensAfterChainSwitch(newChainId);\n }\n );\n};\n"],"names":["subscribeToWalletChainIdChanges","wagmiConfig","subscribe","chainId","newChainId","getLogger","log","stateChainId","state","syncTokensAfterChainSwitch"],"mappings":";;;;AAIO,MAAMA,kCAAkCA,MAAM;AACnD,EAAA,OAAOC,WAAAA,CAAYC,UACjB,CAAC;AAAA,IAAEC;AAAAA,GAAQ,KAAMA,SAChBC,CAAAA,UAAAA,KAAe;AACdC,IAAAA,SAAAA,CAAU,cAAc,CAAA,CAAEC,GAAAA,CAAI,yCAAA,EAA2C;AAAA,MACvEF,UAAAA;AAAAA,MACAG,YAAAA,EAAcN,YAAYO,KAAAA,CAAML;AAAAA,KACjC,CAAA;AAEDM,IAAAA,0BAAAA,CAA2BL,UAAU,CAAA;AAAA,EACvC,CACF,CAAA;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAc7C;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,cAM9B,CAAC;AAIF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,cAQ9B,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAY7C;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,cAM9B,CAAC;AAIF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,cAQ9B,CAAC"}
@@ -1,12 +1,11 @@
1
1
  import { d as distExports } from '../_virtual/index.js';
2
2
  import { createLogger, createNoopLogger } from '../lib/utils/logger.js';
3
- import { getDefaultStore } from 'jotai';
4
3
  import { widgetConfigAtom, useWidgetConfig } from './state/configAtom.js';
4
+ import { jotaiStore } from './inputs/state/store.js';
5
5
 
6
- const store = getDefaultStore();
7
- let isDebugOn = store.get(widgetConfigAtom).debug;
8
- store.sub(widgetConfigAtom, () => {
9
- const debug = store.get(widgetConfigAtom).debug;
6
+ let isDebugOn = jotaiStore.get(widgetConfigAtom).debug;
7
+ jotaiStore.sub(widgetConfigAtom, () => {
8
+ const debug = jotaiStore.get(widgetConfigAtom).debug;
10
9
  if (debug !== isDebugOn) isDebugOn = debug;
11
10
  });
12
11
  const getLogger = (...args) => {
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sources":["../../src/core/logger.ts"],"sourcesContent":["import * as logger from \"@/lib/utils/logger\";\nimport { getDefaultStore } from \"jotai\";\nimport { useWidgetConfig, widgetConfigAtom } from \"./state/configAtom\";\n\nconst isDev = import.meta.env.DEV;\n\nconst store = getDefaultStore();\n\nlet isDebugOn = store.get(widgetConfigAtom).debug;\nstore.sub(widgetConfigAtom, () => {\n const debug = store.get(widgetConfigAtom).debug;\n if (debug !== isDebugOn) isDebugOn = debug;\n});\n\n/**\n * Creates a logger instance with consideration for development mode and debug in widget config.\n * To be used outside of React.\n */\nexport const getLogger: logger.CreateLoggerFn = (\n ...args\n): logger.LoggerInstance => {\n return isDev || isDebugOn\n ? logger.createLogger(...args)\n : logger.createNoopLogger(...args);\n};\n\n// creating a hooks like this: `useLogger(...args)` will cause it's result to be created anew on every render,\n// because react-compiler fails to memoize spreded args, probably because spread creates a new array on every render\nexport const useLogger: logger.CreateLoggerFn = (\n context?: string,\n options?: logger.LoggerOptions\n): logger.LoggerInstance => {\n const debug = useWidgetConfig().debug;\n return isDev || debug\n ? logger.createLogger(context, options)\n : logger.createNoopLogger(context, options);\n};\n"],"names":["store","getDefaultStore","isDebugOn","get","widgetConfigAtom","debug","sub","getLogger","args","logger","createLogger","createNoopLogger","useLogger","context","options","$","_c","useWidgetConfig","t0"],"mappings":";;;;;AAMA,MAAMA,QAAQC,eAAAA,EAAgB;AAE9B,IAAIC,SAAAA,GAAYF,KAAAA,CAAMG,GAAAA,CAAIC,gBAAgB,CAAA,CAAEC,KAAAA;AAC5CL,KAAAA,CAAMM,GAAAA,CAAIF,kBAAkB,MAAM;AAChC,EAAA,MAAMC,KAAAA,GAAQL,KAAAA,CAAMG,GAAAA,CAAIC,gBAAgB,CAAA,CAAEC,KAAAA;AAC1C,EAAA,IAAIA,KAAAA,KAAUH,WAAWA,SAAAA,GAAYG,KAAAA;AACvC,CAAC,CAAA;AAMM,MAAME,SAAAA,GAAmCA,IAC3CC,IAAAA,KACuB;AAC1B,EAAA,OAAgBN,SAAAA,GACZO,YAAOC,CAAa,GAAGF,IAAI,CAAA,GAC3BC,gBAAOE,CAAiB,GAAGH,IAAI,CAAA;AACrC;AAIO,MAAMI,SAAAA,GAAmCA,CAAAC,OAAAA,EAAAC,OAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAI9C,EAAA,MAAAX,KAAAA,GAAcY,iBAAgB,CAACZ,KAAAA;AAAO,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAF,OAAAA,IAAAE,CAAAA,QAAAV,KAAAA,IAAAU,CAAAA,CAAA,CAAA,CAAA,KAAAD,OAAAA,EAAA;AAC/BI,IAAAA,EAAAA,GAASb,KAAAA,GACZI,YAAAC,CAAoBG,OAAAA,EAASC,OAAO,CAAA,GACpCL,gBAAAE,CAAwC,CAAA;AAACI,IAAAA,CAAAA,MAAAF,OAAAA;AAAAE,IAAAA,CAAAA,MAAAV,KAAAA;AAAAU,IAAAA,CAAAA,MAAAD,OAAAA;AAAAC,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA;AAAA,EAAA,OAFtCG,EAAAA;AAEsC;;;;"}
1
+ {"version":3,"file":"logger.js","sources":["../../src/core/logger.ts"],"sourcesContent":["import * as logger from \"@/lib/utils/logger\";\nimport { useWidgetConfig, widgetConfigAtom } from \"./state/configAtom\";\nimport { jotaiStore } from \"./inputs/state/store\";\n\nconst isDev = import.meta.env.DEV;\n\nlet isDebugOn = jotaiStore.get(widgetConfigAtom).debug;\njotaiStore.sub(widgetConfigAtom, () => {\n const debug = jotaiStore.get(widgetConfigAtom).debug;\n if (debug !== isDebugOn) isDebugOn = debug;\n});\n\n/**\n * Creates a logger instance with consideration for development mode and debug in widget config.\n * To be used outside of React.\n */\nexport const getLogger: logger.CreateLoggerFn = (\n ...args\n): logger.LoggerInstance => {\n return isDev || isDebugOn\n ? logger.createLogger(...args)\n : logger.createNoopLogger(...args);\n};\n\n// creating a hooks like this: `useLogger(...args)` will cause it's result to be created anew on every render,\n// because react-compiler fails to memoize spreded args, probably because spread creates a new array on every render\nexport const useLogger: logger.CreateLoggerFn = (\n context?: string,\n options?: logger.LoggerOptions\n): logger.LoggerInstance => {\n const debug = useWidgetConfig().debug;\n return isDev || debug\n ? logger.createLogger(context, options)\n : logger.createNoopLogger(context, options);\n};\n"],"names":["isDebugOn","jotaiStore","get","widgetConfigAtom","debug","sub","getLogger","args","logger","createLogger","createNoopLogger","useLogger","context","options","$","_c","useWidgetConfig","t0"],"mappings":";;;;;AAMA,IAAIA,SAAAA,GAAYC,UAAAA,CAAWC,GAAAA,CAAIC,gBAAgB,CAAA,CAAEC,KAAAA;AACjDH,UAAAA,CAAWI,GAAAA,CAAIF,kBAAkB,MAAM;AACrC,EAAA,MAAMC,KAAAA,GAAQH,UAAAA,CAAWC,GAAAA,CAAIC,gBAAgB,CAAA,CAAEC,KAAAA;AAC/C,EAAA,IAAIA,KAAAA,KAAUJ,WAAWA,SAAAA,GAAYI,KAAAA;AACvC,CAAC,CAAA;AAMM,MAAME,SAAAA,GAAmCA,IAC3CC,IAAAA,KACuB;AAC1B,EAAA,OAAgBP,SAAAA,GACZQ,YAAOC,CAAa,GAAGF,IAAI,CAAA,GAC3BC,gBAAOE,CAAiB,GAAGH,IAAI,CAAA;AACrC;AAIO,MAAMI,SAAAA,GAAmCA,CAAAC,OAAAA,EAAAC,OAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAI9C,EAAA,MAAAX,KAAAA,GAAcY,iBAAgB,CAACZ,KAAAA;AAAO,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAF,OAAAA,IAAAE,CAAAA,QAAAV,KAAAA,IAAAU,CAAAA,CAAA,CAAA,CAAA,KAAAD,OAAAA,EAAA;AAC/BI,IAAAA,EAAAA,GAASb,KAAAA,GACZI,YAAAC,CAAoBG,OAAAA,EAASC,OAAO,CAAA,GACpCL,gBAAAE,CAAwC,CAAA;AAACI,IAAAA,CAAAA,MAAAF,OAAAA;AAAAE,IAAAA,CAAAA,MAAAV,KAAAA;AAAAU,IAAAA,CAAAA,MAAAD,OAAAA;AAAAC,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAFtCG,EAAAA;AAEsC;;;;"}
@@ -1,3 +1,3 @@
1
- export declare const chainToAtom: import('jotai').WritableAtom<10 | 1 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130 | undefined, [newChainTo: 10 | 1 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130], void>;
2
- export declare const useChainToAtom: () => 10 | 1 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130 | undefined;
1
+ export declare const chainToAtom: import('jotai').WritableAtom<1 | 10 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130 | undefined, [newChainTo: 1 | 10 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130], void>;
2
+ export declare const useChainToAtom: () => 1 | 10 | 137 | 56 | 43114 | 42161 | 8453 | 100 | 146 | 130 | undefined;
3
3
  //# sourceMappingURL=chainToAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainToAtom.js","sources":["../../../src/core/state/chainToAtom.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { atom, useAtomValue } from \"jotai\";\nimport { tokenFromAtom, tokenToAtom } from \"../inputs/state/selectedTokenAtom\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { findFirstTokenFromAcross } from \"../across/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\n\nexport const chainToAtom = atom(\n // chainTo always follows tokenTo network (either SupportedChainId or undefined)\n (get) => get(tokenToAtom)?.network as SupportedChainId | undefined,\n // set(chainToAtom) = (chainTo) => set(tokenToAtom to default token for that chain)\n (get, set, newChainTo: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(newChainTo);\n\n const appChainId = wagmiConfig.state.chainId;\n\n // cross-chain? try to set the first token from the across list as tokenTo\n // otherwise tokenTo will be reset\n if (appChainId !== newChainTo) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: appChainId,\n toChainId: newChainTo,\n });\n\n set(tokenToAtom, maybeAcrossToken);\n set(setSwapModeAtom, \"delta\");\n } else {\n // single chain? set tokenTo to one of the default tokens\n const tokenFrom = get(tokenFromAtom);\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(tokenToAtom, newTokenTo);\n }\n }\n);\n\nexport const useChainToAtom = () => {\n return useAtomValue(chainToAtom);\n};\n"],"names":["chainToAtom","atom","get","tokenToAtom","network","set","newChainTo","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","appChainId","wagmiConfig","state","chainId","maybeAcrossToken","findFirstTokenFromAcross","fromChainId","toChainId","setSwapModeAtom","tokenFrom","tokenFromAtom","newTokenTo","areTokensSame","useChainToAtom","useAtomValue"],"mappings":";;;;;;;;AASO,MAAMA,WAAAA,GAAcC,IAAAA;AAAAA;AAAAA,EAExBC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,WAAW,CAAA,EAAGC,OAAAA;AAAAA;AAAAA,EAE3B,CAACF,GAAAA,EAAKG,GAAAA,EAAKC,UAAAA,KAAiC;AAC1C,IAAA,MAAM,CAACC,gBAAAA,EAAkBC,cAAc,CAAA,GAAIC,qBAAqBH,UAAU,CAAA;AAE1E,IAAA,MAAMI,UAAAA,GAAaC,YAAYC,KAAAA,CAAMC,OAAAA;AAIrC,IAAA,IAAIH,eAAeJ,UAAAA,EAAY;AAC7B,MAAA,MAAMQ,mBAAmBC,wBAAAA,CAAyB;AAAA,QAChDC,WAAAA,EAAaN,UAAAA;AAAAA,QACbO,SAAAA,EAAWX;AAAAA,OACZ,CAAA;AAEDD,MAAAA,GAAAA,CAAIF,aAAaW,gBAAgB,CAAA;AACjCT,MAAAA,GAAAA,CAAIa,iBAAiB,OAAO,CAAA;AAAA,KAC9B,MAAO;AAEL,MAAA,MAAMC,SAAAA,GAAYjB,IAAIkB,aAAa,CAAA;AACnC,MAAA,MAAMC,UAAAA,GAAaC,aAAAA,CAAcH,SAAAA,EAAWX,cAAc,IACtDD,gBAAAA,GACAC,cAAAA;AAEJH,MAAAA,GAAAA,CAAIF,aAAakB,UAAU,CAAA;AAAA;AAC7B;AAEJ;AAEO,MAAME,iBAAiBA,MAAA;AAAA,EAAA,OACrBC,aAAAxB,WAAwB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"chainToAtom.js","sources":["../../../src/core/state/chainToAtom.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { atom, useAtomValue } from \"jotai\";\nimport { tokenFromAtom, tokenToAtom } from \"../inputs/state/selectedTokenAtom\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { findFirstTokenFromAcross } from \"../across/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\n\nexport const chainToAtom = atom(\n // chainTo always follows tokenTo network (either SupportedChainId or undefined)\n (get) => get(tokenToAtom)?.network as SupportedChainId | undefined,\n // set(chainToAtom) = (chainTo) => set(tokenToAtom to default token for that chain)\n (get, set, newChainTo: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(newChainTo);\n\n const appChainId = wagmiConfig.state.chainId;\n\n // cross-chain? try to set the first token from the across list as tokenTo\n // otherwise tokenTo will be reset\n if (appChainId !== newChainTo) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: appChainId,\n toChainId: newChainTo,\n });\n\n set(tokenToAtom, maybeAcrossToken);\n set(setSwapModeAtom, \"delta\");\n } else {\n // single chain? set tokenTo to one of the default tokens\n const tokenFrom = get(tokenFromAtom);\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(tokenToAtom, newTokenTo);\n }\n }\n);\n\nexport const useChainToAtom = () => {\n return useAtomValue(chainToAtom);\n};\n"],"names":["chainToAtom","atom","get","tokenToAtom","network","set","newChainTo","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","appChainId","wagmiConfig","state","chainId","maybeAcrossToken","findFirstTokenFromAcross","fromChainId","toChainId","setSwapModeAtom","tokenFrom","tokenFromAtom","newTokenTo","areTokensSame","useChainToAtom","useAtomValue"],"mappings":";;;;;;;;AASO,MAAMA,WAAAA,GAAcC,IAAAA;AAAAA;AAAAA,EAExBC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,WAAW,CAAA,EAAGC,OAAAA;AAAAA;AAAAA,EAE3B,CAACF,GAAAA,EAAKG,GAAAA,EAAKC,UAAAA,KAAiC;AAC1C,IAAA,MAAM,CAACC,gBAAAA,EAAkBC,cAAc,CAAA,GAAIC,qBAAqBH,UAAU,CAAA;AAE1E,IAAA,MAAMI,UAAAA,GAAaC,YAAYC,KAAAA,CAAMC,OAAAA;AAIrC,IAAA,IAAIH,eAAeJ,UAAAA,EAAY;AAC7B,MAAA,MAAMQ,mBAAmBC,wBAAAA,CAAyB;AAAA,QAChDC,WAAAA,EAAaN,UAAAA;AAAAA,QACbO,SAAAA,EAAWX;AAAAA,OACZ,CAAA;AAEDD,MAAAA,GAAAA,CAAIF,aAAaW,gBAAgB,CAAA;AACjCT,MAAAA,GAAAA,CAAIa,iBAAiB,OAAO,CAAA;AAAA,IAC9B,CAAA,MAAO;AAEL,MAAA,MAAMC,SAAAA,GAAYjB,IAAIkB,aAAa,CAAA;AACnC,MAAA,MAAMC,UAAAA,GAAaC,aAAAA,CAAcH,SAAAA,EAAWX,cAAc,IACtDD,gBAAAA,GACAC,cAAAA;AAEJH,MAAAA,GAAAA,CAAIF,aAAakB,UAAU,CAAA;AAAA,IAC7B;AAAA,EACF;AACF;AAEO,MAAME,iBAAiBA,MAAA;AAAA,EAAA,OACrBC,aAAAxB,WAAwB,CAAA;AAAC;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { WidgetConfig } from '../types';
2
- export declare const setWidgetConfigAtom: import('jotai').WritableAtom<null, [config?: WidgetConfig | undefined], void> & {
2
+ export declare const setWidgetConfigAtom: import('jotai').WritableAtom<null, [config: WidgetConfig], void> & {
3
3
  init: null;
4
4
  };
5
5
  //# sourceMappingURL=configActionsAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"configActionsAtom.js","sources":["../../../src/core/state/configActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport type { WidgetConfig } from \"../types\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\n\nexport const setWidgetConfigAtom = atom(\n null,\n (get, set, config?: WidgetConfig) => {\n const currentConfig = get(widgetConfigAtom);\n\n // set either new value or stick with the current one\n const enableDelta = config?.enableDelta ?? currentConfig.enableDelta;\n const theme = config?.theme ?? currentConfig.theme;\n const privyAppId = config?.privyAppId ?? currentConfig.privyAppId;\n const privyClientId = config?.privyClientId ?? currentConfig.privyClientId;\n const debug = config?.debug ?? currentConfig.debug;\n const widgetMode = config?.widgetMode ?? currentConfig.widgetMode;\n\n set(widgetConfigAtom, {\n theme,\n enableDelta,\n partner: config?.partner,\n privyAppId,\n privyClientId,\n debug,\n widgetMode,\n });\n\n set(setSwapModeAtom, enableDelta ? \"delta\" : \"market\");\n }\n);\n"],"names":["setWidgetConfigAtom","atom","get","set","config","currentConfig","widgetConfigAtom","enableDelta","theme","privyAppId","privyClientId","debug","widgetMode","partner","setSwapModeAtom"],"mappings":";;;;AAKO,MAAMA,sBAAsBC,IAAAA,CACjC,IAAA,EACA,CAACC,GAAAA,EAAKC,KAAKC,MAAAA,KAA0B;AACnC,EAAA,MAAMC,aAAAA,GAAgBH,IAAII,gBAAgB,CAAA;AAG1C,EAAA,MAAMC,WAAAA,GAAcH,MAAAA,EAAQG,WAAAA,IAAeF,aAAAA,CAAcE,WAAAA;AACzD,EAAA,MAAMC,KAAAA,GAAQJ,MAAAA,EAAQI,KAAAA,IAASH,aAAAA,CAAcG,KAAAA;AAC7C,EAAA,MAAMC,UAAAA,GAAaL,MAAAA,EAAQK,UAAAA,IAAcJ,aAAAA,CAAcI,UAAAA;AACvD,EAAA,MAAMC,aAAAA,GAAgBN,MAAAA,EAAQM,aAAAA,IAAiBL,aAAAA,CAAcK,aAAAA;AAC7D,EAAA,MAAMC,KAAAA,GAAQP,MAAAA,EAAQO,KAAAA,IAASN,aAAAA,CAAcM,KAAAA;AAC7C,EAAA,MAAMC,UAAAA,GAAaR,MAAAA,EAAQQ,UAAAA,IAAcP,aAAAA,CAAcO,UAAAA;AAEvDT,EAAAA,GAAAA,CAAIG,gBAAAA,EAAkB;AAAA,IACpBE,KAAAA;AAAAA,IACAD,WAAAA;AAAAA,IACAM,SAAST,MAAAA,EAAQS,OAAAA;AAAAA,IACjBJ,UAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAC,KAAAA;AAAAA,IACAC;AAAAA,GACD,CAAA;AAEDT,EAAAA,GAAAA,CAAIW,eAAAA,EAAiBP,WAAAA,GAAc,OAAA,GAAU,QAAQ,CAAA;AACvD,CACF;;;;"}
1
+ {"version":3,"file":"configActionsAtom.js","sources":["../../../src/core/state/configActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport type { WidgetConfig } from \"../types\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\n\nexport const setWidgetConfigAtom = atom(\n null,\n (get, set, config: WidgetConfig) => {\n const currentConfig = get(widgetConfigAtom);\n\n // set either new value or stick with the current one\n const enableDelta = config?.enableDelta ?? currentConfig.enableDelta;\n const theme = config?.theme ?? currentConfig.theme;\n const privyAppId = config?.privyAppId ?? currentConfig.privyAppId;\n const privyClientId = config?.privyClientId ?? currentConfig.privyClientId;\n const debug = config?.debug ?? currentConfig.debug;\n const widgetMode = config?.widgetMode ?? currentConfig.widgetMode;\n\n set(widgetConfigAtom, {\n theme,\n enableDelta,\n partner: config?.partner,\n privyAppId,\n privyClientId,\n debug,\n widgetMode,\n });\n\n set(setSwapModeAtom, enableDelta ? \"delta\" : \"market\");\n }\n);\n"],"names":["setWidgetConfigAtom","atom","get","set","config","currentConfig","widgetConfigAtom","enableDelta","theme","privyAppId","privyClientId","debug","widgetMode","partner","setSwapModeAtom"],"mappings":";;;;AAKO,MAAMA,sBAAsBC,IAAAA,CACjC,IAAA,EACA,CAACC,GAAAA,EAAKC,KAAKC,MAAAA,KAAyB;AAClC,EAAA,MAAMC,aAAAA,GAAgBH,IAAII,gBAAgB,CAAA;AAG1C,EAAA,MAAMC,WAAAA,GAAcH,MAAAA,EAAQG,WAAAA,IAAeF,aAAAA,CAAcE,WAAAA;AACzD,EAAA,MAAMC,KAAAA,GAAQJ,MAAAA,EAAQI,KAAAA,IAASH,aAAAA,CAAcG,KAAAA;AAC7C,EAAA,MAAMC,UAAAA,GAAaL,MAAAA,EAAQK,UAAAA,IAAcJ,aAAAA,CAAcI,UAAAA;AACvD,EAAA,MAAMC,aAAAA,GAAgBN,MAAAA,EAAQM,aAAAA,IAAiBL,aAAAA,CAAcK,aAAAA;AAC7D,EAAA,MAAMC,KAAAA,GAAQP,MAAAA,EAAQO,KAAAA,IAASN,aAAAA,CAAcM,KAAAA;AAC7C,EAAA,MAAMC,UAAAA,GAAaR,MAAAA,EAAQQ,UAAAA,IAAcP,aAAAA,CAAcO,UAAAA;AAEvDT,EAAAA,GAAAA,CAAIG,gBAAAA,EAAkB;AAAA,IACpBE,KAAAA;AAAAA,IACAD,WAAAA;AAAAA,IACAM,SAAST,MAAAA,EAAQS,OAAAA;AAAAA,IACjBJ,UAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAC,KAAAA;AAAAA,IACAC;AAAAA,GACD,CAAA;AAEDT,EAAAA,GAAAA,CAAIW,eAAAA,EAAiBP,WAAAA,GAAc,OAAA,GAAU,QAAQ,CAAA;AACvD,CACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { WidgetConfig, WidgetTheme } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\n\n// Function to get the default theme based on system preference\nconst getDefaultTheme = (): WidgetTheme => {\n // Check if we're in a browser environment\n if (typeof window !== \"undefined\" && window.matchMedia) {\n const prefersDark = window.matchMedia(\n \"(prefers-color-scheme: dark)\"\n ).matches;\n return prefersDark ? \"dark\" : \"light\";\n }\n // Fallback to light theme if not in browser or media query not supported\n return \"light\";\n};\n\ntype WidgetConfigState = MarkRequired<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n>;\n\nexport const defaultWidgetConfig: WidgetConfigState = {\n theme: getDefaultTheme(),\n enableDelta: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n};\n\nexport const widgetConfigAtom = atom<WidgetConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n"],"names":["getDefaultTheme","window","matchMedia","prefersDark","matches","defaultWidgetConfig","theme","enableDelta","privyAppId","import","privyClientId","debug","widgetMode","widgetConfigAtom","atom","useWidgetConfig","useAtomValue"],"mappings":";;AAKA,MAAMA,kBAAkBA,MAAmB;AAEzC,EAAA,IAAI,OAAOC,MAAAA,KAAW,WAAA,IAAeA,MAAAA,CAAOC,UAAAA,EAAY;AACtD,IAAA,MAAMC,WAAAA,GAAcF,MAAAA,CAAOC,UAAAA,CACzB,8BACF,CAAA,CAAEE,OAAAA;AACF,IAAA,OAAOD,cAAc,MAAA,GAAS,OAAA;AAAA;AAGhC,EAAA,OAAO,OAAA;AACT,CAAA;AAYO,MAAME,mBAAAA,GAAyC;AAAA,EACpDC,OAAON,eAAAA,EAAgB;AAAA,EACvBO,WAAAA,EAAa,IAAA;AAAA,EACbC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY;AACd;AAEO,MAAMC,gBAAAA,GAAmBC,KAAwBT,mBAAmB;AAEpE,MAAMU,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAAH,gBAA6B,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { WidgetConfig, WidgetTheme } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\n\n// Function to get the default theme based on system preference\nconst getDefaultTheme = (): WidgetTheme => {\n // Check if we're in a browser environment\n if (typeof window !== \"undefined\" && window.matchMedia) {\n const prefersDark = window.matchMedia(\n \"(prefers-color-scheme: dark)\"\n ).matches;\n return prefersDark ? \"dark\" : \"light\";\n }\n // Fallback to light theme if not in browser or media query not supported\n return \"light\";\n};\n\ntype WidgetConfigState = MarkRequired<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n>;\n\nexport const defaultWidgetConfig: WidgetConfigState = {\n theme: getDefaultTheme(),\n enableDelta: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n};\n\nexport const widgetConfigAtom = atom<WidgetConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n"],"names":["getDefaultTheme","window","matchMedia","prefersDark","matches","defaultWidgetConfig","theme","enableDelta","privyAppId","import","privyClientId","debug","widgetMode","widgetConfigAtom","atom","useWidgetConfig","useAtomValue"],"mappings":";;AAKA,MAAMA,kBAAkBA,MAAmB;AAEzC,EAAA,IAAI,OAAOC,MAAAA,KAAW,WAAA,IAAeA,MAAAA,CAAOC,UAAAA,EAAY;AACtD,IAAA,MAAMC,WAAAA,GAAcF,MAAAA,CAAOC,UAAAA,CACzB,8BACF,CAAA,CAAEE,OAAAA;AACF,IAAA,OAAOD,cAAc,MAAA,GAAS,OAAA;AAAA,EAChC;AAEA,EAAA,OAAO,OAAA;AACT,CAAA;AAYO,MAAME,mBAAAA,GAAyC;AAAA,EACpDC,OAAON,eAAAA,EAAgB;AAAA,EACvBO,WAAAA,EAAa,IAAA;AAAA,EACbC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY;AACd;AAEO,MAAMC,gBAAAA,GAAmBC,KAAwBT,mBAAmB;AAEpE,MAAMU,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAAH,gBAA6B,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;AAIO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA;AAGT,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAAN,yBAAsC,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAAH,gBAA6B,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}
1
+ {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;AAIO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAAN,yBAAsC,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAAH,gBAA6B,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}