Commit e79a50da authored by tom's avatar tom

handle case when walletconnect is not configured

parent 3308d9bd
...@@ -84,18 +84,21 @@ interface Props { ...@@ -84,18 +84,21 @@ interface Props {
fallback?: JSX.Element | (() => JSX.Element); fallback?: JSX.Element | (() => JSX.Element);
} }
const Web3ModalProvider = ({ children, fallback }: Props) => { const Fallback = ({ children, fallback }: Props) => {
return typeof fallback === 'function' ? fallback() : (fallback || <>{ children }</>); // eslint-disable-line react/jsx-no-useless-fragment
};
const Provider = ({ children, fallback }: Props) => {
const { colorMode } = useColorMode(); const { colorMode } = useColorMode();
const { setThemeMode } = useWeb3ModalTheme(); const { setThemeMode } = useWeb3ModalTheme();
React.useEffect(() => { React.useEffect(() => {
if (wagmiConfig && feature.isEnabled) { setThemeMode(colorMode);
setThemeMode(colorMode);
}
}, [ colorMode, setThemeMode ]); }, [ colorMode, setThemeMode ]);
// not really necessary, but we have to make typescript happy
if (!wagmiConfig || !feature.isEnabled) { if (!wagmiConfig || !feature.isEnabled) {
return typeof fallback === 'function' ? fallback() : (fallback || <>{ children }</>); // eslint-disable-line react/jsx-no-useless-fragment return <Fallback fallback={ fallback }>{ children }</Fallback>;
} }
return ( return (
...@@ -105,4 +108,6 @@ const Web3ModalProvider = ({ children, fallback }: Props) => { ...@@ -105,4 +108,6 @@ const Web3ModalProvider = ({ children, fallback }: Props) => {
); );
}; };
const Web3ModalProvider = wagmiConfig && feature.isEnabled ? Provider : Fallback;
export default Web3ModalProvider; export default Web3ModalProvider;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment