@@ -36,8 +36,9 @@ export class TSConfigReader extends OptionsComponent
36
36
if ( TSConfigReader . OPTIONS_KEY in event . data ) {
37
37
this . load ( event , Path . resolve ( event . data [ TSConfigReader . OPTIONS_KEY ] ) ) ;
38
38
} else if ( this . application . isCLI ) {
39
- var file = Path . resolve ( 'tsconfig.json' ) ;
40
- if ( FS . existsSync ( file ) ) {
39
+ let file :string = ts . findConfigFile ( "." , ts . sys . fileExists ) ;
40
+ // If file is undefined, we found no file to load.
41
+ if ( file ) {
41
42
this . load ( event , file ) ;
42
43
}
43
44
}
@@ -56,7 +57,7 @@ export class TSConfigReader extends OptionsComponent
56
57
return ;
57
58
}
58
59
59
- var data = ts . readConfigFile ( fileName , ( fileName ) => ts . sys . readFile ( fileName ) ) . config ;
60
+ let data = ts . readConfigFile ( fileName , ts . sys . readFile ) . config ;
60
61
if ( data === undefined ) {
61
62
event . addError ( 'The tsconfig file %s does not contain valid JSON.' , fileName ) ;
62
63
return ;
@@ -66,20 +67,23 @@ export class TSConfigReader extends OptionsComponent
66
67
return ;
67
68
}
68
69
69
- if ( "files" in data && _ . isArray ( data . files ) ) {
70
- event . inputFiles = data . files ;
71
- }
70
+ data = ts . parseJsonConfigFileContent (
71
+ data ,
72
+ ts . sys ,
73
+ Path . resolve ( Path . dirname ( fileName ) ) ,
74
+ { } ,
75
+ Path . resolve ( fileName ) ) ;
72
76
73
- if ( "compilerOptions" in data ) {
74
- var ignored = TypeScriptSource . IGNORED ;
75
- var compilerOptions = _ . clone ( data . compilerOptions ) ;
76
- for ( var key of ignored ) {
77
- delete compilerOptions [ key ] ;
78
- }
77
+ event . inputFiles = data . fileNames ;
79
78
80
- _ . merge ( event . data , compilerOptions ) ;
79
+ const ignored = TypeScriptSource . IGNORED ;
80
+ let compilerOptions = _ . clone ( data . raw . compilerOptions ) ;
81
+ for ( const key of ignored ) {
82
+ delete compilerOptions [ key ] ;
81
83
}
82
84
85
+ _ . merge ( event . data , compilerOptions ) ;
86
+
83
87
if ( "typedocOptions" in data ) {
84
88
_ . merge ( event . data , data . typedocOptions ) ;
85
89
}
0 commit comments