From 47bb090ded993d7105faca7e9953415fdeff1aad Mon Sep 17 00:00:00 2001 From: Jake Bailey <5341706+jakebailey@users.noreply.github.com> Date: Wed, 19 Jun 2024 11:34:52 -0700 Subject: [PATCH] Defer creation of barebonesLibSourceFile (#58931) Co-authored-by: Titian Cernicova-Dragomir --- src/services/transpile.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/services/transpile.ts b/src/services/transpile.ts index ccf8396247c..86622ea3e35 100644 --- a/src/services/transpile.ts +++ b/src/services/transpile.ts @@ -26,6 +26,7 @@ import { optionDeclarations, parseCustomTypeOption, ScriptTarget, + SourceFile, toPath, transpileOptionValueCompilerOptions, } from "./_namespaces/ts.js"; @@ -109,9 +110,11 @@ interface Symbol { readonly [Symbol.toStringTag]: string; }`; const barebonesLibName = "lib.d.ts"; -const barebonesLibSourceFile = createSourceFile(barebonesLibName, barebonesLibContent, { languageVersion: ScriptTarget.Latest }); +let barebonesLibSourceFile: SourceFile | undefined; function transpileWorker(input: string, transpileOptions: TranspileOptions, declaration?: boolean): TranspileOutput { + barebonesLibSourceFile ??= createSourceFile(barebonesLibName, barebonesLibContent, { languageVersion: ScriptTarget.Latest }); + const diagnostics: Diagnostic[] = []; const options: CompilerOptions = transpileOptions.compilerOptions ? fixupCompilerOptions(transpileOptions.compilerOptions, diagnostics) : {};