import { forwardRef } from "react"; import { Platform, StyleSheet, View } from "react-native"; import { WebView } from "react-native-webview"; import { UNA_URL } from "../constants/settings"; import injectedJS from "../injected/webview-injected"; // string, bundled at compile time import { WebViewHandlers } from "../types/webview-handlers-type"; import { handleWebViewMessage } from "../utils/webview-message-handler"; import { renderWebViewError } from "./web-view-error-screen"; import { shouldStartLoadWithRequest } from "./web-view-load-with-request"; const WebViewContainer = forwardRef((handlers, ref) => { return ( handlers.onLoadProgress(e.nativeEvent.progress)} onMessage={handleWebViewMessage(handlers)} onShouldStartLoadWithRequest={shouldStartLoadWithRequest} renderError={(errorDomain, errorCode, errorDesc) => renderWebViewError(handlers, errorDomain, errorCode, errorDesc) } /> ); } ); export default WebViewContainer; const styles = StyleSheet.create({ container: { flex: 1 }, });