import React, { useState } from 'react'; import { View, ActivityIndicator } from 'react-native'; import { WebView } from 'react-native-webview'; import { trpc } from '@/src/trpc-client'; import { useGetEssentialConsts } from '@/src/api-hooks/essential-consts.api'; import { theme, MyText, MyTouchableOpacity } from 'common-ui'; import MaterialIcons from '@expo/vector-icons/MaterialIcons'; interface WebViewWrapperProps { children: React.ReactNode; } export default function WebViewWrapper({ children }: WebViewWrapperProps) { const { data: constsData, isLoading } = useGetEssentialConsts(); const [isClosed, setIsClosed] = useState(false); if (isLoading) { return ( Loading... ); } const webviewHtml = constsData?.webviewHtml; const isWebviewClosable = constsData?.isWebviewClosable; if (webviewHtml && !isClosed) { return ( {isWebviewClosable && ( setIsClosed(true)} style={{ backgroundColor: 'rgba(0,0,0,0.5)', borderRadius: 20, padding: 8, }} > )} ); } return <>{children}; }