Skip to content

Commit 7eafaa2

Browse files
j-piaseckimeta-codesync[bot]
authored andcommitted
Cover the intersection observer modules with Stable API guards (#58125)
Summary: Pull Request resolved: #58125 Classifies `react/renderer/observers/intersection:intersection` and `react/nativemodule/intersectionobserver:intersectionobserver` as private targets under the three-tier C++ stable API visibility model. Consumers that opt into `RN_STRICT_API` now get an error if they include their headers directly; without that flag the guards are inert, so no existing build changes behaviour. Changelog: [Internal] Reviewed By: christophpurrer Differential Revision: D117324071 fbshipit-source-id: 0ee34eea6ba8688da5f4e51b51d0e945ee295df8
1 parent d6ba88e commit 7eafaa2

7 files changed

Lines changed: 11 additions & 0 deletions

File tree

packages/react-native/ReactCommon/react/nativemodule/intersectionobserver/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ target_include_directories(react_nativemodule_intersectionobserver PUBLIC ${REAC
1616
target_link_libraries(react_nativemodule_intersectionobserver
1717
react_codegen_rncore
1818
react_cxxreact
19+
react_cxxstableapi
1920
react_renderer_bridging
2021
react_renderer_core
2122
react_renderer_graphics

packages/react-native/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
#pragma once
99

10+
#include <react/cxxstableapi/PrivateGuard.h>
11+
1012
#if __has_include("FBReactNativeSpecJSI.h") // CocoaPod headers on Apple
1113
#include "FBReactNativeSpecJSI.h"
1214
#else

packages/react-native/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ Pod::Spec.new do |s|
6060
s.dependency "React-Fabric"
6161
s.dependency "React-Fabric/bridging"
6262
s.dependency "React-runtimescheduler"
63+
s.dependency "React-cxxstableapi"
6364
add_dependency(s, "React-RCTFBReactNativeSpec")
6465
add_dependency(s, "React-runtimeexecutor", :additional_framework_paths => ["platform/ios"])
6566
add_dependency(s, "React-graphics", :additional_framework_paths => ["react/renderer/graphics/platform/ios"])

packages/react-native/ReactCommon/react/renderer/observers/intersection/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ target_include_directories(react_renderer_observers_intersection PUBLIC ${REACT_
1616
target_link_libraries(react_renderer_observers_intersection
1717
react_cxxreact
1818
react_bridging
19+
react_cxxstableapi
1920
react_debug
2021
react_renderer_core
2122
react_renderer_graphics

packages/react-native/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
#pragma once
99

10+
#include <react/cxxstableapi/PrivateGuard.h>
11+
1012
#include <react/renderer/components/root/RootShadowNode.h>
1113
#include <react/renderer/core/ShadowNodeFamily.h>
1214
#include <react/renderer/graphics/Float.h>

packages/react-native/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
#pragma once
99

10+
#include <react/cxxstableapi/PrivateGuard.h>
11+
1012
#include <react/renderer/core/ShadowNode.h>
1113
#include <react/renderer/graphics/Float.h>
1214
#include <react/renderer/runtimescheduler/RuntimeScheduler.h>

packages/react-native/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
#pragma once
99

10+
#include <react/cxxstableapi/PrivateGuard.h>
11+
1012
#include <react/renderer/graphics/Float.h>
1113
#include <optional>
1214

0 commit comments

Comments
 (0)