Compare commits
5
Commits
privy-debug
..
privy
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b3ec5193a1 | ||
|
|
7c64301b33 | ||
|
|
3ec7fab2f2 | ||
|
|
20585c8ac9 | ||
|
|
fd181fa745 |
@@ -1 +0,0 @@
|
|||||||
if('serviceWorker' in navigator) navigator.serviceWorker.register('/dev-sw.js?dev-sw', { scope: '/', type: 'classic' })
|
|
||||||
+2
-3
@@ -39,12 +39,12 @@
|
|||||||
"@cosmjs/proto-signing": "^0.31.0",
|
"@cosmjs/proto-signing": "^0.31.0",
|
||||||
"@cosmjs/stargate": "^0.31.0",
|
"@cosmjs/stargate": "^0.31.0",
|
||||||
"@cosmjs/tendermint-rpc": "^0.31.0",
|
"@cosmjs/tendermint-rpc": "^0.31.0",
|
||||||
"@dydxprotocol/v4-abacus": "^1.2.5",
|
"@dydxprotocol/v4-abacus": "^1.2.4",
|
||||||
"@dydxprotocol/v4-client-js": "^1.0.11",
|
"@dydxprotocol/v4-client-js": "^1.0.11",
|
||||||
"@dydxprotocol/v4-localization": "^1.1.11",
|
"@dydxprotocol/v4-localization": "^1.1.11",
|
||||||
"@ethersproject/providers": "^5.7.2",
|
"@ethersproject/providers": "^5.7.2",
|
||||||
"@js-joda/core": "^5.5.3",
|
"@js-joda/core": "^5.5.3",
|
||||||
"@privy-io/react-auth": "^1.53.1",
|
"@privy-io/react-auth": "^1.53.0",
|
||||||
"@privy-io/wagmi-connector": "^0.1.12",
|
"@privy-io/wagmi-connector": "^0.1.12",
|
||||||
"@radix-ui/react-accordion": "^1.1.2",
|
"@radix-ui/react-accordion": "^1.1.2",
|
||||||
"@radix-ui/react-checkbox": "^1.0.4",
|
"@radix-ui/react-checkbox": "^1.0.4",
|
||||||
@@ -153,7 +153,6 @@
|
|||||||
"url-polyfill": "^1.1.12",
|
"url-polyfill": "^1.1.12",
|
||||||
"util": "^0.12.5",
|
"util": "^0.12.5",
|
||||||
"vite": "^4.3.9",
|
"vite": "^4.3.9",
|
||||||
"vite-plugin-pwa": "^0.17.4",
|
|
||||||
"vite-plugin-svgr": "^3.2.0",
|
"vite-plugin-svgr": "^3.2.0",
|
||||||
"vitest": "^0.32.2",
|
"vitest": "^0.32.2",
|
||||||
"w3name": "^1.0.8",
|
"w3name": "^1.0.8",
|
||||||
|
|||||||
Generated
+16
-1979
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,7 @@ import { lazy, Suspense } from 'react';
|
|||||||
import { Navigate, Route, Routes } from 'react-router-dom';
|
import { Navigate, Route, Routes } from 'react-router-dom';
|
||||||
import styled, { AnyStyledComponent, css } from 'styled-components';
|
import styled, { AnyStyledComponent, css } from 'styled-components';
|
||||||
import { WagmiConfig } from 'wagmi';
|
import { WagmiConfig } from 'wagmi';
|
||||||
|
import type { PrivyClientConfig } from '@privy-io/react-auth';
|
||||||
import { PrivyProvider } from '@privy-io/react-auth';
|
import { PrivyProvider } from '@privy-io/react-auth';
|
||||||
import { PrivyWagmiConnector } from '@privy-io/wagmi-connector';
|
import { PrivyWagmiConnector } from '@privy-io/wagmi-connector';
|
||||||
import { QueryClient, QueryClientProvider } from 'react-query';
|
import { QueryClient, QueryClientProvider } from 'react-query';
|
||||||
|
|||||||
@@ -164,7 +164,6 @@ const useAccountsContext = () => {
|
|||||||
|
|
||||||
// dYdX wallet / onboarding state
|
// dYdX wallet / onboarding state
|
||||||
const [localDydxWallet, setLocalDydxWallet] = useState<LocalWallet>();
|
const [localDydxWallet, setLocalDydxWallet] = useState<LocalWallet>();
|
||||||
const [localNobleWallet, setLocalNobleWallet] = useState<LocalWallet>();
|
|
||||||
const [hdKey, setHdKey] = useState<PrivateInformation>();
|
const [hdKey, setHdKey] = useState<PrivateInformation>();
|
||||||
|
|
||||||
const dydxAccounts = useMemo(() => localDydxWallet?.accounts, [localDydxWallet]);
|
const dydxAccounts = useMemo(() => localDydxWallet?.accounts, [localDydxWallet]);
|
||||||
@@ -174,11 +173,6 @@ const useAccountsContext = () => {
|
|||||||
[localDydxWallet]
|
[localDydxWallet]
|
||||||
);
|
);
|
||||||
|
|
||||||
const nobleAddress = useMemo(
|
|
||||||
() => localNobleWallet?.address,
|
|
||||||
[localNobleWallet]
|
|
||||||
);
|
|
||||||
|
|
||||||
const setWalletFromEvmSignature = async (signature: string) => {
|
const setWalletFromEvmSignature = async (signature: string) => {
|
||||||
const { wallet, mnemonic, privateKey, publicKey } = await getWalletFromEvmSignature({
|
const { wallet, mnemonic, privateKey, publicKey } = await getWalletFromEvmSignature({
|
||||||
signature,
|
signature,
|
||||||
@@ -193,6 +187,7 @@ const useAccountsContext = () => {
|
|||||||
}
|
}
|
||||||
}, [evmAddress, dydxAddress]);
|
}, [evmAddress, dydxAddress]);
|
||||||
|
|
||||||
|
// 1. Switch network
|
||||||
const selectedNetwork = useSelector(getSelectedNetwork);
|
const selectedNetwork = useSelector(getSelectedNetwork);
|
||||||
|
|
||||||
const chainId = Number(ENVIRONMENT_CONFIG_MAP[selectedNetwork].ethereumChainId);
|
const chainId = Number(ENVIRONMENT_CONFIG_MAP[selectedNetwork].ethereumChainId);
|
||||||
@@ -252,15 +247,7 @@ const useAccountsContext = () => {
|
|||||||
dispatch(setOnboardingState(OnboardingState.Disconnected));
|
dispatch(setOnboardingState(OnboardingState.Disconnected));
|
||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
}, [
|
}, [evmAddress, evmDerivedAddresses, signerWagmi, connectedDydxAddress, signerGraz]);
|
||||||
evmAddress,
|
|
||||||
evmDerivedAddresses,
|
|
||||||
signerWagmi,
|
|
||||||
connectedDydxAddress,
|
|
||||||
signerGraz,
|
|
||||||
authenticated,
|
|
||||||
ready,
|
|
||||||
]);
|
|
||||||
|
|
||||||
// abacus
|
// abacus
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -273,7 +260,6 @@ const useAccountsContext = () => {
|
|||||||
if (hdKey?.mnemonic) {
|
if (hdKey?.mnemonic) {
|
||||||
const nobleWallet = await LocalWallet.fromMnemonic(hdKey.mnemonic, NOBLE_BECH32_PREFIX);
|
const nobleWallet = await LocalWallet.fromMnemonic(hdKey.mnemonic, NOBLE_BECH32_PREFIX);
|
||||||
abacusStateManager.setNobleWallet(nobleWallet);
|
abacusStateManager.setNobleWallet(nobleWallet);
|
||||||
setLocalNobleWallet(nobleWallet);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
setNobleWallet();
|
setNobleWallet();
|
||||||
@@ -372,7 +358,6 @@ const useAccountsContext = () => {
|
|||||||
localDydxWallet,
|
localDydxWallet,
|
||||||
dydxAccounts,
|
dydxAccounts,
|
||||||
dydxAddress,
|
dydxAddress,
|
||||||
nobleAddress,
|
|
||||||
|
|
||||||
// Onboarding state
|
// Onboarding state
|
||||||
saveHasAcknowledgedTerms,
|
saveHasAcknowledgedTerms,
|
||||||
|
|||||||
@@ -119,6 +119,7 @@ export const useWalletConnection = () => {
|
|||||||
throw new Error('Onboarding: No wallet connection found.');
|
throw new Error('Onboarding: No wallet connection found.');
|
||||||
} else if (walletConnection.type === WalletConnectionType.Privy) {
|
} else if (walletConnection.type === WalletConnectionType.Privy) {
|
||||||
|
|
||||||
|
console.log({ isConnectedWagmi, authenticated, ready });
|
||||||
if (!isConnectedWagmi && !authenticated && ready) {
|
if (!isConnectedWagmi && !authenticated && ready) {
|
||||||
login();
|
login();
|
||||||
}
|
}
|
||||||
@@ -164,7 +165,7 @@ export const useWalletConnection = () => {
|
|||||||
walletConnectionType: walletConnection.type,
|
walletConnectionType: walletConnection.type,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
[isConnectedGraz, signerGraz, isConnectedWagmi, signerWagmi, login, ready, authenticated]
|
[isConnectedGraz, signerGraz, isConnectedWagmi, signerWagmi]
|
||||||
);
|
);
|
||||||
|
|
||||||
const disconnectWallet = useCallback(async () => {
|
const disconnectWallet = useCallback(async () => {
|
||||||
|
|||||||
@@ -11,16 +11,16 @@ class TestFlags {
|
|||||||
const params = new URLSearchParams(queryParamsString);
|
const params = new URLSearchParams(queryParamsString);
|
||||||
|
|
||||||
for (const [key, value] of params) {
|
for (const [key, value] of params) {
|
||||||
this.queryParams[key.toLowerCase()] = value;
|
this.queryParams[key] = value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
get displayInitializingMarkets() {
|
get displayInitializingMarkets() {
|
||||||
return !!this.queryParams.displayinitializingmarkets;
|
return !!this.queryParams.displayInitializingMarkets;
|
||||||
}
|
}
|
||||||
|
|
||||||
get showMobileSignInOption() {
|
get withCCTP() {
|
||||||
return !!this.queryParams.mobilesignin;
|
return !!this.queryParams.withCCTP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-4
@@ -92,10 +92,7 @@ export const privyConfig: PrivyClientConfig = {
|
|||||||
requireUserPasswordOnCreate: true,
|
requireUserPasswordOnCreate: true,
|
||||||
noPromptOnSignature: true,
|
noPromptOnSignature: true,
|
||||||
},
|
},
|
||||||
loginMethods: ['email', 'sms', 'twitter', 'google', 'apple'],
|
loginMethods: ['email', 'sms', 'twitter'],
|
||||||
appearance: {
|
|
||||||
theme: '#28283c',
|
|
||||||
},
|
|
||||||
defaultChain: sepolia
|
defaultChain: sepolia
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ export const MarketDetails: React.FC = () => {
|
|||||||
if (!configs) return null;
|
if (!configs) return null;
|
||||||
|
|
||||||
const {
|
const {
|
||||||
|
basePositionNotional,
|
||||||
tickSize,
|
tickSize,
|
||||||
stepSize,
|
stepSize,
|
||||||
initialMarginFraction,
|
initialMarginFraction,
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
|
import { useState } from 'react';
|
||||||
import styled, { AnyStyledComponent } from 'styled-components';
|
import styled, { AnyStyledComponent } from 'styled-components';
|
||||||
|
import { useDispatch } from 'react-redux';
|
||||||
|
|
||||||
import { AlertType } from '@/constants/alerts';
|
import { AlertType } from '@/constants/alerts';
|
||||||
import { STRING_KEYS } from '@/constants/localization';
|
import { STRING_KEYS } from '@/constants/localization';
|
||||||
@@ -11,7 +13,7 @@ import { Button } from '@/components/Button';
|
|||||||
import { Icon } from '@/components/Icon';
|
import { Icon } from '@/components/Icon';
|
||||||
import { Link } from '@/components/Link';
|
import { Link } from '@/components/Link';
|
||||||
|
|
||||||
import { useAccounts, useBreakpoints, useStringGetter, useURLConfigs } from '@/hooks';
|
import { useAccounts, useStringGetter, useURLConfigs } from '@/hooks';
|
||||||
import { useDisplayedWallets } from '@/hooks/useDisplayedWallets';
|
import { useDisplayedWallets } from '@/hooks/useDisplayedWallets';
|
||||||
|
|
||||||
import { breakpoints } from '@/styles';
|
import { breakpoints } from '@/styles';
|
||||||
@@ -25,8 +27,6 @@ export const ChooseWallet = () => {
|
|||||||
|
|
||||||
const { selectWalletType, selectedWalletType, selectedWalletError } = useAccounts();
|
const { selectWalletType, selectedWalletType, selectedWalletError } = useAccounts();
|
||||||
|
|
||||||
const { isMobile } = useBreakpoints();
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{selectedWalletType && selectedWalletError && (
|
{selectedWalletType && selectedWalletError && (
|
||||||
@@ -59,7 +59,7 @@ export const ChooseWallet = () => {
|
|||||||
<div>
|
<div>
|
||||||
{walletType !== WalletType.Privy && import.meta.env.VITE_PRIVY_APP_ID
|
{walletType !== WalletType.Privy && import.meta.env.VITE_PRIVY_APP_ID
|
||||||
? stringGetter({ key: wallets[walletType].stringKey })
|
? stringGetter({ key: wallets[walletType].stringKey })
|
||||||
: `Socials ${isMobile ? '' : '(Email, SMS, etc.)'}`}
|
: 'Socials (Email, SMS, etc.)'}
|
||||||
</div>
|
</div>
|
||||||
</Styled.WalletButton>
|
</Styled.WalletButton>
|
||||||
))}
|
))}
|
||||||
|
|||||||
@@ -34,30 +34,11 @@ export const ChainSelectMenu = ({ label, selectedChain, onSelectChain }: Element
|
|||||||
slotBefore: <Styled.Img src={chain.iconUrl} alt="" />,
|
slotBefore: <Styled.Img src={chain.iconUrl} alt="" />,
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const selectedOption = selectedChain === 'coinbase' ? {
|
const selectedOption = chains.find((item) => item.type === selectedChain);
|
||||||
stringKey: 'Coinbase',
|
|
||||||
iconUrl: '/wallets/coinbase-wallet.png',
|
|
||||||
} : chains.find((item) => item.type === selectedChain);
|
|
||||||
|
|
||||||
const exchanges = [
|
|
||||||
{
|
|
||||||
value: 'coinbase',
|
|
||||||
label: 'Coinbase',
|
|
||||||
onSelect: () => {
|
|
||||||
onSelectChain('coinbase');
|
|
||||||
},
|
|
||||||
slotBefore: <Styled.Img src="/wallets/coinbase-wallet.png" alt="" />,
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<SearchSelectMenu
|
<SearchSelectMenu
|
||||||
items={[
|
items={[
|
||||||
{
|
|
||||||
group: 'exchanges',
|
|
||||||
groupLabel: 'Exchanges',
|
|
||||||
items: exchanges,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
group: 'chains',
|
group: 'chains',
|
||||||
groupLabel: stringGetter({ key: STRING_KEYS.CHAINS }),
|
groupLabel: stringGetter({ key: STRING_KEYS.CHAINS }),
|
||||||
|
|||||||
@@ -38,14 +38,12 @@ import abacusStateManager from '@/lib/abacus';
|
|||||||
import { MustBigNumber } from '@/lib/numbers';
|
import { MustBigNumber } from '@/lib/numbers';
|
||||||
import { getNobleChainId, NATIVE_TOKEN_ADDRESS } from '@/lib/squid';
|
import { getNobleChainId, NATIVE_TOKEN_ADDRESS } from '@/lib/squid';
|
||||||
import { log } from '@/lib/telemetry';
|
import { log } from '@/lib/telemetry';
|
||||||
import { parseWalletError, truncateAddress } from '@/lib/wallet';
|
import { parseWalletError } from '@/lib/wallet';
|
||||||
|
|
||||||
import { ChainSelectMenu } from './ChainSelectMenu';
|
import { ChainSelectMenu } from './ChainSelectMenu';
|
||||||
import { TokenSelectMenu } from './TokenSelectMenu';
|
import { TokenSelectMenu } from './TokenSelectMenu';
|
||||||
|
|
||||||
import { DepositButtonAndReceipt } from './DepositForm/DepositButtonAndReceipt';
|
import { DepositButtonAndReceipt } from './DepositForm/DepositButtonAndReceipt';
|
||||||
import { QrCode } from '@/components/QrCode';
|
|
||||||
import { CopyButton } from '@/components/CopyButton';
|
|
||||||
|
|
||||||
type DepositFormProps = {
|
type DepositFormProps = {
|
||||||
onDeposit?: () => void;
|
onDeposit?: () => void;
|
||||||
@@ -57,9 +55,8 @@ export const DepositForm = ({ onDeposit, onError }: DepositFormProps) => {
|
|||||||
const [error, setError] = useState<Error | null>(null);
|
const [error, setError] = useState<Error | null>(null);
|
||||||
const [isLoading, setIsLoading] = useState(false);
|
const [isLoading, setIsLoading] = useState(false);
|
||||||
const { selectedNetwork } = useSelectedNetwork();
|
const { selectedNetwork } = useSelectedNetwork();
|
||||||
const [isCoinbase, setIsCoinbase] = useState(false);
|
|
||||||
|
|
||||||
const { evmAddress, signerWagmi, publicClientWagmi, nobleAddress } = useAccounts();
|
const { evmAddress, signerWagmi, publicClientWagmi } = useAccounts();
|
||||||
|
|
||||||
const { addTransferNotification } = useLocalNotifications();
|
const { addTransferNotification } = useLocalNotifications();
|
||||||
|
|
||||||
@@ -136,10 +133,7 @@ export const DepositForm = ({ onDeposit, onError }: DepositFormProps) => {
|
|||||||
}, [error]);
|
}, [error]);
|
||||||
|
|
||||||
const onSelectChain = useCallback((chain: string) => {
|
const onSelectChain = useCallback((chain: string) => {
|
||||||
if (chain === 'coinbase') {
|
if (chain) {
|
||||||
setIsCoinbase(true);
|
|
||||||
} else if (chain) {
|
|
||||||
setIsCoinbase(false);
|
|
||||||
abacusStateManager.clearTransferInputValues();
|
abacusStateManager.clearTransferInputValues();
|
||||||
abacusStateManager.setTransferValue({
|
abacusStateManager.setTransferValue({
|
||||||
field: TransferInputField.chain,
|
field: TransferInputField.chain,
|
||||||
@@ -370,43 +364,9 @@ export const DepositForm = ({ onDeposit, onError }: DepositFormProps) => {
|
|||||||
return <LoadingSpace id="DepositForm" />;
|
return <LoadingSpace id="DepositForm" />;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isCoinbase) {
|
|
||||||
return (
|
|
||||||
<Styled.Form onSubmit={onSubmit}>
|
|
||||||
<ChainSelectMenu
|
|
||||||
selectedChain={isCoinbase ? 'coinbase' : chainIdStr || undefined}
|
|
||||||
onSelectChain={onSelectChain}
|
|
||||||
/>
|
|
||||||
{nobleAddress && (
|
|
||||||
<>
|
|
||||||
<Styled.ReceiveQr
|
|
||||||
side="bottom"
|
|
||||||
detailItems={[
|
|
||||||
{
|
|
||||||
key: 'nobleAddress',
|
|
||||||
label: "Noble Address",
|
|
||||||
value: nobleAddress,
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
>
|
|
||||||
<QrCode size={432} value={nobleAddress} />
|
|
||||||
</Styled.ReceiveQr>
|
|
||||||
<p>
|
|
||||||
* This address only supports transfers of USDC to the Noble chain.
|
|
||||||
</p>
|
|
||||||
<CopyButton value={nobleAddress} />
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</Styled.Form>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Styled.Form onSubmit={onSubmit}>
|
<Styled.Form onSubmit={onSubmit}>
|
||||||
<ChainSelectMenu
|
<ChainSelectMenu selectedChain={chainIdStr || undefined} onSelectChain={onSelectChain} />
|
||||||
selectedChain={isCoinbase ? 'coinbase' : chainIdStr || undefined}
|
|
||||||
onSelectChain={onSelectChain}
|
|
||||||
/>
|
|
||||||
<TokenSelectMenu selectedToken={sourceToken || undefined} onSelectToken={onSelectToken} />
|
<TokenSelectMenu selectedToken={sourceToken || undefined} onSelectToken={onSelectToken} />
|
||||||
<Styled.WithDetailsReceipt side="bottom" detailItems={amountInputReceipt}>
|
<Styled.WithDetailsReceipt side="bottom" detailItems={amountInputReceipt}>
|
||||||
<FormInput
|
<FormInput
|
||||||
@@ -467,13 +427,3 @@ Styled.TransactionInfo = styled.span`
|
|||||||
Styled.FormInputButton = styled(Button)`
|
Styled.FormInputButton = styled(Button)`
|
||||||
${formMixins.inputInnerButton}
|
${formMixins.inputInnerButton}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
Styled.Exchange = styled.div`
|
|
||||||
${layoutMixins.flexColumn}
|
|
||||||
gap: 1rem;
|
|
||||||
|
|
||||||
align-items: center;
|
|
||||||
`;
|
|
||||||
|
|
||||||
Styled.ReceiveQr = styled(WithDetailsReceipt)`
|
|
||||||
`;
|
|
||||||
|
|||||||
@@ -10,9 +10,6 @@ import { STRING_KEYS, StringGetterFunction, TOOLTIP_STRING_KEYS } from '@/consta
|
|||||||
import { isMainnet } from '@/constants/networks';
|
import { isMainnet } from '@/constants/networks';
|
||||||
import { DydxChainAsset, wallets } from '@/constants/wallets';
|
import { DydxChainAsset, wallets } from '@/constants/wallets';
|
||||||
|
|
||||||
import { layoutMixins } from '@/styles/layoutMixins';
|
|
||||||
import { headerMixins } from '@/styles/headerMixins';
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
useAccounts,
|
useAccounts,
|
||||||
useBreakpoints,
|
useBreakpoints,
|
||||||
@@ -38,8 +35,10 @@ import { getOnboardingState, getSubaccount } from '@/state/accountSelectors';
|
|||||||
|
|
||||||
import { isTruthy } from '@/lib/isTruthy';
|
import { isTruthy } from '@/lib/isTruthy';
|
||||||
import { truncateAddress } from '@/lib/wallet';
|
import { truncateAddress } from '@/lib/wallet';
|
||||||
|
|
||||||
|
import { layoutMixins } from '@/styles/layoutMixins';
|
||||||
|
import { headerMixins } from '@/styles/headerMixins';
|
||||||
import { MustBigNumber } from '@/lib/numbers';
|
import { MustBigNumber } from '@/lib/numbers';
|
||||||
import { testFlags } from '@/lib/testFlags';
|
|
||||||
|
|
||||||
export const AccountMenu = () => {
|
export const AccountMenu = () => {
|
||||||
const stringGetter = useStringGetter();
|
const stringGetter = useStringGetter();
|
||||||
@@ -179,7 +178,7 @@ export const AccountMenu = () => {
|
|||||||
},
|
},
|
||||||
...(onboardingState === OnboardingState.AccountConnected && hdKey
|
...(onboardingState === OnboardingState.AccountConnected && hdKey
|
||||||
? [
|
? [
|
||||||
(!isMainnet || testFlags.showMobileSignInOption) && {
|
!isMainnet && {
|
||||||
value: 'MobileQrSignIn',
|
value: 'MobileQrSignIn',
|
||||||
icon: <Icon iconName={IconName.Qr} />,
|
icon: <Icon iconName={IconName.Qr} />,
|
||||||
label: stringGetter({ key: STRING_KEYS.TITLE_SIGN_INTO_MOBILE }),
|
label: stringGetter({ key: STRING_KEYS.TITLE_SIGN_INTO_MOBILE }),
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { defineConfig } from 'vite';
|
|||||||
import react from '@vitejs/plugin-react';
|
import react from '@vitejs/plugin-react';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import svgr from 'vite-plugin-svgr';
|
import svgr from 'vite-plugin-svgr';
|
||||||
import { VitePWA } from 'vite-plugin-pwa';
|
|
||||||
|
|
||||||
// https://vitejs.dev/config/
|
// https://vitejs.dev/config/
|
||||||
export default defineConfig(({ mode }) => ({
|
export default defineConfig(({ mode }) => ({
|
||||||
@@ -51,12 +50,6 @@ export default defineConfig(({ mode }) => ({
|
|||||||
svgr({
|
svgr({
|
||||||
exportAsDefault: true,
|
exportAsDefault: true,
|
||||||
}),
|
}),
|
||||||
VitePWA({
|
|
||||||
registerType: 'autoUpdate',
|
|
||||||
devOptions: {
|
|
||||||
enabled: true,
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
],
|
],
|
||||||
publicDir: 'public',
|
publicDir: 'public',
|
||||||
}));
|
}));
|
||||||
|
|||||||
Reference in New Issue
Block a user