From 78c8681884fa364d12d87debd3b32aaf596dfc18 Mon Sep 17 00:00:00 2001 From: Ruslan Lesiutin Date: Wed, 6 Dec 2023 05:22:10 -0800 Subject: [PATCH] feat: support isChildPublicInstance from renderer (#41806) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/41806 Changelog: [Internal] Adds `isChildPublicInstance` to renderers implementations, which makes it available for usage from `RendererProxy`. Reviewed By: rubennorte Differential Revision: D51822905 fbshipit-source-id: 3ac92ead9d31dd3c7e5e7764daf27fe5f0eca942 --- .../Libraries/ReactNative/RendererImplementation.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/react-native/Libraries/ReactNative/RendererImplementation.js b/packages/react-native/Libraries/ReactNative/RendererImplementation.js index 8bc7500a1c4..c55f938a26d 100644 --- a/packages/react-native/Libraries/ReactNative/RendererImplementation.js +++ b/packages/react-native/Libraries/ReactNative/RendererImplementation.js @@ -9,6 +9,7 @@ */ import type {HostComponent} from '../Renderer/shims/ReactNativeTypes'; +import type ReactFabricHostComponent from './ReactFabricPublicInstance/ReactFabricHostComponent'; import type {Element, ElementRef, ElementType} from 'react'; import {type RootTag} from './RootTag'; @@ -110,3 +111,13 @@ export function unstable_batchedUpdates( export function isProfilingRenderer(): boolean { return Boolean(__DEV__); } + +export function isChildPublicInstance( + parentInstance: ReactFabricHostComponent | HostComponent, + childInstance: ReactFabricHostComponent | HostComponent, +): boolean { + return require('../Renderer/shims/ReactNative').isChildPublicInstance( + parentInstance, + childInstance, + ); +}