File tree Expand file tree Collapse file tree 3 files changed +11
-8
lines changed Expand file tree Collapse file tree 3 files changed +11
-8
lines changed Original file line number Diff line number Diff line change @@ -50,9 +50,12 @@ let simplify_alias (meta : Lam_stats.t) (lam : Lam.t) : Lam.t =
50
50
Main use case, we should detect inline all immutable block .. *)
51
51
match simpl arg with
52
52
| Lvar v as l ->
53
- Lam_util. field_flatten_get
54
- (fun _ -> Lam. prim ~primitive ~args: [l] loc)
55
- v i info meta.ident_tbl
53
+ (* Preserve module qualification when JSX preserve mode is enabled
54
+ This ensures component names like X.make are not flattened to just make
55
+ in JSX preserve mode *)
56
+ let prim = Lam. prim ~primitive ~args: [l] loc in
57
+ if ! Js_config. jsx_preserve then prim
58
+ else Lam_util. field_flatten_get (fun _ -> prim) v i info meta.ident_tbl
56
59
| l -> Lam. prim ~primitive ~args: [l] loc)
57
60
| Lprim
58
61
{
Original file line number Diff line number Diff line change @@ -25,7 +25,7 @@ let Foo = {
25
25
26
26
function Async_jsx$Bar ( props ) {
27
27
return < div >
28
- < Async_jsx$ Foo />
28
+ < Foo . make />
29
29
</ div > ;
30
30
}
31
31
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ let _multiple_element_children = <div>
20
20
< h1 >
21
21
{ "Hello, world!" }
22
22
</ h1 >
23
- < Jsx_preserve_test$ Icon />
23
+ < Icon . make />
24
24
</ div > ;
25
25
26
26
let _single_element_fragment = < >
@@ -141,7 +141,7 @@ let B = {
141
141
142
142
let _external_component_with_children = < QueryClientProvider >
143
143
< strong />
144
- < Jsx_preserve_test$B />
144
+ < B . make />
145
145
</ QueryClientProvider > ;
146
146
147
147
function Jsx_preserve_test$MyWeirdComponent ( props ) {
@@ -155,7 +155,7 @@ let MyWeirdComponent = {
155
155
make : Jsx_preserve_test$MyWeirdComponent
156
156
} ;
157
157
158
- let _escaped_jsx_prop = < Jsx_preserve_test$ MyWeirdComponent
158
+ let _escaped_jsx_prop = < MyWeirdComponent . make
159
159
MyWeirdProp = { "bar" }
160
160
/> ;
161
161
@@ -197,7 +197,7 @@ let ComponentWithOptionalProps = {
197
197
make : Jsx_preserve_test$ComponentWithOptionalProps
198
198
} ;
199
199
200
- let _optional_props = < Jsx_preserve_test$ ComponentWithOptionalProps
200
+ let _optional_props = < ComponentWithOptionalProps . make
201
201
i = { 1 }
202
202
s = { "test" }
203
203
element = { < div /> }
You can’t perform that action at this time.
0 commit comments