@@ -335,6 +335,11 @@ namespace ts {
335335 {
336336 name : "disableSizeLimit" ,
337337 type : "boolean"
338+ } ,
339+ {
340+ name : "strictNullChecks" ,
341+ type : "boolean" ,
342+ description : Diagnostics . Enable_strict_null_checks
338343 }
339344 ] ;
340345
@@ -594,9 +599,9 @@ namespace ts {
594599 */
595600 export function parseJsonConfigFileContent ( json : any , host : ParseConfigHost , basePath : string , existingOptions : CompilerOptions = { } , configFileName ?: string ) : ParsedCommandLine {
596601 const errors : Diagnostic [ ] = [ ] ;
597- const compilerOptions : CompilerOptions = convertCompilerOptionsFromJson ( optionDeclarations , json [ "compilerOptions" ] , basePath , errors , configFileName ) ;
602+ const compilerOptions : CompilerOptions = convertCompilerOptionsFromJsonWorker ( json [ "compilerOptions" ] , basePath , errors , configFileName ) ;
598603 const options = extend ( existingOptions , compilerOptions ) ;
599- const typingOptions : TypingOptions = convertTypingOptionsFromJson ( typingOptionDeclarations , json [ "typingOptions" ] , basePath , errors , configFileName ) ;
604+ const typingOptions : TypingOptions = convertTypingOptionsFromJsonWorker ( json [ "typingOptions" ] , basePath , errors , configFileName ) ;
600605
601606 const fileNames = getFileNames ( errors ) ;
602607
@@ -684,28 +689,38 @@ namespace ts {
684689 }
685690 }
686691
687- /* @internal */
688- export function convertCompilerOptionsFromJson ( optionsDeclarations : CommandLineOption [ ] , jsonOptions : any ,
692+ export function convertCompilerOptionsFromJson ( jsonOptions : any , basePath : string , configFileName ?: string ) : { options : CompilerOptions , errors : Diagnostic [ ] } {
693+ const errors : Diagnostic [ ] = [ ] ;
694+ const options = convertCompilerOptionsFromJsonWorker ( jsonOptions , basePath , errors , configFileName ) ;
695+ return { options, errors } ;
696+ }
697+
698+ export function convertTypingOptionsFromJson ( jsonOptions : any , basePath : string , configFileName ?: string ) : { options : CompilerOptions , errors : Diagnostic [ ] } {
699+ const errors : Diagnostic [ ] = [ ] ;
700+ const options = convertTypingOptionsFromJsonWorker ( jsonOptions , basePath , errors , configFileName ) ;
701+ return { options, errors } ;
702+ }
703+
704+ function convertCompilerOptionsFromJsonWorker ( jsonOptions : any ,
689705 basePath : string , errors : Diagnostic [ ] , configFileName ?: string ) : CompilerOptions {
690706
691707 const options : CompilerOptions = getBaseFileName ( configFileName ) === "jsconfig.json" ? { allowJs : true } : { } ;
692- convertOptionsFromJson < CompilerOptions > ( optionDeclarations , jsonOptions , basePath , options , Diagnostics . Unknown_compiler_option_0 , errors ) ;
708+ convertOptionsFromJson ( optionDeclarations , jsonOptions , basePath , options , Diagnostics . Unknown_compiler_option_0 , errors ) ;
693709 return options ;
694710 }
695711
696- /* @internal */
697- export function convertTypingOptionsFromJson ( optionsDeclarations : CommandLineOption [ ] , jsonOptions : any ,
712+ function convertTypingOptionsFromJsonWorker ( jsonOptions : any ,
698713 basePath : string , errors : Diagnostic [ ] , configFileName ?: string ) : TypingOptions {
699714
700715 const options : TypingOptions = getBaseFileName ( configFileName ) === "jsconfig.json"
701716 ? { enableAutoDiscovery : true , include : [ ] , exclude : [ ] }
702717 : { enableAutoDiscovery : false , include : [ ] , exclude : [ ] } ;
703- convertOptionsFromJson < TypingOptions > ( typingOptionDeclarations , jsonOptions , basePath , options , Diagnostics . Unknown_typing_option_0 , errors ) ;
718+ convertOptionsFromJson ( typingOptionDeclarations , jsonOptions , basePath , options , Diagnostics . Unknown_typing_option_0 , errors ) ;
704719 return options ;
705720 }
706721
707- function convertOptionsFromJson < T extends CompilerOptions | TypingOptions > ( optionDeclarations : CommandLineOption [ ] , jsonOptions : any , basePath : string ,
708- defaultOptions : T , diagnosticMessage : DiagnosticMessage , errors : Diagnostic [ ] ) {
722+ function convertOptionsFromJson ( optionDeclarations : CommandLineOption [ ] , jsonOptions : any , basePath : string ,
723+ defaultOptions : CompilerOptions | TypingOptions , diagnosticMessage : DiagnosticMessage , errors : Diagnostic [ ] ) {
709724
710725 if ( ! jsonOptions ) {
711726 return ;
0 commit comments