/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @format * @flow strict-local */ import {RNTesterThemeContext} from '../../components/RNTesterTheme'; import * as React from 'react'; import { type ElementRef, useContext, useLayoutEffect, useRef, useState, } from 'react'; import {Button, ScrollView, StyleSheet, Text, View} from 'react-native'; export const name = 'IntersectionObserver Benchmark'; export const title = name; export const description = 'Example of using IntersectionObserver to observe a large amount of UI elements'; export function render(): React.Node { return ; } const ROWS = 100; const COLUMNS = 5; function IntersectionObserverBenchark(): React.Node { const [isObserving, setObserving] = useState(false); return ( <>