From b96bd94b8d9784ca69f1fa28b3b48f30bed36ddb Mon Sep 17 00:00:00 2001 From: Blake Newman Date: Mon, 6 Jun 2022 09:48:49 +0100 Subject: [PATCH] feat(vue-tsc): support tracing Proxy tracing API to `tsserverlibrary` fixes: #1375 --- packages/vue-tsc/bin/vue-tsc.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/vue-tsc/bin/vue-tsc.js b/packages/vue-tsc/bin/vue-tsc.js index 80ac8132c..de6c7a79a 100755 --- a/packages/vue-tsc/bin/vue-tsc.js +++ b/packages/vue-tsc/bin/vue-tsc.js @@ -32,6 +32,18 @@ fs.readFileSync = (...args) => { `function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _configFileParsingDiagnostics) {`, `function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _configFileParsingDiagnostics) { return require(${JSON.stringify(proxyPath)}).createProgramProxy(...arguments);`, ); + + // proxy tracing + tsc = tsc.replace( + `ts.startTracing = tracingEnabled.startTracing;`, + `ts.startTracing = require("typescript/lib/tsserverlibrary").startTracing;`, + ); + + tsc = tsc.replace( + `ts.dumpTracingLegend = tracingEnabled.dumpLegend;`, + `ts.dumpTracingLegend = require("typescript/lib/tsserverlibrary").dumpTracingLegend;`, + ); + return tsc; } return readFileSync(...args);