import * as React from "react"; import { ViewportTracker as ViewportTrackerComponent } from "./ViewportTracker"; import { ViewportEventContext, ViewportEvents } from "../ViewportEvents"; type Props = { viewportEventsManager?: any; children: React.ReactNode; flatListRef?: any; // this ref is used to bind to children component }; export function ViewportTracker(props: Props) { const viewportEventsManager = React.useRef(null); React.useLayoutEffect(() => { viewportEventsManager.current = new ViewportEvents(true); }, []); const eventsManager = process.env.NODE_ENV === "test" ? props?.viewportEventsManager : viewportEventsManager.current; return ( ); }