File tree 4 files changed +45
-0
lines changed
swc/tests/fixture/issues-8xxx/8640
4 files changed +45
-0
lines changed Original file line number Diff line number Diff line change
1
+ {
2
+ "jsc" : {
3
+ "parser" : {
4
+ "syntax" : " typescript" ,
5
+ "tsx" : true
6
+ },
7
+ "target" : " es2020" ,
8
+ "loose" : false ,
9
+ "minify" : {
10
+ "compress" : false ,
11
+ "mangle" : false
12
+ },
13
+ },
14
+ "module" : {
15
+ "type" : " es6"
16
+ },
17
+ "minify" : false ,
18
+ "isModule" : true
19
+ }
Original file line number Diff line number Diff line change
1
+ import * as React from 'react' ;
2
+
3
+ export namespace Ns {
4
+ export const Context = React . createContext ( )
5
+ export const Component = ( ) => < Context . Provider /> ;
6
+ }
Original file line number Diff line number Diff line change
1
+ import * as React from 'react' ;
2
+ export var Ns ;
3
+ ( function ( Ns ) {
4
+ Ns . Context = React . createContext ( ) ;
5
+ Ns . Component = ( ) => React . createElement ( Ns . Context . Provider , null ) ;
6
+ } ) ( Ns || ( Ns = { } ) ) ;
Original file line number Diff line number Diff line change @@ -3212,6 +3212,20 @@ where
3212
3212
}
3213
3213
}
3214
3214
}
3215
+
3216
+ fn visit_mut_jsx_object ( & mut self , n : & mut JSXObject ) {
3217
+ n. visit_mut_children_with ( self ) ;
3218
+
3219
+ if let JSXObject :: Ident ( ident) = n {
3220
+ if let Some ( expr) = self . query . query_jsx ( ident) {
3221
+ * n = match expr {
3222
+ JSXElementName :: Ident ( ident) => ident. into ( ) ,
3223
+ JSXElementName :: JSXMemberExpr ( expr) => Box :: new ( expr) . into ( ) ,
3224
+ JSXElementName :: JSXNamespacedName ( ..) => unimplemented ! ( ) ,
3225
+ }
3226
+ }
3227
+ }
3228
+ }
3215
3229
}
3216
3230
3217
3231
#[ cfg( test) ]
You can’t perform that action at this time.
0 commit comments