@velora-dex/widget 0.8.1 → 0.8.2

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 (575) hide show
  1. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  2. package/dist/components/ui/accordion.js.map +1 -1
  3. package/dist/components/ui/button.js.map +1 -1
  4. package/dist/components/ui/card.js.map +1 -1
  5. package/dist/components/ui/drawer.js.map +1 -1
  6. package/dist/components/ui/dropdown-menu.js.map +1 -1
  7. package/dist/components/ui/input.js.map +1 -1
  8. package/dist/components/ui/progress.js.map +1 -1
  9. package/dist/components/ui/skeleton.js.map +1 -1
  10. package/dist/components/ui/sonner.js.map +1 -1
  11. package/dist/components/ui/switch.js.map +1 -1
  12. package/dist/components/ui/tooltip.js.map +1 -1
  13. package/dist/components/web3/AccountButton.js.map +1 -1
  14. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  15. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -1
  16. package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -1
  17. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
  18. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  19. package/dist/components/web3/ConnectWallets/index.js +1 -1
  20. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  21. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  22. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  23. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  24. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  25. package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -1
  26. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  27. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  28. package/dist/components/web3/providers.js.map +1 -1
  29. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
  30. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  31. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  32. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  33. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  34. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  35. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  36. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  37. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  38. package/dist/components/widget/AppHeader/state/showMoreAtom.js.map +1 -1
  39. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -1
  40. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -1
  41. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -1
  42. package/dist/components/widget/BridgeList/hooks.js.map +1 -1
  43. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -1
  44. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
  45. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  46. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -1
  47. package/dist/components/widget/Button/DismissButton.js.map +1 -1
  48. package/dist/components/widget/Button/RefreshButton.js.map +1 -1
  49. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -1
  50. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  51. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  52. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  53. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  54. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  55. package/dist/components/widget/DexesList/DexesList.js.map +1 -1
  56. package/dist/components/widget/DexesList/getDexProps.js.map +1 -1
  57. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  58. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  59. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  60. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  61. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  62. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  63. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  64. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  65. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  66. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  67. package/dist/components/widget/Drawer/index.js.map +1 -1
  68. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  69. package/dist/components/widget/Duration/Duration.js.map +1 -1
  70. package/dist/components/widget/Duration/utils.js.map +1 -1
  71. package/dist/components/widget/EnabledExchanges/EnabledExchanges.js.map +1 -1
  72. package/dist/components/widget/EnabledExchanges/EnabledExchangesList.js.map +1 -1
  73. package/dist/components/widget/EnabledList/EnabledList.js.map +1 -1
  74. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -1
  75. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  76. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  77. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  78. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  79. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  80. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  81. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  82. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  83. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
  84. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  85. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  86. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  87. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +5 -8
  88. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  89. package/dist/components/widget/LimitOrderItem/constants.js.map +1 -1
  90. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  91. package/dist/components/widget/LimitPriceInput/index.js +6 -6
  92. package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
  93. package/dist/components/widget/Line/Line.js.map +1 -1
  94. package/dist/components/widget/ListItem/ListItemWithSwitch.js.map +1 -1
  95. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  96. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  97. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  98. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +1 -1
  99. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +1 -1
  100. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +1 -1
  101. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +1 -1
  102. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  103. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  104. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -1
  105. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  106. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  107. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
  108. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -1
  109. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js +5 -8
  110. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -1
  111. package/dist/components/widget/OtcOrderItem/constants.js.map +1 -1
  112. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  113. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  114. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  115. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  116. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  117. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  118. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  119. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  120. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  121. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  122. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  123. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  124. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  125. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -1
  126. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  127. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  128. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  129. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  130. package/dist/components/widget/SwapRate/SwapRateWithTooltip.js.map +1 -1
  131. package/dist/components/widget/SwapRate/utils.js.map +1 -1
  132. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -1
  133. package/dist/components/widget/Tabs/Tabs.js.map +1 -1
  134. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  135. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  136. package/dist/components/widget/TokenBadge/TokenLink.js.map +1 -1
  137. package/dist/components/widget/TokenInput/InputContainer.js.map +1 -1
  138. package/dist/components/widget/TokenInput/InputField.js.map +1 -1
  139. package/dist/components/widget/TokenInput/InputFooter.js.map +1 -1
  140. package/dist/components/widget/TokenInput/InputHeader.js.map +1 -1
  141. package/dist/components/widget/TokenInput/common/Balance.js.map +1 -1
  142. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +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/CancelButtonWithDrawer.js.map +1 -1
  146. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -1
  147. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -1
  148. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  149. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  150. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  151. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  152. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  153. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  154. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  155. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  156. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  157. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  158. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  159. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  160. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  161. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  162. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  163. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  164. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  165. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  166. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  167. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  169. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  170. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  171. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  172. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  173. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  174. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  175. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -1
  176. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  177. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  178. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -1
  179. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -1
  180. package/dist/components/widget/TradeParameters/DegenModeConfirmation.js.map +1 -1
  181. package/dist/components/widget/TradeParameters/DegenModeParameter.js.map +1 -1
  182. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  183. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  184. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/EnabledExchangesParameters.js.map +1 -1
  185. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/useDraftEnabledExchangesState.js.map +1 -1
  186. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  187. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  188. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  189. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  190. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  191. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  192. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  193. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -1
  194. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -1
  195. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -1
  196. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -1
  197. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -1
  198. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -1
  199. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js.map +1 -1
  200. package/dist/components/widget/TradeParameters/state/enabledExchanges/disabledDexesAtomFamily.js.map +1 -1
  201. package/dist/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes.js.map +1 -1
  202. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js.map +1 -1
  203. package/dist/components/widget/TradeParameters/state/tradePreferencesAtom.js.map +1 -1
  204. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  205. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  206. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  207. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  208. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  209. package/dist/components/widget/TransactionDetails/utils.js.map +1 -1
  210. package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -1
  211. package/dist/components/widget/Twap/OrderDuration.js.map +1 -1
  212. package/dist/components/widget/Twap/OrderSplit.js.map +1 -1
  213. package/dist/components/widget/Twap/RateProtection.js.map +1 -1
  214. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -1
  215. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  216. package/dist/components/widget/Warning/Warning.js.map +1 -1
  217. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  218. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  219. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  220. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  221. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  222. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  223. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  224. package/dist/core/LimitOrderButton.js.map +1 -1
  225. package/dist/core/LimitOrderDetails.js.map +1 -1
  226. package/dist/core/OtcOrderButton.js.map +1 -1
  227. package/dist/core/OtcOrderDetails.js.map +1 -1
  228. package/dist/core/Toaster.js.map +1 -1
  229. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  230. package/dist/core/TwapDetails.js.map +1 -1
  231. package/dist/core/Updaters.js.map +1 -1
  232. package/dist/core/Warnings.js.map +1 -1
  233. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  234. package/dist/core/across/utils.js.map +1 -1
  235. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  236. package/dist/core/index.js.map +1 -1
  237. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  238. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  239. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  240. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  241. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -1
  242. package/dist/core/inputs/hooks/utils.js.map +1 -1
  243. package/dist/core/inputs/state/common.js.map +1 -1
  244. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  245. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  246. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  247. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  248. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  249. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  250. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -1
  251. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  252. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  253. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -1
  254. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  255. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  256. package/dist/core/limit/state/utils.js.map +1 -1
  257. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  258. package/dist/core/limit/useLimitNotSupported.js.map +1 -1
  259. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  260. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  261. package/dist/core/limit/useLimitRate.js.map +1 -1
  262. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  263. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  264. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  265. package/dist/core/logger.js.map +1 -1
  266. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  267. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  268. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
  269. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  270. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
  271. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  272. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  273. package/dist/core/otc/useOtcNotSupported.js.map +1 -1
  274. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  275. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  276. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  277. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  278. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  279. package/dist/core/screen/hooks/useInitialValue.js.map +1 -1
  280. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  281. package/dist/core/screen/hooks/useResizeObserver.js.map +1 -1
  282. package/dist/core/screen/hooks/useRunOnMount.js.map +1 -1
  283. package/dist/core/screen/state/hooks/useScreen.js.map +1 -1
  284. package/dist/core/screen/state/hooks/useScreenValue.js.map +1 -1
  285. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  286. package/dist/core/screen/state/screenAtom.js.map +1 -1
  287. package/dist/core/state/apiConfigAtom.js.map +1 -1
  288. package/dist/core/state/chainToAtom.js.map +1 -1
  289. package/dist/core/state/configActionsAtom.js.map +1 -1
  290. package/dist/core/state/configEffectAtom.js.map +1 -1
  291. package/dist/core/state/containerAtom.js.map +1 -1
  292. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  293. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  294. package/dist/core/state/externalProviderAtom.js.map +1 -1
  295. package/dist/core/state/getSelectableDestChains.js.map +1 -1
  296. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  297. package/dist/core/state/tradeModeAtom.js.map +1 -1
  298. package/dist/core/state/validatedPartnerConfigAtom.js.map +1 -1
  299. package/dist/core/state/validatedReferrerConfigAtom.js.map +1 -1
  300. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  301. package/dist/core/subscriptions.js.map +1 -1
  302. package/dist/core/swapDetails/fees.js.map +1 -1
  303. package/dist/core/swapDetails/maxToPay.js.map +1 -1
  304. package/dist/core/swapDetails/orderRouting.js.map +1 -1
  305. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  306. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  307. package/dist/core/swapDetails/youGet.js.map +1 -1
  308. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -1
  309. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -1
  310. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
  311. package/dist/core/twap/state/twapParamsAtom.js.map +1 -1
  312. package/dist/core/twap/state/twapSideAtom.js.map +1 -1
  313. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
  314. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -1
  315. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -1
  316. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -1
  317. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -1
  318. package/dist/events/effects/formInput.js.map +1 -1
  319. package/dist/events/effects/price.js.map +1 -1
  320. package/dist/events/effects/swapMode.js.map +1 -1
  321. package/dist/events/getters/limit.js.map +1 -1
  322. package/dist/events/getters/otc.js.map +1 -1
  323. package/dist/events/getters/settings.js.map +1 -1
  324. package/dist/events/getters/swap.js.map +1 -1
  325. package/dist/events/getters/twap.js.map +1 -1
  326. package/dist/events/getters/widgetState.js.map +1 -1
  327. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  328. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  329. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  330. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1/external/vaul/dist/index.js.map +1 -1
  331. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  332. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -1
  333. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  334. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  335. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  336. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  337. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  338. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  339. package/dist/hooks/gas/utils.js.map +1 -1
  340. package/dist/hooks/getCode/query.js.map +1 -1
  341. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  342. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  343. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  344. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
  345. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  346. package/dist/hooks/otc/mutations/utils.js.map +1 -1
  347. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  348. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  349. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  350. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  351. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  352. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  353. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  354. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  355. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  356. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  357. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  358. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  359. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  360. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  361. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  362. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  363. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  364. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  365. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  366. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js.map +1 -1
  367. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  368. package/dist/hooks/permit/utils/constants.js.map +1 -1
  369. package/dist/hooks/permit/utils/construct.js.map +1 -1
  370. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  371. package/dist/hooks/permit/utils/detect.js.map +1 -1
  372. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  373. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  374. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  375. package/dist/hooks/permit/utils/utils.js.map +1 -1
  376. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  377. package/dist/hooks/sdk/useSpender.js.map +1 -1
  378. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
  379. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  380. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -1
  381. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  382. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -1
  383. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  384. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -1
  385. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  386. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  387. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  388. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  389. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  390. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  391. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  392. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  393. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  394. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  395. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  396. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  397. package/dist/hooks/swap/prices/delta/orders/unposted/effect.js.map +1 -1
  398. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  399. package/dist/hooks/swap/prices/delta/orders/unposted/storage.js.map +1 -1
  400. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +8 -11
  401. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  402. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  403. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  404. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  405. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -1
  406. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -1
  407. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  408. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -1
  409. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  410. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  411. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js.map +1 -1
  412. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  413. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +1 -1
  414. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  415. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  416. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  417. package/dist/hooks/swap/prices/factory.js.map +1 -1
  418. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  419. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  420. package/dist/hooks/swap/prices/market/queries/dexesList/useDexesList.js.map +1 -1
  421. package/dist/hooks/swap/prices/market/queries/errors.js.map +1 -1
  422. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  423. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  424. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  425. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  426. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  427. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
  428. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
  429. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  430. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
  431. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
  432. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  433. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  434. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -1
  435. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  436. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  437. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  438. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
  439. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  440. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  441. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  442. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  443. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  444. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  445. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  446. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  447. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  448. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -1
  449. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  450. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  451. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  452. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  453. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  454. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  455. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  456. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  457. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  458. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -1
  459. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  460. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  461. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
  462. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
  463. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  464. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  465. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  466. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  467. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  468. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  469. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  470. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  471. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  472. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  473. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -1
  474. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  475. package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -1
  476. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  477. package/dist/hooks/txs/queries/useTxFees.js.map +1 -1
  478. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  479. package/dist/hooks/txs/queries/useTxResponse.js.map +1 -1
  480. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -1
  481. package/dist/hooks/txs/queries/utils.js.map +1 -1
  482. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  483. package/dist/hooks/useBreakpoints.js.map +1 -1
  484. package/dist/hooks/useBridgeInfo.js.map +1 -1
  485. package/dist/hooks/useBridgeProtocols.js.map +1 -1
  486. package/dist/hooks/useCachedQueryError.js.map +1 -1
  487. package/dist/hooks/useChainMatches.js.map +1 -1
  488. package/dist/hooks/useClickOutside.js.map +1 -1
  489. package/dist/hooks/useCurrentChain.js.map +1 -1
  490. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  491. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  492. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  493. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  494. package/dist/hooks/useMinViemClient.js.map +1 -1
  495. package/dist/hooks/useSDK.js.map +1 -1
  496. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  497. package/dist/hooks/useSlippage.js.map +1 -1
  498. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -1
  499. package/dist/lib/constants/urls.js.map +1 -1
  500. package/dist/lib/ipfs.js.map +1 -1
  501. package/dist/lib/queryClient.js.map +1 -1
  502. package/dist/lib/tradeMode.js.map +1 -1
  503. package/dist/lib/utils/approval.js.map +1 -1
  504. package/dist/lib/utils/atomWithCompare.js.map +1 -1
  505. package/dist/lib/utils/copyToClipboard.js.map +1 -1
  506. package/dist/lib/utils/delta.js.map +1 -1
  507. package/dist/lib/utils/dexes.js.map +1 -1
  508. package/dist/lib/utils/explorer.js.map +1 -1
  509. package/dist/lib/utils/fee.js.map +1 -1
  510. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  511. package/dist/lib/utils/formatPercent.js.map +1 -1
  512. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  513. package/dist/lib/utils/index.js.map +1 -1
  514. package/dist/lib/utils/logger.js.map +1 -1
  515. package/dist/lib/utils/metabase.js.map +1 -1
  516. package/dist/lib/utils/mobile.js.map +1 -1
  517. package/dist/lib/utils/price.js.map +1 -1
  518. package/dist/lib/utils/priceImpact.js.map +1 -1
  519. package/dist/lib/utils/providerErrors.js.map +1 -1
  520. package/dist/lib/utils/rate.js.map +1 -1
  521. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  522. package/dist/lib/utils/savedAmountUSD.js.map +1 -1
  523. package/dist/lib/utils/scaleFactor.js.map +1 -1
  524. package/dist/lib/utils/slippage.js.map +1 -1
  525. package/dist/lib/utils/time.js.map +1 -1
  526. package/dist/lib/utils/toDecimal.js.map +1 -1
  527. package/dist/lib/utils/toasts.js.map +1 -1
  528. package/dist/lib/utils/tradeFlow.js.map +1 -1
  529. package/dist/lib/utils/transactionHandlers.js.map +1 -1
  530. package/dist/lib/utils/tuple.js.map +1 -1
  531. package/dist/lib/utils/twap.js.map +1 -1
  532. package/dist/lib/utils/useDateNow.js.map +1 -1
  533. package/dist/lib/web3/wagmi/config.js.map +1 -1
  534. package/dist/lib/web3/wagmi/external.js.map +1 -1
  535. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  536. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  537. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  538. package/dist/tokens/blacklist.js.map +1 -1
  539. package/dist/tokens/constructor.js.map +1 -1
  540. package/dist/tokens/defaultTokens.js.map +1 -1
  541. package/dist/tokens/hooks.js.map +1 -1
  542. package/dist/tokens/lists/constants.js.map +1 -1
  543. package/dist/tokens/lists/download.js.map +1 -1
  544. package/dist/tokens/lists/state/effects.js.map +1 -1
  545. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  546. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  547. package/dist/tokens/overrides.js.map +1 -1
  548. package/dist/tokens/queries.js.map +1 -1
  549. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  550. package/dist/tokens/stabeCoins/index.js.map +1 -1
  551. package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
  552. package/dist/tokens/state/allTokensByChainAtom.js.map +1 -1
  553. package/dist/tokens/state/constructTokens.js.map +1 -1
  554. package/dist/tokens/state/fromListsAtom.js.map +1 -1
  555. package/dist/tokens/utils/areTokensSame.js.map +1 -1
  556. package/dist/tokens/utils/brand.js.map +1 -1
  557. package/dist/tokens/utils/eth.js.map +1 -1
  558. package/dist/tokens/utils/filtering.js.map +1 -1
  559. package/dist/tokens/utils/sets.js.map +1 -1
  560. package/dist/tokens/utils/sorting.js.map +1 -1
  561. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  562. package/dist/transactions/hash.js.map +1 -1
  563. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  564. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -1
  565. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  566. package/dist/transactions/queries/ensureTxResponse.js.map +1 -1
  567. package/dist/transactions/state/effects/finalize.js.map +1 -1
  568. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  569. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -1
  570. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  571. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  572. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  573. package/dist/transactions/status.js.map +1 -1
  574. package/dist/transactions/utils.js.map +1 -1
  575. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"FillOtcControls.js","names":["Button","useAccount","cn","FillOtcButtonProps","React","ComponentProps","labelOverride","FillOtcControlsProps","fillButtonProps","dismissButtonProps","FillOtcControls","t0","$","_c","isConnected","disabled","T0","fillLabelOverride","fillProps","t1","t2","t3","t4","t5","t6","T1","dismisLabelOverride","dismissProps","t10","t7","t8","t9","className","t11","t12"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport { useAccount } from \"wagmi\";\nimport { cn } from \"@/lib/utils\";\n\ntype FillOtcButtonProps = React.ComponentProps<typeof Button> & {\n labelOverride?: string;\n};\ntype FillOtcControlsProps = {\n fillButtonProps: FillOtcButtonProps;\n dismissButtonProps: FillOtcButtonProps;\n};\n\nexport function FillOtcControls({\n fillButtonProps,\n dismissButtonProps,\n}: FillOtcControlsProps) {\n const { isConnected } = useAccount();\n\n const disabled = !isConnected;\n\n const { labelOverride: fillLabelOverride, ...fillProps } = fillButtonProps;\n const { labelOverride: dismisLabelOverride, ...dismissProps } =\n dismissButtonProps;\n\n return (\n <div className=\"flex items-center justify-between\">\n <Button\n variant=\"secondary\"\n radius=\"md\"\n {...dismissProps}\n className={cn(\"h-[48px] text-sm\", dismissProps.className)}\n disabled={dismissProps.disabled || disabled}\n >\n {dismisLabelOverride || \"Dismiss\"}\n </Button>\n <Button\n variant=\"cta\"\n radius=\"md\"\n {...fillProps}\n className={cn(\"h-[48px] text-sm\", fillProps.className)}\n disabled={fillProps.disabled || disabled}\n >\n {fillLabelOverride || \"Fill OTC Order\"}\n </Button>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FillOtcControls.js","names":["Button","useAccount","cn","FillOtcButtonProps","React","ComponentProps","labelOverride","FillOtcControlsProps","fillButtonProps","dismissButtonProps","FillOtcControls","t0","$","_c","isConnected","disabled","T0","fillLabelOverride","fillProps","t1","t2","t3","t4","t5","t6","T1","dismisLabelOverride","dismissProps","t10","t7","t8","t9","className","t11","t12"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport { useAccount } from \"wagmi\";\nimport { cn } from \"@/lib/utils\";\n\ntype FillOtcButtonProps = React.ComponentProps<typeof Button> & {\n labelOverride?: string;\n};\ntype FillOtcControlsProps = {\n fillButtonProps: FillOtcButtonProps;\n dismissButtonProps: FillOtcButtonProps;\n};\n\nexport function FillOtcControls({\n fillButtonProps,\n dismissButtonProps,\n}: FillOtcControlsProps) {\n const { isConnected } = useAccount();\n\n const disabled = !isConnected;\n\n const { labelOverride: fillLabelOverride, ...fillProps } = fillButtonProps;\n const { labelOverride: dismisLabelOverride, ...dismissProps } =\n dismissButtonProps;\n\n return (\n <div className=\"flex items-center justify-between\">\n <Button\n variant=\"secondary\"\n radius=\"md\"\n {...dismissProps}\n className={cn(\"h-[48px] text-sm\", dismissProps.className)}\n disabled={dismissProps.disabled || disabled}\n >\n {dismisLabelOverride || \"Dismiss\"}\n </Button>\n <Button\n variant=\"cta\"\n radius=\"md\"\n {...fillProps}\n className={cn(\"h-[48px] text-sm\", fillProps.className)}\n disabled={fillProps.disabled || disabled}\n >\n {fillLabelOverride || \"Fill OTC Order\"}\n </Button>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FillOtcReviewAndConfirm.js","names":["useNativeTokenPrice","useTokenPrice","FillableOtcOrderItem","PayReceiveInfo","constructOrderStatusDetail","constructPayReceiveInfoProps","constructOrderRateDetail","constructOrderReceiverDetail","constructExpiresInDetail","constructNetworkFeeDetail","FillOtcControls","useIsInsufficientTokenBalance","DetailWithValueList","DetailWithValue","isTruthy","SupportedChainId","LimitOrderStateChecker","useGasPrices","useChainMatches","useSwitchChainWithGuard","FillOtcReviewAndConfirm","t0","$","_c","onDismiss","onFlowStart","fillableOrder","t1","extra","srcAmount","srcToken","token","requiredBalanceWei","isInsufficientBalance","orderChainId","chainId","forcedChainMatchesWalletChain","wrongNetwork","fillBtnLabelOverride","undefined","mutateAsync","switchChain","isPending","fillBtnDisabled","t2","t3","t4","onClick","labelOverride","disabled","t5","t6","t7","detailsClasses","root","title","value","const","OrderDetails","data","srcTokenPrice","destTokenPrice","destToken","price","payReceiveProps","gasPrices","nativeTokenPrice","legacyPrices","instant","active","has","state","receiver","taker","expiry","gasPriceMultiplierGwei","filter","details"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.tsx"],"sourcesContent":["import {\n useNativeTokenPrice,\n useTokenPrice,\n} from \"@/hooks/tokens/prices/useTokenPrices\";\nimport type { FillableOtcOrderItem } from \"../../OtcOrderItem/types\";\nimport { PayReceiveInfo } from \"../../PayReceiveInfo/PayReceiveInfo\";\nimport {\n constructOrderStatusDetail,\n constructPayReceiveInfoProps,\n constructOrderRateDetail,\n constructOrderReceiverDetail,\n constructExpiresInDetail,\n constructNetworkFeeDetail,\n} from \"./utils\";\nimport { FillOtcControls } from \"./FillOtcControls\";\nimport { useIsInsufficientTokenBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { DetailWithValueList } from \"../../Details/DetailWithValueList\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { isTruthy } from \"@/lib/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LimitOrderStateChecker } from \"@/hooks/otc/queries/utils\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { useChainMatches } from \"@/hooks/useChainMatches\";\nimport { useSwitchChainWithGuard } from \"@/hooks/useSwitchChainWithGuard\";\n\nexport const FillOtcReviewAndConfirm = ({\n onDismiss,\n onFlowStart,\n fillableOrder,\n}: {\n onDismiss?: () => void;\n onFlowStart: () => void;\n fillableOrder: FillableOtcOrderItem;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: fillableOrder.extra.srcToken,\n requiredBalanceWei: fillableOrder.extra.srcAmount,\n });\n\n const orderChainId = fillableOrder.chainId as SupportedChainId;\n\n const { forcedChainMatchesWalletChain } = useChainMatches(orderChainId);\n const wrongNetwork = !forcedChainMatchesWalletChain;\n\n const fillBtnLabelOverride = wrongNetwork\n ? \"Wrong network\"\n : isInsufficientBalance\n ? \"Insufficient funds\"\n : undefined;\n\n const { mutateAsync: switchChain, isPending } = useSwitchChainWithGuard();\n\n const fillBtnDisabled = isInsufficientBalance || isPending;\n\n return (\n <div className=\"px-6 pb-8\">\n <OrderDetails fillableOrder={fillableOrder} />\n <FillOtcControls\n fillButtonProps={{\n onClick: wrongNetwork\n ? async () => {\n await switchChain({\n chainId: orderChainId,\n });\n onFlowStart();\n }\n : onFlowStart,\n labelOverride: fillBtnLabelOverride,\n disabled: fillBtnDisabled,\n }}\n dismissButtonProps={{\n onClick: onDismiss,\n }}\n />\n </div>\n );\n};\n\nconst detailsClasses = {\n root: \"gap-3\",\n title: \"text-contrast-5 dark:text-contrast-6\",\n value: \"text-contrast-4 dark:text-contrast-7\",\n} as const;\n\nconst OrderDetails = ({\n fillableOrder,\n}: {\n fillableOrder: FillableOtcOrderItem;\n}) => {\n const { data: srcTokenPrice } = useTokenPrice(fillableOrder.extra.srcToken);\n const { data: destTokenPrice } = useTokenPrice(fillableOrder.extra.destToken);\n\n const payReceiveProps = constructPayReceiveInfoProps({\n extra: fillableOrder.extra,\n srcTokenPrice: srcTokenPrice?.price,\n destTokenPrice: destTokenPrice?.price,\n });\n\n const { data: gasPrices } = useGasPrices();\n const { data: nativeTokenPrice } = useNativeTokenPrice();\n\n const active = LimitOrderStateChecker.active.has(fillableOrder.state);\n\n const details: DetailWithValue[] = [\n constructOrderRateDetail(fillableOrder),\n constructOrderReceiverDetail({\n chainId: fillableOrder.chainId as SupportedChainId,\n receiver: fillableOrder.taker,\n }),\n constructOrderStatusDetail(fillableOrder.state),\n active && constructExpiresInDetail(fillableOrder.expiry),\n constructNetworkFeeDetail({\n gasPriceMultiplierGwei: gasPrices?.legacyPrices.instant,\n nativeTokenPrice: nativeTokenPrice?.price,\n }),\n ].filter(isTruthy);\n\n return (\n <div className=\"flex flex-col gap-4 pb-6\">\n <PayReceiveInfo {...payReceiveProps} />\n <div className=\"rounded-sm border border-contrast-7 dark:border-contrast-3 p-4\">\n <DetailWithValueList details={details} classes={detailsClasses} />\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"FillOtcReviewAndConfirm.js","names":["useNativeTokenPrice","useTokenPrice","FillableOtcOrderItem","PayReceiveInfo","constructOrderStatusDetail","constructPayReceiveInfoProps","constructOrderRateDetail","constructOrderReceiverDetail","constructExpiresInDetail","constructNetworkFeeDetail","FillOtcControls","useIsInsufficientTokenBalance","DetailWithValueList","DetailWithValue","isTruthy","SupportedChainId","LimitOrderStateChecker","useGasPrices","useChainMatches","useSwitchChainWithGuard","FillOtcReviewAndConfirm","t0","$","_c","onDismiss","onFlowStart","fillableOrder","t1","extra","srcAmount","srcToken","token","requiredBalanceWei","isInsufficientBalance","orderChainId","chainId","forcedChainMatchesWalletChain","wrongNetwork","fillBtnLabelOverride","undefined","mutateAsync","switchChain","isPending","fillBtnDisabled","t2","t3","t4","onClick","labelOverride","disabled","t5","t6","t7","detailsClasses","root","title","value","const","OrderDetails","data","srcTokenPrice","destTokenPrice","destToken","price","payReceiveProps","gasPrices","nativeTokenPrice","legacyPrices","instant","active","has","state","receiver","taker","expiry","gasPriceMultiplierGwei","filter","details"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.tsx"],"sourcesContent":["import {\n useNativeTokenPrice,\n useTokenPrice,\n} from \"@/hooks/tokens/prices/useTokenPrices\";\nimport type { FillableOtcOrderItem } from \"../../OtcOrderItem/types\";\nimport { PayReceiveInfo } from \"../../PayReceiveInfo/PayReceiveInfo\";\nimport {\n constructOrderStatusDetail,\n constructPayReceiveInfoProps,\n constructOrderRateDetail,\n constructOrderReceiverDetail,\n constructExpiresInDetail,\n constructNetworkFeeDetail,\n} from \"./utils\";\nimport { FillOtcControls } from \"./FillOtcControls\";\nimport { useIsInsufficientTokenBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { DetailWithValueList } from \"../../Details/DetailWithValueList\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { isTruthy } from \"@/lib/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { LimitOrderStateChecker } from \"@/hooks/otc/queries/utils\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { useChainMatches } from \"@/hooks/useChainMatches\";\nimport { useSwitchChainWithGuard } from \"@/hooks/useSwitchChainWithGuard\";\n\nexport const FillOtcReviewAndConfirm = ({\n onDismiss,\n onFlowStart,\n fillableOrder,\n}: {\n onDismiss?: () => void;\n onFlowStart: () => void;\n fillableOrder: FillableOtcOrderItem;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: fillableOrder.extra.srcToken,\n requiredBalanceWei: fillableOrder.extra.srcAmount,\n });\n\n const orderChainId = fillableOrder.chainId as SupportedChainId;\n\n const { forcedChainMatchesWalletChain } = useChainMatches(orderChainId);\n const wrongNetwork = !forcedChainMatchesWalletChain;\n\n const fillBtnLabelOverride = wrongNetwork\n ? \"Wrong network\"\n : isInsufficientBalance\n ? \"Insufficient funds\"\n : undefined;\n\n const { mutateAsync: switchChain, isPending } = useSwitchChainWithGuard();\n\n const fillBtnDisabled = isInsufficientBalance || isPending;\n\n return (\n <div className=\"px-6 pb-8\">\n <OrderDetails fillableOrder={fillableOrder} />\n <FillOtcControls\n fillButtonProps={{\n onClick: wrongNetwork\n ? async () => {\n await switchChain({\n chainId: orderChainId,\n });\n onFlowStart();\n }\n : onFlowStart,\n labelOverride: fillBtnLabelOverride,\n disabled: fillBtnDisabled,\n }}\n dismissButtonProps={{\n onClick: onDismiss,\n }}\n />\n </div>\n );\n};\n\nconst detailsClasses = {\n root: \"gap-3\",\n title: \"text-contrast-5 dark:text-contrast-6\",\n value: \"text-contrast-4 dark:text-contrast-7\",\n} as const;\n\nconst OrderDetails = ({\n fillableOrder,\n}: {\n fillableOrder: FillableOtcOrderItem;\n}) => {\n const { data: srcTokenPrice } = useTokenPrice(fillableOrder.extra.srcToken);\n const { data: destTokenPrice } = useTokenPrice(fillableOrder.extra.destToken);\n\n const payReceiveProps = constructPayReceiveInfoProps({\n extra: fillableOrder.extra,\n srcTokenPrice: srcTokenPrice?.price,\n destTokenPrice: destTokenPrice?.price,\n });\n\n const { data: gasPrices } = useGasPrices();\n const { data: nativeTokenPrice } = useNativeTokenPrice();\n\n const active = LimitOrderStateChecker.active.has(fillableOrder.state);\n\n const details: DetailWithValue[] = [\n constructOrderRateDetail(fillableOrder),\n constructOrderReceiverDetail({\n chainId: fillableOrder.chainId as SupportedChainId,\n receiver: fillableOrder.taker,\n }),\n constructOrderStatusDetail(fillableOrder.state),\n active && constructExpiresInDetail(fillableOrder.expiry),\n constructNetworkFeeDetail({\n gasPriceMultiplierGwei: gasPrices?.legacyPrices.instant,\n nativeTokenPrice: nativeTokenPrice?.price,\n }),\n ].filter(isTruthy);\n\n return (\n <div className=\"flex flex-col gap-4 pb-6\">\n <PayReceiveInfo {...payReceiveProps} />\n <div className=\"rounded-sm border border-contrast-7 dark:border-contrast-3 p-4\">\n <DetailWithValueList details={details} classes={detailsClasses} />\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["formatTokenAmount","LimitOrderItemExtra","RequiredLimitOrderItemExtra","PayReceiveInfoProps","Rate","TimeTillExpiry","DetailWithValue","shortenAddress","constructAddressLinkForChain","SupportedChainId","StatusBadge","LimitOrderState","Big","FILL_ORDER_GAS_LIMIT_INACCURATE","TokenBadgeProps","constructOrderRateDetail","extra","title","value","constructOrderReceiverDetail","chainId","receiver","address","constructExpiresInDetail","expiresIn","constructNetworkFeeDetail","gasCost","gasPriceMultiplierGwei","nativeTokenPrice","gasFeeETH","mul","div","gasCostUSD","toFixed","constructOrderStatusDetail","state","tokenBadgeClasses","amount","symbol","logo","constructPayReceiveInfoProps","srcTokenPrice","destTokenPrice","srcToken","destToken","srcAmountUnit","destAmountUnit","formattedSrcAmount","formattedDestAmount","srcUsdAmount","undefined","parseFloat","destUsdAmount","topTokenBadgeProps","network","img","amountPosition","const","classes","bottomTokenBadgeProps","topToken","tokenBadgeProps","label","usdAmount","showNetwork","bottomToken"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.tsx"],"sourcesContent":["import { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport type {\n LimitOrderItemExtra,\n RequiredLimitOrderItemExtra,\n} from \"../../LimitOrderItem/types\";\nimport type { PayReceiveInfoProps } from \"../../PayReceiveInfo/types\";\nimport { Rate, TimeTillExpiry } from \"../../LimitOrderItem/LimitOrderListItem\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { shortenAddress } from \"@/lib/utils\";\nimport { constructAddressLinkForChain } from \"@/lib/utils/explorer\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { StatusBadge } from \"../../OtcOrderItem/OtcOrderListItem\";\nimport type { LimitOrderState } from \"@velora-dex/sdk\";\nimport Big from \"big.js\";\nimport { FILL_ORDER_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport type { TokenBadgeProps } from \"../../TokenBadge/types\";\n\nexport function constructOrderRateDetail({\n extra,\n}: {\n extra: LimitOrderItemExtra;\n}): DetailWithValue {\n return {\n title: \"Order Rate\",\n value: <Rate extra={extra} />,\n };\n}\n\nexport function constructOrderReceiverDetail({\n chainId,\n receiver,\n}: {\n chainId: SupportedChainId;\n receiver: string;\n}): DetailWithValue {\n return {\n title: \"Receiver\",\n value: (\n <a\n className=\"underline uppercase dark:text-contrast-7\"\n href={constructAddressLinkForChain({\n chainId,\n address: receiver,\n })}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {shortenAddress(receiver)}\n </a>\n ),\n };\n}\n\nexport function constructExpiresInDetail(expiresIn: number): DetailWithValue {\n return {\n title: \"Expires in\",\n value: <TimeTillExpiry deadline={expiresIn} />,\n };\n}\n\nexport function constructNetworkFeeDetail({\n gasCost = FILL_ORDER_GAS_LIMIT_INACCURATE,\n gasPriceMultiplierGwei,\n nativeTokenPrice,\n}: {\n gasCost?: number; // gas limit (number of gas units)\n gasPriceMultiplierGwei?: number; // gas price in Gwei\n nativeTokenPrice?: number;\n}): DetailWithValue | undefined {\n if (gasPriceMultiplierGwei && nativeTokenPrice) {\n // Calculate gas cost in ETH:\n // gasLimit * gasPriceInGwei = gas cost in Gwei\n // gas cost in Gwei / 1e9 = gas cost in ETH (since 1 Gwei = 10^-9 ETH)\n const gasFeeETH = Big(gasCost).mul(gasPriceMultiplierGwei).div(1e9);\n const gasCostUSD = gasFeeETH.mul(nativeTokenPrice);\n\n return {\n title: \"Network Fees\",\n value: <div>~ ${gasCostUSD.toFixed(4)}</div>,\n };\n }\n}\n\nexport function constructOrderStatusDetail(\n state: LimitOrderState\n): DetailWithValue {\n return {\n title: \"Order Status\",\n value: <StatusBadge state={state} />,\n };\n}\n\nconst tokenBadgeClasses = {\n amount: \"dark:text-contrast-9\",\n symbol: \"dark:text-contrast-9\",\n logo: \"size-[18px]\",\n};\n\nexport function constructPayReceiveInfoProps({\n extra,\n srcTokenPrice,\n destTokenPrice,\n}: {\n extra: RequiredLimitOrderItemExtra;\n srcTokenPrice?: number;\n destTokenPrice?: number;\n}): PayReceiveInfoProps {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const srcUsdAmount =\n srcTokenPrice !== undefined\n ? parseFloat(srcAmountUnit) * srcTokenPrice\n : undefined;\n const destUsdAmount =\n destTokenPrice !== undefined\n ? parseFloat(destAmountUnit) * destTokenPrice\n : undefined;\n\n const topTokenBadgeProps: TokenBadgeProps = {\n address: srcToken.address,\n symbol: srcToken.symbol,\n chainId: srcToken.network,\n img: srcToken.img,\n amount: formattedSrcAmount,\n amountPosition: \"right\" as const,\n classes: tokenBadgeClasses,\n };\n\n const bottomTokenBadgeProps: TokenBadgeProps = {\n address: destToken.address,\n symbol: destToken.symbol,\n chainId: destToken.network,\n img: destToken.img,\n amount: formattedDestAmount,\n amountPosition: \"right\" as const,\n classes: tokenBadgeClasses,\n };\n\n return {\n topToken: {\n tokenBadgeProps: topTokenBadgeProps,\n label: \"You Send\",\n usdAmount: srcUsdAmount,\n showNetwork: true,\n },\n bottomToken: {\n tokenBadgeProps: bottomTokenBadgeProps,\n label: \"You’ll Receive\",\n usdAmount: destUsdAmount,\n showNetwork: true,\n },\n };\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgBe,EAAyB,EACvCC,YAGkB;AAClB,QAAO;EACLC,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAaF,UAAM,CAAA;EAC3B;;AAGH,SAAgBG,EAA6B,EAC3CC,YACAC,eAIkB;AAClB,QAAO;EACLJ,OAAO;EACPC,OACE,kBAAC,KAAD;GACE,WAAU;GACV,MAAMV,EAA6B;IACjCY;IACAE,SAASD;IACV,CAAC;GACF,QAAO;GACP,KAAI;aAEHd,EAAec,EAAS;GACxB,CAAA;EAEN;;AAGH,SAAgBE,EAAyBC,GAAoC;AAC3E,QAAO;EACLP,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAgB,UAAUM,GAAU,CAAA;EAC5C;;AAGH,SAAgBC,EAA0B,EACxCC,aAAUb,GACVc,2BACAC,uBAK8B;AAC9B,KAAID,KAA0BC,EAO5B,QAAO;EACLX,OAAO;EACPC,OAAO,kBAAC,OAAD,EAAA,UAAA,CAAK,OALIN,EAAIc,EAAQ,CAACI,IAAIH,EAAuB,CAACI,IAAI,IAAI,CACtCD,IAAIF,EAAiB,CAIrBK,QAAQ,EAAE,CAAM,EAAA,CAAA;EAC5C;;AAIL,SAAgBC,EACdC,GACiB;AACjB,QAAO;EACLlB,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAoBiB,UAAM,CAAA;EAClC;;AAGH,IAAMC,IAAoB;CACxBC,QAAQ;CACRC,QAAQ;CACRC,MAAM;CACP;AAED,SAAgBC,EAA6B,EAC3CxB,UACAyB,kBACAC,qBAKsB;CACtB,IAAM,EAAEC,aAAUC,cAAWC,kBAAeC,sBAAmB9B,GAEzD+B,IAAqB/C,EAAkB6C,EAAc,EACrDG,IAAsBhD,EAAkB8C,EAAe,EAEvDG,IACJR,MAAkBS,KAAAA,IAEdA,KAAAA,IADAC,WAAWN,EAAc,GAAGJ,GAE5BW,IACJV,MAAmBQ,KAAAA,IAEfA,KAAAA,IADAC,WAAWL,EAAe,GAAGJ,GAG7BW,IAAsC;EAC1C/B,SAASqB,EAASrB;EAClBgB,QAAQK,EAASL;EACjBlB,SAASuB,EAASW;EAClBC,KAAKZ,EAASY;EACdlB,QAAQU;EACRS,gBAAgB;EAChBE,SAAStB;EACV,EAEKuB,IAAyC;EAC7CrC,SAASsB,EAAUtB;EACnBgB,QAAQM,EAAUN;EAClBlB,SAASwB,EAAUU;EACnBC,KAAKX,EAAUW;EACflB,QAAQW;EACRQ,gBAAgB;EAChBE,SAAStB;EACV;AAED,QAAO;EACLwB,UAAU;GACRC,iBAAiBR;GACjBS,OAAO;GACPC,WAAWd;GACXe,aAAa;GACd;EACDC,aAAa;GACXJ,iBAAiBF;GACjBG,OAAO;GACPC,WAAWX;GACXY,aAAa;GACf;EACD"}
1
+ {"version":3,"file":"utils.js","names":["formatTokenAmount","LimitOrderItemExtra","RequiredLimitOrderItemExtra","PayReceiveInfoProps","Rate","TimeTillExpiry","DetailWithValue","shortenAddress","constructAddressLinkForChain","SupportedChainId","StatusBadge","LimitOrderState","Big","FILL_ORDER_GAS_LIMIT_INACCURATE","TokenBadgeProps","constructOrderRateDetail","extra","title","value","constructOrderReceiverDetail","chainId","receiver","address","constructExpiresInDetail","expiresIn","constructNetworkFeeDetail","gasCost","gasPriceMultiplierGwei","nativeTokenPrice","gasFeeETH","mul","div","gasCostUSD","toFixed","constructOrderStatusDetail","state","tokenBadgeClasses","amount","symbol","logo","constructPayReceiveInfoProps","srcTokenPrice","destTokenPrice","srcToken","destToken","srcAmountUnit","destAmountUnit","formattedSrcAmount","formattedDestAmount","srcUsdAmount","undefined","parseFloat","destUsdAmount","topTokenBadgeProps","network","img","amountPosition","const","classes","bottomTokenBadgeProps","topToken","tokenBadgeProps","label","usdAmount","showNetwork","bottomToken"],"sources":["../../../../../src/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.tsx"],"sourcesContent":["import { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport type {\n LimitOrderItemExtra,\n RequiredLimitOrderItemExtra,\n} from \"../../LimitOrderItem/types\";\nimport type { PayReceiveInfoProps } from \"../../PayReceiveInfo/types\";\nimport { Rate, TimeTillExpiry } from \"../../LimitOrderItem/LimitOrderListItem\";\nimport type { DetailWithValue } from \"../../Details/types\";\nimport { shortenAddress } from \"@/lib/utils\";\nimport { constructAddressLinkForChain } from \"@/lib/utils/explorer\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { StatusBadge } from \"../../OtcOrderItem/OtcOrderListItem\";\nimport type { LimitOrderState } from \"@velora-dex/sdk\";\nimport Big from \"big.js\";\nimport { FILL_ORDER_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport type { TokenBadgeProps } from \"../../TokenBadge/types\";\n\nexport function constructOrderRateDetail({\n extra,\n}: {\n extra: LimitOrderItemExtra;\n}): DetailWithValue {\n return {\n title: \"Order Rate\",\n value: <Rate extra={extra} />,\n };\n}\n\nexport function constructOrderReceiverDetail({\n chainId,\n receiver,\n}: {\n chainId: SupportedChainId;\n receiver: string;\n}): DetailWithValue {\n return {\n title: \"Receiver\",\n value: (\n <a\n className=\"underline uppercase dark:text-contrast-7\"\n href={constructAddressLinkForChain({\n chainId,\n address: receiver,\n })}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {shortenAddress(receiver)}\n </a>\n ),\n };\n}\n\nexport function constructExpiresInDetail(expiresIn: number): DetailWithValue {\n return {\n title: \"Expires in\",\n value: <TimeTillExpiry deadline={expiresIn} />,\n };\n}\n\nexport function constructNetworkFeeDetail({\n gasCost = FILL_ORDER_GAS_LIMIT_INACCURATE,\n gasPriceMultiplierGwei,\n nativeTokenPrice,\n}: {\n gasCost?: number; // gas limit (number of gas units)\n gasPriceMultiplierGwei?: number; // gas price in Gwei\n nativeTokenPrice?: number;\n}): DetailWithValue | undefined {\n if (gasPriceMultiplierGwei && nativeTokenPrice) {\n // Calculate gas cost in ETH:\n // gasLimit * gasPriceInGwei = gas cost in Gwei\n // gas cost in Gwei / 1e9 = gas cost in ETH (since 1 Gwei = 10^-9 ETH)\n const gasFeeETH = Big(gasCost).mul(gasPriceMultiplierGwei).div(1e9);\n const gasCostUSD = gasFeeETH.mul(nativeTokenPrice);\n\n return {\n title: \"Network Fees\",\n value: <div>~ ${gasCostUSD.toFixed(4)}</div>,\n };\n }\n}\n\nexport function constructOrderStatusDetail(\n state: LimitOrderState\n): DetailWithValue {\n return {\n title: \"Order Status\",\n value: <StatusBadge state={state} />,\n };\n}\n\nconst tokenBadgeClasses = {\n amount: \"dark:text-contrast-9\",\n symbol: \"dark:text-contrast-9\",\n logo: \"size-[18px]\",\n};\n\nexport function constructPayReceiveInfoProps({\n extra,\n srcTokenPrice,\n destTokenPrice,\n}: {\n extra: RequiredLimitOrderItemExtra;\n srcTokenPrice?: number;\n destTokenPrice?: number;\n}): PayReceiveInfoProps {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const srcUsdAmount =\n srcTokenPrice !== undefined\n ? parseFloat(srcAmountUnit) * srcTokenPrice\n : undefined;\n const destUsdAmount =\n destTokenPrice !== undefined\n ? parseFloat(destAmountUnit) * destTokenPrice\n : undefined;\n\n const topTokenBadgeProps: TokenBadgeProps = {\n address: srcToken.address,\n symbol: srcToken.symbol,\n chainId: srcToken.network,\n img: srcToken.img,\n amount: formattedSrcAmount,\n amountPosition: \"right\" as const,\n classes: tokenBadgeClasses,\n };\n\n const bottomTokenBadgeProps: TokenBadgeProps = {\n address: destToken.address,\n symbol: destToken.symbol,\n chainId: destToken.network,\n img: destToken.img,\n amount: formattedDestAmount,\n amountPosition: \"right\" as const,\n classes: tokenBadgeClasses,\n };\n\n return {\n topToken: {\n tokenBadgeProps: topTokenBadgeProps,\n label: \"You Send\",\n usdAmount: srcUsdAmount,\n showNetwork: true,\n },\n bottomToken: {\n tokenBadgeProps: bottomTokenBadgeProps,\n label: \"You’ll Receive\",\n usdAmount: destUsdAmount,\n showNetwork: true,\n },\n };\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgBe,EAAyB,EACvCC,YAGkB;CAClB,OAAO;EACLC,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAaF,UAAM,CAAA;EAC3B;;AAGH,SAAgBG,EAA6B,EAC3CC,YACAC,eAIkB;CAClB,OAAO;EACLJ,OAAO;EACPC,OACE,kBAAC,KAAD;GACE,WAAU;GACV,MAAMV,EAA6B;IACjCY;IACAE,SAASD;IACV,CAAC;GACF,QAAO;GACP,KAAI;aAEHd,EAAec,EAAS;GACxB,CAAA;EAEN;;AAGH,SAAgBE,EAAyBC,GAAoC;CAC3E,OAAO;EACLP,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAgB,UAAUM,GAAU,CAAA;EAC5C;;AAGH,SAAgBC,EAA0B,EACxCC,aAAUb,GACVc,2BACAC,uBAK8B;CAC9B,IAAID,KAA0BC,GAO5B,OAAO;EACLX,OAAO;EACPC,OAAO,kBAAC,OAAD,EAAA,UAAA,CAAK,OALIN,EAAIc,EAAQ,CAACI,IAAIH,EAAuB,CAACI,IAAI,IAC5CF,CAAUC,IAAIF,EAIfI,CAAWC,QAAQ,EAAE,CAAM,EAAA,CAAA;EAC5C;;AAIL,SAAgBC,EACdC,GACiB;CACjB,OAAO;EACLlB,OAAO;EACPC,OAAO,kBAAC,GAAD,EAAoBiB,UAAM,CAAA;EAClC;;AAGH,IAAMC,IAAoB;CACxBC,QAAQ;CACRC,QAAQ;CACRC,MAAM;CACP;AAED,SAAgBC,EAA6B,EAC3CxB,UACAyB,kBACAC,qBAKsB;CACtB,IAAM,EAAEC,aAAUC,cAAWC,kBAAeC,sBAAmB9B,GAEzD+B,IAAqB/C,EAAkB6C,EAAc,EACrDG,IAAsBhD,EAAkB8C,EAAe,EAEvDG,IACJR,MAAkBS,KAAAA,IAEdA,KAAAA,IADAC,WAAWN,EAAc,GAAGJ,GAE5BW,IACJV,MAAmBQ,KAAAA,IAEfA,KAAAA,IADAC,WAAWL,EAAe,GAAGJ,GAG7BW,IAAsC;EAC1C/B,SAASqB,EAASrB;EAClBgB,QAAQK,EAASL;EACjBlB,SAASuB,EAASW;EAClBC,KAAKZ,EAASY;EACdlB,QAAQU;EACRS,gBAAgB;EAChBE,SAAStB;EACV,EAEKuB,IAAyC;EAC7CrC,SAASsB,EAAUtB;EACnBgB,QAAQM,EAAUN;EAClBlB,SAASwB,EAAUU;EACnBC,KAAKX,EAAUW;EACflB,QAAQW;EACRQ,gBAAgB;EAChBE,SAAStB;EACV;CAED,OAAO;EACLwB,UAAU;GACRC,iBAAiBR;GACjBS,OAAO;GACPC,WAAWd;GACXe,aAAa;GACd;EACDC,aAAa;GACXJ,iBAAiBF;GACjBG,OAAO;GACPC,WAAWX;GACXY,aAAa;GACf;EACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"RowVirtualizerFixed.js","names":["useRef","useVirtualizer","cn","RowVirtualizerFixedProps","useLogger","RowVirtualizerFixed","rows","rowHeight","visibleRows","rowRenderer","RowRenderer","containerClassName","Row","logger","parentRef","rowVirtualizer","count","length","getScrollElement","current","estimateSize","overscan","style","height","getTotalSize","width","position","getVirtualItems","map","virtualRow","row","index","warn","key","top","left","size","transform","start"],"sources":["../../../../src/components/widget/RowVirtualizer/RowVirtualizerFixed.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { useVirtualizer } from \"@tanstack/react-virtual\";\nimport { cn } from \"@/lib/utils\";\nimport type { RowVirtualizerFixedProps } from \"./types\";\nimport { useLogger } from \"@/core/logger\";\n\nexport const RowVirtualizerFixed = <Row extends object>({\n rows,\n rowHeight,\n visibleRows,\n rowRenderer: RowRenderer,\n containerClassName,\n}: RowVirtualizerFixedProps<Row>) => {\n \"use no memo\";\n // https://github.com/TanStack/table/issues/5567#issuecomment-2131478675\n\n const logger = useLogger(\"RowVirtualizerFixed\");\n\n const parentRef = useRef(null);\n\n // eslint-disable-next-line react-hooks/incompatible-library\n const rowVirtualizer = useVirtualizer({\n count: rows.length,\n getScrollElement: () => parentRef.current,\n estimateSize: () => rowHeight,\n overscan: 5,\n });\n\n const style = visibleRows\n ? {\n height: `${visibleRows * rowHeight}px`,\n }\n : {};\n\n return (\n <div\n ref={parentRef}\n className={cn(\"overflow-auto\", containerClassName)}\n style={style}\n >\n <div\n style={{\n height: `${rowVirtualizer.getTotalSize()}px`,\n width: \"100%\",\n position: \"relative\",\n }}\n >\n {rowVirtualizer.getVirtualItems().map((virtualRow) => {\n const row = rows[virtualRow.index];\n\n if (!row) {\n logger.warn(\"no item was found at index:\", virtualRow.index);\n return null;\n }\n\n return (\n <div\n key={virtualRow.key}\n style={{\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: `${virtualRow.size}px`,\n transform: `translateY(${virtualRow.start}px)`,\n }}\n >\n <RowRenderer row={row} index={virtualRow.index} />\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;AAMA,IAAaK,KAA2C,EACtDC,SACAC,cACAC,gBACAC,aAAaC,GACbC,4BACmC;AACnC;CAGA,IAAME,IAAST,EAAU,sBAAsB,EAEzCU,IAAYd,EAAO,KAAK,EAGxBe,IAAiBd,EAAe;EACpCe,OAAOV,EAAKW;EACZC,wBAAwBJ,EAAUK;EAClCC,oBAAoBb;EACpBc,UAAU;EACX,CAAC,EAEIC,IAAQd,IACV,EACEe,QAAQ,GAAGf,IAAcD,EAAS,KACnC,GACD,EAAE;AAEN,QACE,kBAAC,OAAD;EACE,KAAKO;EACL,WAAWZ,EAAG,iBAAiBS,EAAmB;EAC3CW;YAEP,kBAAC,OAAD;GACE,OAAO;IACLC,QAAQ,GAAGR,EAAeS,cAAc,CAAA;IACxCC,OAAO;IACPC,UAAU;IACX;aAEAX,EAAeY,iBAAiB,CAACC,KAAKC,MAAe;IACpD,IAAMC,IAAMxB,EAAKuB,EAAWE;AAO5B,WALKD,IAMH,kBAAC,OAAD;KAEE,OAAO;MACLJ,UAAU;MACVQ,KAAK;MACLC,MAAM;MACNV,OAAO;MACPF,QAAQ,GAAGM,EAAWO,KAAI;MAC1BC,WAAW,cAAcR,EAAWS,MAAK;MAC1C;eAED,kBAAC,GAAD;MAAkBR;MAAK,OAAOD,EAAWE;MAAM,CAAA;KAC3C,EAXCF,EAAWI,IAWZ,IAjBNpB,EAAOmB,KAAK,+BAA+BH,EAAWE,MAAM,EACrD;KAkBT;GACC,CAAA;EACD,CAAA"}
1
+ {"version":3,"file":"RowVirtualizerFixed.js","names":["useRef","useVirtualizer","cn","RowVirtualizerFixedProps","useLogger","RowVirtualizerFixed","rows","rowHeight","visibleRows","rowRenderer","RowRenderer","containerClassName","Row","logger","parentRef","rowVirtualizer","count","length","getScrollElement","current","estimateSize","overscan","style","height","getTotalSize","width","position","getVirtualItems","map","virtualRow","row","index","warn","key","top","left","size","transform","start"],"sources":["../../../../src/components/widget/RowVirtualizer/RowVirtualizerFixed.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { useVirtualizer } from \"@tanstack/react-virtual\";\nimport { cn } from \"@/lib/utils\";\nimport type { RowVirtualizerFixedProps } from \"./types\";\nimport { useLogger } from \"@/core/logger\";\n\nexport const RowVirtualizerFixed = <Row extends object>({\n rows,\n rowHeight,\n visibleRows,\n rowRenderer: RowRenderer,\n containerClassName,\n}: RowVirtualizerFixedProps<Row>) => {\n \"use no memo\";\n // https://github.com/TanStack/table/issues/5567#issuecomment-2131478675\n\n const logger = useLogger(\"RowVirtualizerFixed\");\n\n const parentRef = useRef(null);\n\n // eslint-disable-next-line react-hooks/incompatible-library\n const rowVirtualizer = useVirtualizer({\n count: rows.length,\n getScrollElement: () => parentRef.current,\n estimateSize: () => rowHeight,\n overscan: 5,\n });\n\n const style = visibleRows\n ? {\n height: `${visibleRows * rowHeight}px`,\n }\n : {};\n\n return (\n <div\n ref={parentRef}\n className={cn(\"overflow-auto\", containerClassName)}\n style={style}\n >\n <div\n style={{\n height: `${rowVirtualizer.getTotalSize()}px`,\n width: \"100%\",\n position: \"relative\",\n }}\n >\n {rowVirtualizer.getVirtualItems().map((virtualRow) => {\n const row = rows[virtualRow.index];\n\n if (!row) {\n logger.warn(\"no item was found at index:\", virtualRow.index);\n return null;\n }\n\n return (\n <div\n key={virtualRow.key}\n style={{\n position: \"absolute\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: `${virtualRow.size}px`,\n transform: `translateY(${virtualRow.start}px)`,\n }}\n >\n <RowRenderer row={row} index={virtualRow.index} />\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;AAMA,IAAaK,KAA2C,EACtDC,SACAC,cACAC,gBACAC,aAAaC,GACbC,4BACmC;AACnC;CAGA,IAAME,IAAST,EAAU,sBAAsB,EAEzCU,IAAYd,EAAO,KAAK,EAGxBe,IAAiBd,EAAe;EACpCe,OAAOV,EAAKW;EACZC,wBAAwBJ,EAAUK;EAClCC,oBAAoBb;EACpBc,UAAU;EACX,CAAC,EAEIC,IAAQd,IACV,EACEe,QAAQ,GAAGf,IAAcD,EAAS,KACnC,GACD,EAAE;CAEN,OACE,kBAAC,OAAD;EACE,KAAKO;EACL,WAAWZ,EAAG,iBAAiBS,EAAmB;EAC3CW;YAEP,kBAAC,OAAD;GACE,OAAO;IACLC,QAAQ,GAAGR,EAAeS,cAAc,CAAA;IACxCC,OAAO;IACPC,UAAU;IACX;aAEAX,EAAeY,iBAAiB,CAACC,KAAKC,MAAe;IACpD,IAAMC,IAAMxB,EAAKuB,EAAWE;IAO5B,OALKD,IAMH,kBAAC,OAAD;KAEE,OAAO;MACLJ,UAAU;MACVQ,KAAK;MACLC,MAAM;MACNV,OAAO;MACPF,QAAQ,GAAGM,EAAWO,KAAI;MAC1BC,WAAW,cAAcR,EAAWS,MAAK;MAC1C;eAED,kBAAC,GAAD;MAAkBR;MAAK,OAAOD,EAAWE;MAAM,CAAA;KAC3C,EAXCF,EAAWI,IAWZ,IAjBNpB,EAAOmB,KAAK,+BAA+BH,EAAWE,MAAM,EACrD;KAkBT;GACC,CAAA;EACD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"GenericScreen.js","names":["cn","WithClasses","ArrowLeft","XIcon","PropsWithChildren","GenericScreenProps","title","showBackButton","showCloseButton","closeButtonReplacement","React","ReactNode","onGoBack","onClose","headerClasses","HeaderClasses","GenericScreenHeaderProps","Pick","GenericScreen","t0","$","_c","children","classes","headerProps","t1","root","t2","t3","t4","GenericScreenHeader","_showBackButton","_showCloseButton","t5","t6","t7","t8"],"sources":["../../../../src/components/widget/Screen/GenericScreen.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { ArrowLeft, XIcon } from \"lucide-react\";\nimport type { PropsWithChildren } from \"react\";\n\nexport type GenericScreenProps = PropsWithChildren<\n {\n title?: string;\n showBackButton?: boolean;\n showCloseButton?: boolean;\n closeButtonReplacement?: React.ReactNode;\n onGoBack?: () => void;\n onClose?: () => void;\n headerClasses?: HeaderClasses[\"classes\"];\n } & WithClasses<\"root\">\n>;\n\ntype HeaderClasses = WithClasses<\"root\" | \"title\">;\n\nexport type GenericScreenHeaderProps = Pick<\n GenericScreenProps,\n | \"title\"\n | \"showBackButton\"\n | \"showCloseButton\"\n | \"closeButtonReplacement\"\n | \"onGoBack\"\n | \"onClose\"\n> &\n HeaderClasses;\n\nexport const GenericScreen = ({\n children,\n classes,\n headerClasses,\n ...headerProps\n}: GenericScreenProps) => {\n return (\n <div\n className={cn(\n \"bg-contrast-8 dark:bg-contrast-2 border border-contrast-7 dark:border-contrast-4 rounded-xxl min-w-[375px] w-full\",\n classes?.root\n )}\n >\n <GenericScreenHeader {...headerProps} classes={headerClasses} />\n {children}\n </div>\n );\n};\n\nexport const GenericScreenHeader = ({\n title,\n showBackButton,\n showCloseButton,\n closeButtonReplacement,\n onGoBack,\n onClose,\n classes,\n}: GenericScreenHeaderProps) => {\n const _showBackButton = showBackButton && onGoBack;\n const _showCloseButton = showCloseButton && onClose;\n if (!(_showBackButton || _showCloseButton || title || closeButtonReplacement))\n return null;\n\n return (\n <div\n className={cn(\n \"pb-4 pt-6 px-6 flex items-center justify-between\",\n classes?.root\n )}\n >\n <div className=\"flex items-center gap-5 font-medium text-lg text-contrast-4 dark:text-contrast-7\">\n {_showBackButton && (\n <button onClick={onGoBack}>\n <ArrowLeft className=\"ring-offset-background cursor-pointer focus:ring-ring dark:text-contrast-5 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0\" />\n </button>\n )}\n <span className={classes?.title}>{title}</span>\n </div>\n {closeButtonReplacement ??\n (_showCloseButton && (\n <button onClick={onClose}>\n <div className=\"ring-offset-background cursor-pointer focus:ring-ring dark:text-contrast-5 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\">\n <XIcon />\n </div>\n </button>\n ))}\n </div>\n );\n};\n"],"mappings":";;;;;AA8BA,IAAakB,KAAgBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAAC,GAAAC,GAAAT,GAAAU;AAAA,CAAAJ,EAAA,OAAAD,KAKRG,IAAAF,EAAA,IAAAG,IAAAH,EAAA,IAAAN,IAAAM,EAAA,IAAAI,IAAAJ,EAAA,OALS,+CAAAI,KAAAL,GAKTC,EAAA,KAAAD,GAAAC,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAN,GAAAM,EAAA,KAAAI;CAKb,IAAAC,IAAAF,GAAOG,MAAMC;AAAA,CAAAP,EAAA,OAAAK,IACdE,IAAAP,EAAA,MAHUO,IAAA3B,EACT,qHACAyB,EACD,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAO;CAAA,IAAAC;AAAA,CAAAR,EAAA,OAAAN,KAAAM,EAAA,OAAAI,KAEDI,IAAA,kBAAC,GAAD;EAAoB,GAAKJ;EAAsBV,SAAAA;EAAiB,CAAA,EAAAM,EAAA,KAAAN,GAAAM,EAAA,KAAAI,GAAAJ,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAAA,IAAAS;AAE5D,QAF4DT,EAAA,QAAAE,KAAAF,EAAA,QAAAO,KAAAP,EAAA,QAAAQ,KANlEC,IAAA,kBAAA,OAAA;EACa,WAAAF;YADb,CAMEC,GACCN,EACG;KAAAF,EAAA,MAAAE,GAAAF,EAAA,MAAAO,GAAAP,EAAA,MAAAQ,GAAAR,EAAA,MAAAS,KAAAA,IAAAT,EAAA,KARNS;GAYSC,KAAsBX,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAf,UAAAC,mBAAAC,oBAAAC,2BAAAG,aAAAC,YAAAU,eAAAJ,GASlCY,IAAwBxB,KAAAK,GACxBoB,IAAyBxB,KAAAK;AACzB,KAAI,EAAEkB,KAAAC,KAAA1B,KAAAG,GAAuE,QACpE;CAMH,IAAAgB,IAAAF,GAAOG,MAAMC;AAAA,CAAAP,EAAA,OAAAK,IACdE,IAAAP,EAAA,MAHUO,IAAA3B,EACT,oDACAyB,EACD,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAO;CAAA,IAAAC;AAAA,CAAAR,EAAA,OAAAW,KAAAX,EAAA,OAAAR,KAGEgB,IAAAG,KACC,kBAAA,UAAA;EAAiBnB,SAAAA;YACf,kBAAC,GAAD,EAAqB,WAAA,yQACvB,CAAA;EACD,CAAA,EAAAQ,EAAA,KAAAW,GAAAX,EAAA,KAAAR,GAAAQ,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CACgB,IAAAS,IAAAN,GAAOjB,OAAO2B;AAAA,CAAAb,EAAA,OAAAS,KAAAT,EAAA,OAAAd,KAA/B2B,IAAA,kBAAA,QAAA;EAAiB,WAAAJ;YAAiBvB;EAAa,CAAA,EAAAc,EAAA,KAAAS,GAAAT,EAAA,KAAAd,GAAAc,EAAA,KAAAa,KAAAA,IAAAb,EAAA;CAAA,IAAAc;AAAA,CAAAd,EAAA,OAAAQ,KAAAR,EAAA,OAAAa,KANjDC,IAAA,kBAAA,OAAA;EAAe,WAAA;YAAf,CACGN,GAKDK,EACI;KAAAb,EAAA,KAAAQ,GAAAR,EAAA,KAAAa,GAAAb,EAAA,MAAAc,KAAAA,IAAAd,EAAA;CAAA,IAAAe;AAAA,CAAAf,EAAA,QAAAY,KAAAZ,EAAA,QAAAX,KAAAW,EAAA,QAAAP,KACLsB,IAAA1B,MACEuB,KACC,kBAAA,UAAA;EAAiBnB,SAAAA;YACf,kBAAA,OAAA;GAAe,WAAA;aACb,kBAAC,GAAD,EACF,CAAA;GACF,CAAA;EACA,CAAA,GAAAO,EAAA,MAAAY,GAAAZ,EAAA,MAAAX,GAAAW,EAAA,MAAAP,GAAAO,EAAA,MAAAe,KAAAA,IAAAf,EAAA;CAAA,IAAAgB;AACA,QADAhB,EAAA,QAAAO,KAAAP,EAAA,QAAAc,KAAAd,EAAA,QAAAe,KArBNC,IAAA,kBAAA,OAAA;EACa,WAAAT;YADb,CAMEO,GAQCC,EAQG;KAAAf,EAAA,MAAAO,GAAAP,EAAA,MAAAc,GAAAd,EAAA,MAAAe,GAAAf,EAAA,MAAAgB,KAAAA,IAAAhB,EAAA,KAtBNgB"}
1
+ {"version":3,"file":"GenericScreen.js","names":["cn","WithClasses","ArrowLeft","XIcon","PropsWithChildren","GenericScreenProps","title","showBackButton","showCloseButton","closeButtonReplacement","React","ReactNode","onGoBack","onClose","headerClasses","HeaderClasses","GenericScreenHeaderProps","Pick","GenericScreen","t0","$","_c","children","classes","headerProps","t1","root","t2","t3","t4","GenericScreenHeader","_showBackButton","_showCloseButton","t5","t6","t7","t8"],"sources":["../../../../src/components/widget/Screen/GenericScreen.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { ArrowLeft, XIcon } from \"lucide-react\";\nimport type { PropsWithChildren } from \"react\";\n\nexport type GenericScreenProps = PropsWithChildren<\n {\n title?: string;\n showBackButton?: boolean;\n showCloseButton?: boolean;\n closeButtonReplacement?: React.ReactNode;\n onGoBack?: () => void;\n onClose?: () => void;\n headerClasses?: HeaderClasses[\"classes\"];\n } & WithClasses<\"root\">\n>;\n\ntype HeaderClasses = WithClasses<\"root\" | \"title\">;\n\nexport type GenericScreenHeaderProps = Pick<\n GenericScreenProps,\n | \"title\"\n | \"showBackButton\"\n | \"showCloseButton\"\n | \"closeButtonReplacement\"\n | \"onGoBack\"\n | \"onClose\"\n> &\n HeaderClasses;\n\nexport const GenericScreen = ({\n children,\n classes,\n headerClasses,\n ...headerProps\n}: GenericScreenProps) => {\n return (\n <div\n className={cn(\n \"bg-contrast-8 dark:bg-contrast-2 border border-contrast-7 dark:border-contrast-4 rounded-xxl min-w-[375px] w-full\",\n classes?.root\n )}\n >\n <GenericScreenHeader {...headerProps} classes={headerClasses} />\n {children}\n </div>\n );\n};\n\nexport const GenericScreenHeader = ({\n title,\n showBackButton,\n showCloseButton,\n closeButtonReplacement,\n onGoBack,\n onClose,\n classes,\n}: GenericScreenHeaderProps) => {\n const _showBackButton = showBackButton && onGoBack;\n const _showCloseButton = showCloseButton && onClose;\n if (!(_showBackButton || _showCloseButton || title || closeButtonReplacement))\n return null;\n\n return (\n <div\n className={cn(\n \"pb-4 pt-6 px-6 flex items-center justify-between\",\n classes?.root\n )}\n >\n <div className=\"flex items-center gap-5 font-medium text-lg text-contrast-4 dark:text-contrast-7\">\n {_showBackButton && (\n <button onClick={onGoBack}>\n <ArrowLeft className=\"ring-offset-background cursor-pointer focus:ring-ring dark:text-contrast-5 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0\" />\n </button>\n )}\n <span className={classes?.title}>{title}</span>\n </div>\n {closeButtonReplacement ??\n (_showCloseButton && (\n <button onClick={onClose}>\n <div className=\"ring-offset-background cursor-pointer focus:ring-ring dark:text-contrast-5 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\">\n <XIcon />\n </div>\n </button>\n ))}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScreenContainer.js","names":["MainScreenContainer","t0","$","_c","children","t1","SecondaryScreenContainer"],"sources":["../../../../src/components/widget/Screen/ScreenContainer.tsx"],"sourcesContent":["export const MainScreenContainer = ({\n children,\n}: {\n children?: React.ReactNode;\n}) => {\n return (\n <div\n className={\n \"relative flex flex-col pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4 rounded-xxl\"\n }\n >\n {children}\n </div>\n );\n};\n\nexport const SecondaryScreenContainer = ({\n children,\n}: {\n children?: React.ReactNode;\n}) => {\n return <div className=\"relative z-2\">{children}</div>;\n};\n"],"mappings":";;;AAAA,IAAaA,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,gBAAAH,GAInCI;AAQS,QARTH,EAAA,OAAAE,IAQSC,IAAAH,EAAA,MANNG,IAAA,kBAAA,OAAA;EAEI,WAAA;EAGDD;EACG,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IANNA;GAUSC,KAA2BL,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,gBAAAH,GAIxCI;AACsD,QADtDH,EAAA,OAAAE,IACsDC,IAAAH,EAAA,MAA9CG,IAAA,kBAAA,OAAA;EAAe,WAAA;EAAgBD;EAAe,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IAA9CA"}
1
+ {"version":3,"file":"ScreenContainer.js","names":["MainScreenContainer","t0","$","_c","children","t1","SecondaryScreenContainer"],"sources":["../../../../src/components/widget/Screen/ScreenContainer.tsx"],"sourcesContent":["export const MainScreenContainer = ({\n children,\n}: {\n children?: React.ReactNode;\n}) => {\n return (\n <div\n className={\n \"relative flex flex-col pt-[24px] px-[24px] pb-[18px] bg-contrast-9 dark:bg-contrast-3 border border-contrast-7 dark:border-contrast-4 rounded-xxl\"\n }\n >\n {children}\n </div>\n );\n};\n\nexport const SecondaryScreenContainer = ({\n children,\n}: {\n children?: React.ReactNode;\n}) => {\n return <div className=\"relative z-2\">{children}</div>;\n};\n"],"mappings":";;;AAAA,IAAaA,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,gBAAAH,GAInCI;CAQS,OARTH,EAAA,OAAAE,IAQSC,IAAAH,EAAA,MANNG,IAAA,kBAAA,OAAA;EAEI,WAAA;EAGDD;EACG,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IANNA;GAUSC,KAA2BL,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAC,EAAAC,gBAAAH,GAIxCI;CACsD,OADtDH,EAAA,OAAAE,IACsDC,IAAAH,EAAA,MAA9CG,IAAA,kBAAA,OAAA;EAAe,WAAA;EAAgBD;EAAe,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAG,IAA9CA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectTokenButton.js","names":["ComponentProps","Button","TokenBadge","TokenBadgeProps","SelectTokenButtonProps","ChevronIcon","Token","SupportedChainId","useSetScreen","cn","EmptySelectTokenButtonProps","Omit","tokenType","drawerContainer","HTMLElement","onTokenSelect","token","selectableChains","EmptySelectTokenButton","t0","$","_c","className","props","showSelectTokenScreen","closeScreen","t1","t2","onSelect","onClose","t3","tokenBadgeClasses","root","symbol","logo","SelectTokenButton","React","FC","tokenBadgePropsOverride","buttonProps","address","network","img","t4","t5","Symbol","for","t6"],"sources":["../../../../src/components/widget/SelectToken/SelectTokenButton.tsx"],"sourcesContent":["import { type ComponentProps } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"@/components/widget/TokenBadge/TokenBadge\";\nimport { type TokenBadgeProps } from \"@/components/widget/TokenBadge/types\";\nimport type { SelectTokenButtonProps } from \"./types\";\nimport { ChevronIcon } from \"@/components/widget/Icon/ChevronIcon\";\nimport type { Token } from \"@/tokens/state/types\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useSetScreen } from \"@/core/screen/state/hooks/useSetScreen\";\nimport { cn } from \"@/lib/utils\";\n\ntype EmptySelectTokenButtonProps = Omit<\n ComponentProps<typeof Button>,\n \"onClick\"\n> & {\n tokenType?: \"from\" | \"to\";\n drawerContainer?: HTMLElement | null;\n onTokenSelect?: (token: Token) => void;\n selectableChains?: SupportedChainId[];\n};\n\nexport const EmptySelectTokenButton = ({\n tokenType,\n drawerContainer,\n onTokenSelect,\n selectableChains,\n className,\n ...props\n}: EmptySelectTokenButtonProps) => {\n const { showSelectTokenScreen, closeScreen } = useSetScreen();\n\n return (\n <Button\n variant=\"select\"\n className={cn(\"h-[32px]\", className)}\n {...props}\n onClick={() => {\n if (tokenType)\n showSelectTokenScreen({\n tokenType,\n onSelect: onTokenSelect,\n onClose: closeScreen,\n selectableChains,\n drawerContainer,\n });\n }}\n >\n Select Token\n </Button>\n );\n};\n\nconst tokenBadgeClasses: TokenBadgeProps[\"classes\"] = {\n root: \"font-inter\",\n symbol: \"text-contrast-4 dark:text-contrast-8\",\n logo: \"size-[24px]\",\n};\n\nexport const SelectTokenButton: React.FC<SelectTokenButtonProps> = ({\n token,\n tokenType,\n tokenBadgePropsOverride,\n drawerContainer,\n onSelect,\n selectableChains,\n buttonProps,\n}) => {\n const { showSelectTokenScreen, closeScreen } = useSetScreen();\n\n if (!token) {\n return (\n <EmptySelectTokenButton\n tokenType={tokenType}\n drawerContainer={drawerContainer}\n onTokenSelect={onSelect}\n selectableChains={selectableChains}\n {...buttonProps}\n />\n );\n }\n\n const { address, network, img, symbol } = token;\n\n return (\n <Button\n onClick={() => {\n if (tokenType)\n showSelectTokenScreen({\n tokenType,\n onSelect,\n onClose: closeScreen,\n selectableChains,\n drawerContainer,\n });\n }}\n {...buttonProps}\n className={cn(\n \"h-[32px] py-1 px-2 bg-contrast-9 hover:bg-contrast-9 dark:bg-contrast-4 hover:outline-solid hover:outline-1 hover:outline-contrast-6 dark:hover:outline-contrast-5 transition-none\",\n buttonProps?.className\n )}\n >\n <TokenBadge\n address={address}\n chainId={network}\n img={img}\n symbol={symbol}\n showNetworkIcon\n classes={tokenBadgeClasses}\n {...tokenBadgePropsOverride}\n />\n\n <ChevronIcon className=\"size-[10px]\" />\n </Button>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectTokenButton.js","names":["ComponentProps","Button","TokenBadge","TokenBadgeProps","SelectTokenButtonProps","ChevronIcon","Token","SupportedChainId","useSetScreen","cn","EmptySelectTokenButtonProps","Omit","tokenType","drawerContainer","HTMLElement","onTokenSelect","token","selectableChains","EmptySelectTokenButton","t0","$","_c","className","props","showSelectTokenScreen","closeScreen","t1","t2","onSelect","onClose","t3","tokenBadgeClasses","root","symbol","logo","SelectTokenButton","React","FC","tokenBadgePropsOverride","buttonProps","address","network","img","t4","t5","Symbol","for","t6"],"sources":["../../../../src/components/widget/SelectToken/SelectTokenButton.tsx"],"sourcesContent":["import { type ComponentProps } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"@/components/widget/TokenBadge/TokenBadge\";\nimport { type TokenBadgeProps } from \"@/components/widget/TokenBadge/types\";\nimport type { SelectTokenButtonProps } from \"./types\";\nimport { ChevronIcon } from \"@/components/widget/Icon/ChevronIcon\";\nimport type { Token } from \"@/tokens/state/types\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useSetScreen } from \"@/core/screen/state/hooks/useSetScreen\";\nimport { cn } from \"@/lib/utils\";\n\ntype EmptySelectTokenButtonProps = Omit<\n ComponentProps<typeof Button>,\n \"onClick\"\n> & {\n tokenType?: \"from\" | \"to\";\n drawerContainer?: HTMLElement | null;\n onTokenSelect?: (token: Token) => void;\n selectableChains?: SupportedChainId[];\n};\n\nexport const EmptySelectTokenButton = ({\n tokenType,\n drawerContainer,\n onTokenSelect,\n selectableChains,\n className,\n ...props\n}: EmptySelectTokenButtonProps) => {\n const { showSelectTokenScreen, closeScreen } = useSetScreen();\n\n return (\n <Button\n variant=\"select\"\n className={cn(\"h-[32px]\", className)}\n {...props}\n onClick={() => {\n if (tokenType)\n showSelectTokenScreen({\n tokenType,\n onSelect: onTokenSelect,\n onClose: closeScreen,\n selectableChains,\n drawerContainer,\n });\n }}\n >\n Select Token\n </Button>\n );\n};\n\nconst tokenBadgeClasses: TokenBadgeProps[\"classes\"] = {\n root: \"font-inter\",\n symbol: \"text-contrast-4 dark:text-contrast-8\",\n logo: \"size-[24px]\",\n};\n\nexport const SelectTokenButton: React.FC<SelectTokenButtonProps> = ({\n token,\n tokenType,\n tokenBadgePropsOverride,\n drawerContainer,\n onSelect,\n selectableChains,\n buttonProps,\n}) => {\n const { showSelectTokenScreen, closeScreen } = useSetScreen();\n\n if (!token) {\n return (\n <EmptySelectTokenButton\n tokenType={tokenType}\n drawerContainer={drawerContainer}\n onTokenSelect={onSelect}\n selectableChains={selectableChains}\n {...buttonProps}\n />\n );\n }\n\n const { address, network, img, symbol } = token;\n\n return (\n <Button\n onClick={() => {\n if (tokenType)\n showSelectTokenScreen({\n tokenType,\n onSelect,\n onClose: closeScreen,\n selectableChains,\n drawerContainer,\n });\n }}\n {...buttonProps}\n className={cn(\n \"h-[32px] py-1 px-2 bg-contrast-9 hover:bg-contrast-9 dark:bg-contrast-4 hover:outline-solid hover:outline-1 hover:outline-contrast-6 dark:hover:outline-contrast-5 transition-none\",\n buttonProps?.className\n )}\n >\n <TokenBadge\n address={address}\n chainId={network}\n img={img}\n symbol={symbol}\n showNetworkIcon\n classes={tokenBadgeClasses}\n {...tokenBadgePropsOverride}\n />\n\n <ChevronIcon className=\"size-[10px]\" />\n </Button>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsButton.js","names":["SliderIcon","ComponentProps","EllipseIcon","cn","SettingsButton","t0","$","_c","showEllipseIcon","t1","t2","t3","divProps","className","Symbol","for","t4","t5"],"sources":["../../../../src/components/widget/SettingsButton/SettingsButton.tsx"],"sourcesContent":["import { SliderIcon } from \"../Icon/SliderIcon\";\nimport type { ComponentProps } from \"react\";\nimport { EllipseIcon } from \"../Icon/EllipseIcon\";\nimport { cn } from \"@/lib/utils\";\n\nexport const SettingsButton = ({\n showEllipseIcon,\n ...divProps\n}: Omit<ComponentProps<\"div\">, \"children\"> & {\n showEllipseIcon?: boolean;\n}) => {\n return (\n <div {...divProps} className={cn(\"relative flex\", divProps.className)}>\n <SliderIcon className=\"text-contrast-5 cursor-pointer hover:text-primary-azul-1 transition-colors duration-200\" />\n {showEllipseIcon && (\n <EllipseIcon className=\"absolute top-[-3px] right-[-3px] stroke-contrast-9 dark:stroke-contrast-3\" />\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;AAKA,IAAaI,KAAiBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAAC,GAAAC,GAAAC;AAAA,KAAAJ,EAAA,OAAAD,GAAA;EAAC,IAAA,EAAAG,iBAAAG,GAAA,GAAAC,MAAAP;AAO0CC,EAP1CE,IAAAG,GAOlBC,IAAAA,GAAqBF,IAAAP,EAAG,iBAAiBS,EAAQC,UAAW,EAAAP,EAAA,KAAAD,GAAAC,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAI;OAAAA,CAAAF,IAAAF,EAAA,IAAAG,IAAAH,EAAA,IAAAI,IAAAJ,EAAA;CAAA,IAAAK;AAAA,CAAAL,EAAA,OAAAQ,OAAAC,IAAA,4BAAA,IACnEJ,IAAA,kBAAC,GAAD,EAAsB,WAAA,2FAA4F,CAAA,EAAAL,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAU;AAAA,CAAAV,EAAA,OAAAE,IAGjHQ,IAAAV,EAAA,MAFAU,IAAAR,KACC,kBAAC,GAAD,EAAuB,WAAA,6EACxB,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAU;CAAA,IAAAC;AACG,QADHX,EAAA,OAAAG,KAAAH,EAAA,OAAAI,KAAAJ,EAAA,OAAAU,KAJHC,IAAA,kBAAA,OAAA;EAKM,GALGL;EAAqB,WAAAF;YAA9B,CACEC,GACCK,EAGG;KAAAV,EAAA,KAAAG,GAAAH,EAAA,KAAAI,GAAAJ,EAAA,KAAAU,GAAAV,EAAA,MAAAW,KAAAA,IAAAX,EAAA,KALNW"}
1
+ {"version":3,"file":"SettingsButton.js","names":["SliderIcon","ComponentProps","EllipseIcon","cn","SettingsButton","t0","$","_c","showEllipseIcon","t1","t2","t3","divProps","className","Symbol","for","t4","t5"],"sources":["../../../../src/components/widget/SettingsButton/SettingsButton.tsx"],"sourcesContent":["import { SliderIcon } from \"../Icon/SliderIcon\";\nimport type { ComponentProps } from \"react\";\nimport { EllipseIcon } from \"../Icon/EllipseIcon\";\nimport { cn } from \"@/lib/utils\";\n\nexport const SettingsButton = ({\n showEllipseIcon,\n ...divProps\n}: Omit<ComponentProps<\"div\">, \"children\"> & {\n showEllipseIcon?: boolean;\n}) => {\n return (\n <div {...divProps} className={cn(\"relative flex\", divProps.className)}>\n <SliderIcon className=\"text-contrast-5 cursor-pointer hover:text-primary-azul-1 transition-colors duration-200\" />\n {showEllipseIcon && (\n <EllipseIcon className=\"absolute top-[-3px] right-[-3px] stroke-contrast-9 dark:stroke-contrast-3\" />\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;AAKA,IAAaI,KAAiBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAAC,GAAAC,GAAAC;CAAA,IAAAJ,EAAA,OAAAD,GAAA;EAAC,IAAA,EAAAG,iBAAAG,GAAA,GAAAC,MAAAP;EAO0CC,AAP1CE,IAAAG,GAOlBC,IAAAA,GAAqBF,IAAAP,EAAG,iBAAiBS,EAAQC,UAAW,EAAAP,EAAA,KAAAD,GAAAC,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAI;QAAAA,AAAAF,IAAAF,EAAA,IAAAG,IAAAH,EAAA,IAAAI,IAAAJ,EAAA;CAAA,IAAAK;CAAA,AAAAL,EAAA,OAAAQ,OAAAC,IAAA,4BAAA,IACnEJ,IAAA,kBAAC,GAAD,EAAsB,WAAA,2FAA4F,CAAA,EAAAL,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAU;CAAA,AAAAV,EAAA,OAAAE,IAGjHQ,IAAAV,EAAA,MAFAU,IAAAR,KACC,kBAAC,GAAD,EAAuB,WAAA,6EACxB,CAAA,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAU;CAAA,IAAAC;CACG,OADHX,EAAA,OAAAG,KAAAH,EAAA,OAAAI,KAAAJ,EAAA,OAAAU,KAJHC,IAAA,kBAAA,OAAA;EAKM,GALGL;EAAqB,WAAAF;YAA9B,CACEC,GACCK,EAGG;KAAAV,EAAA,KAAAG,GAAAH,EAAA,KAAAI,GAAAJ,EAAA,KAAAU,GAAAV,EAAA,MAAAW,KAAAA,IAAAX,EAAA,KALNW"}
@@ -1 +1 @@
1
- {"version":3,"file":"SwapModeSwitcherExpandable.js","names":["cn","Accordion","AccordionContent","AccordionItem","AccordionTrigger","DetailWithTooltip","DeltaIcon","MarketIcon","useSetAtom","setSwapModeAtom","SwapModeSwitcherExpandableProps","useSwapPrices","formatFiatPrice","WithClasses","useIsCrossChain","useGlobalDeltaEnabled","DexesList","useWidgetTokens","ErrorBoundary","useWidgetEvents","SwapMode","SwapModeSwitcherExpandable","React","FC","t0","$","_c","classes","currentEffectiveMode","t1","root","t2","Symbol","for","t3","t4","t5","t6","t7","t8","t9","SwapModeItem","icon","ReactNode","mode","fees","tooltip","onClick","t10","t11","DeltaModeItem","setSwapMode","onSettingsChange","enabledInConfig","enabledOnCurrentChain","isEnabled","undefined","event","name","params","swapMode","MarketModeItem","gasCostUSD","enabled","market","price","Number","formattedGasCostUSD","marketNetworkFees","isCrossChain","DexesListWithErrorBoundary","priceMode","tokenFrom","tokenTo"],"sources":["../../../../src/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { DetailWithTooltip } from \"@/components/widget/Details/DetailWithTooltip\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { MarketIcon } from \"@/components/widget/Icon/MarketIcon\";\nimport { useSetAtom } from \"@/core/store\";\nimport { setSwapModeAtom } from \"./state/swapModeActionsAtom\";\nimport type { SwapModeSwitcherExpandableProps } from \"./types\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\n\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { DexesList } from \"../DexesList/DexesList\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { SwapMode } from \"./state/types\";\n\nexport const SwapModeSwitcherExpandable: React.FC<\n SwapModeSwitcherExpandableProps\n> = ({ classes, currentEffectiveMode }) => {\n return (\n <Accordion type=\"single\" collapsible className={classes?.root}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>\n <div className=\"flex items-center justify-between flex-1 gap-2\">\n <div>Swap Mode</div>\n <div>\n {currentEffectiveMode === \"delta\" ? (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ) : (\n \"Market\"\n )}\n </div>\n </div>\n </AccordionTrigger>\n <AccordionContent>\n <div className=\"flex items-center justify-between gap-4\">\n <DeltaModeItem currentEffectiveMode={currentEffectiveMode} />\n <MarketModeItem currentEffectiveMode={currentEffectiveMode} />\n </div>\n <DexesListWithErrorBoundary />\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n};\n\nconst SwapModeItem: React.FC<\n {\n icon: React.ReactNode;\n mode: SwapMode;\n // with consideration for deltaPrice.errors and market as fallback\n currentEffectiveMode: SwapMode;\n fees: React.ReactNode;\n tooltip: string;\n onClick?: () => void;\n } & WithClasses<\"root\">\n> = ({ icon, mode, currentEffectiveMode, fees, tooltip, classes, onClick }) => {\n return (\n <div\n className={cn(\n \"py-[14px] px-4 flex flex-1 gap-3 items-center bg-contrast-7 dark:bg-contrast-3 cursor-pointer rounded-md\",\n {\n \"outline outline-primary-azul-1\": currentEffectiveMode === mode,\n },\n classes?.root\n )}\n onClick={onClick}\n >\n <div>{icon}</div>\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"dark:text-contrast-9 text-sm\">\n {mode === \"delta\" ? \"Delta\" : \"Market\"}\n </div>\n <div className=\"flex items-center justify-between\">\n <DetailWithTooltip\n detail={\"Fees\"}\n tooltip={tooltip}\n classes={{\n icon: \"dark:fill-contrast-5 size-[12px]\",\n root: \"text-[10px]\",\n }}\n />\n <div className=\"text-[10px] font-geist-mono\">{fees}</div>\n </div>\n </div>\n </div>\n );\n};\n\nconst DeltaModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const { enabledInConfig, enabledOnCurrentChain } = useGlobalDeltaEnabled();\n const isEnabled = enabledInConfig && enabledOnCurrentChain;\n\n const onClick = !isEnabled\n ? undefined\n : () => {\n setSwapMode(\"delta\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"delta\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<DeltaIcon />}\n mode=\"delta\"\n currentEffectiveMode={currentEffectiveMode}\n fees={<div className=\"text-[#A5D712]\">Gasless</div>}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": !isEnabled,\n }),\n }}\n />\n );\n};\n\nconst MarketModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const gasCostUSD = useSwapPrices({\n enabled: false,\n }).market.price?.gasCostUSD;\n\n const formattedGasCostUSD =\n gasCostUSD !== undefined ? formatFiatPrice(Number(gasCostUSD)) : undefined;\n const marketNetworkFees =\n formattedGasCostUSD !== undefined\n ? formattedGasCostUSD === \"$0.00\"\n ? \"<$0.01\"\n : formattedGasCostUSD\n : \"N/A\";\n\n const isCrossChain = useIsCrossChain();\n\n const onClick = isCrossChain\n ? undefined\n : () => {\n setSwapMode(\"market\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"market\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<MarketIcon />}\n mode=\"market\"\n currentEffectiveMode={currentEffectiveMode}\n fees={marketNetworkFees}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": isCrossChain,\n }),\n }}\n />\n );\n};\n\nconst DexesListWithErrorBoundary = () => {\n const { priceMode, market } = useSwapPrices({ enabled: false });\n const { tokenFrom, tokenTo } = useWidgetTokens(\"swap\");\n\n if (priceMode !== \"market\" || !market.price || !tokenTo) return null;\n\n return (\n <ErrorBoundary fallback={null}>\n <DexesList\n marketPrice={market.price}\n tokenFrom={tokenFrom}\n tokenTo={tokenTo}\n />\n </ErrorBoundary>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"SwapModeSwitcherExpandable.js","names":["cn","Accordion","AccordionContent","AccordionItem","AccordionTrigger","DetailWithTooltip","DeltaIcon","MarketIcon","useSetAtom","setSwapModeAtom","SwapModeSwitcherExpandableProps","useSwapPrices","formatFiatPrice","WithClasses","useIsCrossChain","useGlobalDeltaEnabled","DexesList","useWidgetTokens","ErrorBoundary","useWidgetEvents","SwapMode","SwapModeSwitcherExpandable","React","FC","t0","$","_c","classes","currentEffectiveMode","t1","root","t2","Symbol","for","t3","t4","t5","t6","t7","t8","t9","SwapModeItem","icon","ReactNode","mode","fees","tooltip","onClick","t10","t11","DeltaModeItem","setSwapMode","onSettingsChange","enabledInConfig","enabledOnCurrentChain","isEnabled","undefined","event","name","params","swapMode","MarketModeItem","gasCostUSD","enabled","market","price","Number","formattedGasCostUSD","marketNetworkFees","isCrossChain","DexesListWithErrorBoundary","priceMode","tokenFrom","tokenTo"],"sources":["../../../../src/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { DetailWithTooltip } from \"@/components/widget/Details/DetailWithTooltip\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { MarketIcon } from \"@/components/widget/Icon/MarketIcon\";\nimport { useSetAtom } from \"@/core/store\";\nimport { setSwapModeAtom } from \"./state/swapModeActionsAtom\";\nimport type { SwapModeSwitcherExpandableProps } from \"./types\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\n\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { DexesList } from \"../DexesList/DexesList\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { SwapMode } from \"./state/types\";\n\nexport const SwapModeSwitcherExpandable: React.FC<\n SwapModeSwitcherExpandableProps\n> = ({ classes, currentEffectiveMode }) => {\n return (\n <Accordion type=\"single\" collapsible className={classes?.root}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>\n <div className=\"flex items-center justify-between flex-1 gap-2\">\n <div>Swap Mode</div>\n <div>\n {currentEffectiveMode === \"delta\" ? (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ) : (\n \"Market\"\n )}\n </div>\n </div>\n </AccordionTrigger>\n <AccordionContent>\n <div className=\"flex items-center justify-between gap-4\">\n <DeltaModeItem currentEffectiveMode={currentEffectiveMode} />\n <MarketModeItem currentEffectiveMode={currentEffectiveMode} />\n </div>\n <DexesListWithErrorBoundary />\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n};\n\nconst SwapModeItem: React.FC<\n {\n icon: React.ReactNode;\n mode: SwapMode;\n // with consideration for deltaPrice.errors and market as fallback\n currentEffectiveMode: SwapMode;\n fees: React.ReactNode;\n tooltip: string;\n onClick?: () => void;\n } & WithClasses<\"root\">\n> = ({ icon, mode, currentEffectiveMode, fees, tooltip, classes, onClick }) => {\n return (\n <div\n className={cn(\n \"py-[14px] px-4 flex flex-1 gap-3 items-center bg-contrast-7 dark:bg-contrast-3 cursor-pointer rounded-md\",\n {\n \"outline outline-primary-azul-1\": currentEffectiveMode === mode,\n },\n classes?.root\n )}\n onClick={onClick}\n >\n <div>{icon}</div>\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"dark:text-contrast-9 text-sm\">\n {mode === \"delta\" ? \"Delta\" : \"Market\"}\n </div>\n <div className=\"flex items-center justify-between\">\n <DetailWithTooltip\n detail={\"Fees\"}\n tooltip={tooltip}\n classes={{\n icon: \"dark:fill-contrast-5 size-[12px]\",\n root: \"text-[10px]\",\n }}\n />\n <div className=\"text-[10px] font-geist-mono\">{fees}</div>\n </div>\n </div>\n </div>\n );\n};\n\nconst DeltaModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const { enabledInConfig, enabledOnCurrentChain } = useGlobalDeltaEnabled();\n const isEnabled = enabledInConfig && enabledOnCurrentChain;\n\n const onClick = !isEnabled\n ? undefined\n : () => {\n setSwapMode(\"delta\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"delta\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<DeltaIcon />}\n mode=\"delta\"\n currentEffectiveMode={currentEffectiveMode}\n fees={<div className=\"text-[#A5D712]\">Gasless</div>}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": !isEnabled,\n }),\n }}\n />\n );\n};\n\nconst MarketModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const gasCostUSD = useSwapPrices({\n enabled: false,\n }).market.price?.gasCostUSD;\n\n const formattedGasCostUSD =\n gasCostUSD !== undefined ? formatFiatPrice(Number(gasCostUSD)) : undefined;\n const marketNetworkFees =\n formattedGasCostUSD !== undefined\n ? formattedGasCostUSD === \"$0.00\"\n ? \"<$0.01\"\n : formattedGasCostUSD\n : \"N/A\";\n\n const isCrossChain = useIsCrossChain();\n\n const onClick = isCrossChain\n ? undefined\n : () => {\n setSwapMode(\"market\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"market\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<MarketIcon />}\n mode=\"market\"\n currentEffectiveMode={currentEffectiveMode}\n fees={marketNetworkFees}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": isCrossChain,\n }),\n }}\n />\n );\n};\n\nconst DexesListWithErrorBoundary = () => {\n const { priceMode, market } = useSwapPrices({ enabled: false });\n const { tokenFrom, tokenTo } = useWidgetTokens(\"swap\");\n\n if (priceMode !== \"market\" || !market.price || !tokenTo) return null;\n\n return (\n <ErrorBoundary fallback={null}>\n <DexesList\n marketPrice={market.price}\n tokenFrom={tokenFrom}\n tokenTo={tokenTo}\n />\n </ErrorBoundary>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"swapModeActionsAtom.js","names":["atom","widgetConfigAtom","isCrossChainAtom","deltaEnabledOnAPI","wagmiConfig","swapTokenToAtom","SwapMode","userSwapModeAtom","limitTokenToAtom","isLimitCrossChainAtom","deltaParamAtom","setSwapModeAtom","get","set","mode","enabledInConfig","enableDelta","enabledOnAPI","state","chainId","undefined"],"sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { isCrossChainAtom } from \"@/core/state/isCrosschainAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport type { SwapMode } from \"./types\";\nimport { userSwapModeAtom } from \"./swapModeAtom\";\nimport { limitTokenToAtom } from \"@/core/limit/state/limitTokenAtoms\";\nimport { isLimitCrossChainAtom } from \"@/core/limit/state/isCrosschainAtom\";\nimport { deltaParamAtom } from \"../../TradeParameters/state/deltaParamAtom\";\n\nexport const setSwapModeAtom = atom(null, (get, set, mode: SwapMode) => {\n if (mode === \"delta\") {\n const enabledInConfig = get(widgetConfigAtom).enableDelta;\n const enabledOnAPI = deltaEnabledOnAPI[wagmiConfig.state.chainId];\n\n if (enabledInConfig && enabledOnAPI) {\n set(userSwapModeAtom, mode);\n set(deltaParamAtom, true);\n }\n } else {\n // delta mode disabled, reset tokenTo\n if (get(isCrossChainAtom)) {\n set(swapTokenToAtom, undefined);\n }\n if (get(isLimitCrossChainAtom)) {\n set(limitTokenToAtom, undefined);\n }\n set(userSwapModeAtom, mode);\n set(deltaParamAtom, false);\n }\n});\n"],"mappings":";;;;;;;;;;;AAYA,IAAaW,IAAkBX,EAAK,OAAOY,GAAKC,GAAKC,MAAmB;AACtE,KAAIA,MAAS,SAAS;EACpB,IAAMC,IAAkBH,EAAIX,EAAiB,CAACe,aACxCC,IAAed,EAAkBC,EAAYc,MAAMC;AAEzD,EAAIJ,KAAmBE,MACrBJ,EAAIN,GAAkBO,EAAK,EAC3BD,EAAIH,GAAgB,GAAK;OAW3BG,CAPID,EAAIV,EAAiB,IACvBW,EAAIR,GAAiBe,KAAAA,EAAU,EAE7BR,EAAIH,EAAsB,IAC5BI,EAAIL,GAAkBY,KAAAA,EAAU,EAElCP,EAAIN,GAAkBO,EAAK,EAC3BD,EAAIH,GAAgB,GAAM;EAE5B"}
1
+ {"version":3,"file":"swapModeActionsAtom.js","names":["atom","widgetConfigAtom","isCrossChainAtom","deltaEnabledOnAPI","wagmiConfig","swapTokenToAtom","SwapMode","userSwapModeAtom","limitTokenToAtom","isLimitCrossChainAtom","deltaParamAtom","setSwapModeAtom","get","set","mode","enabledInConfig","enableDelta","enabledOnAPI","state","chainId","undefined"],"sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { isCrossChainAtom } from \"@/core/state/isCrosschainAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport type { SwapMode } from \"./types\";\nimport { userSwapModeAtom } from \"./swapModeAtom\";\nimport { limitTokenToAtom } from \"@/core/limit/state/limitTokenAtoms\";\nimport { isLimitCrossChainAtom } from \"@/core/limit/state/isCrosschainAtom\";\nimport { deltaParamAtom } from \"../../TradeParameters/state/deltaParamAtom\";\n\nexport const setSwapModeAtom = atom(null, (get, set, mode: SwapMode) => {\n if (mode === \"delta\") {\n const enabledInConfig = get(widgetConfigAtom).enableDelta;\n const enabledOnAPI = deltaEnabledOnAPI[wagmiConfig.state.chainId];\n\n if (enabledInConfig && enabledOnAPI) {\n set(userSwapModeAtom, mode);\n set(deltaParamAtom, true);\n }\n } else {\n // delta mode disabled, reset tokenTo\n if (get(isCrossChainAtom)) {\n set(swapTokenToAtom, undefined);\n }\n if (get(isLimitCrossChainAtom)) {\n set(limitTokenToAtom, undefined);\n }\n set(userSwapModeAtom, mode);\n set(deltaParamAtom, false);\n }\n});\n"],"mappings":";;;;;;;;;;;AAYA,IAAaW,IAAkBX,EAAK,OAAOY,GAAKC,GAAKC,MAAmB;CACtE,IAAIA,MAAS,SAAS;EACpB,IAAMC,IAAkBH,EAAIX,EAAiB,CAACe,aACxCC,IAAed,EAAkBC,EAAYc,MAAMC;EAEzD,AAAIJ,KAAmBE,MACrBJ,EAAIN,GAAkBO,EAAK,EAC3BD,EAAIH,GAAgB,GAAK;QAW3BG,AAPID,EAAIV,EAAiB,IACvBW,EAAIR,GAAiBe,KAAAA,EAAU,EAE7BR,EAAIH,EAAsB,IAC5BI,EAAIL,GAAkBY,KAAAA,EAAU,EAElCP,EAAIN,GAAkBO,EAAK,EAC3BD,EAAIH,GAAgB,GAAM;EAE5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"swapSideAtom.js","names":["swapTokenToAtom","currentSwapInputAtom","tradeModeAtom","SwapSideUnion","atom","useAtomValue","swapSideAtom","get","tradeMode","tokenTo","currentSwapInput","useSwapSide"],"sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const swapSideAtom = atom<SwapSideUnion>((get) => {\n const tradeMode = get(tradeModeAtom);\n\n if (tradeMode !== \"swap\") {\n return \"SELL\";\n }\n\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentSwapInput = get(currentSwapInputAtom);\n\n return currentSwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useSwapSide = () => {\n return useAtomValue(swapSideAtom);\n};\n"],"mappings":";;;;;;AAOA,IAAaM,IAAeF,GAAqBG,MAC7BA,EAAIL,EAAc,KAElB,UAMd,CAFYK,EAAIP,EAAgB,IAMXO,EAAIN,EAAqB,KAEtB,SALnB,SAKqC,MAC9C,EAEWU,UACJN,EAAaC,EAAa"}
1
+ {"version":3,"file":"swapSideAtom.js","names":["swapTokenToAtom","currentSwapInputAtom","tradeModeAtom","SwapSideUnion","atom","useAtomValue","swapSideAtom","get","tradeMode","tokenTo","currentSwapInput","useSwapSide"],"sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const swapSideAtom = atom<SwapSideUnion>((get) => {\n const tradeMode = get(tradeModeAtom);\n\n if (tradeMode !== \"swap\") {\n return \"SELL\";\n }\n\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentSwapInput = get(currentSwapInputAtom);\n\n return currentSwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useSwapSide = () => {\n return useAtomValue(swapSideAtom);\n};\n"],"mappings":";;;;;;AAOA,IAAaM,IAAeF,GAAqBG,MAC7BA,EAAIL,EAElBM,KAAc,UAMd,CAFYD,EAAIP,EAEfS,IAIoBF,EAAIN,EAEtBS,KAAqB,SALnB,SAKqC,MAC9C,EAEWC,UACJN,EAAaC,EAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"SwapRate.js","names":["Skeleton","SwapRateProps","getRateString","JSX","SwapRate","t0","$","_c","t1","t2","Symbol","for","bb0","isLoading","props","destToken","srcAmountWei","destAmountWei","reverse","prefix","srcToken","t3","symbol","address","undefined","rateString"],"sources":["../../../../src/components/widget/SwapRate/SwapRate.tsx"],"sourcesContent":["import { Skeleton } from \"@/components/ui/skeleton\";\nimport type { SwapRateProps } from \"./types\";\nimport { getRateString } from \"./utils\";\nimport type { JSX } from \"react\";\n\nexport const SwapRate = ({\n isLoading,\n ...props\n}: SwapRateProps): JSX.Element | null => {\n const { destToken, srcAmountWei, destAmountWei, reverse, prefix } = props;\n if (!destToken) return null;\n\n const srcToken = reverse ? destToken : props.srcToken;\n\n if (isLoading)\n return (\n <div className=\"flex items-center gap-1\">\n {prefix} {`1 ${srcToken.symbol ?? srcToken.address} =`}{\" \"}\n <Skeleton className=\"w-[42px] h-[12px] bg-contrast-6 dark:bg-contrast-5\" />\n </div>\n );\n\n if (srcAmountWei === undefined || destAmountWei === undefined) return null;\n\n const rateString = getRateString(props) || \"-\";\n\n return <>{rateString}</>;\n};\n"],"mappings":";;;;;AAKA,IAAaI,KAAWC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAAC,GAAAC;AAAA,KAAAH,EAAA,OAAAD,GAAA;AAKCI,MAAAC,OAAIC,IAAJ,8BAAI;AAAAC,OAAA;GALJ,IAAA,EAAAC,cAAA,GAAAC,MAAAT,GAIvB,EAAAU,cAAAC,iBAAAC,kBAAAC,YAAAC,cAAoEL;AACpE,OAAI,CAACC,GAAS;AAASN,QAAA;AAAA,UAAAG;;GAEvB,IAAAQ,IAAiBF,IAAAH,IAAsBD,EAAKM;AAE5C,OAAIP,GAAS;IAAA,IAAAQ;AAETZ,IAFSH,EAAA,OAAAI,OAAAC,IAAA,4BAAA,IAIPU,IAAA,kBAAC,GAAD,EAAoB,WAAA,sDAAuD,CAAA,EAAAf,EAAA,KAAAe,KAAAA,IAAAf,EAAA,IAF7EG,IAAA,kBAAA,OAAA;KAAe,WAAA;eAAf;MACGU;MAAO;MAAE,KAAKC,EAAQE,UAAWF,EAAQG,QAAQ;MAAM;MACxDF;MACI;;AAHN,UAAAT;;AAMJ,OAAII,MAAiBQ,KAAAA,KAAaP,MAAkBO,KAAAA,GAAS;AAASf,QAAA;AAAA,UAAAG;;AAEnDJ,OAAAN,EAAcY,EAAa,IAA3B;;AAA2BR,EAAAA,EAAA,KAAAD,GAAAC,EAAA,KAAAE,GAAAF,EAAA,KAAAG;OAAAA,CAAAD,IAAAF,EAAA,IAAAG,IAAAH,EAAA;AAAA,KAAAG,MAAAC,OAAAC,IAAA,8BAAA,CAAA,QAAAF;CAA9C,IAAAgB,IAAmBjB,GAA4Ba;AAEvB,QAFuBf,EAAA,OAAAmB,IAEvBJ,IAAAf,EAAA,MAAjBe,IAAA,kBAAA,GAAA,EAAA,UAAGI,GAAc,CAAA,EAAAnB,EAAA,KAAAmB,GAAAnB,EAAA,KAAAe,IAAjBA"}
1
+ {"version":3,"file":"SwapRate.js","names":["Skeleton","SwapRateProps","getRateString","JSX","SwapRate","t0","$","_c","t1","t2","Symbol","for","bb0","isLoading","props","destToken","srcAmountWei","destAmountWei","reverse","prefix","srcToken","t3","symbol","address","undefined","rateString"],"sources":["../../../../src/components/widget/SwapRate/SwapRate.tsx"],"sourcesContent":["import { Skeleton } from \"@/components/ui/skeleton\";\nimport type { SwapRateProps } from \"./types\";\nimport { getRateString } from \"./utils\";\nimport type { JSX } from \"react\";\n\nexport const SwapRate = ({\n isLoading,\n ...props\n}: SwapRateProps): JSX.Element | null => {\n const { destToken, srcAmountWei, destAmountWei, reverse, prefix } = props;\n if (!destToken) return null;\n\n const srcToken = reverse ? destToken : props.srcToken;\n\n if (isLoading)\n return (\n <div className=\"flex items-center gap-1\">\n {prefix} {`1 ${srcToken.symbol ?? srcToken.address} =`}{\" \"}\n <Skeleton className=\"w-[42px] h-[12px] bg-contrast-6 dark:bg-contrast-5\" />\n </div>\n );\n\n if (srcAmountWei === undefined || destAmountWei === undefined) return null;\n\n const rateString = getRateString(props) || \"-\";\n\n return <>{rateString}</>;\n};\n"],"mappings":";;;;;AAKA,IAAaI,KAAWC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAAC,GAAAC;CAAA,IAAAH,EAAA,OAAAD,GAAA;EAKCI,IAAAC,OAAIC,IAAJ,8BAAI;EAAAC,KAAA;GALJ,IAAA,EAAAC,cAAA,GAAAC,MAAAT,GAIvB,EAAAU,cAAAC,iBAAAC,kBAAAC,YAAAC,cAAoEL;GACpE,IAAI,CAACC,GAAS;IAASN,IAAA;IAAA,MAAAG;;GAEvB,IAAAQ,IAAiBF,IAAAH,IAAsBD,EAAKM;GAE5C,IAAIP,GAAS;IAAA,IAAAQ;IAETZ,AAFSH,EAAA,OAAAI,OAAAC,IAAA,4BAAA,IAIPU,IAAA,kBAAC,GAAD,EAAoB,WAAA,sDAAuD,CAAA,EAAAf,EAAA,KAAAe,KAAAA,IAAAf,EAAA,IAF7EG,IAAA,kBAAA,OAAA;KAAe,WAAA;eAAf;MACGU;MAAO;MAAE,KAAKC,EAAQE,UAAWF,EAAQG,QAAQ;MAAM;MACxDF;MACI;;IAHN,MAAAT;;GAMJ,IAAII,MAAiBQ,KAAAA,KAAaP,MAAkBO,KAAAA,GAAS;IAASf,IAAA;IAAA,MAAAG;;GAEnDJ,IAAAN,EAAcY,EAAa,IAA3B;;EAA2BR,AAAAA,EAAA,KAAAD,GAAAC,EAAA,KAAAE,GAAAF,EAAA,KAAAG;QAAAA,AAAAD,IAAAF,EAAA,IAAAG,IAAAH,EAAA;CAAA,IAAAG,MAAAC,OAAAC,IAAA,8BAAA,EAAA,OAAAF;CAA9C,IAAAgB,IAAmBjB,GAA4Ba;CAEvB,OAFuBf,EAAA,OAAAmB,IAEvBJ,IAAAf,EAAA,MAAjBe,IAAA,kBAAA,GAAA,EAAA,UAAGI,GAAc,CAAA,EAAAnB,EAAA,KAAAmB,GAAAnB,EAAA,KAAAe,IAAjBA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SwapRateWithTooltip.js","names":["Tooltip","TooltipContent","TooltipTrigger","SwapRate","SwapRateProps","useState","getRateString","SwapRateWithTooltip","t0","$","_c","isLoading","props","isReversed","setIsReversed","reverse","reversedRate","t1","event","stopPropagation","_temp","t2","t3","t4","t5","prev"],"sources":["../../../../src/components/widget/SwapRate/SwapRateWithTooltip.tsx"],"sourcesContent":["import {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { SwapRate } from \"./SwapRate\";\nimport type { SwapRateProps } from \"./types\";\nimport { useState } from \"react\";\nimport { getRateString } from \"./utils\";\n\nexport const SwapRateWithTooltip = ({ isLoading, ...props }: SwapRateProps) => {\n const [isReversed, setIsReversed] = useState(!!props.reverse);\n\n const reversedRate = getRateString({ ...props, reverse: !isReversed });\n return (\n <Tooltip>\n <TooltipTrigger asChild>\n <div\n className=\"cursor-pointer\"\n onClick={(event) => {\n event.stopPropagation();\n setIsReversed((prev) => !prev);\n }}\n >\n <SwapRate isLoading={isLoading} {...props} reverse={isReversed} />\n </div>\n </TooltipTrigger>\n {reversedRate && <TooltipContent>{reversedRate}</TooltipContent>}\n </Tooltip>\n );\n};\n"],"mappings":";;;;;;;AAUA,IAAaO,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAC,cAAA,GAAAC,MAAAJ,GAClC,CAAAK,GAAAC,KAAoCT,EAAS,CAAC,CAACO,EAAKG,QAAS,EAE7DC,IAAqBV,EAAc;EAAA,GAAKM;EAAKG,SAAW,CAACF;EAAY,CAAC,EAACI;AAAA,CAAAR,EAAA,OAAAK,IAS9DG,IAAAR,EAAA,MAHQQ,KAAAC,MAAA;AAEPJ,EADAI,EAAKC,iBAAkB,EACvBL,EAAcM,EAAgB;IAC/BX,EAAA,KAAAK,GAAAL,EAAA,KAAAQ;CAAA,IAAAI;AAAA,CAAAZ,EAAA,OAAAE,KAAAF,EAAA,OAAAI,KAAAJ,EAAA,OAAAG,KAEDS,IAAA,kBAAC,GAAD;EAAqBV;EAAS,GAAMC;EAAgBC,SAAAA;EAAc,CAAA,EAAAJ,EAAA,KAAAE,GAAAF,EAAA,KAAAI,GAAAJ,EAAA,KAAAG,GAAAH,EAAA,KAAAY,KAAAA,IAAAZ,EAAA;CAAA,IAAAa;AAAA,CAAAb,EAAA,OAAAQ,KAAAR,EAAA,OAAAY,KARtEC,IAAA,kBAAC,GAAD;EAAgB,SAAA;YACd,kBAAA,OAAA;GACY,WAAA;GACD,SAAAL;aAKTI;GAEJ,CAAA;EAAiB,CAAA,EAAAZ,EAAA,KAAAQ,GAAAR,EAAA,KAAAY,GAAAZ,EAAA,KAAAa,KAAAA,IAAAb,EAAA;CAAA,IAAAc;AAAA,CAAAd,EAAA,OAAAO,IAC+CO,IAAAd,EAAA,OAA/Dc,IAAAP,KAAgB,kBAAC,GAAD,EAAA,UAAiBA,GAA8B,CAAA,EAAAP,EAAA,KAAAO,GAAAP,EAAA,MAAAc;CAAA,IAAAC;AACxD,QADwDf,EAAA,QAAAa,KAAAb,EAAA,QAAAc,KAZlEC,IAAA,kBAAC,GAAD,EAAA,UAAA,CACEF,GAWCC,EACO,EAAA,CAAA,EAAAd,EAAA,MAAAa,GAAAb,EAAA,MAAAc,GAAAd,EAAA,MAAAe,KAAAA,IAAAf,EAAA,KAbVe;;AAL+B,SAAAJ,EAAAK,GAAA;AAAA,QAWC,CAACA"}
1
+ {"version":3,"file":"SwapRateWithTooltip.js","names":["Tooltip","TooltipContent","TooltipTrigger","SwapRate","SwapRateProps","useState","getRateString","SwapRateWithTooltip","t0","$","_c","isLoading","props","isReversed","setIsReversed","reverse","reversedRate","t1","event","stopPropagation","_temp","t2","t3","t4","t5","prev"],"sources":["../../../../src/components/widget/SwapRate/SwapRateWithTooltip.tsx"],"sourcesContent":["import {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { SwapRate } from \"./SwapRate\";\nimport type { SwapRateProps } from \"./types\";\nimport { useState } from \"react\";\nimport { getRateString } from \"./utils\";\n\nexport const SwapRateWithTooltip = ({ isLoading, ...props }: SwapRateProps) => {\n const [isReversed, setIsReversed] = useState(!!props.reverse);\n\n const reversedRate = getRateString({ ...props, reverse: !isReversed });\n return (\n <Tooltip>\n <TooltipTrigger asChild>\n <div\n className=\"cursor-pointer\"\n onClick={(event) => {\n event.stopPropagation();\n setIsReversed((prev) => !prev);\n }}\n >\n <SwapRate isLoading={isLoading} {...props} reverse={isReversed} />\n </div>\n </TooltipTrigger>\n {reversedRate && <TooltipContent>{reversedRate}</TooltipContent>}\n </Tooltip>\n );\n};\n"],"mappings":";;;;;;;AAUA,IAAaO,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAC,cAAA,GAAAC,MAAAJ,GAClC,CAAAK,GAAAC,KAAoCT,EAAS,CAAC,CAACO,EAAKG,QAAS,EAE7DC,IAAqBV,EAAc;EAAA,GAAKM;EAAKG,SAAW,CAACF;EAAY,CAAC,EAACI;CAAA,AAAAR,EAAA,OAAAK,IAS9DG,IAAAR,EAAA,MAHQQ,KAAAC,MAAA;EAEPJ,AADAI,EAAKC,iBAAkB,EACvBL,EAAcM,EAAgB;IAC/BX,EAAA,KAAAK,GAAAL,EAAA,KAAAQ;CAAA,IAAAI;CAAA,AAAAZ,EAAA,OAAAE,KAAAF,EAAA,OAAAI,KAAAJ,EAAA,OAAAG,KAEDS,IAAA,kBAAC,GAAD;EAAqBV;EAAS,GAAMC;EAAgBC,SAAAA;EAAc,CAAA,EAAAJ,EAAA,KAAAE,GAAAF,EAAA,KAAAI,GAAAJ,EAAA,KAAAG,GAAAH,EAAA,KAAAY,KAAAA,IAAAZ,EAAA;CAAA,IAAAa;CAAA,AAAAb,EAAA,OAAAQ,KAAAR,EAAA,OAAAY,KARtEC,IAAA,kBAAC,GAAD;EAAgB,SAAA;YACd,kBAAA,OAAA;GACY,WAAA;GACD,SAAAL;aAKTI;GAEJ,CAAA;EAAiB,CAAA,EAAAZ,EAAA,KAAAQ,GAAAR,EAAA,KAAAY,GAAAZ,EAAA,KAAAa,KAAAA,IAAAb,EAAA;CAAA,IAAAc;CAAA,AAAAd,EAAA,OAAAO,IAC+CO,IAAAd,EAAA,OAA/Dc,IAAAP,KAAgB,kBAAC,GAAD,EAAA,UAAiBA,GAA8B,CAAA,EAAAP,EAAA,KAAAO,GAAAP,EAAA,MAAAc;CAAA,IAAAC;CACxD,OADwDf,EAAA,QAAAa,KAAAb,EAAA,QAAAc,KAZlEC,IAAA,kBAAC,GAAD,EAAA,UAAA,CACEF,GAWCC,EACO,EAAA,CAAA,EAAAd,EAAA,MAAAa,GAAAb,EAAA,MAAAc,GAAAd,EAAA,MAAAe,KAAAA,IAAAf,EAAA,KAbVe;;AAL+B,SAAAJ,EAAAK,GAAA;CAAA,OAWC,CAACA"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["formatUnits","SwapRateProps","calcRate","getRateString","srcToken","_srcToken","destToken","_destToken","srcAmountWei","_srcAmountWei","destAmountWei","_destAmountWei","reverse","prefix","Omit","undefined","srcUnits","BigInt","decimals","destUnits","rateFormatted","rateText","symbol","address"],"sources":["../../../../src/components/widget/SwapRate/utils.ts"],"sourcesContent":["import { formatUnits } from \"viem\";\nimport type { SwapRateProps } from \"./types\";\nimport { calcRate } from \"@/lib/utils/rate\";\n\nexport function getRateString({\n srcToken: _srcToken,\n destToken: _destToken,\n srcAmountWei: _srcAmountWei,\n destAmountWei: _destAmountWei,\n reverse,\n prefix,\n}: Omit<SwapRateProps, \"isLoading\">): string | null {\n if (!_destToken) return null;\n\n const { srcToken, destToken, srcAmountWei, destAmountWei } = reverse\n ? {\n srcToken: _destToken,\n destToken: _srcToken,\n srcAmountWei: _destAmountWei,\n destAmountWei: _srcAmountWei,\n }\n : {\n srcToken: _srcToken,\n destToken: _destToken,\n srcAmountWei: _srcAmountWei,\n destAmountWei: _destAmountWei,\n };\n\n if (srcAmountWei === undefined || destAmountWei === undefined) return null;\n\n const srcUnits = formatUnits(BigInt(srcAmountWei), srcToken.decimals);\n const destUnits = formatUnits(BigInt(destAmountWei), destToken.decimals);\n\n const rateFormatted = calcRate(srcUnits, destUnits)?.rateFormatted;\n if (!rateFormatted) {\n // will happen when destAmount is not yet filled from the first price fetch (=\"0\")\n return null;\n }\n\n const rateText = `1 ${srcToken.symbol ?? srcToken.address} = ${rateFormatted} ${destToken.symbol ?? destToken.address}`;\n\n if (prefix) {\n return `${prefix} ${rateText}`;\n }\n\n return rateText;\n}\n"],"mappings":";;;AAIA,SAAgBG,EAAc,EAC5BC,UAAUC,GACVC,WAAWC,GACXC,cAAcC,GACdC,eAAeC,GACfC,YACAC,aACkD;AAClD,KAAI,CAACN,EAAY,QAAO;CAExB,IAAM,EAAEH,aAAUE,cAAWE,iBAAcE,qBAAkBE,IACzD;EACER,UAAUG;EACVD,WAAWD;EACXG,cAAcG;EACdD,eAAeD;EAChB,GACD;EACEL,UAAUC;EACVC,WAAWC;EACXC,cAAcC;EACdC,eAAeC;EAChB;AAEL,KAAIH,MAAiBO,KAAAA,KAAaL,MAAkBK,KAAAA,EAAW,QAAO;CAKtE,IAAMK,IAAgBlB,EAHLF,EAAYiB,OAAOT,EAAa,EAAEJ,EAASc,SAAS,EACnDlB,EAAYiB,OAAOP,EAAc,EAAEJ,EAAUY,SAAS,CAErB,EAAEE;AACrD,KAAI,CAACA,EAEH,QAAO;CAGT,IAAMC,IAAW,KAAKjB,EAASkB,UAAUlB,EAASmB,QAAO,KAAMH,EAAa,GAAId,EAAUgB,UAAUhB,EAAUiB;AAM9G,QAJIV,IACK,GAAGA,EAAM,GAAIQ,MAGfA"}
1
+ {"version":3,"file":"utils.js","names":["formatUnits","SwapRateProps","calcRate","getRateString","srcToken","_srcToken","destToken","_destToken","srcAmountWei","_srcAmountWei","destAmountWei","_destAmountWei","reverse","prefix","Omit","undefined","srcUnits","BigInt","decimals","destUnits","rateFormatted","rateText","symbol","address"],"sources":["../../../../src/components/widget/SwapRate/utils.ts"],"sourcesContent":["import { formatUnits } from \"viem\";\nimport type { SwapRateProps } from \"./types\";\nimport { calcRate } from \"@/lib/utils/rate\";\n\nexport function getRateString({\n srcToken: _srcToken,\n destToken: _destToken,\n srcAmountWei: _srcAmountWei,\n destAmountWei: _destAmountWei,\n reverse,\n prefix,\n}: Omit<SwapRateProps, \"isLoading\">): string | null {\n if (!_destToken) return null;\n\n const { srcToken, destToken, srcAmountWei, destAmountWei } = reverse\n ? {\n srcToken: _destToken,\n destToken: _srcToken,\n srcAmountWei: _destAmountWei,\n destAmountWei: _srcAmountWei,\n }\n : {\n srcToken: _srcToken,\n destToken: _destToken,\n srcAmountWei: _srcAmountWei,\n destAmountWei: _destAmountWei,\n };\n\n if (srcAmountWei === undefined || destAmountWei === undefined) return null;\n\n const srcUnits = formatUnits(BigInt(srcAmountWei), srcToken.decimals);\n const destUnits = formatUnits(BigInt(destAmountWei), destToken.decimals);\n\n const rateFormatted = calcRate(srcUnits, destUnits)?.rateFormatted;\n if (!rateFormatted) {\n // will happen when destAmount is not yet filled from the first price fetch (=\"0\")\n return null;\n }\n\n const rateText = `1 ${srcToken.symbol ?? srcToken.address} = ${rateFormatted} ${destToken.symbol ?? destToken.address}`;\n\n if (prefix) {\n return `${prefix} ${rateText}`;\n }\n\n return rateText;\n}\n"],"mappings":";;;AAIA,SAAgBG,EAAc,EAC5BC,UAAUC,GACVC,WAAWC,GACXC,cAAcC,GACdC,eAAeC,GACfC,YACAC,aACkD;CAClD,IAAI,CAACN,GAAY,OAAO;CAExB,IAAM,EAAEH,aAAUE,cAAWE,iBAAcE,qBAAkBE,IACzD;EACER,UAAUG;EACVD,WAAWD;EACXG,cAAcG;EACdD,eAAeD;EAChB,GACD;EACEL,UAAUC;EACVC,WAAWC;EACXC,cAAcC;EACdC,eAAeC;EAChB;CAEL,IAAIH,MAAiBO,KAAAA,KAAaL,MAAkBK,KAAAA,GAAW,OAAO;CAKtE,IAAMK,IAAgBlB,EAHLF,EAAYiB,OAAOT,EAAa,EAAEJ,EAASc,SAG7BF,EAFbhB,EAAYiB,OAAOP,EAAc,EAAEJ,EAAUY,SAEtBC,CAAU,EAAEC;CACrD,IAAI,CAACA,GAEH,OAAO;CAGT,IAAMC,IAAW,KAAKjB,EAASkB,UAAUlB,EAASmB,QAAO,KAAMH,EAAa,GAAId,EAAUgB,UAAUhB,EAAUiB;CAM9G,OAJIV,IACK,GAAGA,EAAM,GAAIQ,MAGfA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SwapRateWithPriceImpactRow.js","names":["Tooltip","TooltipContent","TooltipTrigger","ReactComponent","PriceImpactSVG","cn","Skeleton","PriceImpactDetail","SwapRateProps","SwapRateWithTooltip","RefreshButton","RefreshButtonProps","MarkRequired","SwapRateWithPriceImpactRow","t0","$","_c","priceImpactDetail","swapRateProps","refreshButtonProps","isHighImpact","isMediumImpact","isUnavailable","value","priceImpactValue","isLoading","classes","t1","t2","onClick","button","icon","e","stopPropagation","t3","t4","t5","t6","t7","Symbol","for","t8","t9"],"sources":["../../../../src/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.tsx"],"sourcesContent":["import {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { ReactComponent as PriceImpactSVG } from \"@/assets/price-impact.svg\";\nimport { cn } from \"@/lib/utils\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport type { PriceImpactDetail } from \"@/core/swapDetails/types\";\nimport type { SwapRateProps } from \"../SwapRate/types\";\nimport { SwapRateWithTooltip } from \"../SwapRate/SwapRateWithTooltip\";\nimport { RefreshButton } from \"../Button/RefreshButton\";\nimport type { RefreshButtonProps } from \"../Button/types\";\nimport type { MarkRequired } from \"ts-essentials\";\n\nexport const SwapRateWithPriceImpactRow = ({\n priceImpactDetail,\n swapRateProps,\n refreshButtonProps,\n}: {\n priceImpactDetail: PriceImpactDetail;\n swapRateProps: SwapRateProps;\n refreshButtonProps?: MarkRequired<\n Omit<RefreshButtonProps, \"asChild\" | \"radius\" | \"disabled\">,\n \"onClick\"\n >;\n}) => {\n const {\n isHighImpact,\n isMediumImpact,\n isUnavailable,\n value: priceImpactValue,\n isLoading,\n classes,\n } = priceImpactDetail;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <div className=\"flex items-center gap-1.5\">\n <SwapRateWithTooltip {...swapRateProps} />\n {refreshButtonProps?.onClick && (\n <Tooltip>\n <TooltipTrigger\n // DetailWithValueListExpandable is a button\n asChild // use asChild to prevent nested buttons\n >\n <div>\n <RefreshButton\n {...refreshButtonProps}\n asChild // use asChild to prevent nested buttons\n radius=\"xs\"\n // merge classes\n classes={{\n ...refreshButtonProps.classes,\n button: cn(\n \"px-1 py-1 h-5 w-5\",\n refreshButtonProps.classes?.button\n ),\n icon: cn(\"size-4\", refreshButtonProps.classes?.icon),\n }}\n onClick={(e) => {\n // prevent expand/collapse\n e.stopPropagation();\n refreshButtonProps.onClick(e);\n }}\n />\n </div>\n </TooltipTrigger>\n <TooltipContent>Refresh Price</TooltipContent>\n </Tooltip>\n )}\n </div>\n <Tooltip>\n <TooltipTrigger asChild>\n <div className=\"flex items-center gap-1\">\n {!isHighImpact && (\n <PriceImpactSVG\n className={cn(\"size-[16px]\", {\n \"text-secondary-orange-peel-1 dark:text-secondary-orange-peel-1\":\n isMediumImpact,\n \"text-secondary-radical-red-2 dark:text-secondary-radical-red-2\":\n isUnavailable,\n })}\n />\n )}\n {isLoading ? (\n <Skeleton className=\"bg-contrast-6 dark:bg-contrast-5 min-w-[42px] h-[12px]\" />\n ) : (\n <div className={cn(classes?.value, \"text-nowrap\")}>\n {priceImpactValue ?? \"-\"}\n </div>\n )}\n </div>\n </TooltipTrigger>\n <TooltipContent>Price Impact</TooltipContent>\n </Tooltip>\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"SwapRateWithPriceImpactRow.js","names":["Tooltip","TooltipContent","TooltipTrigger","ReactComponent","PriceImpactSVG","cn","Skeleton","PriceImpactDetail","SwapRateProps","SwapRateWithTooltip","RefreshButton","RefreshButtonProps","MarkRequired","SwapRateWithPriceImpactRow","t0","$","_c","priceImpactDetail","swapRateProps","refreshButtonProps","isHighImpact","isMediumImpact","isUnavailable","value","priceImpactValue","isLoading","classes","t1","t2","onClick","button","icon","e","stopPropagation","t3","t4","t5","t6","t7","Symbol","for","t8","t9"],"sources":["../../../../src/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.tsx"],"sourcesContent":["import {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { ReactComponent as PriceImpactSVG } from \"@/assets/price-impact.svg\";\nimport { cn } from \"@/lib/utils\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport type { PriceImpactDetail } from \"@/core/swapDetails/types\";\nimport type { SwapRateProps } from \"../SwapRate/types\";\nimport { SwapRateWithTooltip } from \"../SwapRate/SwapRateWithTooltip\";\nimport { RefreshButton } from \"../Button/RefreshButton\";\nimport type { RefreshButtonProps } from \"../Button/types\";\nimport type { MarkRequired } from \"ts-essentials\";\n\nexport const SwapRateWithPriceImpactRow = ({\n priceImpactDetail,\n swapRateProps,\n refreshButtonProps,\n}: {\n priceImpactDetail: PriceImpactDetail;\n swapRateProps: SwapRateProps;\n refreshButtonProps?: MarkRequired<\n Omit<RefreshButtonProps, \"asChild\" | \"radius\" | \"disabled\">,\n \"onClick\"\n >;\n}) => {\n const {\n isHighImpact,\n isMediumImpact,\n isUnavailable,\n value: priceImpactValue,\n isLoading,\n classes,\n } = priceImpactDetail;\n\n return (\n <div className=\"flex items-center justify-between gap-2\">\n <div className=\"flex items-center gap-1.5\">\n <SwapRateWithTooltip {...swapRateProps} />\n {refreshButtonProps?.onClick && (\n <Tooltip>\n <TooltipTrigger\n // DetailWithValueListExpandable is a button\n asChild // use asChild to prevent nested buttons\n >\n <div>\n <RefreshButton\n {...refreshButtonProps}\n asChild // use asChild to prevent nested buttons\n radius=\"xs\"\n // merge classes\n classes={{\n ...refreshButtonProps.classes,\n button: cn(\n \"px-1 py-1 h-5 w-5\",\n refreshButtonProps.classes?.button\n ),\n icon: cn(\"size-4\", refreshButtonProps.classes?.icon),\n }}\n onClick={(e) => {\n // prevent expand/collapse\n e.stopPropagation();\n refreshButtonProps.onClick(e);\n }}\n />\n </div>\n </TooltipTrigger>\n <TooltipContent>Refresh Price</TooltipContent>\n </Tooltip>\n )}\n </div>\n <Tooltip>\n <TooltipTrigger asChild>\n <div className=\"flex items-center gap-1\">\n {!isHighImpact && (\n <PriceImpactSVG\n className={cn(\"size-[16px]\", {\n \"text-secondary-orange-peel-1 dark:text-secondary-orange-peel-1\":\n isMediumImpact,\n \"text-secondary-radical-red-2 dark:text-secondary-radical-red-2\":\n isUnavailable,\n })}\n />\n )}\n {isLoading ? (\n <Skeleton className=\"bg-contrast-6 dark:bg-contrast-5 min-w-[42px] h-[12px]\" />\n ) : (\n <div className={cn(classes?.value, \"text-nowrap\")}>\n {priceImpactValue ?? \"-\"}\n </div>\n )}\n </div>\n </TooltipTrigger>\n <TooltipContent>Price Impact</TooltipContent>\n </Tooltip>\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","names":["cn","WithClasses","Tabs","RadixTabs","TabsList","TabsTrigger","TabsContent","TabContentItem","value","content","React","ReactNode","label","TabsProps","tabContents","TabItem","defaultValue","defaultClasses","trigger","t0","$","_c","classes","tabsClasses","t1","root","t2","listRoot","t3","list","t4","t5","t6","itemClasses","map","t7","t8","t9","value_0","itemClasses_0"],"sources":["../../../../src/components/widget/Tabs/Tabs.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport {\n Tabs as RadixTabs,\n TabsList,\n TabsTrigger,\n TabsContent,\n} from \"@radix-ui/react-tabs\";\n\ntype TabContentItem = {\n value: string;\n content: React.ReactNode;\n label: React.ReactNode;\n} & WithClasses<\"trigger\" | \"content\">;\n\ntype TabsProps<TabItem extends TabContentItem = TabContentItem> = {\n tabContents: TabItem[];\n defaultValue: TabItem[\"value\"];\n} & WithClasses<\"root\" | \"listRoot\" | \"list\" | \"trigger\" | \"content\">;\n\nconst defaultClasses = {\n trigger:\n \"data-[state=active]:bg-contrast-9 data-[state=active]:dark:bg-contrast-1 text-contrast-3 data-[state=active]:text-contrast-2 dark:text-contrast-6 data-[state=active]:dark:text-contrast-9 cursor-pointer border-t border-b border-t-contrast-6 border-b-contrast-6 dark:border-t-contrast-5 dark:border-b-contrast-5 data-[state=active]:border data-[state=active]:border-primary-azul-1! first-of-type:rounded-l-sm last-of-type:rounded-r-sm first-of-type:border-l last-of-type:border-r first-of-type:border-l-contrast-6 last-of-type:border-r-contrast-6 first-of-type:dark:border-l-contrast-5 last-of-type:dark:border-r-contrast-5\",\n};\n\nexport const Tabs = <TabItem extends TabContentItem = TabContentItem>({\n defaultValue,\n tabContents,\n classes: tabsClasses,\n}: TabsProps<TabItem>) => {\n return (\n <RadixTabs defaultValue={defaultValue} className={tabsClasses?.root}>\n <TabsList className={tabsClasses?.listRoot}>\n <div className={tabsClasses?.list}>\n {tabContents.map(({ value, label, classes: itemClasses }) => (\n <TabsTrigger\n key={value}\n value={value}\n className={cn(\n defaultClasses.trigger,\n tabsClasses?.trigger,\n itemClasses?.trigger\n )}\n >\n {label}\n </TabsTrigger>\n ))}\n </div>\n </TabsList>\n {tabContents.map(({ value, classes: itemClasses, content }) => (\n <TabsContent\n key={value}\n value={value}\n className={cn(tabsClasses?.content, itemClasses?.content)}\n >\n {content}\n </TabsContent>\n ))}\n </RadixTabs>\n );\n};\n"],"mappings":";;;;;AAoBA,IAAMiB,IAAiB,EACrBC,SACE,inBACH,EAEYhB,KAAOiB,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAkD,EAAAL,iBAAAF,gBAAAQ,SAAAC,MAAAJ,GAMhBK,IAAAD,GAAWE,MACtCC,IAAAH,GAAWI,UACdC,IAAAL,GAAWM,MAAMC;AAAA,KAAAV,EAAA,OAAAN,KAAAM,EAAA,OAAAG,GAAAL,SAAA;EAAA,IAAAa;AAa7BX,EAb6BA,EAAA,OAAAG,GAAAL,UAa9Ba,IAAAX,EAAA,MAZgBW,KAAAC,MAAA;GAAC,IAAA,EAAAxB,UAAAI,UAAAU,SAAAW,MAAAD;AAAsC,UACtD,kBAAC,GAAD;IAESxB;IACI,WAAAR,EACTiB,EAAcC,SACdK,GAAWL,SACXe,GAAWf,QACb;cAECN;IACW,EATPJ,EASO;KACfY,EAAA,KAAAG,GAAAL,SAAAE,EAAA,KAAAW,IAZAD,IAAAhB,EAAWoB,IAAKH,EAYf,EAAAX,EAAA,KAAAN,GAAAM,EAAA,KAAAG,GAAAL,SAAAE,EAAA,KAAAU;OAAAA,KAAAV,EAAA;CAAA,IAAAW;AAAA,CAAAX,EAAA,OAAAQ,KAAAR,EAAA,OAAAU,KAbJC,IAAA,kBAAA,OAAA;EAAgB,WAAAH;YACbE;EAaG,CAAA,EAAAV,EAAA,KAAAQ,GAAAR,EAAA,KAAAU,GAAAV,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAAA,IAAAY;AAAA,CAAAZ,EAAA,OAAAM,KAAAN,EAAA,OAAAW,KAfRC,IAAA,kBAAC,GAAD;EAAqB,WAAAN;YACnBK;EAeS,CAAA,EAAAX,EAAA,KAAAM,GAAAN,EAAA,KAAAW,GAAAX,EAAA,MAAAY,KAAAA,IAAAZ,EAAA;CAAA,IAAAe;AAAA,KAAAf,EAAA,QAAAN,KAAAM,EAAA,QAAAG,GAAAd,SAAA;EAAA,IAAA2B;AASThB,EATSA,EAAA,QAAAG,GAAAd,UASV2B,IAAAhB,EAAA,OARgBgB,KAAAC,MAAA;GAAC,IAAA,EAAA7B,OAAA8B,GAAAhB,SAAAiB,GAAA9B,eAAA4B;AAAwC,UACxD,kBAAC,GAAD;IAES7B,OAAAA;IACI,WAAAR,EAAGuB,GAAWd,SAAWwB,GAAWxB,QAAS;cAEvDA;IACW,EALPD,EAKO;KACfY,EAAA,MAAAG,GAAAd,SAAAW,EAAA,MAAAgB,IARAD,IAAArB,EAAWoB,IAAKE,EAQf,EAAAhB,EAAA,MAAAN,GAAAM,EAAA,MAAAG,GAAAd,SAAAW,EAAA,MAAAe;OAAAA,KAAAf,EAAA;CAAA,IAAAgB;AACQ,QADRhB,EAAA,QAAAJ,KAAAI,EAAA,QAAAI,KAAAJ,EAAA,QAAAY,KAAAZ,EAAA,QAAAe,KA1BJC,IAAA,kBAAC,GAAD;EAAyBpB;EAAyB,WAAAQ;YAAlD,CACEQ,GAiBCG,EASS;KAAAf,EAAA,MAAAJ,GAAAI,EAAA,MAAAI,GAAAJ,EAAA,MAAAY,GAAAZ,EAAA,MAAAe,GAAAf,EAAA,MAAAgB,KAAAA,IAAAhB,EAAA,KA3BZgB"}
1
+ {"version":3,"file":"Tabs.js","names":["cn","WithClasses","Tabs","RadixTabs","TabsList","TabsTrigger","TabsContent","TabContentItem","value","content","React","ReactNode","label","TabsProps","tabContents","TabItem","defaultValue","defaultClasses","trigger","t0","$","_c","classes","tabsClasses","t1","root","t2","listRoot","t3","list","t4","t5","t6","itemClasses","map","t7","t8","t9","value_0","itemClasses_0"],"sources":["../../../../src/components/widget/Tabs/Tabs.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport {\n Tabs as RadixTabs,\n TabsList,\n TabsTrigger,\n TabsContent,\n} from \"@radix-ui/react-tabs\";\n\ntype TabContentItem = {\n value: string;\n content: React.ReactNode;\n label: React.ReactNode;\n} & WithClasses<\"trigger\" | \"content\">;\n\ntype TabsProps<TabItem extends TabContentItem = TabContentItem> = {\n tabContents: TabItem[];\n defaultValue: TabItem[\"value\"];\n} & WithClasses<\"root\" | \"listRoot\" | \"list\" | \"trigger\" | \"content\">;\n\nconst defaultClasses = {\n trigger:\n \"data-[state=active]:bg-contrast-9 data-[state=active]:dark:bg-contrast-1 text-contrast-3 data-[state=active]:text-contrast-2 dark:text-contrast-6 data-[state=active]:dark:text-contrast-9 cursor-pointer border-t border-b border-t-contrast-6 border-b-contrast-6 dark:border-t-contrast-5 dark:border-b-contrast-5 data-[state=active]:border data-[state=active]:border-primary-azul-1! first-of-type:rounded-l-sm last-of-type:rounded-r-sm first-of-type:border-l last-of-type:border-r first-of-type:border-l-contrast-6 last-of-type:border-r-contrast-6 first-of-type:dark:border-l-contrast-5 last-of-type:dark:border-r-contrast-5\",\n};\n\nexport const Tabs = <TabItem extends TabContentItem = TabContentItem>({\n defaultValue,\n tabContents,\n classes: tabsClasses,\n}: TabsProps<TabItem>) => {\n return (\n <RadixTabs defaultValue={defaultValue} className={tabsClasses?.root}>\n <TabsList className={tabsClasses?.listRoot}>\n <div className={tabsClasses?.list}>\n {tabContents.map(({ value, label, classes: itemClasses }) => (\n <TabsTrigger\n key={value}\n value={value}\n className={cn(\n defaultClasses.trigger,\n tabsClasses?.trigger,\n itemClasses?.trigger\n )}\n >\n {label}\n </TabsTrigger>\n ))}\n </div>\n </TabsList>\n {tabContents.map(({ value, classes: itemClasses, content }) => (\n <TabsContent\n key={value}\n value={value}\n className={cn(tabsClasses?.content, itemClasses?.content)}\n >\n {content}\n </TabsContent>\n ))}\n </RadixTabs>\n );\n};\n"],"mappings":";;;;;AAoBA,IAAMiB,IAAiB,EACrBC,SACE,inBACH,EAEYhB,KAAOiB,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAkD,EAAAL,iBAAAF,gBAAAQ,SAAAC,MAAAJ,GAMhBK,IAAAD,GAAWE,MACtCC,IAAAH,GAAWI,UACdC,IAAAL,GAAWM,MAAMC;CAAA,IAAAV,EAAA,OAAAN,KAAAM,EAAA,OAAAG,GAAAL,SAAA;EAAA,IAAAa;EAa7BX,AAb6BA,EAAA,OAAAG,GAAAL,UAa9Ba,IAAAX,EAAA,MAZgBW,KAAAC,MAAA;GAAC,IAAA,EAAAxB,UAAAI,UAAAU,SAAAW,MAAAD;GAAsC,OACtD,kBAAC,GAAD;IAESxB;IACI,WAAAR,EACTiB,EAAcC,SACdK,GAAWL,SACXe,GAAWf,QACb;cAECN;IACW,EATPJ,EASO;KACfY,EAAA,KAAAG,GAAAL,SAAAE,EAAA,KAAAW,IAZAD,IAAAhB,EAAWoB,IAAKH,EAYf,EAAAX,EAAA,KAAAN,GAAAM,EAAA,KAAAG,GAAAL,SAAAE,EAAA,KAAAU;QAAAA,IAAAV,EAAA;CAAA,IAAAW;CAAA,AAAAX,EAAA,OAAAQ,KAAAR,EAAA,OAAAU,KAbJC,IAAA,kBAAA,OAAA;EAAgB,WAAAH;YACbE;EAaG,CAAA,EAAAV,EAAA,KAAAQ,GAAAR,EAAA,KAAAU,GAAAV,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAAA,IAAAY;CAAA,AAAAZ,EAAA,OAAAM,KAAAN,EAAA,OAAAW,KAfRC,IAAA,kBAAC,GAAD;EAAqB,WAAAN;YACnBK;EAeS,CAAA,EAAAX,EAAA,KAAAM,GAAAN,EAAA,KAAAW,GAAAX,EAAA,MAAAY,KAAAA,IAAAZ,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAN,KAAAM,EAAA,QAAAG,GAAAd,SAAA;EAAA,IAAA2B;EASThB,AATSA,EAAA,QAAAG,GAAAd,UASV2B,IAAAhB,EAAA,OARgBgB,KAAAC,MAAA;GAAC,IAAA,EAAA7B,OAAA8B,GAAAhB,SAAAiB,GAAA9B,eAAA4B;GAAwC,OACxD,kBAAC,GAAD;IAES7B,OAAAA;IACI,WAAAR,EAAGuB,GAAWd,SAAWwB,GAAWxB,QAAS;cAEvDA;IACW,EALPD,EAKO;KACfY,EAAA,MAAAG,GAAAd,SAAAW,EAAA,MAAAgB,IARAD,IAAArB,EAAWoB,IAAKE,EAQf,EAAAhB,EAAA,MAAAN,GAAAM,EAAA,MAAAG,GAAAd,SAAAW,EAAA,MAAAe;QAAAA,IAAAf,EAAA;CAAA,IAAAgB;CACQ,OADRhB,EAAA,QAAAJ,KAAAI,EAAA,QAAAI,KAAAJ,EAAA,QAAAY,KAAAZ,EAAA,QAAAe,KA1BJC,IAAA,kBAAC,GAAD;EAAyBpB;EAAyB,WAAAQ;YAAlD,CACEQ,GAiBCG,EASS;KAAAf,EAAA,MAAAJ,GAAAI,EAAA,MAAAI,GAAAJ,EAAA,MAAAY,GAAAZ,EAAA,MAAAe,GAAAf,EAAA,MAAAgB,KAAAA,IAAAhB,EAAA,KA3BZgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomToast.js","names":["Line","X","toast","cn","ReactComponent","Spinner","CircleCheckSVG","CircleExclamationSVG","ProgressBar","TOASTER_LIFETIME","CustomToast","t0","$","_c","toastId","variant","label","detailsLink","onClose","_onClose","isLoading","isSuccess","isError","isSuccessOrError","t1","icon","t2","dismiss","t3","t4","t5","t6","t7","t8","t9","t10","t11","t12","t13","t14","t15","t16","className","onTransitionEnd","t17"],"sources":["../../../../src/components/widget/Toasts/CustomToast.tsx"],"sourcesContent":["import { Line } from \"../Line/Line\";\nimport { X } from \"lucide-react\";\nimport { toast } from \"sonner\";\nimport { cn } from \"@/lib/utils\";\n\nimport { ReactComponent as Spinner } from \"@/assets/spinner.svg\";\nimport { ReactComponent as CircleCheckSVG } from \"@/assets/circle-check.svg\";\nimport { ReactComponent as CircleExclamationSVG } from \"@/assets/circle-exclamation.svg\";\nimport { ProgressBar } from \"@/components/ui/progress\";\nimport { TOASTER_LIFETIME } from \"@/core/constants\";\n\n// @TODO toasts in loading state has to be stored together to show a single pending toast for either all transactions or orders\n\nexport const CustomToast = ({\n toastId,\n variant,\n label,\n detailsLink,\n onClose: _onClose,\n}: {\n toastId: string; // should pass the id, otherwise it won't be closable\n variant: \"error\" | \"success\" | \"loading\"; // to match the toast.promise flow\n label: string;\n detailsLink?: string;\n onClose?: () => void;\n}) => {\n const isLoading = variant === \"loading\";\n const isSuccess = variant === \"success\";\n const isError = variant === \"error\";\n\n // mostly the same styles but different bg-color\n const isSuccessOrError = isSuccess || isError;\n\n const icon = isLoading ? (\n <Spinner\n width={16}\n height={16}\n className=\"animate-spin direction-reverse\"\n />\n ) : isSuccess ? (\n <CircleCheckSVG />\n ) : (\n <CircleExclamationSVG />\n );\n\n const onClose = () => {\n toast.dismiss(toastId);\n _onClose?.();\n };\n\n return (\n // extra flex container to keep it centered and do not stretch the content,\n // because sonner stretches the toast to full width in mobile\n <div className=\"flex justify-center\">\n <div\n className={cn(\"text-xs text-nowrap rounded-xs flex flex-col\", {\n \"text-contrast-3 dark:text-contrast-7 bg-contrast-7 dark:bg-contrast-2\":\n isLoading,\n \"text-contrast-9 bg-secondary-shamrock-green-1\": isSuccess,\n \"text-contrast-9 bg-secondary-radical-red-1\": isError,\n })}\n >\n <div className=\"flex items-center\">\n <div\n className={cn(\"py-2 px-4 flex items-center\", {\n \"py-3\": isLoading, // extra padding because no ProgressBar in loading state\n })}\n >\n <div className=\"mr-1.5\">{icon}</div>\n <div className=\"font-medium mr-4\">{label}</div>\n {detailsLink && (\n <div\n className={cn(\"cursor-pointer\", {\n \"text-contrast-7\": isSuccessOrError,\n })}\n >\n <a href={detailsLink} target=\"_blank\" rel=\"noopener noreferrer\">\n Details\n </a>\n </div>\n )}\n </div>\n <Line\n vertical\n className={cn({\n \"bg-contrast-6 dark:bg-contrast-3\": isLoading,\n \"bg-[#0000000D] dark:bg-[#0000000D]\": isSuccessOrError,\n })}\n />\n <div\n className={cn(\n \"rounded-[50%] w-[18px] h-[18px] flex items-center justify-center mx-4 cursor-pointer\",\n {\n \"bg-[#B7BECB] dark:bg-contrast-1\": isLoading,\n \"bg-contrast-9\": isSuccessOrError,\n }\n )}\n onClick={onClose}\n >\n <X\n size={12}\n className={cn({\n \"dark:text-contrast-5\": isLoading,\n \"text-contrast-5\": isSuccessOrError,\n })}\n />\n </div>\n </div>\n {isSuccessOrError && (\n <ProgressBar\n duration={TOASTER_LIFETIME}\n rootProps={{\n className:\n \"h-[4px] bg-black/10 rounded-bl-xs rounded-br-xs mx-[0.5px]\",\n }}\n indicatorProps={{\n className: \"bg-white/60\",\n onTransitionEnd: onClose,\n }}\n />\n )}\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"CustomToast.js","names":["Line","X","toast","cn","ReactComponent","Spinner","CircleCheckSVG","CircleExclamationSVG","ProgressBar","TOASTER_LIFETIME","CustomToast","t0","$","_c","toastId","variant","label","detailsLink","onClose","_onClose","isLoading","isSuccess","isError","isSuccessOrError","t1","icon","t2","dismiss","t3","t4","t5","t6","t7","t8","t9","t10","t11","t12","t13","t14","t15","t16","className","onTransitionEnd","t17"],"sources":["../../../../src/components/widget/Toasts/CustomToast.tsx"],"sourcesContent":["import { Line } from \"../Line/Line\";\nimport { X } from \"lucide-react\";\nimport { toast } from \"sonner\";\nimport { cn } from \"@/lib/utils\";\n\nimport { ReactComponent as Spinner } from \"@/assets/spinner.svg\";\nimport { ReactComponent as CircleCheckSVG } from \"@/assets/circle-check.svg\";\nimport { ReactComponent as CircleExclamationSVG } from \"@/assets/circle-exclamation.svg\";\nimport { ProgressBar } from \"@/components/ui/progress\";\nimport { TOASTER_LIFETIME } from \"@/core/constants\";\n\n// @TODO toasts in loading state has to be stored together to show a single pending toast for either all transactions or orders\n\nexport const CustomToast = ({\n toastId,\n variant,\n label,\n detailsLink,\n onClose: _onClose,\n}: {\n toastId: string; // should pass the id, otherwise it won't be closable\n variant: \"error\" | \"success\" | \"loading\"; // to match the toast.promise flow\n label: string;\n detailsLink?: string;\n onClose?: () => void;\n}) => {\n const isLoading = variant === \"loading\";\n const isSuccess = variant === \"success\";\n const isError = variant === \"error\";\n\n // mostly the same styles but different bg-color\n const isSuccessOrError = isSuccess || isError;\n\n const icon = isLoading ? (\n <Spinner\n width={16}\n height={16}\n className=\"animate-spin direction-reverse\"\n />\n ) : isSuccess ? (\n <CircleCheckSVG />\n ) : (\n <CircleExclamationSVG />\n );\n\n const onClose = () => {\n toast.dismiss(toastId);\n _onClose?.();\n };\n\n return (\n // extra flex container to keep it centered and do not stretch the content,\n // because sonner stretches the toast to full width in mobile\n <div className=\"flex justify-center\">\n <div\n className={cn(\"text-xs text-nowrap rounded-xs flex flex-col\", {\n \"text-contrast-3 dark:text-contrast-7 bg-contrast-7 dark:bg-contrast-2\":\n isLoading,\n \"text-contrast-9 bg-secondary-shamrock-green-1\": isSuccess,\n \"text-contrast-9 bg-secondary-radical-red-1\": isError,\n })}\n >\n <div className=\"flex items-center\">\n <div\n className={cn(\"py-2 px-4 flex items-center\", {\n \"py-3\": isLoading, // extra padding because no ProgressBar in loading state\n })}\n >\n <div className=\"mr-1.5\">{icon}</div>\n <div className=\"font-medium mr-4\">{label}</div>\n {detailsLink && (\n <div\n className={cn(\"cursor-pointer\", {\n \"text-contrast-7\": isSuccessOrError,\n })}\n >\n <a href={detailsLink} target=\"_blank\" rel=\"noopener noreferrer\">\n Details\n </a>\n </div>\n )}\n </div>\n <Line\n vertical\n className={cn({\n \"bg-contrast-6 dark:bg-contrast-3\": isLoading,\n \"bg-[#0000000D] dark:bg-[#0000000D]\": isSuccessOrError,\n })}\n />\n <div\n className={cn(\n \"rounded-[50%] w-[18px] h-[18px] flex items-center justify-center mx-4 cursor-pointer\",\n {\n \"bg-[#B7BECB] dark:bg-contrast-1\": isLoading,\n \"bg-contrast-9\": isSuccessOrError,\n }\n )}\n onClick={onClose}\n >\n <X\n size={12}\n className={cn({\n \"dark:text-contrast-5\": isLoading,\n \"text-contrast-5\": isSuccessOrError,\n })}\n />\n </div>\n </div>\n {isSuccessOrError && (\n <ProgressBar\n duration={TOASTER_LIFETIME}\n rootProps={{\n className:\n \"h-[4px] bg-black/10 rounded-bl-xs rounded-br-xs mx-[0.5px]\",\n }}\n indicatorProps={{\n className: \"bg-white/60\",\n onTransitionEnd: onClose,\n }}\n />\n )}\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenBadge.js","names":["NetworkIconSquare","cn","TokenBadgeProps","LockIcon","vlrURL","TOKEN_IMG_PLACEHOLDER","isVLR","Tooltip","TooltipContent","TooltipTrigger","formatFiatPrice","JSX","TokenLink","TokenBadge","React","FC","t0","$","_c","img","address","chainId","amount","amountUSD","symbol","imageLess","classes","lockIcon","showNetworkIcon","explorerLink","amountPosition","t1","undefined","isVLRToken","imgSrc","amountEl","t2","t3","tokenAmount","t4","t5","t6","t7","t8","logo","networkIcon","networkIconContainer","_temp","imgEl","amountAndImg","root","e","currentTarget","src"],"sources":["../../../../src/components/widget/TokenBadge/TokenBadge.tsx"],"sourcesContent":["import { NetworkIconSquare } from \"@/components/widget/NetworkIcon/NetworkIconSquare\";\nimport { cn } from \"@/lib/utils\";\nimport type { TokenBadgeProps } from \"./types\";\nimport { LockIcon } from \"lucide-react\";\nimport vlrURL from \"@/assets/vlr.svg?url\";\n\nimport TOKEN_IMG_PLACEHOLDER from \"./assets/placeholder.png\";\nimport { isVLR } from \"@/tokens/utils/brand\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { JSX } from \"react\";\nimport { TokenLink } from \"./TokenLink\";\n\nexport const TokenBadge: React.FC<TokenBadgeProps> = ({\n img,\n address,\n chainId,\n amount,\n amountUSD,\n symbol,\n imageLess,\n classes,\n lockIcon,\n showNetworkIcon,\n explorerLink,\n amountPosition = \"left\",\n}) => {\n const isVLRToken = isVLR({ address }, chainId);\n const imgSrc = isVLRToken ? vlrURL : img;\n\n let amountEl: JSX.Element | undefined;\n if (amount !== undefined) {\n const tokenAmount = <div className={classes?.amount}>{amount}</div>;\n // wrap in tooltip if amountUSD is provided\n if (typeof amountUSD === \"string\") {\n amountEl = (\n <Tooltip>\n <TooltipTrigger>{tokenAmount}</TooltipTrigger>\n <TooltipContent>{formatFiatPrice(+amountUSD)}</TooltipContent>\n </Tooltip>\n );\n } else {\n amountEl = tokenAmount;\n }\n }\n\n const imgEl = !imageLess && (\n <div className={cn(\"flex relative\")}>\n <img\n className={cn(\"size-[20px] overflow-hidden max-w-fit\", classes?.logo)}\n // img can sometimes ignore height/width because of preflight.css reset\n height={20}\n width={20}\n src={imgSrc ?? TOKEN_IMG_PLACEHOLDER}\n title={address}\n onError={(e) => {\n e.currentTarget.src = TOKEN_IMG_PLACEHOLDER;\n }}\n alt={address}\n />\n {showNetworkIcon && (\n <div\n className={cn(\n \"flex absolute bottom-[-1px] right-[-1px]\",\n classes?.networkIconContainer\n )}\n >\n <NetworkIconSquare\n networkId={chainId}\n className={cn(\"size-[12px]\", classes?.networkIcon)}\n withBorder\n />\n </div>\n )}\n </div>\n );\n\n const amountAndImg =\n amountPosition === \"right\" ? (\n <>\n {imgEl}\n {amountEl}\n </>\n ) : (\n <>\n {amountEl}\n {imgEl}\n </>\n );\n\n return (\n <div\n className={cn(\"flex items-center gap-2 font-geist-mono\", classes?.root)}\n >\n {amountAndImg}\n {symbol && (\n <div className={classes?.symbol}>\n {explorerLink ? (\n <TokenLink address={address} symbol={symbol} network={chainId} />\n ) : (\n symbol\n )}\n </div>\n )}\n {lockIcon && <LockIcon className=\"text-secondary-orange-peel-1\" />}\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"TokenBadge.js","names":["NetworkIconSquare","cn","TokenBadgeProps","LockIcon","vlrURL","TOKEN_IMG_PLACEHOLDER","isVLR","Tooltip","TooltipContent","TooltipTrigger","formatFiatPrice","JSX","TokenLink","TokenBadge","React","FC","t0","$","_c","img","address","chainId","amount","amountUSD","symbol","imageLess","classes","lockIcon","showNetworkIcon","explorerLink","amountPosition","t1","undefined","isVLRToken","imgSrc","amountEl","t2","t3","tokenAmount","t4","t5","t6","t7","t8","logo","networkIcon","networkIconContainer","_temp","imgEl","amountAndImg","root","e","currentTarget","src"],"sources":["../../../../src/components/widget/TokenBadge/TokenBadge.tsx"],"sourcesContent":["import { NetworkIconSquare } from \"@/components/widget/NetworkIcon/NetworkIconSquare\";\nimport { cn } from \"@/lib/utils\";\nimport type { TokenBadgeProps } from \"./types\";\nimport { LockIcon } from \"lucide-react\";\nimport vlrURL from \"@/assets/vlr.svg?url\";\n\nimport TOKEN_IMG_PLACEHOLDER from \"./assets/placeholder.png\";\nimport { isVLR } from \"@/tokens/utils/brand\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from \"@/components/ui/tooltip\";\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { JSX } from \"react\";\nimport { TokenLink } from \"./TokenLink\";\n\nexport const TokenBadge: React.FC<TokenBadgeProps> = ({\n img,\n address,\n chainId,\n amount,\n amountUSD,\n symbol,\n imageLess,\n classes,\n lockIcon,\n showNetworkIcon,\n explorerLink,\n amountPosition = \"left\",\n}) => {\n const isVLRToken = isVLR({ address }, chainId);\n const imgSrc = isVLRToken ? vlrURL : img;\n\n let amountEl: JSX.Element | undefined;\n if (amount !== undefined) {\n const tokenAmount = <div className={classes?.amount}>{amount}</div>;\n // wrap in tooltip if amountUSD is provided\n if (typeof amountUSD === \"string\") {\n amountEl = (\n <Tooltip>\n <TooltipTrigger>{tokenAmount}</TooltipTrigger>\n <TooltipContent>{formatFiatPrice(+amountUSD)}</TooltipContent>\n </Tooltip>\n );\n } else {\n amountEl = tokenAmount;\n }\n }\n\n const imgEl = !imageLess && (\n <div className={cn(\"flex relative\")}>\n <img\n className={cn(\"size-[20px] overflow-hidden max-w-fit\", classes?.logo)}\n // img can sometimes ignore height/width because of preflight.css reset\n height={20}\n width={20}\n src={imgSrc ?? TOKEN_IMG_PLACEHOLDER}\n title={address}\n onError={(e) => {\n e.currentTarget.src = TOKEN_IMG_PLACEHOLDER;\n }}\n alt={address}\n />\n {showNetworkIcon && (\n <div\n className={cn(\n \"flex absolute bottom-[-1px] right-[-1px]\",\n classes?.networkIconContainer\n )}\n >\n <NetworkIconSquare\n networkId={chainId}\n className={cn(\"size-[12px]\", classes?.networkIcon)}\n withBorder\n />\n </div>\n )}\n </div>\n );\n\n const amountAndImg =\n amountPosition === \"right\" ? (\n <>\n {imgEl}\n {amountEl}\n </>\n ) : (\n <>\n {amountEl}\n {imgEl}\n </>\n );\n\n return (\n <div\n className={cn(\"flex items-center gap-2 font-geist-mono\", classes?.root)}\n >\n {amountAndImg}\n {symbol && (\n <div className={classes?.symbol}>\n {explorerLink ? (\n <TokenLink address={address} symbol={symbol} network={chainId} />\n ) : (\n symbol\n )}\n </div>\n )}\n {lockIcon && <LockIcon className=\"text-secondary-orange-peel-1\" />}\n </div>\n );\n};\n"],"mappings":"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"}