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