File tree Expand file tree Collapse file tree 3 files changed +23
-38
lines changed
packages/react-native-renderer/src Expand file tree Collapse file tree 3 files changed +23
-38
lines changed Original file line number Diff line number Diff line change 1010import type { ReactPortal , ReactNodeList } from 'shared/ReactTypes' ;
1111import type { ElementRef , Element , ElementType } from 'react' ;
1212import type { FiberRoot } from 'react-reconciler/src/ReactInternalTypes' ;
13+ import type { RenderRootOptions } from './ReactNativeTypes' ;
1314
1415import './ReactFabricInjection' ;
1516
@@ -101,30 +102,12 @@ function nativeOnCaughtError(
101102 defaultOnCaughtError ( error , errorInfo ) ;
102103}
103104
104- type NativeRenderOptions = {
105- onUncaughtError ?: (
106- error : mixed ,
107- errorInfo : { + componentStack ?: ?string } ,
108- ) => void ,
109- onCaughtError ?: (
110- error : mixed ,
111- errorInfo : {
112- + componentStack ?: ?string ,
113- + errorBoundary ?: ?React$Component < any , any > ,
114- } ,
115- ) => void ,
116- onRecoverableError ?: (
117- error : mixed ,
118- errorInfo : { + componentStack ?: ?string } ,
119- ) => void ,
120- } ;
121-
122105function render (
123106 element : Element < ElementType > ,
124107 containerTag : number ,
125108 callback : ?( ) = > void ,
126109 concurrentRoot : ?boolean ,
127- options ?: NativeRenderOptions ,
110+ options : ? RenderRootOptions ,
128111) : ?ElementRef < ElementType > {
129112 if ( disableLegacyMode && ! concurrentRoot ) {
130113 throw new Error ( 'render: Unsupported Legacy Mode API.' ) ;
Original file line number Diff line number Diff line change 1010import type { ReactPortal , ReactNodeList } from 'shared/ReactTypes' ;
1111import type { ElementRef , Element , ElementType } from 'react' ;
1212import type { FiberRoot } from 'react-reconciler/src/ReactInternalTypes' ;
13+ import type { RenderRootOptions } from './ReactNativeTypes' ;
1314
1415import './ReactNativeInjection' ;
1516
@@ -106,29 +107,11 @@ function nativeOnCaughtError(
106107 defaultOnCaughtError ( error , errorInfo ) ;
107108}
108109
109- type NativeRenderOptions = {
110- onUncaughtError ?: (
111- error : mixed ,
112- errorInfo : { + componentStack ?: ?string } ,
113- ) => void ,
114- onCaughtError ?: (
115- error : mixed ,
116- errorInfo : {
117- + componentStack ?: ?string ,
118- + errorBoundary ?: ?React$Component < any , any > ,
119- } ,
120- ) => void ,
121- onRecoverableError ?: (
122- error : mixed ,
123- errorInfo : { + componentStack ?: ?string } ,
124- ) => void ,
125- } ;
126-
127110function render (
128111 element : Element < ElementType > ,
129112 containerTag : number ,
130113 callback : ?( ) = > void ,
131- options ?: NativeRenderOptions ,
114+ options : ? RenderRootOptions ,
132115) : ?ElementRef < ElementType > {
133116 if ( disableLegacyMode ) {
134117 throw new Error ( 'render: Unsupported Legacy Mode API.' ) ;
Original file line number Diff line number Diff line change @@ -215,6 +215,24 @@ export opaque type InternalInstanceHandle = mixed;
215215type PublicInstance = mixed ;
216216type PublicTextInstance = mixed ;
217217
218+ export type RenderRootOptions = {
219+ onUncaughtError ?: (
220+ error : mixed ,
221+ errorInfo : { + componentStack ?: ?string } ,
222+ ) => void ,
223+ onCaughtError ?: (
224+ error : mixed ,
225+ errorInfo : {
226+ + componentStack ?: ?string ,
227+ + errorBoundary ?: ?React$Component < any , any > ,
228+ } ,
229+ ) => void ,
230+ onRecoverableError ?: (
231+ error : mixed ,
232+ errorInfo : { + componentStack ?: ?string } ,
233+ ) => void ,
234+ } ;
235+
218236export type ReactFabricType = {
219237 findHostInstance_DEPRECATED< TElementType : ElementType > (
220238 componentOrHandle : ?( ElementRef < TElementType > | number ) ,
@@ -237,6 +255,7 @@ export type ReactFabricType = {
237255 containerTag : number ,
238256 callback : ?( ) => void ,
239257 concurrentRoot : ?boolean ,
258+ options : ?RenderRootOptions ,
240259 ) : ?ElementRef < ElementType > ,
241260 unmountComponentAtNode ( containerTag : number ) : void ,
242261 getNodeFromInternalInstanceHandle (
You can’t perform that action at this time.
0 commit comments