1
- type element
1
+ type element = Jsx . element
2
2
3
- @ val external null : element = " null"
3
+ let null = Jsx . null
4
4
5
- external float : float => element = "%identity"
6
- external int : int => element = "%identity"
7
- external string : string => element = "%identity"
5
+ let float = Jsx . float
6
+ let int = Jsx . int
7
+ let string = Jsx . string
8
8
9
- external array : array < element > => element = "%identity"
9
+ let array = Jsx . array
10
10
11
- type componentLike <'props , 'return > = 'props => 'return
11
+ type componentLike <'props , 'return > = Jsx . componentLike < 'props , 'return >
12
12
13
- type component <'props > = componentLike <'props , element >
13
+ type component <'props > = Jsx . component <'props >
14
14
15
- /* this function exists to prepare for making `component` abstract */
16
- external component : componentLike <'props , element > => component <'props > = "%identity"
15
+ let component = Jsx .component
17
16
18
17
@module ("react" )
19
18
external createElement : (component <'props >, 'props ) => element = "createElement"
@@ -25,18 +24,20 @@ external cloneElement: (element, 'props) => element = "cloneElement"
25
24
external createElementVariadic : (component <'props >, 'props , array <element >) => element =
26
25
"createElement"
27
26
28
- @module ("react" ) @ deprecated ( "Please use JSX syntax directly. " )
27
+ @module ("react/jsx-runtime " )
29
28
external jsxKeyed : (component <'props >, 'props , string ) => element = "jsx"
30
29
31
- @module ("react" ) @ deprecated ( "Please use JSX syntax directly. " )
30
+ @module ("react/jsx-runtime " )
32
31
external jsx : (component <'props >, 'props ) => element = "jsx"
33
32
34
- @module ("react" ) @ deprecated ( "Please use JSX syntax directly. " )
33
+ @module ("react/jsx-runtime " )
35
34
external jsxs : (component <'props >, 'props ) => element = "jsxs"
36
35
37
- @module ("react" ) @ deprecated ( "Please use JSX syntax directly. " )
36
+ @module ("react/jsx-runtime " )
38
37
external jsxsKeyed : (component <'props >, 'props , string ) => element = "jsxs"
39
38
39
+ @module ("react/jsx-runtime" ) external jsxFragment : element = "Fragment"
40
+
40
41
type ref <'value > = {mutable current : 'value }
41
42
42
43
module Ref = {
0 commit comments