@imtbl/checkout-widgets 2.4.13 → 2.4.14-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/{AddTokensWidget-Dw62MGE7.js → AddTokensWidget-ShqEH0bA.js} +4 -4
- package/dist/browser/{BridgeWidget-pB9NQr0j.js → BridgeWidget-DJLZDZAJ.js} +6 -6
- package/dist/browser/{CommerceWidget-CmGjTT5f.js → CommerceWidget-nbdP_6Ip.js} +13 -13
- package/dist/browser/{FeesBreakdown-D42F89mf.js → FeesBreakdown-DvFl9V2q.js} +1 -1
- package/dist/browser/{OnRampWidget-C11vbDpE.js → OnRampWidget-cqzl_-aK.js} +3 -3
- package/dist/browser/{SaleWidget-C-kIuH_x.js → SaleWidget-iKKGkvvk.js} +10 -10
- package/dist/browser/{SpendingCapHero-DxECFPhZ.js → SpendingCapHero-Daz_5xcg.js} +1 -1
- package/dist/browser/{SwapWidget-CaimjlZx.js → SwapWidget-Y6Xo5WSo.js} +43 -54
- package/dist/browser/{TokenImage-CJcf0BVb.js → TokenImage-DW2XzMbU.js} +1 -1
- package/dist/browser/{TopUpView-DIAfMQDk.js → TopUpView-BORiBYNf.js} +1 -1
- package/dist/browser/{WalletApproveHero-2qnl25R9.js → WalletApproveHero-4jx0GgAA.js} +2 -2
- package/dist/browser/{WalletWidget-EUpKwouL.js → WalletWidget-BwFVpnAI.js} +3 -3
- package/dist/browser/{auto-track-BLHegHT2.js → auto-track-DZymc0UC.js} +1 -1
- package/dist/browser/{index-Co43S-f8.js → index-B6p10_zD.js} +256 -241
- package/dist/browser/{index-BZQairfY.js → index-BQ53A9R_.js} +2 -2
- package/dist/browser/{index-C52OgfPn.js → index-Bhny47VI.js} +1 -1
- package/dist/browser/{index-C7zLn4CO.js → index-BjxyO_sP.js} +1 -1
- package/dist/browser/{index-iCexzEAZ.js → index-CGpeUDFk.js} +1 -1
- package/dist/browser/{index-COIl8mga.js → index-CZhAFfYE.js} +1 -1
- package/dist/browser/{index-B1kcsGhP.js → index-DQSmVvsC.js} +1 -1
- package/dist/browser/{index-B6adB8ks.js → index-bhVqRauZ.js} +1 -1
- package/dist/browser/index.js +1 -1
- package/dist/browser/{index.umd-ENtuIC6R.js → index.umd-DQuNDZ-6.js} +1 -1
- package/dist/browser/{useInterval-BaXQ-Cl5.js → useInterval-BPf23nxq.js} +1 -1
- package/dist/types/lib/squid/functions/execute.d.ts +8 -0
- package/dist/types/lib/squid/functions/routeCalculation.d.ts +22 -0
- package/dist/types/lib/squid/functions/slippage.d.ts +1 -0
- package/dist/types/lib/squid/hooks/useExecute.d.ts +1 -2
- package/dist/types/lib/squid/hooks/useRoutes.d.ts +1 -5
- package/dist/types/widgets/swap/context/SwapContext.d.ts +3 -9
- package/package.json +7 -7
- package/src/lib/squid/functions/execute.ts +88 -0
- package/src/lib/squid/functions/routeCalculation.ts +162 -0
- package/src/lib/squid/functions/slippage.ts +36 -0
- package/src/lib/squid/hooks/useExecute.ts +3 -85
- package/src/lib/squid/hooks/useRoutes.ts +5 -115
- package/src/widgets/add-tokens/views/Review.tsx +2 -1
- package/src/widgets/purchase/views/Purchase.tsx +8 -2
- package/src/widgets/swap/SwapWidget.tsx +0 -23
- package/src/widgets/swap/components/SwapForm.tsx +45 -21
- package/src/widgets/swap/context/SwapContext.ts +1 -16
- package/dist/types/lib/squid/hooks/useRouteCalculation.d.ts +0 -9
- package/dist/types/lib/squid/hooks/useSlippage.d.ts +0 -7
- package/src/lib/squid/hooks/useRouteCalculation.ts +0 -60
- package/src/lib/squid/hooks/useSlippage.ts +0 -45
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { k as useTranslation, x as jsxs,
|
|
2
|
-
import { S as SelectForm, T as TextInputForm, A as Accordion, b as gasAmountAccordionStyles, a as TransactionRejected, N as NetworkSwitchDrawer, W as WalletApproveHero, g as getAllowedBalances } from './WalletApproveHero-
|
|
3
|
-
import { u as useInterval } from './useInterval-
|
|
4
|
-
import { S as SwapWidgetViews, T as TopUpView } from './TopUpView-
|
|
5
|
-
import { F as FeesBreakdown } from './FeesBreakdown-
|
|
6
|
-
import { S as SpendingCapHero } from './SpendingCapHero-
|
|
1
|
+
import { k as useTranslation, x as jsxs, df as quickswapFooterStyles, B as Box, dg as quickswapFooterLogoStyles, v as jsx, A as Body, dh as quickswapFooterDisclaimerTextStyles, di as Po, X as getRemoteImage, r as reactExports, y as Button, aA as Drawer, W as CloudImage, H as Heading, cG as Logo, dj as getImxTokenImage, cd as formatUnits, j as calculateCryptoToFiat, J as tokenValueFormat, ck as isGasFree, b as parseUnits, h as formatZeroAmount, cB as ShimmerBox, bH as PriceDisplay, aF as Fragment, dk as getCryptoToUSDConversion, Z as ConnectLoaderContext, a$ as isNativeToken, cT as NATIVE, aU as ViewContext, D as useAnalytics, dl as calculateFeesFiat, U as UserJourney, cW as DEFAULT_QUOTE_REFRESH_INTERVAL, aK as isPassportProvider, dm as parseEther, P as amountInputValidation, b3 as ButtCon, bj as motion, b8 as Tooltip, bd as Icon, bO as K, V as ViewActions, a5 as SharedViews, K as getDefaultTokenImage, dn as ESTIMATE_DEBOUNCE, dp as DEFAULT_TOKEN_VALIDATION_DECIMALS, dq as Ka, dr as Ha, c_ as DEFAULT_TOKEN_DECIMALS, F as EventTargetContext, ds as sendSwapWidgetCloseEvent, O as orchestrationEvents, o as oo, M as HeaderNavigation, a0 as LoadingView, z as SimpleLayout, cZ as IMX_TOKEN_SYMBOL, cA as S, d2 as SimpleTextBody, d3 as FooterButton, dt as m, d0 as heroBackGroundStyles, d1 as heroImageStyles, bB as Trans, L as Link, c7 as FooterLogo, aV as useHandover, bJ as viewReducer, bK as initialViewState, du as DEFAULT_BALANCE_RETRY_POLICY, dv as yo, d8 as StatusView, dw as sendSwapSuccessEvent, c8 as StatusType, dx as sendSwapFailedEvent, dy as sendSwapRejectedEvent, a6 as ErrorView, bS as ServiceUnavailableErrorView, e as ae, cR as fe } from './index-B6p10_zD.js';
|
|
2
|
+
import { S as SelectForm, T as TextInputForm, A as Accordion, b as gasAmountAccordionStyles, a as TransactionRejected, N as NetworkSwitchDrawer, W as WalletApproveHero, g as getAllowedBalances } from './WalletApproveHero-4jx0GgAA.js';
|
|
3
|
+
import { u as useInterval } from './useInterval-BPf23nxq.js';
|
|
4
|
+
import { S as SwapWidgetViews, T as TopUpView } from './TopUpView-BORiBYNf.js';
|
|
5
|
+
import { F as FeesBreakdown } from './FeesBreakdown-DvFl9V2q.js';
|
|
6
|
+
import { S as SpendingCapHero } from './SpendingCapHero-Daz_5xcg.js';
|
|
7
7
|
|
|
8
8
|
function QuickswapFooter({ theme, environment }) {
|
|
9
9
|
const { t } = useTranslation();
|
|
@@ -21,7 +21,6 @@ const initialSwapState = {
|
|
|
21
21
|
supportedTopUps: null,
|
|
22
22
|
allowedTokens: [],
|
|
23
23
|
autoProceed: false,
|
|
24
|
-
riskAssessment: undefined,
|
|
25
24
|
};
|
|
26
25
|
var SwapActions;
|
|
27
26
|
(function (SwapActions) {
|
|
@@ -32,7 +31,6 @@ var SwapActions;
|
|
|
32
31
|
SwapActions["SET_TOKEN_BALANCES"] = "SET_TOKEN_BALANCES";
|
|
33
32
|
SwapActions["SET_ALLOWED_TOKENS"] = "SET_ALLOWED_TOKENS";
|
|
34
33
|
SwapActions["SET_AUTO_PROCEED"] = "SET_AUTO_PROCEED";
|
|
35
|
-
SwapActions["SET_RISK_ASSESSMENT"] = "SET_RISK_ASSESSMENT";
|
|
36
34
|
})(SwapActions || (SwapActions = {}));
|
|
37
35
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
38
36
|
const SwapContext = reactExports.createContext({
|
|
@@ -82,11 +80,6 @@ const swapReducer = (state, action) => {
|
|
|
82
80
|
autoProceed: action.payload.autoProceed,
|
|
83
81
|
direction: action.payload.direction,
|
|
84
82
|
};
|
|
85
|
-
case SwapActions.SET_RISK_ASSESSMENT:
|
|
86
|
-
return {
|
|
87
|
-
...state,
|
|
88
|
-
riskAssessment: action.payload.riskAssessment,
|
|
89
|
-
};
|
|
90
83
|
default:
|
|
91
84
|
return state;
|
|
92
85
|
}
|
|
@@ -522,7 +515,7 @@ class PriceImpactError extends Error {
|
|
|
522
515
|
}
|
|
523
516
|
function SwapForm({ data, theme, cancelAutoProceed }) {
|
|
524
517
|
const { t } = useTranslation();
|
|
525
|
-
const { swapState: { allowedTokens, tokenBalances, network, autoProceed,
|
|
518
|
+
const { swapState: { allowedTokens, tokenBalances, network, autoProceed, }, } = reactExports.useContext(SwapContext);
|
|
526
519
|
const { connectLoaderState } = reactExports.useContext(ConnectLoaderContext);
|
|
527
520
|
const { checkout, provider } = connectLoaderState;
|
|
528
521
|
const defaultTokenImage = getDefaultTokenImage(checkout?.config.environment, theme);
|
|
@@ -1132,17 +1125,6 @@ function SwapForm({ data, theme, cancelAutoProceed }) {
|
|
|
1132
1125
|
const sendTransaction = async () => {
|
|
1133
1126
|
if (!quote)
|
|
1134
1127
|
return;
|
|
1135
|
-
if (riskAssessment && Ot(riskAssessment)) {
|
|
1136
|
-
viewDispatch({
|
|
1137
|
-
payload: {
|
|
1138
|
-
type: ViewActions.UPDATE_VIEW,
|
|
1139
|
-
view: {
|
|
1140
|
-
type: SwapWidgetViews.SERVICE_UNAVAILABLE,
|
|
1141
|
-
},
|
|
1142
|
-
},
|
|
1143
|
-
});
|
|
1144
|
-
return;
|
|
1145
|
-
}
|
|
1146
1128
|
const transaction = quote;
|
|
1147
1129
|
const isValid = SwapFormValidator();
|
|
1148
1130
|
// Tracking swap from data here and is valid or not to understand behaviour
|
|
@@ -1152,12 +1134,12 @@ function SwapForm({ data, theme, cancelAutoProceed }) {
|
|
|
1152
1134
|
control: 'Swap',
|
|
1153
1135
|
controlType: 'Button',
|
|
1154
1136
|
extras: {
|
|
1155
|
-
swapFromAddress:
|
|
1156
|
-
swapFromAmount:
|
|
1157
|
-
swapFromTokenSymbol:
|
|
1158
|
-
swapToAddress:
|
|
1159
|
-
swapToAmount:
|
|
1160
|
-
swapToTokenSymbol:
|
|
1137
|
+
swapFromAddress: fromToken?.address,
|
|
1138
|
+
swapFromAmount: fromAmount,
|
|
1139
|
+
swapFromTokenSymbol: fromToken?.symbol,
|
|
1140
|
+
swapToAddress: toToken?.address,
|
|
1141
|
+
swapToAmount: toAmount,
|
|
1142
|
+
swapToTokenSymbol: toToken?.symbol,
|
|
1161
1143
|
isSwapFormValid: isValid,
|
|
1162
1144
|
hasFundsForGas: !insufficientFundsForGas,
|
|
1163
1145
|
autoProceed,
|
|
@@ -1172,6 +1154,31 @@ function SwapForm({ data, theme, cancelAutoProceed }) {
|
|
|
1172
1154
|
openNotEnoughImxDrawer();
|
|
1173
1155
|
return;
|
|
1174
1156
|
}
|
|
1157
|
+
// Perform sanctions check once we have valid asset and amount data
|
|
1158
|
+
const address = await (await provider?.getSigner())?.getAddress();
|
|
1159
|
+
if (!address) {
|
|
1160
|
+
return;
|
|
1161
|
+
}
|
|
1162
|
+
if (!fromToken?.address || !fromAmount) {
|
|
1163
|
+
throw new Error('Invalid form data: fromToken.Address or fromAmount is missing');
|
|
1164
|
+
}
|
|
1165
|
+
const riskAssessmentData = [{
|
|
1166
|
+
address,
|
|
1167
|
+
tokenAddr: fromToken.address,
|
|
1168
|
+
amount: parseUnits(fromAmount, fromToken.decimals),
|
|
1169
|
+
}];
|
|
1170
|
+
const riskAssessment = await Ka(riskAssessmentData, checkout.config);
|
|
1171
|
+
if (riskAssessment && Ha(riskAssessment, address)) {
|
|
1172
|
+
viewDispatch({
|
|
1173
|
+
payload: {
|
|
1174
|
+
type: ViewActions.UPDATE_VIEW,
|
|
1175
|
+
view: {
|
|
1176
|
+
type: SwapWidgetViews.SERVICE_UNAVAILABLE,
|
|
1177
|
+
},
|
|
1178
|
+
},
|
|
1179
|
+
});
|
|
1180
|
+
return;
|
|
1181
|
+
}
|
|
1175
1182
|
try {
|
|
1176
1183
|
// check for switch network here
|
|
1177
1184
|
const currentChainId = await provider.provider.send('eth_chainId', []);
|
|
@@ -1237,7 +1244,7 @@ function SwapForm({ data, theme, cancelAutoProceed }) {
|
|
|
1237
1244
|
paddingBottom: 'base.spacing.x1',
|
|
1238
1245
|
}, children: t('views.SWAP.swapForm.from.label') }), jsx(SelectInput, { testId: "fromTokenInputs", options: tokensOptionsFrom, selectSubtext: fromToken
|
|
1239
1246
|
? `${t('views.SWAP.content.availableBalancePrefix')} ${tokenValueFormat(fromBalance)}`
|
|
1240
|
-
: '', selectTextAlign: "left", textInputType: "number", testInputMode: "decimal", textInputValue: fromAmount, textInputPlaceholder: t('views.SWAP.swapForm.from.inputPlaceholder'), textInputSubtext: `${t('views.SWAP.content.fiatPricePrefix')}
|
|
1247
|
+
: '', selectTextAlign: "left", textInputType: "number", testInputMode: "decimal", textInputValue: fromAmount, textInputPlaceholder: t('views.SWAP.swapForm.from.inputPlaceholder'), textInputSubtext: `${t('views.SWAP.content.fiatPricePrefix')}
|
|
1241
1248
|
$${formatZeroAmount(fromFiatValue, true)}`, textInputTextAlign: "right", textInputValidator: amountInputValidation, onTextInputChange: (v) => onFromTextInputChange(v), onTextInputFocus: onFromTextInputFocus, textInputMaxButtonClick: textInputMaxButtonClick, onSelectChange: onFromSelectChange, textInputErrorMessage: t(fromAmountError), selectErrorMessage: t(fromTokenError), selectedOption: fromToken
|
|
1242
1249
|
? formatTokenOptionsId(fromToken.symbol, fromToken.address)
|
|
1243
1250
|
: undefined, coinSelectorHeading: t('views.SWAP.swapForm.from.selectorTitle'), defaultTokenImage: defaultTokenImage, control: "FromToken", userJourney: UserJourney.SWAP, screen: "SwapCoins", environment: checkout?.config.environment, theme: theme })] }), jsx(Box, { sx: {
|
|
@@ -1851,30 +1858,12 @@ function SwapWidget({ amount, fromTokenAddress, toTokenAddress, config, autoProc
|
|
|
1851
1858
|
}
|
|
1852
1859
|
})();
|
|
1853
1860
|
}, [checkout, provider]);
|
|
1854
|
-
reactExports.useEffect(() => {
|
|
1855
|
-
if (!checkout || swapState.riskAssessment) {
|
|
1856
|
-
return;
|
|
1857
|
-
}
|
|
1858
|
-
(async () => {
|
|
1859
|
-
const address = await (await provider?.getSigner())?.getAddress();
|
|
1860
|
-
if (!address) {
|
|
1861
|
-
return;
|
|
1862
|
-
}
|
|
1863
|
-
const assessment = await xt([address], checkout.config);
|
|
1864
|
-
swapDispatch({
|
|
1865
|
-
payload: {
|
|
1866
|
-
type: SwapActions.SET_RISK_ASSESSMENT,
|
|
1867
|
-
riskAssessment: assessment,
|
|
1868
|
-
},
|
|
1869
|
-
});
|
|
1870
|
-
})();
|
|
1871
|
-
}, [checkout, provider]);
|
|
1872
1861
|
reactExports.useEffect(() => {
|
|
1873
1862
|
swapDispatch({
|
|
1874
1863
|
payload: {
|
|
1875
1864
|
type: SwapActions.SET_AUTO_PROCEED,
|
|
1876
1865
|
autoProceed: autoProceed ?? false,
|
|
1877
|
-
direction: direction ??
|
|
1866
|
+
direction: direction ?? yo.FROM,
|
|
1878
1867
|
},
|
|
1879
1868
|
});
|
|
1880
1869
|
}, [autoProceed, direction]);
|
|
@@ -1884,13 +1873,13 @@ function SwapWidget({ amount, fromTokenAddress, toTokenAddress, config, autoProc
|
|
|
1884
1873
|
payload: {
|
|
1885
1874
|
type: SwapActions.SET_AUTO_PROCEED,
|
|
1886
1875
|
autoProceed: false,
|
|
1887
|
-
direction:
|
|
1876
|
+
direction: yo.FROM,
|
|
1888
1877
|
},
|
|
1889
1878
|
});
|
|
1890
1879
|
}
|
|
1891
1880
|
}, [autoProceed, swapDispatch]);
|
|
1892
|
-
const fromAmount = direction ===
|
|
1893
|
-
const toAmount = direction ===
|
|
1881
|
+
const fromAmount = direction === yo.FROM || direction == null ? amount : undefined;
|
|
1882
|
+
const toAmount = direction === yo.TO ? amount : undefined;
|
|
1894
1883
|
const topUpOptions = reactExports.useMemo(() => {
|
|
1895
1884
|
const optionsArray = [];
|
|
1896
1885
|
const isNotPassport = !isPassportProvider(provider)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as reactExports, K as getDefaultTokenImage, v as jsx } from './index-
|
|
1
|
+
import { r as reactExports, K as getDefaultTokenImage, v as jsx } from './index-B6p10_zD.js';
|
|
2
2
|
|
|
3
3
|
function TokenImage({ src, name, environment, theme, defaultImage, ...forwardedProps }) {
|
|
4
4
|
const [error, setError] = reactExports.useState(false);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as reactExports,
|
|
1
|
+
import { r as reactExports, cd as formatUnits, v as jsx, x as jsxs, dJ as isDualVariantIcon, aP as MenuItem, B as Box, k as useTranslation, aU as ViewContext, G as CryptoFiatContext, F as EventTargetContext, D as useAnalytics, a1 as CryptoFiatActions, dK as DEFAULT_TOKEN_SYMBOLS, cV as st, M as HeaderNavigation, H as Heading, A as Body, z as SimpleLayout, o as oo, V as ViewActions, O as orchestrationEvents, bO as K } from './index-B6p10_zD.js';
|
|
2
2
|
|
|
3
3
|
var BridgeWidgetViews;
|
|
4
4
|
(function (BridgeWidgetViews) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ac as hFlex, v as jsx,
|
|
2
|
-
import { T as TokenImage } from './TokenImage-
|
|
1
|
+
import { ac as hFlex, v as jsx, dz as motion, ae as _objectWithoutProperties, Q as useTheme, r as reactExports, ag as _slicedToArray, aq as useGetSubcomponentChild, al as merge, x as jsxs, dA as BaseClickable, b3 as ButtCon, au as SmartClone, dB as AnimatePresence, B as Box, S as Stack, dC as ClassNames, ad as _defineProperty, dD as getTertiaryButtonStyles, ar as flattenChildren, dE as isChildSubcomponent, aB as Divider, b4 as TextInput, dF as FormControlWrapper, k as useTranslation, aP as MenuItem, aA as Drawer, A as Body, aF as Fragment, D as useAnalytics, dG as Select, bO as K, di as Po, dH as DuoCon, H as Heading, y as Button, cL as retry, cT as NATIVE, b0 as getTokenImageByAddress, a$ as isNativeToken, du as DEFAULT_BALANCE_RETRY_POLICY, cQ as isMetaMaskProvider, W as CloudImage, c7 as FooterLogo, X as getRemoteImage, cO as getChainNameById, cI as isWalletConnectProvider, d0 as heroBackGroundStyles, d1 as heroImageStyles, dI as heroImageBottomAlign } from './index-B6p10_zD.js';
|
|
2
|
+
import { T as TokenImage } from './TokenImage-DW2XzMbU.js';
|
|
3
3
|
|
|
4
4
|
function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
5
|
function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ae as _objectWithoutProperties, Q as useTheme,
|
|
2
|
-
import { T as TokenImage } from './TokenImage-
|
|
3
|
-
import { u as useInterval } from './useInterval-
|
|
1
|
+
import { ae as _objectWithoutProperties, Q as useTheme, dL as getStartingSize, dM as DEFAULT_BUTTON_SIZE, al as merge, r as reactExports, ar as flattenChildren, v as jsx, dE as isChildSubcomponent, au as SmartClone, B as Box, dN as getResponsiveSx, dO as BUTTON_SIZES, dP as setDefaultSxBackgroundColor, b3 as ButtCon, dC as ClassNames, y as Button, ad as _defineProperty, e as ae, k as useTranslation, aU as ViewContext, x as jsxs, A as Body, V as ViewActions, Z as ConnectLoaderContext, D as useAnalytics, F as EventTargetContext, bO as K, aP as MenuItem, J as tokenValueFormat, U as UserJourney, O as orchestrationEvents, o as oo, h as formatZeroAmount, aK as isPassportProvider, dQ as ZERO_BALANCE_STRING, a$ as isNativeToken, dR as sendNetworkSwitchEvent, cA as S, a5 as SharedViews, dS as ge, dT as sortNetworksCompareFn, cD as getChainImage, cL as retry, du as DEFAULT_BALANCE_RETRY_POLICY, dU as sortTokensByAmount, b0 as getTokenImageByAddress, j as calculateCryptoToFiat, G as CryptoFiatContext, a1 as CryptoFiatActions, M as HeaderNavigation, cS as ButtonNavigationStyles, dV as sendWalletWidgetCloseEvent, c7 as FooterLogo, z as SimpleLayout, cR as fe, cP as getWalletProviderNameByProvider, dJ as isDualVariantIcon, cc as abbreviateWalletAddress, H as Heading, aA as Drawer, cF as useWalletConnect, dW as sendDisconnectWalletEvent, cI as isWalletConnectProvider, d0 as heroBackGroundStyles, d1 as heroImageStyles, dI as heroImageBottomAlign, d2 as SimpleTextBody, dX as FAQS_LINK, L as Link, bJ as viewReducer, bK as initialViewState, Y as CryptoFiatProvider, a0 as LoadingView, a6 as ErrorView } from './index-B6p10_zD.js';
|
|
2
|
+
import { T as TokenImage } from './TokenImage-DW2XzMbU.js';
|
|
3
|
+
import { u as useInterval } from './useInterval-BPf23nxq.js';
|
|
4
4
|
|
|
5
5
|
var horizontalMenuSxProps = {
|
|
6
6
|
justifyContent: "stretch",
|