@velora-dex/widget 0.2.5-dev.1 → 0.2.5-dev.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/dropdown-menu.d.ts +2 -3
  3. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  4. package/dist/components/ui/dropdown-menu.js +22 -44
  5. package/dist/components/ui/dropdown-menu.js.map +1 -1
  6. package/dist/components/ui/tooltip.d.ts +2 -4
  7. package/dist/components/ui/tooltip.d.ts.map +1 -1
  8. package/dist/components/ui/tooltip.js +27 -44
  9. package/dist/components/ui/tooltip.js.map +1 -1
  10. package/dist/components/web3/providers.d.ts.map +1 -1
  11. package/dist/components/web3/providers.js +2 -1
  12. package/dist/components/web3/providers.js.map +1 -1
  13. package/dist/components/widget/AppHeader/Activities/ActivityItems.js +1 -1
  14. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  15. package/dist/components/widget/AppHeader/AppHeader.js +1 -1
  16. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  17. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -1
  18. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  19. package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
  20. package/dist/components/widget/Dialog/state/dialogAtom.js +1 -2
  21. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  22. package/dist/components/widget/Drawer/Overlay.js +1 -1
  23. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  24. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  25. package/dist/components/widget/Drawer/state/useDrawerControls.js +1 -2
  26. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  27. package/dist/components/widget/ImportToken/ImportToken.js +1 -1
  28. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  29. package/dist/components/widget/OrderExpiryInput/index.js +1 -1
  30. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  31. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
  32. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +1 -2
  33. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  34. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
  35. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  36. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +1 -1
  37. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  38. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +3 -2
  39. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  40. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +6 -2
  41. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  42. package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts +5 -0
  43. package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts.map +1 -0
  44. package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js +6 -0
  45. package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js.map +1 -0
  46. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +1 -1
  47. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  48. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -1
  49. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +1 -2
  50. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
  51. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +1 -1
  52. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  53. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +1 -1
  54. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  55. package/dist/configurator/Configurator.d.ts.map +1 -1
  56. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  57. package/dist/configurator/components/common/ButtonGroup.d.ts +12 -0
  58. package/dist/configurator/components/common/ButtonGroup.d.ts.map +1 -0
  59. package/dist/configurator/components/common/DetailWithTooltip.d.ts +0 -1
  60. package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -1
  61. package/dist/core/DevTools.d.ts.map +1 -1
  62. package/dist/core/LimitOrderButton.js +1 -1
  63. package/dist/core/LimitOrderButton.js.map +1 -1
  64. package/dist/core/OtcOrderButton.js +1 -1
  65. package/dist/core/OtcOrderButton.js.map +1 -1
  66. package/dist/core/index.js +1 -1
  67. package/dist/core/index.js.map +1 -1
  68. package/dist/core/inputs/hooks/useTokenFromInputProps.js +1 -1
  69. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  70. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +1 -1
  71. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  72. package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -1
  73. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  74. package/dist/core/inputs/state/common.d.ts +13 -3
  75. package/dist/core/inputs/state/common.d.ts.map +1 -1
  76. package/dist/core/inputs/state/common.js +37 -8
  77. package/dist/core/inputs/state/common.js.map +1 -1
  78. package/dist/core/inputs/state/selectedTokenActionsAtom.js +1 -1
  79. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  80. package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
  81. package/dist/core/inputs/state/selectedTokenAtom.js +1 -2
  82. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  83. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
  84. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  85. package/dist/core/inputs/state/setTokenByAddressAtom.js +78 -20
  86. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  87. package/dist/core/inputs/state/store.d.ts +2 -0
  88. package/dist/core/inputs/state/store.d.ts.map +1 -0
  89. package/dist/core/inputs/state/store.js +6 -0
  90. package/dist/core/inputs/state/store.js.map +1 -0
  91. package/dist/core/inputs/state/types.d.ts +11 -1
  92. package/dist/core/inputs/state/types.d.ts.map +1 -1
  93. package/dist/core/limit/state/currentLimitInputAtom.d.ts +2 -2
  94. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  95. package/dist/core/limit/state/deadlineAtom.js +1 -2
  96. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  97. package/dist/core/limit/state/limitInputActionsAtom.d.ts +3 -0
  98. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
  99. package/dist/core/limit/state/limitInputActionsAtom.js +7 -3
  100. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  101. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  102. package/dist/core/limit/state/selectedTokenAtom.js +2 -2
  103. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  104. package/dist/core/limit/state/utils.d.ts +7 -0
  105. package/dist/core/limit/state/utils.d.ts.map +1 -1
  106. package/dist/core/limit/state/utils.js +31 -2
  107. package/dist/core/limit/state/utils.js.map +1 -1
  108. package/dist/core/limit/useLimitDetailsListProps.js +1 -1
  109. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  110. package/dist/core/limit/useLimitPriceDifference.js +1 -1
  111. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  112. package/dist/core/limit/useLimitPriceInputProps.js +1 -1
  113. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  114. package/dist/core/limit/useLimitRate.js +1 -1
  115. package/dist/core/limit/useLimitRate.js.map +1 -1
  116. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  117. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  118. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  119. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  120. package/dist/core/limit/useLimitTokenToInputProps.js +1 -1
  121. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  122. package/dist/core/logger.js +1 -1
  123. package/dist/core/logger.js.map +1 -1
  124. package/dist/core/otc/state/currentOtcInputAtom.d.ts +2 -2
  125. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  126. package/dist/core/otc/state/deadlineAtom.js +1 -2
  127. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  128. package/dist/core/otc/state/otcInputActionsAtom.d.ts +3 -0
  129. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
  130. package/dist/core/otc/state/otcInputActionsAtom.js +7 -3
  131. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  132. package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -1
  133. package/dist/core/otc/state/receiverAddressAtom.js +1 -2
  134. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  135. package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -1
  136. package/dist/core/otc/state/selectedTokenAtom.js +2 -2
  137. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  138. package/dist/core/otc/useOtcDetailsListProps.js +1 -1
  139. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  140. package/dist/core/otc/useOtcPriceDifference.js +1 -1
  141. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  142. package/dist/core/otc/useOtcPriceInputProps.js +1 -1
  143. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  144. package/dist/core/otc/useOtcTokenFromInputProps.js +1 -1
  145. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  146. package/dist/core/otc/useOtcTokenSwitcherProps.js +1 -1
  147. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  148. package/dist/core/otc/useOtcTokenToInputProps.js +1 -1
  149. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  150. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  151. package/dist/core/state/chainToAtom.js +1 -2
  152. package/dist/core/state/chainToAtom.js.map +1 -1
  153. package/dist/core/state/configAtom.d.ts.map +1 -1
  154. package/dist/core/state/configAtom.js +1 -2
  155. package/dist/core/state/configAtom.js.map +1 -1
  156. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  157. package/dist/core/state/configEffectAtom.js +1 -2
  158. package/dist/core/state/configEffectAtom.js.map +1 -1
  159. package/dist/core/state/containerAtom.d.ts.map +1 -1
  160. package/dist/core/state/containerAtom.js +1 -2
  161. package/dist/core/state/containerAtom.js.map +1 -1
  162. package/dist/core/state/currentSwapInputAtom.d.ts +1 -1
  163. package/dist/core/state/currentSwapInputAtom.d.ts.map +1 -1
  164. package/dist/core/state/currentSwapInputAtom.js +5 -1
  165. package/dist/core/state/currentSwapInputAtom.js.map +1 -1
  166. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  167. package/dist/core/state/enabledChainsAtom.js +1 -2
  168. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  169. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  170. package/dist/core/state/externalProviderAtom.js +1 -2
  171. package/dist/core/state/externalProviderAtom.js.map +1 -1
  172. package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
  173. package/dist/core/state/isCrosschainAtom.js +1 -2
  174. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  175. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  176. package/dist/core/state/tradeModeAtom.js +1 -2
  177. package/dist/core/state/tradeModeAtom.js.map +1 -1
  178. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  179. package/dist/core/state/widgetEventsAtom.js +1 -2
  180. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  181. package/dist/core/swapDetails/useSwapDetailsListProps.js +1 -1
  182. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  183. package/dist/events/effects/price.js +1 -1
  184. package/dist/events/effects/price.js.map +1 -1
  185. package/dist/events/effects/swapMode.js +1 -1
  186. package/dist/events/effects/swapMode.js.map +1 -1
  187. package/dist/events/hooks/useActivateEffects.js +1 -1
  188. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  189. package/dist/hooks/otc/mutations/useFillOrder.js +4 -0
  190. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  191. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -1
  192. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js +1 -2
  193. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  194. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
  195. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  196. package/dist/hooks/swap/prices/usePricesParams.js +1 -6
  197. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  198. package/dist/hooks/swap/prices/useSwapPrices.js +1 -1
  199. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  200. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
  201. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  202. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  203. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  204. package/dist/hooks/tokens/useAllTokensWithFilter.js +1 -1
  205. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  206. package/dist/hooks/useEIP1559Enabled.js +1 -1
  207. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  208. package/dist/hooks/useGlobalDeltaEnabled.js +1 -1
  209. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  210. package/dist/hooks/useSlippage.js +1 -1
  211. package/dist/hooks/useSlippage.js.map +1 -1
  212. package/dist/styles.css +0 -4
  213. package/dist/tokens/hooks.js +1 -1
  214. package/dist/tokens/hooks.js.map +1 -1
  215. package/dist/tokens/lists/state/effects.js +2 -1
  216. package/dist/tokens/lists/state/effects.js.map +1 -1
  217. package/dist/tokens/queries.js +1 -1
  218. package/dist/tokens/queries.js.map +1 -1
  219. package/dist/transactions/state/hooks/useActivateEffects.js +1 -1
  220. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  221. package/dist/transactions/state/hooks/useTransactions.js +1 -1
  222. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  223. package/dist/transactions/state/transactionsActionAtom.js +1 -1
  224. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  225. package/package.json +3 -4
  226. package/dist/core/store.d.ts +0 -29
  227. package/dist/core/store.d.ts.map +0 -1
  228. package/dist/core/store.js +0 -15
  229. package/dist/core/store.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useOtcTokenFromInputProps.js","sources":["../../../src/core/otc/useOtcTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { setOtcPayAmountAtom } from \"./state/otcInputActionsAtom\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type {\n TokenInputAmountProps,\n TokenInputExtraProps,\n} from \"../inputs/hooks/types\";\nimport { useLogger } from \"../logger\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n} from \"./state/otcInputAmountAtom\";\nimport { useChainId } from \"wagmi\";\nimport { currentOtcInputAtom } from \"./state/currentOtcInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useIsInsufficientBalanceToFillOtcOrder } from \"@/hooks/tokens/balances/useIsLimitOrderInsufficientBalance\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport Big from \"big.js\";\nimport { WRAP_ETH_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport { useUnsupportedOtcChain } from \"./useOtcNotSupported\";\nimport { selectOtcTokenFromAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenFrom } from \"./state/selectedTokenAtom\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { getInsufficientBalanceToFillOrderMessage } from \"@/lib/utils/delta\";\nimport { useOTCOrderRequiredAllowance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { useEnabledSrcChainsWithOTC } from \"../state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst useOtcTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"OTC::TokenFrom::AmountProps\");\n const tokenFrom = useOtcTokenFrom();\n\n const amountValue = useAtomValue(otcPayInputAmountAtom);\n const setAmountValue = useSetAtom(setOtcPayAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = \"AugustusRFQ\";\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useOTCOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"AugustusRFQ\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: \"AugustusRFQ\",\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillUnit,\n } = useIsInsufficientBalanceToFillOtcOrder();\n\n const requiredBalanceToFillFormatted =\n isInsufficientBalanceToFill && requiredBalanceToFillUnit\n ? formatTokenAmount(requiredBalanceToFillUnit)\n : undefined;\n\n return {\n tokenBadgePropsOverride: {\n lockIcon:\n !isInsufficientBalance &&\n !isInsufficientBalanceToFill &&\n tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance || isInsufficientBalanceToFill,\n messageOverride: requiredBalanceToFillFormatted\n ? getInsufficientBalanceToFillOrderMessage(\n tokenFrom,\n requiredBalanceToFillFormatted\n )\n : undefined,\n },\n };\n};\n\nconst useMaxButtonProps = ({ tokenFrom }: { tokenFrom: Token }) => {\n const setCurrentOtcInput = useSetAtom(currentOtcInputAtom);\n const setPayInputAmount = useSetAtom(otcPayInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance;\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentOtcInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n // if ETH in OTC form then it's wrapping\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n if (gasPriceMultiplier) {\n const gasFeeETH = Big(WRAP_ETH_GAS_LIMIT_INACCURATE)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useOtcTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n const enabledChainsWithOTC = useEnabledSrcChainsWithOTC();\n\n const setCurrentInput = useSetAtom(currentOtcInputAtom);\n\n return {\n networkSwitcherProps: {\n classes: {\n // to be able to switch network if on unsupported chain\n root: \"pointer-events-auto\",\n },\n networks: enabledChainsWithOTC,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledChainsWithOTC.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n };\n};\n\nconst disabledClasses = {\n root: \"pointer-events-none\",\n};\n\nexport const useOtcInputClasses = (): TokenInputProps[\"classes\"] => {\n const unsupportedChain = useUnsupportedOtcChain();\n if (unsupportedChain) return disabledClasses;\n};\n\nexport const useOtcTokenFromInputProps = (): TokenInputProps => {\n const amountProps = useOtcTokenFromAmountProps();\n const extraProps = useExtraProps();\n\n const payInputAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei: payInputAmountWei,\n tokenFrom: amountProps.token,\n });\n\n const maxButtonProps = useMaxButtonProps({ tokenFrom: amountProps.token });\n\n const setTokenFrom = useSetAtom(selectOtcTokenFromAtom);\n\n const classes = useOtcInputClasses();\n\n return {\n ...amountProps,\n ...extraProps,\n ...tokenConditionalProps,\n ...maxButtonProps,\n onTokenSelect: setTokenFrom,\n classes,\n };\n};\n"],"names":["useOtcTokenFromAmountProps","$","_c","logger","useLogger","tokenFrom","useOtcTokenFrom","amountValue","useAtomValue","otcPayInputAmountAtom","setAmountValue","useSetAtom","setOtcPayAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","useTokenConditionalProps","amountWei","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","useOTCOrderRequiredAllowance","t2","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","isInsufficientBalanceToFill","requiredBalanceToFillUnit","useIsInsufficientBalanceToFillOtcOrder","t3","t4","t5","t6","requiredBalanceToFillFormatted","formatTokenAmount","undefined","t7","needsApproval","lockIcon","getInsufficientBalanceToFillOrderMessage","shouldDisplay","messageOverride","t8","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentOtcInput","currentOtcInputAtom","setPayInputAmount","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","data","gasPrices","useGasPrices","hasBalance","showMaxButton","legacyPrices","isETH","gasPriceMultiplier","instant","gasFeeETH","Big","WRAP_ETH_GAS_LIMIT_INACCURATE","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","toDecimalTrimmed","useExtraProps","appChainId","useChainId","enabledChainsWithOTC","useEnabledSrcChainsWithOTC","setCurrentInput","root","length","classes","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","onFocus","label","disabledClasses","useOtcInputClasses","unsupportedChain","useUnsupportedOtcChain","useOtcTokenFromInputProps","amountProps","extraProps","payInputAmountWei","otcPayInputAmountWeiAtom","tokenConditionalProps","maxButtonProps","setTokenFrom","selectOtcTokenFromAtom","onTokenSelect","chainId","switchChain"],"mappings":"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"}
1
+ {"version":3,"file":"useOtcTokenFromInputProps.js","sources":["../../../src/core/otc/useOtcTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"jotai\";\nimport { setOtcPayAmountAtom } from \"./state/otcInputActionsAtom\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type {\n TokenInputAmountProps,\n TokenInputExtraProps,\n} from \"../inputs/hooks/types\";\nimport { useLogger } from \"../logger\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n} from \"./state/otcInputAmountAtom\";\nimport { useChainId } from \"wagmi\";\nimport { currentOtcInputAtom } from \"./state/currentOtcInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useIsInsufficientBalanceToFillOtcOrder } from \"@/hooks/tokens/balances/useIsLimitOrderInsufficientBalance\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useGasPrices } from \"@/hooks/gas/useGasPrices\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport Big from \"big.js\";\nimport { WRAP_ETH_GAS_LIMIT_INACCURATE } from \"@/lib/constants\";\nimport { useUnsupportedOtcChain } from \"./useOtcNotSupported\";\nimport { selectOtcTokenFromAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenFrom } from \"./state/selectedTokenAtom\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { getInsufficientBalanceToFillOrderMessage } from \"@/lib/utils/delta\";\nimport { useOTCOrderRequiredAllowance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { useEnabledSrcChainsWithOTC } from \"../state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst useOtcTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"OTC::TokenFrom::AmountProps\");\n const tokenFrom = useOtcTokenFrom();\n\n const amountValue = useAtomValue(otcPayInputAmountAtom);\n const setAmountValue = useSetAtom(setOtcPayAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = \"AugustusRFQ\";\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useOTCOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"AugustusRFQ\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType: \"AugustusRFQ\",\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillUnit,\n } = useIsInsufficientBalanceToFillOtcOrder();\n\n const requiredBalanceToFillFormatted =\n isInsufficientBalanceToFill && requiredBalanceToFillUnit\n ? formatTokenAmount(requiredBalanceToFillUnit)\n : undefined;\n\n return {\n tokenBadgePropsOverride: {\n lockIcon:\n !isInsufficientBalance &&\n !isInsufficientBalanceToFill &&\n tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance || isInsufficientBalanceToFill,\n messageOverride: requiredBalanceToFillFormatted\n ? getInsufficientBalanceToFillOrderMessage(\n tokenFrom,\n requiredBalanceToFillFormatted\n )\n : undefined,\n },\n };\n};\n\nconst useMaxButtonProps = ({ tokenFrom }: { tokenFrom: Token }) => {\n const setCurrentOtcInput = useSetAtom(currentOtcInputAtom);\n const setPayInputAmount = useSetAtom(otcPayInputAmountAtom);\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const { data: gasPrices } = useGasPrices();\n\n const hasBalance = !!balanceUnit && balanceUnit !== \"0\";\n const showMaxButton = hasBalance;\n\n return {\n showMaxButton,\n onMaxClick: () => {\n setCurrentOtcInput(\"from\");\n\n if (hasBalance) {\n if (!isETH(tokenFrom)) {\n setPayInputAmount(balanceUnit);\n return;\n }\n\n // if ETH in OTC form then it's wrapping\n const gasPriceMultiplier = gasPrices?.legacyPrices.instant;\n if (gasPriceMultiplier) {\n const gasFeeETH = Big(WRAP_ETH_GAS_LIMIT_INACCURATE)\n .mul(gasPriceMultiplier)\n .div(1e9);\n const balanceWithDeductedGas = Big(balanceUnit).minus(gasFeeETH);\n\n setPayInputAmount(balanceWithDeductedGas.toString());\n }\n }\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useOtcTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n const enabledChainsWithOTC = useEnabledSrcChainsWithOTC();\n\n const setCurrentInput = useSetAtom(currentOtcInputAtom);\n\n return {\n networkSwitcherProps: {\n classes: {\n // to be able to switch network if on unsupported chain\n root: \"pointer-events-auto\",\n },\n networks: enabledChainsWithOTC,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledChainsWithOTC.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n };\n};\n\nconst disabledClasses = {\n root: \"pointer-events-none\",\n};\n\nexport const useOtcInputClasses = (): TokenInputProps[\"classes\"] => {\n const unsupportedChain = useUnsupportedOtcChain();\n if (unsupportedChain) return disabledClasses;\n};\n\nexport const useOtcTokenFromInputProps = (): TokenInputProps => {\n const amountProps = useOtcTokenFromAmountProps();\n const extraProps = useExtraProps();\n\n const payInputAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei: payInputAmountWei,\n tokenFrom: amountProps.token,\n });\n\n const maxButtonProps = useMaxButtonProps({ tokenFrom: amountProps.token });\n\n const setTokenFrom = useSetAtom(selectOtcTokenFromAtom);\n\n const classes = useOtcInputClasses();\n\n return {\n ...amountProps,\n ...extraProps,\n ...tokenConditionalProps,\n ...maxButtonProps,\n onTokenSelect: setTokenFrom,\n classes,\n };\n};\n"],"names":["useOtcTokenFromAmountProps","$","_c","logger","useLogger","tokenFrom","useOtcTokenFrom","amountValue","useAtomValue","otcPayInputAmountAtom","setAmountValue","useSetAtom","setOtcPayAmountAtom","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","useTokenConditionalProps","amountWei","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","useOTCOrderRequiredAllowance","t2","spenderContractType","amountToApproveInWei","tokenAllowance","useGenericTokenAllowance","isInsufficientBalance","isInsufficientBalanceToFill","requiredBalanceToFillUnit","useIsInsufficientBalanceToFillOtcOrder","t3","t4","t5","t6","requiredBalanceToFillFormatted","formatTokenAmount","undefined","t7","needsApproval","lockIcon","getInsufficientBalanceToFillOrderMessage","shouldDisplay","messageOverride","t8","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentOtcInput","currentOtcInputAtom","setPayInputAmount","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","data","gasPrices","useGasPrices","hasBalance","showMaxButton","legacyPrices","isETH","gasPriceMultiplier","instant","gasFeeETH","Big","WRAP_ETH_GAS_LIMIT_INACCURATE","mul","div","balanceWithDeductedGas","minus","toString","onMaxClick","toDecimalTrimmed","useExtraProps","appChainId","useChainId","enabledChainsWithOTC","useEnabledSrcChainsWithOTC","setCurrentInput","root","length","classes","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","onFocus","label","disabledClasses","useOtcInputClasses","unsupportedChain","useUnsupportedOtcChain","useOtcTokenFromInputProps","amountProps","extraProps","payInputAmountWei","otcPayInputAmountWeiAtom","tokenConditionalProps","maxButtonProps","setTokenFrom","selectOtcTokenFromAtom","onTokenSelect","chainId","switchChain"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
2
  import { cn } from '../../lib/utils/index.js';
3
- import { useSetAtom } from '../store.js';
3
+ import { useSetAtom } from 'jotai';
4
4
  import { switchOtcTokensAtom } from './state/selectedTokenActionsAtom.js';
5
5
  import { useOtcTokenTo } from './state/selectedTokenAtom.js';
6
6
  import { useUnsupportedOtcChain } from './useOtcNotSupported.js';
@@ -1 +1 @@
1
- {"version":3,"file":"useOtcTokenSwitcherProps.js","sources":["../../../src/core/otc/useOtcTokenSwitcherProps.ts"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSetAtom } from \"@/core/store\";\nimport { switchOtcTokensAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenTo } from \"./state/selectedTokenAtom\";\nimport { useUnsupportedOtcChain } from \"./useOtcNotSupported\";\n\nexport const useOtcTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useOtcTokenTo();\n const switchTokens = useSetAtom(switchOtcTokensAtom);\n const unsupportedOtcChain = useUnsupportedOtcChain();\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n classes: {\n root: cn({ \"pointer-events-none\": unsupportedOtcChain }),\n },\n };\n};\n"],"names":["useOtcTokenSwitcherProps","$","_c","tokenTo","useOtcTokenTo","switchTokens","useSetAtom","switchOtcTokensAtom","unsupportedOtcChain","useUnsupportedOtcChain","t0","t1","cn","t2","root","t3","enableSwitchTokens","onSwitchTokens","classes"],"mappings":";;;;;;;AAOO,MAAMA,2BAA2BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACtC,EAAA,MAAAC,UAAgBC,aAAAA,EAAc;AAC9B,EAAA,MAAAC,YAAAA,GAAqBC,WAAWC,mBAAmB,CAAA;AACnD,EAAA,MAAAC,sBAA4BC,sBAAAA,EAAuB;AAG7B,EAAA,MAAAC,EAAAA,GAAA,CAAC,CAACP,OAAAA;AAAO,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAV,CAAAA,QAAAO,mBAAAA,EAAA;AAGrBG,IAAAA,EAAAA,GAAAC,EAAAA,CAAG;AAAA,MAAA,qBAAA,EAAyBJ;AAAAA,KAAqB,CAAA;AAACP,IAAAA,CAAAA,MAAAO,mBAAAA;AAAAP,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,QAAAU,EAAAA,EAAA;AADjDE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACDH;AAAAA,KACR;AAACV,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAc,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAI,YAAAA,IAAAJ,CAAAA,QAAAS,EAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAY,EAAAA,EAAA;AALIE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeN,EAAAA;AAAAA,MAASO,cAAAA,EACbZ,YAAAA;AAAAA,MAAYa,OAAAA,EACnBL;AAAAA,KAGX;AAACZ,IAAAA,CAAAA,MAAAI,YAAAA;AAAAJ,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANMc,EAAAA;AAMN;;;;"}
1
+ {"version":3,"file":"useOtcTokenSwitcherProps.js","sources":["../../../src/core/otc/useOtcTokenSwitcherProps.ts"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSetAtom } from \"jotai\";\nimport { switchOtcTokensAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenTo } from \"./state/selectedTokenAtom\";\nimport { useUnsupportedOtcChain } from \"./useOtcNotSupported\";\n\nexport const useOtcTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useOtcTokenTo();\n const switchTokens = useSetAtom(switchOtcTokensAtom);\n const unsupportedOtcChain = useUnsupportedOtcChain();\n\n return {\n enableSwitchTokens: !!tokenTo,\n onSwitchTokens: switchTokens,\n classes: {\n root: cn({ \"pointer-events-none\": unsupportedOtcChain }),\n },\n };\n};\n"],"names":["useOtcTokenSwitcherProps","$","_c","tokenTo","useOtcTokenTo","switchTokens","useSetAtom","switchOtcTokensAtom","unsupportedOtcChain","useUnsupportedOtcChain","t0","t1","cn","t2","root","t3","enableSwitchTokens","onSwitchTokens","classes"],"mappings":";;;;;;;AAOO,MAAMA,2BAA2BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACtC,EAAA,MAAAC,UAAgBC,aAAAA,EAAc;AAC9B,EAAA,MAAAC,YAAAA,GAAqBC,WAAWC,mBAAmB,CAAA;AACnD,EAAA,MAAAC,sBAA4BC,sBAAAA,EAAuB;AAG7B,EAAA,MAAAC,EAAAA,GAAA,CAAC,CAACP,OAAAA;AAAO,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAV,CAAAA,QAAAO,mBAAAA,EAAA;AAGrBG,IAAAA,EAAAA,GAAAC,EAAAA,CAAG;AAAA,MAAA,qBAAA,EAAyBJ;AAAAA,KAAqB,CAAA;AAACP,IAAAA,CAAAA,MAAAO,mBAAAA;AAAAP,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,QAAAU,EAAAA,EAAA;AADjDE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACDH;AAAAA,KACR;AAACV,IAAAA,CAAAA,MAAAU,EAAAA;AAAAV,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAc,EAAAA;AAAA,EAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAI,YAAAA,IAAAJ,CAAAA,QAAAS,EAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAY,EAAAA,EAAA;AALIE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeN,EAAAA;AAAAA,MAASO,cAAAA,EACbZ,YAAAA;AAAAA,MAAYa,OAAAA,EACnBL;AAAAA,KAGX;AAACZ,IAAAA,CAAAA,MAAAI,YAAAA;AAAAJ,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANMc,EAAAA;AAMN;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
2
  import { d as distExports } from '../../_virtual/index.js';
3
- import { useAtomValue, useSetAtom } from '../store.js';
3
+ import { useAtomValue, useSetAtom } from 'jotai';
4
4
  import { otcReceiveInputAmountAtom } from './state/otcInputAmountAtom.js';
5
5
  import { setOtcReceiveAmountAtom } from './state/otcInputActionsAtom.js';
6
6
  import { useLogger } from '../logger.js';
@@ -1 +1 @@
1
- {"version":3,"file":"useOtcTokenToInputProps.js","sources":["../../../src/core/otc/useOtcTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { otcReceiveInputAmountAtom } from \"./state/otcInputAmountAtom\";\nimport { setOtcReceiveAmountAtom } from \"./state/otcInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useLimitRate } from \"../limit/useLimitRate\";\nimport { currentOtcInputAtom } from \"./state/currentOtcInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useOtcInputClasses } from \"./useOtcTokenFromInputProps\";\nimport { selectOtcTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenTo } from \"./state/selectedTokenAtom\";\nimport { useChainId } from \"wagmi\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useOtcTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentOtcInputAtom);\n\n return {\n networkSwitcherProps: {\n networks: [appChainId],\n selectedNetwork: appChainId,\n disabled: true,\n hidden: true,\n },\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"OTC::TokenTo::AmountProps\");\n const tokenTo = useOtcTokenTo();\n\n const receiveAmount = useAtomValue(otcReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setOtcReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"otc\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectOtcTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\nexport const useOtcTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps();\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useOtcInputClasses();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n };\n};\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useOtcTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","appChainId","useChainId","setCurrentInput","useSetAtom","currentOtcInputAtom","networks","selectedNetwork","disabled","hidden","t3","t4","networkSwitcherProps","tokenType","onFocus","label","useTokenToAmountProps","logger","useLogger","receiveAmount","useAtomValue","otcReceiveInputAmountAtom","setReceiveAmount","setOtcReceiveAmountAtom","isLoading","useLimitRate","values","log","value","onAmountChange","setTokenTo","selectOtcTokenToAtom","amount","onTokenSelect","useOtcTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","useOtcInputClasses"],"mappings":"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"}
1
+ {"version":3,"file":"useOtcTokenToInputProps.js","sources":["../../../src/core/otc/useOtcTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom } from \"jotai\";\nimport { otcReceiveInputAmountAtom } from \"./state/otcInputAmountAtom\";\nimport { setOtcReceiveAmountAtom } from \"./state/otcInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useLimitRate } from \"../limit/useLimitRate\";\nimport { currentOtcInputAtom } from \"./state/currentOtcInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useOtcInputClasses } from \"./useOtcTokenFromInputProps\";\nimport { selectOtcTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useOtcTokenTo } from \"./state/selectedTokenAtom\";\nimport { useChainId } from \"wagmi\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useOtcTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = (): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentOtcInputAtom);\n\n return {\n networkSwitcherProps: {\n networks: [appChainId],\n selectedNetwork: appChainId,\n disabled: true,\n hidden: true,\n },\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"OTC::TokenTo::AmountProps\");\n const tokenTo = useOtcTokenTo();\n\n const receiveAmount = useAtomValue(otcReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setOtcReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"otc\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectOtcTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\nexport const useOtcTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps();\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useOtcInputClasses();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n };\n};\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useOtcTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","appChainId","useChainId","setCurrentInput","useSetAtom","currentOtcInputAtom","networks","selectedNetwork","disabled","hidden","t3","t4","networkSwitcherProps","tokenType","onFocus","label","useTokenToAmountProps","logger","useLogger","receiveAmount","useAtomValue","otcReceiveInputAmountAtom","setReceiveAmount","setOtcReceiveAmountAtom","isLoading","useLimitRate","values","log","value","onAmountChange","setTokenTo","selectOtcTokenToAtom","amount","onTokenSelect","useOtcTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","useOtcInputClasses"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chainToAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/chainToAtom.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,eAAe,sLAiC3B,CAAC;AAEF,eAAO,MAAM,cAAc,8EAE1B,CAAC"}
1
+ {"version":3,"file":"chainToAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/chainToAtom.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,eAAe,sLAiC3B,CAAC;AAEF,eAAO,MAAM,cAAc,8EAE1B,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
  import { swapTokenToAtom, swapTokenFromAtom } from '../inputs/state/selectedTokenAtom.js';
4
3
  import { pickDefaultTokenPair } from '../../tokens/defaultTokens.js';
5
4
  import { wagmiConfig } from '../../lib/web3/wagmi/config.js';
@@ -1 +1 @@
1
- {"version":3,"file":"chainToAtom.js","sources":["../../../src/core/state/chainToAtom.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { findFirstTokenFromAcross } from \"../across/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\n\nexport const swapChainToAtom = atom(\n // chainTo always follows tokenTo network (either SupportedChainId or undefined)\n (get) => get(swapTokenToAtom)?.network,\n // set(chainToAtom) = (chainTo) => set(tokenToAtom to default token for that chain)\n (get, set, newChainTo: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newChainTo,\n \"swap\"\n );\n\n const appChainId = wagmiConfig.state.chainId;\n\n // cross-chain? try to set the first token from the across list as tokenTo\n // otherwise tokenTo will be reset\n if (appChainId !== newChainTo) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: appChainId,\n toChainId: newChainTo,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n\n set(swapTokenToAtom, maybeAcrossToken);\n set(setSwapModeAtom, \"delta\");\n } else {\n // single chain? set tokenTo to one of the default tokens\n const tokenFrom = get(swapTokenFromAtom);\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(swapTokenToAtom, newTokenTo);\n }\n }\n);\n\nexport const useSwapChainTo = () => {\n return useAtomValue(swapChainToAtom);\n};\n"],"names":["swapChainToAtom","atom","get","swapTokenToAtom","network","set","newChainTo","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","appChainId","wagmiConfig","state","chainId","maybeAcrossToken","findFirstTokenFromAcross","fromChainId","toChainId","listByChainId","allTokensByChainAtom","setSwapModeAtom","tokenFrom","swapTokenFromAtom","newTokenTo","areTokensSame","useSwapChainTo","useAtomValue"],"mappings":";;;;;;;;;;AAcO,MAAMA,eAAAA,GAAkBC,IAAAA;AAAAA;AAAAA,EAE5BC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,eAAe,CAAA,EAAGC,OAAAA;AAAAA;AAAAA,EAE/B,CAACF,GAAAA,EAAKG,GAAAA,EAAKC,UAAAA,KAAiC;AAC1C,IAAA,MAAM,CAACC,gBAAAA,EAAkBC,cAAc,CAAA,GAAIC,oBAAAA,CACzCH,YACA,MACF,CAAA;AAEA,IAAA,MAAMI,UAAAA,GAAaC,YAAYC,KAAAA,CAAMC,OAAAA;AAIrC,IAAA,IAAIH,eAAeJ,UAAAA,EAAY;AAC7B,MAAA,MAAMQ,mBAAmBC,wBAAAA,CAAyB;AAAA,QAChDC,WAAAA,EAAaN,UAAAA;AAAAA,QACbO,SAAAA,EAAWX,UAAAA;AAAAA,QACXY,aAAAA,EAAehB,GAAAA,CAAIiB,oBAAoB,CAAA,CAAED;AAAAA,OAC1C,CAAA;AAEDb,MAAAA,GAAAA,CAAIF,iBAAiBW,gBAAgB,CAAA;AACrCT,MAAAA,GAAAA,CAAIe,iBAAiB,OAAO,CAAA;AAAA,IAC9B,CAAA,MAAO;AAEL,MAAA,MAAMC,SAAAA,GAAYnB,IAAIoB,iBAAiB,CAAA;AACvC,MAAA,MAAMC,UAAAA,GAAaC,aAAAA,CAAcH,SAAAA,EAAWb,cAAc,IACtDD,gBAAAA,GACAC,cAAAA;AAEJH,MAAAA,GAAAA,CAAIF,iBAAiBoB,UAAU,CAAA;AAAA,IACjC;AAAA,EACF;AACF;AAEO,MAAME,iBAAiBA,MAAA;AAAA,EAAA,OACrBC,aAAa1B,eAAe,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"chainToAtom.js","sources":["../../../src/core/state/chainToAtom.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { atom, useAtomValue } from \"jotai\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { findFirstTokenFromAcross } from \"../across/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\n\nexport const swapChainToAtom = atom(\n // chainTo always follows tokenTo network (either SupportedChainId or undefined)\n (get) => get(swapTokenToAtom)?.network,\n // set(chainToAtom) = (chainTo) => set(tokenToAtom to default token for that chain)\n (get, set, newChainTo: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newChainTo,\n \"swap\"\n );\n\n const appChainId = wagmiConfig.state.chainId;\n\n // cross-chain? try to set the first token from the across list as tokenTo\n // otherwise tokenTo will be reset\n if (appChainId !== newChainTo) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: appChainId,\n toChainId: newChainTo,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n\n set(swapTokenToAtom, maybeAcrossToken);\n set(setSwapModeAtom, \"delta\");\n } else {\n // single chain? set tokenTo to one of the default tokens\n const tokenFrom = get(swapTokenFromAtom);\n const newTokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n\n set(swapTokenToAtom, newTokenTo);\n }\n }\n);\n\nexport const useSwapChainTo = () => {\n return useAtomValue(swapChainToAtom);\n};\n"],"names":["swapChainToAtom","atom","get","swapTokenToAtom","network","set","newChainTo","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","appChainId","wagmiConfig","state","chainId","maybeAcrossToken","findFirstTokenFromAcross","fromChainId","toChainId","listByChainId","allTokensByChainAtom","setSwapModeAtom","tokenFrom","swapTokenFromAtom","newTokenTo","areTokensSame","useSwapChainTo","useAtomValue"],"mappings":";;;;;;;;;AAaO,MAAMA,eAAAA,GAAkBC,IAAAA;AAAAA;AAAAA,EAE5BC,CAAAA,GAAAA,KAAQA,GAAAA,CAAIC,eAAe,CAAA,EAAGC,OAAAA;AAAAA;AAAAA,EAE/B,CAACF,GAAAA,EAAKG,GAAAA,EAAKC,UAAAA,KAAiC;AAC1C,IAAA,MAAM,CAACC,gBAAAA,EAAkBC,cAAc,CAAA,GAAIC,oBAAAA,CACzCH,YACA,MACF,CAAA;AAEA,IAAA,MAAMI,UAAAA,GAAaC,YAAYC,KAAAA,CAAMC,OAAAA;AAIrC,IAAA,IAAIH,eAAeJ,UAAAA,EAAY;AAC7B,MAAA,MAAMQ,mBAAmBC,wBAAAA,CAAyB;AAAA,QAChDC,WAAAA,EAAaN,UAAAA;AAAAA,QACbO,SAAAA,EAAWX,UAAAA;AAAAA,QACXY,aAAAA,EAAehB,GAAAA,CAAIiB,oBAAoB,CAAA,CAAED;AAAAA,OAC1C,CAAA;AAEDb,MAAAA,GAAAA,CAAIF,iBAAiBW,gBAAgB,CAAA;AACrCT,MAAAA,GAAAA,CAAIe,iBAAiB,OAAO,CAAA;AAAA,IAC9B,CAAA,MAAO;AAEL,MAAA,MAAMC,SAAAA,GAAYnB,IAAIoB,iBAAiB,CAAA;AACvC,MAAA,MAAMC,UAAAA,GAAaC,aAAAA,CAAcH,SAAAA,EAAWb,cAAc,IACtDD,gBAAAA,GACAC,cAAAA;AAEJH,MAAAA,GAAAA,CAAIF,iBAAiBoB,UAAU,CAAA;AAAA,IACjC;AAAA,EACF;AACF;AAEO,MAAME,iBAAiBA,MAAA;AAAA,EAAA,OACrBC,aAAa1B,eAAe,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAM7D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,YAAY,EACV,OAAO,GACP,aAAa,GACb,kBAAkB,GAClB,SAAS,GACT,YAAY,GACZ,eAAe,GACf,OAAO,GACP,YAAY,GACZ,mBAAmB,CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,YAAY,EACZ,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CACvE,CAAC;AAcF,eAAO,MAAM,mBAAmB;;;;;;;;;CASI,CAAC;AAErC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAAkD,CAAC;AAEhF,eAAO,MAAM,eAAe;;;;;;;;;;CAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;CAMM,CAAC;AAIpC,eAAO,MAAM,cAAc,0DAG1B,CAAC;AACF,eAAO,MAAM,aAAa,sKAGzB,CAAC;AACF,eAAO,MAAM,cAAc,sKAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,gEAG1B,CAAC;AAEF,eAAO,MAAM,aAAa,0EAGzB,CAAC"}
1
+ {"version":3,"file":"configAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAM7D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,YAAY,EACV,OAAO,GACP,aAAa,GACb,kBAAkB,GAClB,SAAS,GACT,YAAY,GACZ,eAAe,GACf,OAAO,GACP,YAAY,GACZ,mBAAmB,CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,YAAY,EACZ,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CACvE,CAAC;AAcF,eAAO,MAAM,mBAAmB;;;;;;;;;CASI,CAAC;AAErC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAAkD,CAAC;AAEhF,eAAO,MAAM,eAAe;;;;;;;;;;CAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;CAMM,CAAC;AAIpC,eAAO,MAAM,cAAc,0DAG1B,CAAC;AACF,eAAO,MAAM,aAAa,sKAGzB,CAAC;AACF,eAAO,MAAM,cAAc,sKAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,gEAG1B,CAAC;AAEF,eAAO,MAAM,aAAa,0EAGzB,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
  import { emptyArray } from '../../lib/constants/index.js';
4
3
  import { atomWithCompare } from '../../lib/utils/atomWithCompare.js';
5
4
  import { unorderedShallowEqual } from '../../lib/utils/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { WidgetElements, WidgetConfig } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"partner\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n \"srcChains\" | \"destChains\" | \"tokenLists\" | \"tradeModes\" | \"excludeUI\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom"],"mappings":";;;;;;;AAyCO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ;AACb;AAIO,MAAMK,cAAAA,GAAiBC,eAAAA,CAC5BR,gBAAAA,CAAiBC,UAAAA,EACjBQ,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BR,gBAAAA,CAAiBG,SAAAA,EACjBM,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BR,gBAAAA,CAAiBI,UAAAA,EACjBK,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BR,gBAAAA,CAAiBK,UAAAA,EACjBI,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BR,gBAAAA,CAAiBM,SAAAA,EACjBG,qBACF;;;;"}
1
+ {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { WidgetElements, WidgetConfig } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"partner\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n \"srcChains\" | \"destChains\" | \"tokenLists\" | \"tradeModes\" | \"excludeUI\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom"],"mappings":";;;;;;AAwCO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ;AACb;AAIO,MAAMK,cAAAA,GAAiBC,eAAAA,CAC5BR,gBAAAA,CAAiBC,UAAAA,EACjBQ,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BR,gBAAAA,CAAiBG,SAAAA,EACjBM,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BR,gBAAAA,CAAiBI,UAAAA,EACjBK,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BR,gBAAAA,CAAiBK,UAAAA,EACjBI,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BR,gBAAAA,CAAiBM,SAAAA,EACjBG,qBACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"configEffectAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configEffectAtom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,OAAO,CAAC;AAapC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAgD/D,wBAAgB,uBAAuB,SAEtC;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,gBAAgB,GAC5B,gBAAgB,EAAE,CAkBpB"}
1
+ {"version":3,"file":"configEffectAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configEffectAtom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,OAAO,CAAC;AAY7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAgD/D,wBAAgB,uBAAuB,SAEtC;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,gBAAgB,GAC5B,gBAAgB,EAAE,CAkBpB"}
@@ -1,5 +1,4 @@
1
- import 'jotai';
2
- import { useAtom } from '../store.js';
1
+ import { useAtom } from 'jotai';
3
2
  import { atomEffect } from 'jotai-effect';
4
3
  import { swapTokenFromAtom, swapTokenToAtom } from '../inputs/state/selectedTokenAtom.js';
5
4
  import { widgetConfigAtom } from './configAtom.js';
@@ -1 +1 @@
1
- {"version":3,"file":"configEffectAtom.js","sources":["../../../src/core/state/configEffectAtom.ts"],"sourcesContent":["import { type Getter } from \"jotai\";\nimport { useAtom } from \"@/core/store\";\nimport { atomEffect } from \"jotai-effect\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { isCrossChainAtom } from \"./isCrosschainAtom\";\nimport {\n enabledSrcChainsAtom,\n enabledDestChainsAtom,\n} from \"./enabledChainsAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nimport { getAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { computeSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { bridgeInfoAtom } from \"@/hooks/swap/prices/delta/queries/useBridgeInfo\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst configEffectAtom = atomEffect((get, set) => {\n const { enableCrossChain, enableDelta } = get(widgetConfigAtom);\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n // subscribe to bridgeInfoAtom to have up-to-date available crosses\n // and retry token finding each time when bridgeInfo changes\n get(bridgeInfoAtom);\n\n const swapTokenFrom = get.peek(swapTokenFromAtom);\n const swapTokenTo = get.peek(swapTokenToAtom);\n const isCrossChain = get.peek(isCrossChainAtom);\n\n const selectableDestChains = getSelectableDestChains(\n get.peek,\n swapTokenFrom.network\n );\n\n const swapTokenFromNetworkNotEnabled = !enabledSrcChains.includes(\n swapTokenFrom.network\n );\n const swapTokenToNetworkNotEnabled =\n swapTokenTo && !selectableDestChains.includes(swapTokenTo.network);\n\n const crossChainTurnedOffWhileActive =\n (!enableDelta || !enableCrossChain) && isCrossChain;\n\n if (swapTokenFromNetworkNotEnabled)\n switchChain({\n chainId: enabledSrcChains[0],\n });\n\n if (\n crossChainTurnedOffWhileActive ||\n swapTokenFromNetworkNotEnabled ||\n swapTokenToNetworkNotEnabled\n )\n set(swapTokenToAtom, undefined);\n});\n\nexport function useActivateConfigEffect() {\n useAtom(configEffectAtom);\n}\n\nexport function getSelectableDestChains(\n get: Getter,\n fromChainId: SupportedChainId\n): SupportedChainId[] {\n const availableCrosses = getAvailableCrosses(fromChainId);\n\n const enabledDestChains = get(enabledDestChainsAtom);\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n const deltaEnabledParam = get(deltaParamAtom);\n\n const deltaEnabledOnChain = deltaEnabledOnAPI[fromChainId];\n const deltaEnabledGlobally =\n enableDelta && deltaEnabledParam && deltaEnabledOnChain;\n\n return computeSelectableDestChains({\n fromChainId,\n availableCrosses,\n enabledDestChains,\n enableCrossChain,\n deltaEnabledGlobally,\n });\n}\n"],"names":["configEffectAtom","atomEffect","get","set","enableCrossChain","enableDelta","widgetConfigAtom","enabledSrcChains","enabledSrcChainsAtom","bridgeInfoAtom","swapTokenFrom","peek","swapTokenFromAtom","swapTokenTo","swapTokenToAtom","isCrossChain","isCrossChainAtom","selectableDestChains","getSelectableDestChains","network","swapTokenFromNetworkNotEnabled","includes","swapTokenToNetworkNotEnabled","crossChainTurnedOffWhileActive","switchChain","chainId","undefined","useActivateConfigEffect","useAtom","fromChainId","availableCrosses","getAvailableCrosses","enabledDestChains","enabledDestChainsAtom","deltaEnabledParam","deltaParamAtom","deltaEnabledOnChain","deltaEnabledOnAPI","deltaEnabledGlobally","computeSelectableDestChains"],"mappings":";;;;;;;;;;;;;;AAsBA,MAAMA,gBAAAA,GAAmBC,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAChD,EAAA,MAAM;AAAA,IAAEC,gBAAAA;AAAAA,IAAkBC;AAAAA,GAAY,GAAIH,IAAII,gBAAgB,CAAA;AAE9D,EAAA,MAAMC,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAGjDN,EAAAA,GAAAA,CAAIO,cAAc,CAAA;AAElB,EAAA,MAAMC,aAAAA,GAAgBR,GAAAA,CAAIS,IAAAA,CAAKC,iBAAiB,CAAA;AAChD,EAAA,MAAMC,WAAAA,GAAcX,GAAAA,CAAIS,IAAAA,CAAKG,eAAe,CAAA;AAC5C,EAAA,MAAMC,YAAAA,GAAeb,GAAAA,CAAIS,IAAAA,CAAKK,gBAAgB,CAAA;AAE9C,EAAA,MAAMC,oBAAAA,GAAuBC,uBAAAA,CAC3BhB,GAAAA,CAAIS,IAAAA,EACJD,cAAcS,OAChB,CAAA;AAEA,EAAA,MAAMC,8BAAAA,GAAiC,CAACb,gBAAAA,CAAiBc,QAAAA,CACvDX,cAAcS,OAChB,CAAA;AACA,EAAA,MAAMG,+BACJT,WAAAA,IAAe,CAACI,oBAAAA,CAAqBI,QAAAA,CAASR,YAAYM,OAAO,CAAA;AAEnE,EAAA,MAAMI,8BAAAA,GAAAA,CACH,CAAClB,WAAAA,IAAe,CAACD,gBAAAA,KAAqBW,YAAAA;AAEzC,EAAA,IAAIK,gCACFI,WAAAA,CAAY;AAAA,IACVC,OAAAA,EAASlB,iBAAiB,CAAC;AAAA,GAC5B,CAAA;AAEH,EAAA,IACEgB,8BAAAA,IACAH,8BAAAA,IACAE,4BAAAA,EAEAnB,GAAAA,CAAIW,iBAAiBY,MAAS,CAAA;AAClC,CAAC,CAAA;AAEM,SAAAC,uBAAAA,GAAA;AACLC,EAAAA,OAAAA,CAAQ5B,gBAAgB,CAAA;AAAC;AAGpB,SAASkB,uBAAAA,CACdhB,KACA2B,WAAAA,EACoB;AACpB,EAAA,MAAMC,gBAAAA,GAAmBC,oBAAoBF,WAAW,CAAA;AAExD,EAAA,MAAMG,iBAAAA,GAAoB9B,IAAI+B,qBAAqB,CAAA;AACnD,EAAA,MAAM;AAAA,IAAE5B,WAAAA;AAAAA,IAAaD;AAAAA,GAAiB,GAAIF,IAAII,gBAAgB,CAAA;AAC9D,EAAA,MAAM4B,iBAAAA,GAAoBhC,IAAIiC,cAAc,CAAA;AAE5C,EAAA,MAAMC,mBAAAA,GAAsBC,kBAAkBR,WAAW,CAAA;AACzD,EAAA,MAAMS,oBAAAA,GACJjC,eAAe6B,iBAAAA,IAAqBE,mBAAAA;AAEtC,EAAA,OAAOG,2BAAAA,CAA4B;AAAA,IACjCV,WAAAA;AAAAA,IACAC,gBAAAA;AAAAA,IACAE,iBAAAA;AAAAA,IACA5B,gBAAAA;AAAAA,IACAkC;AAAAA,GACD,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"configEffectAtom.js","sources":["../../../src/core/state/configEffectAtom.ts"],"sourcesContent":["import { useAtom, type Getter } from \"jotai\";\nimport { atomEffect } from \"jotai-effect\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { isCrossChainAtom } from \"./isCrosschainAtom\";\nimport {\n enabledSrcChainsAtom,\n enabledDestChainsAtom,\n} from \"./enabledChainsAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nimport { getAvailableCrosses } from \"@/hooks/useAvailableCrosses\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { computeSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { bridgeInfoAtom } from \"@/hooks/swap/prices/delta/queries/useBridgeInfo\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\n\nconst configEffectAtom = atomEffect((get, set) => {\n const { enableCrossChain, enableDelta } = get(widgetConfigAtom);\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n // subscribe to bridgeInfoAtom to have up-to-date available crosses\n // and retry token finding each time when bridgeInfo changes\n get(bridgeInfoAtom);\n\n const swapTokenFrom = get.peek(swapTokenFromAtom);\n const swapTokenTo = get.peek(swapTokenToAtom);\n const isCrossChain = get.peek(isCrossChainAtom);\n\n const selectableDestChains = getSelectableDestChains(\n get.peek,\n swapTokenFrom.network\n );\n\n const swapTokenFromNetworkNotEnabled = !enabledSrcChains.includes(\n swapTokenFrom.network\n );\n const swapTokenToNetworkNotEnabled =\n swapTokenTo && !selectableDestChains.includes(swapTokenTo.network);\n\n const crossChainTurnedOffWhileActive =\n (!enableDelta || !enableCrossChain) && isCrossChain;\n\n if (swapTokenFromNetworkNotEnabled)\n switchChain({\n chainId: enabledSrcChains[0],\n });\n\n if (\n crossChainTurnedOffWhileActive ||\n swapTokenFromNetworkNotEnabled ||\n swapTokenToNetworkNotEnabled\n )\n set(swapTokenToAtom, undefined);\n});\n\nexport function useActivateConfigEffect() {\n useAtom(configEffectAtom);\n}\n\nexport function getSelectableDestChains(\n get: Getter,\n fromChainId: SupportedChainId\n): SupportedChainId[] {\n const availableCrosses = getAvailableCrosses(fromChainId);\n\n const enabledDestChains = get(enabledDestChainsAtom);\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n const deltaEnabledParam = get(deltaParamAtom);\n\n const deltaEnabledOnChain = deltaEnabledOnAPI[fromChainId];\n const deltaEnabledGlobally =\n enableDelta && deltaEnabledParam && deltaEnabledOnChain;\n\n return computeSelectableDestChains({\n fromChainId,\n availableCrosses,\n enabledDestChains,\n enableCrossChain,\n deltaEnabledGlobally,\n });\n}\n"],"names":["configEffectAtom","atomEffect","get","set","enableCrossChain","enableDelta","widgetConfigAtom","enabledSrcChains","enabledSrcChainsAtom","bridgeInfoAtom","swapTokenFrom","peek","swapTokenFromAtom","swapTokenTo","swapTokenToAtom","isCrossChain","isCrossChainAtom","selectableDestChains","getSelectableDestChains","network","swapTokenFromNetworkNotEnabled","includes","swapTokenToNetworkNotEnabled","crossChainTurnedOffWhileActive","switchChain","chainId","undefined","useActivateConfigEffect","useAtom","fromChainId","availableCrosses","getAvailableCrosses","enabledDestChains","enabledDestChainsAtom","deltaEnabledParam","deltaParamAtom","deltaEnabledOnChain","deltaEnabledOnAPI","deltaEnabledGlobally","computeSelectableDestChains"],"mappings":";;;;;;;;;;;;;AAqBA,MAAMA,gBAAAA,GAAmBC,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAChD,EAAA,MAAM;AAAA,IAAEC,gBAAAA;AAAAA,IAAkBC;AAAAA,GAAY,GAAIH,IAAII,gBAAgB,CAAA;AAE9D,EAAA,MAAMC,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAGjDN,EAAAA,GAAAA,CAAIO,cAAc,CAAA;AAElB,EAAA,MAAMC,aAAAA,GAAgBR,GAAAA,CAAIS,IAAAA,CAAKC,iBAAiB,CAAA;AAChD,EAAA,MAAMC,WAAAA,GAAcX,GAAAA,CAAIS,IAAAA,CAAKG,eAAe,CAAA;AAC5C,EAAA,MAAMC,YAAAA,GAAeb,GAAAA,CAAIS,IAAAA,CAAKK,gBAAgB,CAAA;AAE9C,EAAA,MAAMC,oBAAAA,GAAuBC,uBAAAA,CAC3BhB,GAAAA,CAAIS,IAAAA,EACJD,cAAcS,OAChB,CAAA;AAEA,EAAA,MAAMC,8BAAAA,GAAiC,CAACb,gBAAAA,CAAiBc,QAAAA,CACvDX,cAAcS,OAChB,CAAA;AACA,EAAA,MAAMG,+BACJT,WAAAA,IAAe,CAACI,oBAAAA,CAAqBI,QAAAA,CAASR,YAAYM,OAAO,CAAA;AAEnE,EAAA,MAAMI,8BAAAA,GAAAA,CACH,CAAClB,WAAAA,IAAe,CAACD,gBAAAA,KAAqBW,YAAAA;AAEzC,EAAA,IAAIK,gCACFI,WAAAA,CAAY;AAAA,IACVC,OAAAA,EAASlB,iBAAiB,CAAC;AAAA,GAC5B,CAAA;AAEH,EAAA,IACEgB,8BAAAA,IACAH,8BAAAA,IACAE,4BAAAA,EAEAnB,GAAAA,CAAIW,iBAAiBY,MAAS,CAAA;AAClC,CAAC,CAAA;AAEM,SAAAC,uBAAAA,GAAA;AACLC,EAAAA,OAAAA,CAAQ5B,gBAAgB,CAAA;AAAC;AAGpB,SAASkB,uBAAAA,CACdhB,KACA2B,WAAAA,EACoB;AACpB,EAAA,MAAMC,gBAAAA,GAAmBC,oBAAoBF,WAAW,CAAA;AAExD,EAAA,MAAMG,iBAAAA,GAAoB9B,IAAI+B,qBAAqB,CAAA;AACnD,EAAA,MAAM;AAAA,IAAE5B,WAAAA;AAAAA,IAAaD;AAAAA,GAAiB,GAAIF,IAAII,gBAAgB,CAAA;AAC9D,EAAA,MAAM4B,iBAAAA,GAAoBhC,IAAIiC,cAAc,CAAA;AAE5C,EAAA,MAAMC,mBAAAA,GAAsBC,kBAAkBR,WAAW,CAAA;AACzD,EAAA,MAAMS,oBAAAA,GACJjC,eAAe6B,iBAAAA,IAAqBE,mBAAAA;AAEtC,EAAA,OAAOG,2BAAAA,CAA4B;AAAA,IACjCV,WAAAA;AAAAA,IACAC,gBAAAA;AAAAA,IACAE,iBAAAA;AAAAA,IACA5B,gBAAAA;AAAAA,IACAkC;AAAAA,GACD,CAAA;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"containerAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/containerAtom.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;CAAoC,CAAC;AAE/D,eAAO,MAAM,gBAAgB,6BAE5B,CAAC"}
1
+ {"version":3,"file":"containerAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/containerAtom.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;CAAoC,CAAC;AAE/D,eAAO,MAAM,gBAAgB,6BAE5B,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
 
4
3
  const containerAtom = atom(null);
5
4
  const useContainerAtom = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"containerAtom.js","sources":["../../../src/core/state/containerAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const containerAtom = atom<HTMLDivElement | null>(null);\n\nexport const useContainerAtom = () => {\n return useAtomValue(containerAtom);\n};\n"],"names":["containerAtom","atom","useContainerAtom","useAtomValue"],"mappings":";;;AAGO,MAAMA,aAAAA,GAAgBC,KAA4B,IAAI;AAEtD,MAAMC,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaH,aAAa,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"containerAtom.js","sources":["../../../src/core/state/containerAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\n\nexport const containerAtom = atom<HTMLDivElement | null>(null);\n\nexport const useContainerAtom = () => {\n return useAtomValue(containerAtom);\n};\n"],"names":["containerAtom","atom","useContainerAtom","useAtomValue"],"mappings":";;AAEO,MAAMA,aAAAA,GAAgBC,KAA4B,IAAI;AAEtD,MAAMC,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaH,aAAa,CAAA;AAAC;;;;"}
@@ -1,4 +1,4 @@
1
- export declare const currentSwapInputAtom: import('jotai').PrimitiveAtom<"from" | "to"> & {
1
+ export declare const currentSwapInputAtom: import('jotai').WritableAtom<"from" | "to", ["from" | "to"], void> & {
2
2
  init: "from" | "to";
3
3
  };
4
4
  //# sourceMappingURL=currentSwapInputAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"currentSwapInputAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/currentSwapInputAtom.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB;;CAA8B,CAAC"}
1
+ {"version":3,"file":"currentSwapInputAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/currentSwapInputAtom.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,oBAAoB;;CAOhC,CAAC"}
@@ -1,6 +1,10 @@
1
+ import { swapSideFromPropsAtom } from '../../components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js';
1
2
  import { atom } from 'jotai';
2
3
 
3
- const currentSwapInputAtom = atom("from");
4
+ const currentSwapInputAtom = atom("from", (_, set, newInput) => {
5
+ set(currentSwapInputAtom, newInput);
6
+ set(swapSideFromPropsAtom, void 0);
7
+ });
4
8
 
5
9
  export { currentSwapInputAtom };
6
10
  //# sourceMappingURL=currentSwapInputAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"currentSwapInputAtom.js","sources":["../../../src/core/state/currentSwapInputAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\n\nexport const currentSwapInputAtom = atom<\"from\" | \"to\">(\"from\");\n"],"names":["currentSwapInputAtom","atom"],"mappings":";;AAEO,MAAMA,oBAAAA,GAAuBC,KAAoB,MAAM;;;;"}
1
+ {"version":3,"file":"currentSwapInputAtom.js","sources":["../../../src/core/state/currentSwapInputAtom.ts"],"sourcesContent":["import { swapSideFromPropsAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom\";\nimport { atom } from \"jotai\";\n\nexport const currentSwapInputAtom = atom<\"from\" | \"to\", [\"from\" | \"to\"], void>(\n \"from\",\n (_, set, newInput) => {\n set(currentSwapInputAtom, newInput);\n // reset side from input props to prioritize user selection\n set(swapSideFromPropsAtom, undefined);\n }\n);\n"],"names":["currentSwapInputAtom","atom","_","set","newInput","swapSideFromPropsAtom","undefined"],"mappings":";;;AAGO,MAAMA,uBAAuBC,IAAAA,CAClC,MAAA,EACA,CAACC,CAAAA,EAAGC,KAAKC,QAAAA,KAAa;AACpBD,EAAAA,GAAAA,CAAIH,sBAAsBI,QAAQ,CAAA;AAElCD,EAAAA,GAAAA,CAAIE,uBAAuBC,MAAS,CAAA;AACtC,CACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"enabledChainsAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/enabledChainsAtom.ts"],"names":[],"mappings":"AAiDA,eAAO,MAAM,oBAAoB,uJAG/B,CAAC;AACH,eAAO,MAAM,qBAAqB,uJAGhC,CAAC;AACH,eAAO,MAAM,oBAAoB,uJAI/B,CAAC;AAEH,eAAO,MAAM,mBAAmB,uIAA2C,CAAC;AAC5E,eAAO,MAAM,oBAAoB,uIAA4C,CAAC;AAC9E,eAAO,MAAM,mBAAmB,uIAA2C,CAAC;AAE5E,eAAO,MAAM,4BAA4B,sEAGxC,CAAC;AAEF,eAAO,MAAM,4BAA4B,sEAGxC,CAAC;AAEF,eAAO,MAAM,0BAA0B,sEAGtC,CAAC"}
1
+ {"version":3,"file":"enabledChainsAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/enabledChainsAtom.ts"],"names":[],"mappings":"AAgDA,eAAO,MAAM,oBAAoB,uJAG/B,CAAC;AACH,eAAO,MAAM,qBAAqB,uJAGhC,CAAC;AACH,eAAO,MAAM,oBAAoB,uJAI/B,CAAC;AAEH,eAAO,MAAM,mBAAmB,uIAA2C,CAAC;AAC5E,eAAO,MAAM,oBAAoB,uIAA4C,CAAC;AAC9E,eAAO,MAAM,mBAAmB,uIAA2C,CAAC;AAE5E,eAAO,MAAM,4BAA4B,sEAGxC,CAAC;AAEF,eAAO,MAAM,4BAA4B,sEAGxC,CAAC;AAEF,eAAO,MAAM,0BAA0B,sEAGtC,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
2
  import { supportedChainIds } from '../../lib/web3/wagmi/constants.js';
3
3
  import { isSupportedChainId } from '../../lib/web3/wagmi/utils.js';
4
- import { atom } from 'jotai';
5
- import { useAtomValue } from '../store.js';
4
+ import { atom, useAtomValue } from 'jotai';
6
5
  import { srcChainsAtom, destChainsAtom } from './configAtom.js';
7
6
  import { getLogger } from '../logger.js';
8
7
  import { isFilledArray } from '../../lib/utils/tuple.js';
@@ -1 +1 @@
1
- {"version":3,"file":"enabledChainsAtom.js","sources":["../../../src/core/state/enabledChainsAtom.ts"],"sourcesContent":["import { supportedChainIds as defaultChainIds } from \"@/lib/web3/wagmi/constants\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { destChainsAtom, srcChainsAtom } from \"./configAtom\";\nimport { getLogger } from \"../logger\";\nimport type { NonEmptyArray, Prettify } from \"ts-essentials\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { CHAINS_WITH_DELTA } from \"@/lib/constants/delta\";\nimport { CHAINS_WITH_OTC } from \"@/lib/constants/otc\";\n\ntype EnabledChains = Prettify<NonEmptyArray<SupportedChainId>>;\n\n// with guards against invalid or duplicate chain IDs passed in config\nfunction getEnabledChainsWithFallback(\n chainIds: number[],\n logger?: ReturnType<typeof getLogger>\n): EnabledChains {\n // fallback to defaults\n if (chainIds.length === 0) return defaultChainIds;\n const uniqueChainIds = Array.from(new Set(chainIds));\n\n const detectedUnsupportedChains: number[] = [];\n const uniqueSupportedChainIds = uniqueChainIds.filter((id) => {\n const isSupported = isSupportedChainId(id);\n if (!isSupported) detectedUnsupportedChains.push(id);\n return isSupported;\n });\n\n const isAllUnsupported = !isFilledArray(uniqueSupportedChainIds);\n // log once about unsupported IDs\n if (detectedUnsupportedChains.length > 0 && !isAllUnsupported)\n logger?.warn(\n `Specified unsupported IDs. Supported chain IDs are: ${defaultChainIds.join(\", \")}`\n );\n\n // fallback to defaults\n if (isAllUnsupported) {\n logger?.warn(\n `All specified IDs are unsupported. Supported IDs are: ${defaultChainIds.join(\", \")}`\n );\n return defaultChainIds;\n }\n return uniqueSupportedChainIds;\n}\n\nconst logger = getLogger(\"ChainsState\");\n\nexport const enabledSrcChainsAtom = atom<EnabledChains>((get) => {\n const srcChains = get(srcChainsAtom);\n return getEnabledChainsWithFallback(srcChains, logger);\n});\nexport const enabledDestChainsAtom = atom<EnabledChains>((get) => {\n const destChains = get(destChainsAtom);\n return getEnabledChainsWithFallback(destChains, logger);\n});\nexport const allEnabledChainsAtom = atom<EnabledChains>((get) => {\n const srcChains = get(enabledSrcChainsAtom);\n const destChains = get(enabledDestChainsAtom);\n return getEnabledChainsWithFallback([...srcChains, ...destChains]);\n});\n\nexport const useEnabledSrcChains = () => useAtomValue(enabledSrcChainsAtom);\nexport const useEnabledDestChains = () => useAtomValue(enabledDestChainsAtom);\nexport const useAllEnabledChains = () => useAtomValue(allEnabledChainsAtom);\n\nexport const useAllEnabledChainsWithDelta = () => {\n const enabledChains = useAllEnabledChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_DELTA.includes(chainId));\n};\n\nexport const useEnabledSrcChainsWithDelta = () => {\n const enabledChains = useEnabledSrcChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_DELTA.includes(chainId));\n};\n\nexport const useEnabledSrcChainsWithOTC = () => {\n const enabledChains = useEnabledSrcChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_OTC.includes(chainId));\n};\n"],"names":["getEnabledChainsWithFallback","chainIds","logger","length","defaultChainIds","uniqueChainIds","Array","from","Set","detectedUnsupportedChains","uniqueSupportedChainIds","filter","id","isSupported","isSupportedChainId","push","isAllUnsupported","isFilledArray","warn","join","getLogger","enabledSrcChainsAtom","atom","get","srcChains","srcChainsAtom","enabledDestChainsAtom","destChains","destChainsAtom","allEnabledChainsAtom","useEnabledSrcChains","useAtomValue","useEnabledDestChains","useAllEnabledChains","useAllEnabledChainsWithDelta","$","_c","enabledChains","t0","_temp","useEnabledSrcChainsWithDelta","_temp2","useEnabledSrcChainsWithOTC","_temp3","chainId","CHAINS_WITH_DELTA","includes","CHAINS_WITH_OTC"],"mappings":"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"}
1
+ {"version":3,"file":"enabledChainsAtom.js","sources":["../../../src/core/state/enabledChainsAtom.ts"],"sourcesContent":["import { supportedChainIds as defaultChainIds } from \"@/lib/web3/wagmi/constants\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { atom, useAtomValue } from \"jotai\";\nimport { destChainsAtom, srcChainsAtom } from \"./configAtom\";\nimport { getLogger } from \"../logger\";\nimport type { NonEmptyArray, Prettify } from \"ts-essentials\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { CHAINS_WITH_DELTA } from \"@/lib/constants/delta\";\nimport { CHAINS_WITH_OTC } from \"@/lib/constants/otc\";\n\ntype EnabledChains = Prettify<NonEmptyArray<SupportedChainId>>;\n\n// with guards against invalid or duplicate chain IDs passed in config\nfunction getEnabledChainsWithFallback(\n chainIds: number[],\n logger?: ReturnType<typeof getLogger>\n): EnabledChains {\n // fallback to defaults\n if (chainIds.length === 0) return defaultChainIds;\n const uniqueChainIds = Array.from(new Set(chainIds));\n\n const detectedUnsupportedChains: number[] = [];\n const uniqueSupportedChainIds = uniqueChainIds.filter((id) => {\n const isSupported = isSupportedChainId(id);\n if (!isSupported) detectedUnsupportedChains.push(id);\n return isSupported;\n });\n\n const isAllUnsupported = !isFilledArray(uniqueSupportedChainIds);\n // log once about unsupported IDs\n if (detectedUnsupportedChains.length > 0 && !isAllUnsupported)\n logger?.warn(\n `Specified unsupported IDs. Supported chain IDs are: ${defaultChainIds.join(\", \")}`\n );\n\n // fallback to defaults\n if (isAllUnsupported) {\n logger?.warn(\n `All specified IDs are unsupported. Supported IDs are: ${defaultChainIds.join(\", \")}`\n );\n return defaultChainIds;\n }\n return uniqueSupportedChainIds;\n}\n\nconst logger = getLogger(\"ChainsState\");\n\nexport const enabledSrcChainsAtom = atom<EnabledChains>((get) => {\n const srcChains = get(srcChainsAtom);\n return getEnabledChainsWithFallback(srcChains, logger);\n});\nexport const enabledDestChainsAtom = atom<EnabledChains>((get) => {\n const destChains = get(destChainsAtom);\n return getEnabledChainsWithFallback(destChains, logger);\n});\nexport const allEnabledChainsAtom = atom<EnabledChains>((get) => {\n const srcChains = get(enabledSrcChainsAtom);\n const destChains = get(enabledDestChainsAtom);\n return getEnabledChainsWithFallback([...srcChains, ...destChains]);\n});\n\nexport const useEnabledSrcChains = () => useAtomValue(enabledSrcChainsAtom);\nexport const useEnabledDestChains = () => useAtomValue(enabledDestChainsAtom);\nexport const useAllEnabledChains = () => useAtomValue(allEnabledChainsAtom);\n\nexport const useAllEnabledChainsWithDelta = () => {\n const enabledChains = useAllEnabledChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_DELTA.includes(chainId));\n};\n\nexport const useEnabledSrcChainsWithDelta = () => {\n const enabledChains = useEnabledSrcChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_DELTA.includes(chainId));\n};\n\nexport const useEnabledSrcChainsWithOTC = () => {\n const enabledChains = useEnabledSrcChains();\n return enabledChains.filter((chainId) => CHAINS_WITH_OTC.includes(chainId));\n};\n"],"names":["getEnabledChainsWithFallback","chainIds","logger","length","defaultChainIds","uniqueChainIds","Array","from","Set","detectedUnsupportedChains","uniqueSupportedChainIds","filter","id","isSupported","isSupportedChainId","push","isAllUnsupported","isFilledArray","warn","join","getLogger","enabledSrcChainsAtom","atom","get","srcChains","srcChainsAtom","enabledDestChainsAtom","destChains","destChainsAtom","allEnabledChainsAtom","useEnabledSrcChains","useAtomValue","useEnabledDestChains","useAllEnabledChains","useAllEnabledChainsWithDelta","$","_c","enabledChains","t0","_temp","useEnabledSrcChainsWithDelta","_temp2","useEnabledSrcChainsWithOTC","_temp3","chainId","CHAINS_WITH_DELTA","includes","CHAINS_WITH_OTC"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC"}
1
+ {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
  import { widgetConfigAtom } from './configAtom.js';
4
3
 
5
4
  const externalProviderAtom = atom(null);
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;;AAKO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}
1
+ {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;AAIO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"isCrosschainAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/isCrosschainAtom.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,gBAAgB,+BAO3B,CAAC;AAEH,eAAO,MAAM,eAAe,eAE3B,CAAC"}
1
+ {"version":3,"file":"isCrosschainAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/isCrosschainAtom.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,+BAO3B,CAAC;AAEH,eAAO,MAAM,eAAe,eAE3B,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
  import { swapTokenFromAtom, swapTokenToAtom } from '../inputs/state/selectedTokenAtom.js';
4
3
 
5
4
  const isCrossChainAtom = atom((get) => {
@@ -1 +1 @@
1
- {"version":3,"file":"isCrosschainAtom.js","sources":["../../../src/core/state/isCrosschainAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\n\nexport const isCrossChainAtom = atom((get) => {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) return false;\n\n return tokenFrom.network !== tokenTo.network;\n});\n\nexport const useIsCrossChain = () => {\n return useAtomValue(isCrossChainAtom);\n};\n"],"names":["isCrossChainAtom","atom","get","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","network","useIsCrossChain","useAtomValue"],"mappings":";;;;AAOO,MAAMA,gBAAAA,GAAmBC,KAAMC,CAAAA,GAAAA,KAAQ;AAC5C,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,iBAAiB,CAAA;AACvC,EAAA,MAAMC,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,SAAS,OAAO,KAAA;AAErB,EAAA,OAAOF,SAAAA,CAAUI,YAAYF,OAAAA,CAAQE,OAAAA;AACvC,CAAC;AAEM,MAAMC,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaT,gBAAgB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"isCrosschainAtom.js","sources":["../../../src/core/state/isCrosschainAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"../inputs/state/selectedTokenAtom\";\n\nexport const isCrossChainAtom = atom((get) => {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) return false;\n\n return tokenFrom.network !== tokenTo.network;\n});\n\nexport const useIsCrossChain = () => {\n return useAtomValue(isCrossChainAtom);\n};\n"],"names":["isCrossChainAtom","atom","get","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","network","useIsCrossChain","useAtomValue"],"mappings":";;;AAMO,MAAMA,gBAAAA,GAAmBC,KAAMC,CAAAA,GAAAA,KAAQ;AAC5C,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,iBAAiB,CAAA;AACvC,EAAA,MAAMC,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,SAAS,OAAO,KAAA;AAErB,EAAA,OAAOF,SAAAA,CAAUI,YAAYF,OAAAA,CAAQE,OAAAA;AACvC,CAAC;AAEM,MAAMC,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaT,gBAAgB,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"tradeModeAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/tradeModeAtom.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAGjD,eAAO,MAAM,iBAAiB;;CAA0B,CAAC;AAGzD,eAAO,MAAM,aAAa,iCAOxB,CAAC;AAEH,eAAO,MAAM,YAAY,iBAExB,CAAC"}
1
+ {"version":3,"file":"tradeModeAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/tradeModeAtom.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAGjD,eAAO,MAAM,iBAAiB;;CAA0B,CAAC;AAGzD,eAAO,MAAM,aAAa,iCAOxB,CAAC;AAEH,eAAO,MAAM,YAAY,iBAExB,CAAC"}
@@ -1,5 +1,4 @@
1
- import { atom } from 'jotai';
2
- import { useAtomValue } from '../store.js';
1
+ import { atom, useAtomValue } from 'jotai';
3
2
  import { enabledTradeModesAtom } from './enabledTradeModesAtom.js';
4
3
 
5
4
  const userTradeModeAtom = atom("swap");
@@ -1 +1 @@
1
- {"version":3,"file":"tradeModeAtom.js","sources":["../../../src/core/state/tradeModeAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { enabledTradeModesAtom } from \"./enabledTradeModesAtom\";\n\nexport type TradeMode = \"swap\" | \"limit\" | \"otc\";\n\n// atom to store user selected trade mode\nexport const userTradeModeAtom = atom<TradeMode>(\"swap\");\n\n// derived atom to get effective trade mode based on enabled modes\nexport const tradeModeAtom = atom<TradeMode>((get) => {\n const userTradeMode = get(userTradeModeAtom);\n const enabledTradeModes = get(enabledTradeModesAtom);\n // prioritize user selected mode if it's enabled\n if (enabledTradeModes.includes(userTradeMode)) return userTradeMode;\n // otherwise fallback to the first enabled mode\n return enabledTradeModes[0];\n});\n\nexport const useTradeMode = () => {\n return useAtomValue(tradeModeAtom);\n};\n"],"names":["userTradeModeAtom","atom","tradeModeAtom","get","userTradeMode","enabledTradeModes","enabledTradeModesAtom","includes","useTradeMode","useAtomValue"],"mappings":";;;;AAOO,MAAMA,iBAAAA,GAAoBC,KAAgB,MAAM;AAGhD,MAAMC,aAAAA,GAAgBD,KAAiBE,CAAAA,GAAAA,KAAQ;AACpD,EAAA,MAAMC,aAAAA,GAAgBD,IAAIH,iBAAiB,CAAA;AAC3C,EAAA,MAAMK,iBAAAA,GAAoBF,IAAIG,qBAAqB,CAAA;AAEnD,EAAA,IAAID,iBAAAA,CAAkBE,QAAAA,CAASH,aAAa,CAAA,EAAG,OAAOA,aAAAA;AAEtD,EAAA,OAAOC,kBAAkB,CAAC,CAAA;AAC5B,CAAC;AAEM,MAAMG,eAAeA,MAAA;AAAA,EAAA,OACnBC,aAAaP,aAAa,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"tradeModeAtom.js","sources":["../../../src/core/state/tradeModeAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport { enabledTradeModesAtom } from \"./enabledTradeModesAtom\";\n\nexport type TradeMode = \"swap\" | \"limit\" | \"otc\";\n\n// atom to store user selected trade mode\nexport const userTradeModeAtom = atom<TradeMode>(\"swap\");\n\n// derived atom to get effective trade mode based on enabled modes\nexport const tradeModeAtom = atom<TradeMode>((get) => {\n const userTradeMode = get(userTradeModeAtom);\n const enabledTradeModes = get(enabledTradeModesAtom);\n // prioritize user selected mode if it's enabled\n if (enabledTradeModes.includes(userTradeMode)) return userTradeMode;\n // otherwise fallback to the first enabled mode\n return enabledTradeModes[0];\n});\n\nexport const useTradeMode = () => {\n return useAtomValue(tradeModeAtom);\n};\n"],"names":["userTradeModeAtom","atom","tradeModeAtom","get","userTradeMode","enabledTradeModes","enabledTradeModesAtom","includes","useTradeMode","useAtomValue"],"mappings":";;;AAMO,MAAMA,iBAAAA,GAAoBC,KAAgB,MAAM;AAGhD,MAAMC,aAAAA,GAAgBD,KAAiBE,CAAAA,GAAAA,KAAQ;AACpD,EAAA,MAAMC,aAAAA,GAAgBD,IAAIH,iBAAiB,CAAA;AAC3C,EAAA,MAAMK,iBAAAA,GAAoBF,IAAIG,qBAAqB,CAAA;AAEnD,EAAA,IAAID,iBAAAA,CAAkBE,QAAAA,CAASH,aAAa,CAAA,EAAG,OAAOA,aAAAA;AAEtD,EAAA,OAAOC,kBAAkB,CAAC,CAAA;AAC5B,CAAC;AAEM,MAAMG,eAAeA,MAAA;AAAA,EAAA,OACnBC,aAAaP,aAAa,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"widgetEventsAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/widgetEventsAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAQxB,eAAO,MAAM,gBAAgB;;CA+L3B,CAAC;AAEH,eAAO,MAAM,eAAe,QAAO,uBAElC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,YAAY,oBAAoB,SAiCrE,CAAC"}
1
+ {"version":3,"file":"widgetEventsAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/widgetEventsAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAQxB,eAAO,MAAM,gBAAgB;;CA+L3B,CAAC;AAEH,eAAO,MAAM,eAAe,QAAO,uBAElC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,YAAY,oBAAoB,SAiCrE,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
- import { atom } from 'jotai';
3
- import { useSetAtom, useAtomValue } from '../store.js';
2
+ import { atom, useSetAtom, useAtomValue } from 'jotai';
4
3
  import { useLayoutEffect } from 'react';
5
4
  import { getWidgetState } from '../../events/getters/widgetState.js';
6
5
  import { assert } from 'ts-essentials';