66 calls and add the appropriate `require("react-dom")` in the file calling this `render` */
77
88// Helper so that ReactDOM itself doesn't bring any runtime
9- @val @return (nullable )
9+ @val @return (nullable ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
1010external querySelector : string => option <Dom .element > = "document.querySelector"
1111
12- @module ("react-dom" )
12+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
1313external render : (React .element , Dom .element ) => unit = "render"
1414
1515module Experimental = {
1616 type root = ReactDOM .Client .Root .t
1717
18- @module ("react-dom" )
18+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
1919 external createRoot : Dom .element => root = "createRoot"
2020
21- @module ("react-dom" )
21+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
2222 external createBlockingRoot : Dom .element => root = "createBlockingRoot"
2323
24- @send external render : (root , React .element ) => unit = "render"
24+ @send @deprecated ("Jsx 3 is deprecated, use jsx 4 instead" )
25+ external render : (root , React .element ) => unit = "render"
2526}
2627
27- @module ("react-dom" )
28+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
2829external hydrate : (React .element , Dom .element ) => unit = "hydrate"
2930
30- @module ("react-dom" )
31+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
3132external createPortal : (React .element , Dom .element ) => React .element = "createPortal"
3233
33- @module ("react-dom" )
34+ @module ("react-dom" ) @ deprecated ( "Jsx 3 is deprecated, use jsx 4 instead" )
3435external unmountComponentAtNode : Dom .element => unit = "unmountComponentAtNode"
3536
37+ @deprecated ("Jsx 3 is deprecated, use jsx 4 instead" )
3638external domElementToObj : Dom .element => {.. } = "%identity"
3739
3840type style = ReactDOMStyle .t
@@ -44,7 +46,9 @@ module Ref = {
4446 type currentDomRef = React .ref <Js .nullable <Dom .element >>
4547 type callbackDomRef = Js .nullable <Dom .element > => unit
4648
49+ @deprecated ("Jsx 3 is deprecated, use jsx 4 instead" )
4750 external domRef : currentDomRef => domRef = "%identity"
51+ @deprecated ("Jsx 3 is deprecated, use jsx 4 instead" )
4852 external callbackDomRef : callbackDomRef => domRef = "%identity"
4953}
5054
@@ -2108,6 +2112,7 @@ include Props
21082112
21092113// As we've removed `ReactDOMRe.createElement`, this enables patterns like
21102114// React.createElement(ReactDOM.stringToComponent(multiline ? "textarea" : "input"), ...)
2115+ @deprecated ("Jsx 3 is deprecated, use jsx 4 instead" )
21112116external stringToComponent : string => React .component <domProps > = "%identity"
21122117
21132118module Style = ReactDOMStyle
0 commit comments