typescript 4.7.0-dev.20220421 → 4.7.0-dev.20220422
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/tsc.js +63 -10
- package/lib/tsserver.js +91 -13
- package/lib/tsserverlibrary.d.ts +3 -1
- package/lib/tsserverlibrary.js +91 -13
- package/lib/typescript.d.ts +3 -1
- package/lib/typescript.js +91 -13
- package/lib/typescriptServices.d.ts +3 -1
- package/lib/typescriptServices.js +91 -13
- package/lib/typingsInstaller.js +63 -10
- package/package.json +1 -1
package/lib/tsc.js
CHANGED
|
@@ -69,7 +69,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
69
69
|
var ts;
|
|
70
70
|
(function (ts) {
|
|
71
71
|
ts.versionMajorMinor = "4.7";
|
|
72
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
72
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220422";
|
|
73
73
|
var NativeCollections;
|
|
74
74
|
(function (NativeCollections) {
|
|
75
75
|
var globals = typeof globalThis !== "undefined" ? globalThis :
|
|
@@ -14324,10 +14324,10 @@ var ts;
|
|
|
14324
14324
|
return ts.combinePaths(newDirPath, sourceFilePath);
|
|
14325
14325
|
}
|
|
14326
14326
|
ts.getSourceFilePathInNewDirWorker = getSourceFilePathInNewDirWorker;
|
|
14327
|
-
function writeFile(host, diagnostics, fileName,
|
|
14328
|
-
host.writeFile(fileName,
|
|
14327
|
+
function writeFile(host, diagnostics, fileName, text, writeByteOrderMark, sourceFiles, data) {
|
|
14328
|
+
host.writeFile(fileName, text, writeByteOrderMark, function (hostErrorMessage) {
|
|
14329
14329
|
diagnostics.add(createCompilerDiagnostic(ts.Diagnostics.Could_not_write_file_0_Colon_1, fileName, hostErrorMessage));
|
|
14330
|
-
}, sourceFiles);
|
|
14330
|
+
}, sourceFiles, data);
|
|
14331
14331
|
}
|
|
14332
14332
|
ts.writeFile = writeFile;
|
|
14333
14333
|
function ensureDirectoriesExist(directoryPath, createDirectory, directoryExists) {
|
|
@@ -61316,6 +61316,7 @@ var ts;
|
|
|
61316
61316
|
}
|
|
61317
61317
|
}
|
|
61318
61318
|
else {
|
|
61319
|
+
error(attributeDecl.expression, ts.Diagnostics.Spread_types_may_only_be_created_from_object_types);
|
|
61319
61320
|
typeToIntersect = typeToIntersect ? getIntersectionType([typeToIntersect, exprType]) : exprType;
|
|
61320
61321
|
}
|
|
61321
61322
|
}
|
|
@@ -90213,6 +90214,7 @@ var ts;
|
|
|
90213
90214
|
else {
|
|
90214
90215
|
printer.writeFile(sourceFile, writer, sourceMapGenerator);
|
|
90215
90216
|
}
|
|
90217
|
+
var sourceMapUrlPos;
|
|
90216
90218
|
if (sourceMapGenerator) {
|
|
90217
90219
|
if (sourceMapDataList) {
|
|
90218
90220
|
sourceMapDataList.push({
|
|
@@ -90224,6 +90226,7 @@ var ts;
|
|
|
90224
90226
|
if (sourceMappingURL) {
|
|
90225
90227
|
if (!writer.isAtStartOfLine())
|
|
90226
90228
|
writer.rawWrite(newLine);
|
|
90229
|
+
sourceMapUrlPos = writer.getTextPos();
|
|
90227
90230
|
writer.writeComment("//# " + "sourceMappingURL" + "=" + sourceMappingURL);
|
|
90228
90231
|
}
|
|
90229
90232
|
if (sourceMapFilePath) {
|
|
@@ -90234,7 +90237,7 @@ var ts;
|
|
|
90234
90237
|
else {
|
|
90235
90238
|
writer.writeLine();
|
|
90236
90239
|
}
|
|
90237
|
-
ts.writeFile(host, emitterDiagnostics, jsFilePath, writer.getText(), !!compilerOptions.emitBOM, sourceFiles);
|
|
90240
|
+
ts.writeFile(host, emitterDiagnostics, jsFilePath, writer.getText(), !!compilerOptions.emitBOM, sourceFiles, { sourceMapUrlPos: sourceMapUrlPos });
|
|
90238
90241
|
writer.clear();
|
|
90239
90242
|
}
|
|
90240
90243
|
function shouldEmitSourceMaps(mapOptions, sourceFileOrBundle) {
|
|
@@ -95206,7 +95209,11 @@ var ts;
|
|
|
95206
95209
|
return newValue;
|
|
95207
95210
|
};
|
|
95208
95211
|
if (originalWriteFile) {
|
|
95209
|
-
host.writeFile = function (fileName, data
|
|
95212
|
+
host.writeFile = function (fileName, data) {
|
|
95213
|
+
var rest = [];
|
|
95214
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
|
95215
|
+
rest[_i - 2] = arguments[_i];
|
|
95216
|
+
}
|
|
95210
95217
|
var key = toPath(fileName);
|
|
95211
95218
|
fileExistsCache.delete(key);
|
|
95212
95219
|
var value = readFileCache.get(key);
|
|
@@ -95220,7 +95227,7 @@ var ts;
|
|
|
95220
95227
|
sourceFileCache.delete(key);
|
|
95221
95228
|
}
|
|
95222
95229
|
}
|
|
95223
|
-
originalWriteFile.call(host, fileName, data,
|
|
95230
|
+
originalWriteFile.call.apply(originalWriteFile, __spreadArray([host, fileName, data], rest, false));
|
|
95224
95231
|
};
|
|
95225
95232
|
}
|
|
95226
95233
|
if (originalDirectoryExists && originalCreateDirectory) {
|
|
@@ -96042,6 +96049,7 @@ var ts;
|
|
|
96042
96049
|
useCaseSensitiveFileNames: function () { return host.useCaseSensitiveFileNames(); },
|
|
96043
96050
|
getFileIncludeReasons: function () { return fileReasons; },
|
|
96044
96051
|
structureIsReused: structureIsReused,
|
|
96052
|
+
writeFile: writeFile,
|
|
96045
96053
|
};
|
|
96046
96054
|
onProgramCreateComplete();
|
|
96047
96055
|
fileProcessingDiagnostics === null || fileProcessingDiagnostics === void 0 ? void 0 : fileProcessingDiagnostics.forEach(function (diagnostic) {
|
|
@@ -96445,7 +96453,7 @@ var ts;
|
|
|
96445
96453
|
getProjectReferenceRedirect: getProjectReferenceRedirect,
|
|
96446
96454
|
isSourceOfProjectReferenceRedirect: isSourceOfProjectReferenceRedirect,
|
|
96447
96455
|
getSymlinkCache: getSymlinkCache,
|
|
96448
|
-
writeFile: writeFileCallback ||
|
|
96456
|
+
writeFile: writeFileCallback || writeFile,
|
|
96449
96457
|
isEmitBlocked: isEmitBlocked,
|
|
96450
96458
|
readFile: function (f) { return host.readFile(f); },
|
|
96451
96459
|
fileExists: function (f) {
|
|
@@ -96463,6 +96471,9 @@ var ts;
|
|
|
96463
96471
|
getFileIncludeReasons: program.getFileIncludeReasons,
|
|
96464
96472
|
};
|
|
96465
96473
|
}
|
|
96474
|
+
function writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data) {
|
|
96475
|
+
host.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
96476
|
+
}
|
|
96466
96477
|
function emitBuildInfo(writeFileCallback) {
|
|
96467
96478
|
ts.Debug.assert(!ts.outFile(options));
|
|
96468
96479
|
ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("emit", "emitBuildInfo", {}, true);
|
|
@@ -98640,6 +98651,7 @@ var ts;
|
|
|
98640
98651
|
}
|
|
98641
98652
|
}
|
|
98642
98653
|
}
|
|
98654
|
+
BuilderState.updateExportedModules = updateExportedModules;
|
|
98643
98655
|
function updateExportedFilesMapFromCache(state, exportedModulesMapCache) {
|
|
98644
98656
|
var _a;
|
|
98645
98657
|
if (exportedModulesMapCache) {
|
|
@@ -99411,7 +99423,43 @@ var ts;
|
|
|
99411
99423
|
affected = program;
|
|
99412
99424
|
}
|
|
99413
99425
|
}
|
|
99414
|
-
return toAffectedFileEmitResult(state, ts.Debug.checkDefined(state.program).emit(affected === state.program ? undefined : affected,
|
|
99426
|
+
return toAffectedFileEmitResult(state, ts.Debug.checkDefined(state.program).emit(affected === state.program ? undefined : affected, affected !== state.program && ts.getEmitDeclarations(state.compilerOptions) && !customTransformers ?
|
|
99427
|
+
getWriteFileUpdatingSignatureCallback(writeFile) :
|
|
99428
|
+
writeFile || ts.maybeBind(host, host.writeFile), cancellationToken, emitOnlyDtsFiles || emitKind === 0, customTransformers), affected, emitKind, isPendingEmitFile);
|
|
99429
|
+
}
|
|
99430
|
+
function getWriteFileUpdatingSignatureCallback(writeFile) {
|
|
99431
|
+
return function (fileName, text, writeByteOrderMark, onError, sourceFiles, data) {
|
|
99432
|
+
var _a;
|
|
99433
|
+
if (ts.isDeclarationFileName(fileName)) {
|
|
99434
|
+
ts.Debug.assert((sourceFiles === null || sourceFiles === void 0 ? void 0 : sourceFiles.length) === 1);
|
|
99435
|
+
var file = sourceFiles[0];
|
|
99436
|
+
var info = state.fileInfos.get(file.resolvedPath);
|
|
99437
|
+
var signature = ((_a = state.currentAffectedFilesSignatures) === null || _a === void 0 ? void 0 : _a.get(file.resolvedPath)) || info.signature;
|
|
99438
|
+
if (signature === file.version) {
|
|
99439
|
+
var newSignature = (computeHash || ts.generateDjb2Hash)((data === null || data === void 0 ? void 0 : data.sourceMapUrlPos) !== undefined ? text.substring(0, data.sourceMapUrlPos) : text);
|
|
99440
|
+
if (newSignature !== file.version) {
|
|
99441
|
+
if (host.storeFilesChangingSignatureDuringEmit)
|
|
99442
|
+
(state.filesChangingSignature || (state.filesChangingSignature = new ts.Set())).add(file.resolvedPath);
|
|
99443
|
+
if (state.exportedModulesMap)
|
|
99444
|
+
ts.BuilderState.updateExportedModules(file, file.exportedModulesFromDeclarationEmit, state.currentAffectedFilesExportedModulesMap || (state.currentAffectedFilesExportedModulesMap = ts.BuilderState.createManyToManyPathMap()));
|
|
99445
|
+
if (state.affectedFiles && state.affectedFilesIndex < state.affectedFiles.length) {
|
|
99446
|
+
state.currentAffectedFilesSignatures.set(file.resolvedPath, newSignature);
|
|
99447
|
+
}
|
|
99448
|
+
else {
|
|
99449
|
+
info.signature = newSignature;
|
|
99450
|
+
if (state.exportedModulesMap)
|
|
99451
|
+
ts.BuilderState.updateExportedFilesMapFromCache(state, state.currentAffectedFilesExportedModulesMap);
|
|
99452
|
+
}
|
|
99453
|
+
}
|
|
99454
|
+
}
|
|
99455
|
+
}
|
|
99456
|
+
if (writeFile)
|
|
99457
|
+
writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
99458
|
+
else if (host.writeFile)
|
|
99459
|
+
host.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
99460
|
+
else
|
|
99461
|
+
state.program.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
99462
|
+
};
|
|
99415
99463
|
}
|
|
99416
99464
|
function emit(targetSourceFile, writeFile, cancellationToken, emitOnlyDtsFiles, customTransformers) {
|
|
99417
99465
|
var _a;
|
|
@@ -99452,7 +99500,9 @@ var ts;
|
|
|
99452
99500
|
}
|
|
99453
99501
|
}
|
|
99454
99502
|
}
|
|
99455
|
-
return ts.Debug.checkDefined(state.program).emit(targetSourceFile,
|
|
99503
|
+
return ts.Debug.checkDefined(state.program).emit(targetSourceFile, !ts.outFile(state.compilerOptions) && ts.getEmitDeclarations(state.compilerOptions) && !customTransformers ?
|
|
99504
|
+
getWriteFileUpdatingSignatureCallback(writeFile) :
|
|
99505
|
+
writeFile || ts.maybeBind(host, host.writeFile), cancellationToken, emitOnlyDtsFiles, customTransformers);
|
|
99456
99506
|
}
|
|
99457
99507
|
function getSemanticDiagnosticsOfNextAffectedFile(cancellationToken, ignoreSourceFile) {
|
|
99458
99508
|
while (true) {
|
|
@@ -101375,6 +101425,7 @@ var ts;
|
|
|
101375
101425
|
createHash: ts.maybeBind(host, host.createHash),
|
|
101376
101426
|
readDirectory: ts.maybeBind(host, host.readDirectory),
|
|
101377
101427
|
disableUseFileVersionAsSignature: host.disableUseFileVersionAsSignature,
|
|
101428
|
+
storeFilesChangingSignatureDuringEmit: host.storeFilesChangingSignatureDuringEmit,
|
|
101378
101429
|
};
|
|
101379
101430
|
function writeFile(fileName, text, writeByteOrderMark, onError) {
|
|
101380
101431
|
try {
|
|
@@ -101428,6 +101479,7 @@ var ts;
|
|
|
101428
101479
|
createHash: ts.maybeBind(system, system.createHash),
|
|
101429
101480
|
createProgram: createProgram || ts.createEmitAndSemanticDiagnosticsBuilderProgram,
|
|
101430
101481
|
disableUseFileVersionAsSignature: system.disableUseFileVersionAsSignature,
|
|
101482
|
+
storeFilesChangingSignatureDuringEmit: system.storeFilesChangingSignatureDuringEmit,
|
|
101431
101483
|
};
|
|
101432
101484
|
}
|
|
101433
101485
|
ts.createProgramHost = createProgramHost;
|
|
@@ -101504,6 +101556,7 @@ var ts;
|
|
|
101504
101556
|
var host = ts.createCompilerHostWorker(options, undefined, system);
|
|
101505
101557
|
host.createHash = ts.maybeBind(system, system.createHash);
|
|
101506
101558
|
host.disableUseFileVersionAsSignature = system.disableUseFileVersionAsSignature;
|
|
101559
|
+
host.storeFilesChangingSignatureDuringEmit = system.storeFilesChangingSignatureDuringEmit;
|
|
101507
101560
|
ts.setGetSourceFileAsHashVersioned(host, system);
|
|
101508
101561
|
ts.changeCompilerHostLikeToUseCache(host, function (fileName) { return ts.toPath(fileName, host.getCurrentDirectory(), host.getCanonicalFileName); });
|
|
101509
101562
|
return host;
|
package/lib/tsserver.js
CHANGED
|
@@ -100,7 +100,7 @@ var ts;
|
|
|
100
100
|
// The following is baselined as a literal template type without intervention
|
|
101
101
|
/** The version of the TypeScript compiler release */
|
|
102
102
|
// eslint-disable-next-line @typescript-eslint/no-inferrable-types
|
|
103
|
-
ts.version = ts.versionMajorMinor + ".0-dev.
|
|
103
|
+
ts.version = ts.versionMajorMinor + ".0-dev.20220422";
|
|
104
104
|
/* @internal */
|
|
105
105
|
var Comparison;
|
|
106
106
|
(function (Comparison) {
|
|
@@ -18293,10 +18293,10 @@ var ts;
|
|
|
18293
18293
|
return ts.combinePaths(newDirPath, sourceFilePath);
|
|
18294
18294
|
}
|
|
18295
18295
|
ts.getSourceFilePathInNewDirWorker = getSourceFilePathInNewDirWorker;
|
|
18296
|
-
function writeFile(host, diagnostics, fileName,
|
|
18297
|
-
host.writeFile(fileName,
|
|
18296
|
+
function writeFile(host, diagnostics, fileName, text, writeByteOrderMark, sourceFiles, data) {
|
|
18297
|
+
host.writeFile(fileName, text, writeByteOrderMark, function (hostErrorMessage) {
|
|
18298
18298
|
diagnostics.add(createCompilerDiagnostic(ts.Diagnostics.Could_not_write_file_0_Colon_1, fileName, hostErrorMessage));
|
|
18299
|
-
}, sourceFiles);
|
|
18299
|
+
}, sourceFiles, data);
|
|
18300
18300
|
}
|
|
18301
18301
|
ts.writeFile = writeFile;
|
|
18302
18302
|
function ensureDirectoriesExist(directoryPath, createDirectory, directoryExists) {
|
|
@@ -73432,6 +73432,7 @@ var ts;
|
|
|
73432
73432
|
}
|
|
73433
73433
|
}
|
|
73434
73434
|
else {
|
|
73435
|
+
error(attributeDecl.expression, ts.Diagnostics.Spread_types_may_only_be_created_from_object_types);
|
|
73435
73436
|
typeToIntersect = typeToIntersect ? getIntersectionType([typeToIntersect, exprType]) : exprType;
|
|
73436
73437
|
}
|
|
73437
73438
|
}
|
|
@@ -109966,6 +109967,7 @@ var ts;
|
|
|
109966
109967
|
else {
|
|
109967
109968
|
printer.writeFile(sourceFile, writer, sourceMapGenerator);
|
|
109968
109969
|
}
|
|
109970
|
+
var sourceMapUrlPos;
|
|
109969
109971
|
if (sourceMapGenerator) {
|
|
109970
109972
|
if (sourceMapDataList) {
|
|
109971
109973
|
sourceMapDataList.push({
|
|
@@ -109977,6 +109979,7 @@ var ts;
|
|
|
109977
109979
|
if (sourceMappingURL) {
|
|
109978
109980
|
if (!writer.isAtStartOfLine())
|
|
109979
109981
|
writer.rawWrite(newLine);
|
|
109982
|
+
sourceMapUrlPos = writer.getTextPos();
|
|
109980
109983
|
writer.writeComment("//# " + "sourceMappingURL" + "=" + sourceMappingURL); // Tools can sometimes see this line as a source mapping url comment
|
|
109981
109984
|
}
|
|
109982
109985
|
// Write the source map
|
|
@@ -109989,7 +109992,7 @@ var ts;
|
|
|
109989
109992
|
writer.writeLine();
|
|
109990
109993
|
}
|
|
109991
109994
|
// Write the output file
|
|
109992
|
-
ts.writeFile(host, emitterDiagnostics, jsFilePath, writer.getText(), !!compilerOptions.emitBOM, sourceFiles);
|
|
109995
|
+
ts.writeFile(host, emitterDiagnostics, jsFilePath, writer.getText(), !!compilerOptions.emitBOM, sourceFiles, { sourceMapUrlPos: sourceMapUrlPos });
|
|
109993
109996
|
// Reset state
|
|
109994
109997
|
writer.clear();
|
|
109995
109998
|
}
|
|
@@ -115456,7 +115459,11 @@ var ts;
|
|
|
115456
115459
|
return newValue;
|
|
115457
115460
|
};
|
|
115458
115461
|
if (originalWriteFile) {
|
|
115459
|
-
host.writeFile = function (fileName, data
|
|
115462
|
+
host.writeFile = function (fileName, data) {
|
|
115463
|
+
var rest = [];
|
|
115464
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
|
115465
|
+
rest[_i - 2] = arguments[_i];
|
|
115466
|
+
}
|
|
115460
115467
|
var key = toPath(fileName);
|
|
115461
115468
|
fileExistsCache.delete(key);
|
|
115462
115469
|
var value = readFileCache.get(key);
|
|
@@ -115470,7 +115477,7 @@ var ts;
|
|
|
115470
115477
|
sourceFileCache.delete(key);
|
|
115471
115478
|
}
|
|
115472
115479
|
}
|
|
115473
|
-
originalWriteFile.call(host, fileName, data,
|
|
115480
|
+
originalWriteFile.call.apply(originalWriteFile, __spreadArray([host, fileName, data], rest, false));
|
|
115474
115481
|
};
|
|
115475
115482
|
}
|
|
115476
115483
|
// directoryExists
|
|
@@ -116403,6 +116410,7 @@ var ts;
|
|
|
116403
116410
|
useCaseSensitiveFileNames: function () { return host.useCaseSensitiveFileNames(); },
|
|
116404
116411
|
getFileIncludeReasons: function () { return fileReasons; },
|
|
116405
116412
|
structureIsReused: structureIsReused,
|
|
116413
|
+
writeFile: writeFile,
|
|
116406
116414
|
};
|
|
116407
116415
|
onProgramCreateComplete();
|
|
116408
116416
|
// Add file processingDiagnostics
|
|
@@ -116900,7 +116908,7 @@ var ts;
|
|
|
116900
116908
|
getProjectReferenceRedirect: getProjectReferenceRedirect,
|
|
116901
116909
|
isSourceOfProjectReferenceRedirect: isSourceOfProjectReferenceRedirect,
|
|
116902
116910
|
getSymlinkCache: getSymlinkCache,
|
|
116903
|
-
writeFile: writeFileCallback ||
|
|
116911
|
+
writeFile: writeFileCallback || writeFile,
|
|
116904
116912
|
isEmitBlocked: isEmitBlocked,
|
|
116905
116913
|
readFile: function (f) { return host.readFile(f); },
|
|
116906
116914
|
fileExists: function (f) {
|
|
@@ -116920,6 +116928,9 @@ var ts;
|
|
|
116920
116928
|
getFileIncludeReasons: program.getFileIncludeReasons,
|
|
116921
116929
|
};
|
|
116922
116930
|
}
|
|
116931
|
+
function writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data) {
|
|
116932
|
+
host.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
116933
|
+
}
|
|
116923
116934
|
function emitBuildInfo(writeFileCallback) {
|
|
116924
116935
|
ts.Debug.assert(!ts.outFile(options));
|
|
116925
116936
|
ts.tracing === null || ts.tracing === void 0 ? void 0 : ts.tracing.push("emit" /* Emit */, "emitBuildInfo", {}, /*separateBeginAndEnd*/ true);
|
|
@@ -119362,6 +119373,7 @@ var ts;
|
|
|
119362
119373
|
}
|
|
119363
119374
|
}
|
|
119364
119375
|
}
|
|
119376
|
+
BuilderState.updateExportedModules = updateExportedModules;
|
|
119365
119377
|
/**
|
|
119366
119378
|
* Updates the exported modules from cache into state's exported modules map
|
|
119367
119379
|
* This should be called whenever it is safe to commit the state of the builder
|
|
@@ -120326,7 +120338,43 @@ var ts;
|
|
|
120326
120338
|
return toAffectedFileEmitResult(state,
|
|
120327
120339
|
// When whole program is affected, do emit only once (eg when --out or --outFile is specified)
|
|
120328
120340
|
// Otherwise just affected file
|
|
120329
|
-
ts.Debug.checkDefined(state.program).emit(affected === state.program ? undefined : affected,
|
|
120341
|
+
ts.Debug.checkDefined(state.program).emit(affected === state.program ? undefined : affected, affected !== state.program && ts.getEmitDeclarations(state.compilerOptions) && !customTransformers ?
|
|
120342
|
+
getWriteFileUpdatingSignatureCallback(writeFile) :
|
|
120343
|
+
writeFile || ts.maybeBind(host, host.writeFile), cancellationToken, emitOnlyDtsFiles || emitKind === 0 /* DtsOnly */, customTransformers), affected, emitKind, isPendingEmitFile);
|
|
120344
|
+
}
|
|
120345
|
+
function getWriteFileUpdatingSignatureCallback(writeFile) {
|
|
120346
|
+
return function (fileName, text, writeByteOrderMark, onError, sourceFiles, data) {
|
|
120347
|
+
var _a;
|
|
120348
|
+
if (ts.isDeclarationFileName(fileName)) {
|
|
120349
|
+
ts.Debug.assert((sourceFiles === null || sourceFiles === void 0 ? void 0 : sourceFiles.length) === 1);
|
|
120350
|
+
var file = sourceFiles[0];
|
|
120351
|
+
var info = state.fileInfos.get(file.resolvedPath);
|
|
120352
|
+
var signature = ((_a = state.currentAffectedFilesSignatures) === null || _a === void 0 ? void 0 : _a.get(file.resolvedPath)) || info.signature;
|
|
120353
|
+
if (signature === file.version) {
|
|
120354
|
+
var newSignature = (computeHash || ts.generateDjb2Hash)((data === null || data === void 0 ? void 0 : data.sourceMapUrlPos) !== undefined ? text.substring(0, data.sourceMapUrlPos) : text);
|
|
120355
|
+
if (newSignature !== file.version) { // Update it
|
|
120356
|
+
if (host.storeFilesChangingSignatureDuringEmit)
|
|
120357
|
+
(state.filesChangingSignature || (state.filesChangingSignature = new ts.Set())).add(file.resolvedPath);
|
|
120358
|
+
if (state.exportedModulesMap)
|
|
120359
|
+
ts.BuilderState.updateExportedModules(file, file.exportedModulesFromDeclarationEmit, state.currentAffectedFilesExportedModulesMap || (state.currentAffectedFilesExportedModulesMap = ts.BuilderState.createManyToManyPathMap()));
|
|
120360
|
+
if (state.affectedFiles && state.affectedFilesIndex < state.affectedFiles.length) {
|
|
120361
|
+
state.currentAffectedFilesSignatures.set(file.resolvedPath, newSignature);
|
|
120362
|
+
}
|
|
120363
|
+
else {
|
|
120364
|
+
info.signature = newSignature;
|
|
120365
|
+
if (state.exportedModulesMap)
|
|
120366
|
+
ts.BuilderState.updateExportedFilesMapFromCache(state, state.currentAffectedFilesExportedModulesMap);
|
|
120367
|
+
}
|
|
120368
|
+
}
|
|
120369
|
+
}
|
|
120370
|
+
}
|
|
120371
|
+
if (writeFile)
|
|
120372
|
+
writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
120373
|
+
else if (host.writeFile)
|
|
120374
|
+
host.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
120375
|
+
else
|
|
120376
|
+
state.program.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
|
|
120377
|
+
};
|
|
120330
120378
|
}
|
|
120331
120379
|
/**
|
|
120332
120380
|
* Emits the JavaScript and declaration files.
|
|
@@ -120383,7 +120431,9 @@ var ts;
|
|
|
120383
120431
|
}
|
|
120384
120432
|
}
|
|
120385
120433
|
}
|
|
120386
|
-
return ts.Debug.checkDefined(state.program).emit(targetSourceFile,
|
|
120434
|
+
return ts.Debug.checkDefined(state.program).emit(targetSourceFile, !ts.outFile(state.compilerOptions) && ts.getEmitDeclarations(state.compilerOptions) && !customTransformers ?
|
|
120435
|
+
getWriteFileUpdatingSignatureCallback(writeFile) :
|
|
120436
|
+
writeFile || ts.maybeBind(host, host.writeFile), cancellationToken, emitOnlyDtsFiles, customTransformers);
|
|
120387
120437
|
}
|
|
120388
120438
|
/**
|
|
120389
120439
|
* Return the semantic diagnostics for the next affected file or undefined if iteration is complete
|
|
@@ -122575,6 +122625,7 @@ var ts;
|
|
|
122575
122625
|
createHash: ts.maybeBind(host, host.createHash),
|
|
122576
122626
|
readDirectory: ts.maybeBind(host, host.readDirectory),
|
|
122577
122627
|
disableUseFileVersionAsSignature: host.disableUseFileVersionAsSignature,
|
|
122628
|
+
storeFilesChangingSignatureDuringEmit: host.storeFilesChangingSignatureDuringEmit,
|
|
122578
122629
|
};
|
|
122579
122630
|
function writeFile(fileName, text, writeByteOrderMark, onError) {
|
|
122580
122631
|
try {
|
|
@@ -122634,6 +122685,7 @@ var ts;
|
|
|
122634
122685
|
createHash: ts.maybeBind(system, system.createHash),
|
|
122635
122686
|
createProgram: createProgram || ts.createEmitAndSemanticDiagnosticsBuilderProgram,
|
|
122636
122687
|
disableUseFileVersionAsSignature: system.disableUseFileVersionAsSignature,
|
|
122688
|
+
storeFilesChangingSignatureDuringEmit: system.storeFilesChangingSignatureDuringEmit,
|
|
122637
122689
|
};
|
|
122638
122690
|
}
|
|
122639
122691
|
ts.createProgramHost = createProgramHost;
|
|
@@ -122722,6 +122774,7 @@ var ts;
|
|
|
122722
122774
|
var host = ts.createCompilerHostWorker(options, /*setParentNodes*/ undefined, system);
|
|
122723
122775
|
host.createHash = ts.maybeBind(system, system.createHash);
|
|
122724
122776
|
host.disableUseFileVersionAsSignature = system.disableUseFileVersionAsSignature;
|
|
122777
|
+
host.storeFilesChangingSignatureDuringEmit = system.storeFilesChangingSignatureDuringEmit;
|
|
122725
122778
|
ts.setGetSourceFileAsHashVersioned(host, system);
|
|
122726
122779
|
ts.changeCompilerHostLikeToUseCache(host, function (fileName) { return ts.toPath(fileName, host.getCurrentDirectory(), host.getCanonicalFileName); });
|
|
122727
122780
|
return host;
|
|
@@ -131790,22 +131843,44 @@ var ts;
|
|
|
131790
131843
|
}
|
|
131791
131844
|
}
|
|
131792
131845
|
function createSnippetPrinter(printerOptions) {
|
|
131846
|
+
var escapes;
|
|
131793
131847
|
var baseWriter = ts.textChanges.createWriter(ts.getNewLineCharacter(printerOptions));
|
|
131794
131848
|
var printer = ts.createPrinter(printerOptions, baseWriter);
|
|
131795
|
-
var writer = __assign(__assign({}, baseWriter), { write: function (s) { return baseWriter.write(
|
|
131849
|
+
var writer = __assign(__assign({}, baseWriter), { write: function (s) { return escapingWrite(s, function () { return baseWriter.write(s); }); }, nonEscapingWrite: baseWriter.write, writeLiteral: function (s) { return escapingWrite(s, function () { return baseWriter.writeLiteral(s); }); }, writeStringLiteral: function (s) { return escapingWrite(s, function () { return baseWriter.writeStringLiteral(s); }); }, writeSymbol: function (s, symbol) { return escapingWrite(s, function () { return baseWriter.writeSymbol(s, symbol); }); }, writeParameter: function (s) { return escapingWrite(s, function () { return baseWriter.writeParameter(s); }); }, writeComment: function (s) { return escapingWrite(s, function () { return baseWriter.writeComment(s); }); }, writeProperty: function (s) { return escapingWrite(s, function () { return baseWriter.writeProperty(s); }); } });
|
|
131796
131850
|
return {
|
|
131797
131851
|
printSnippetList: printSnippetList,
|
|
131798
131852
|
printAndFormatSnippetList: printAndFormatSnippetList,
|
|
131799
131853
|
};
|
|
131854
|
+
// The formatter/scanner will have issues with snippet-escaped text,
|
|
131855
|
+
// so instead of writing the escaped text directly to the writer,
|
|
131856
|
+
// generate a set of changes that can be applied to the unescaped text
|
|
131857
|
+
// to escape it post-formatting.
|
|
131858
|
+
function escapingWrite(s, write) {
|
|
131859
|
+
var escaped = ts.escapeSnippetText(s);
|
|
131860
|
+
if (escaped !== s) {
|
|
131861
|
+
var start = baseWriter.getTextPos();
|
|
131862
|
+
write();
|
|
131863
|
+
var end = baseWriter.getTextPos();
|
|
131864
|
+
escapes = ts.append(escapes || (escapes = []), { newText: escaped, span: { start: start, length: end - start } });
|
|
131865
|
+
}
|
|
131866
|
+
else {
|
|
131867
|
+
write();
|
|
131868
|
+
}
|
|
131869
|
+
}
|
|
131800
131870
|
/* Snippet-escaping version of `printer.printList`. */
|
|
131801
131871
|
function printSnippetList(format, list, sourceFile) {
|
|
131872
|
+
var unescaped = printUnescapedSnippetList(format, list, sourceFile);
|
|
131873
|
+
return escapes ? ts.textChanges.applyChanges(unescaped, escapes) : unescaped;
|
|
131874
|
+
}
|
|
131875
|
+
function printUnescapedSnippetList(format, list, sourceFile) {
|
|
131876
|
+
escapes = undefined;
|
|
131802
131877
|
writer.clear();
|
|
131803
131878
|
printer.writeList(format, list, sourceFile, writer);
|
|
131804
131879
|
return writer.getText();
|
|
131805
131880
|
}
|
|
131806
131881
|
function printAndFormatSnippetList(format, list, sourceFile, formatContext) {
|
|
131807
131882
|
var syntheticFile = {
|
|
131808
|
-
text:
|
|
131883
|
+
text: printUnescapedSnippetList(format, list, sourceFile),
|
|
131809
131884
|
getLineAndCharacterOfPosition: function (pos) {
|
|
131810
131885
|
return ts.getLineAndCharacterOfPosition(this, pos);
|
|
131811
131886
|
},
|
|
@@ -131817,7 +131892,10 @@ var ts;
|
|
|
131817
131892
|
/* indentation */ 0,
|
|
131818
131893
|
/* delta */ 0, __assign(__assign({}, formatContext), { options: formatOptions }));
|
|
131819
131894
|
});
|
|
131820
|
-
|
|
131895
|
+
var allChanges = escapes
|
|
131896
|
+
? ts.stableSort(ts.concatenate(changes, escapes), function (a, b) { return ts.compareTextSpans(a.span, b.span); })
|
|
131897
|
+
: changes;
|
|
131898
|
+
return ts.textChanges.applyChanges(syntheticFile.text, allChanges);
|
|
131821
131899
|
}
|
|
131822
131900
|
}
|
|
131823
131901
|
function originToCompletionEntryData(origin) {
|
package/lib/tsserverlibrary.d.ts
CHANGED
|
@@ -2172,7 +2172,9 @@ declare namespace ts {
|
|
|
2172
2172
|
export type ResolvedConfigFileName = string & {
|
|
2173
2173
|
_isResolvedConfigFileName: never;
|
|
2174
2174
|
};
|
|
2175
|
-
export
|
|
2175
|
+
export interface WriteFileCallbackData {
|
|
2176
|
+
}
|
|
2177
|
+
export type WriteFileCallback = (fileName: string, text: string, writeByteOrderMark: boolean, onError?: (message: string) => void, sourceFiles?: readonly SourceFile[], data?: WriteFileCallbackData) => void;
|
|
2176
2178
|
export class OperationCanceledException {
|
|
2177
2179
|
}
|
|
2178
2180
|
export interface CancellationToken {
|