@typescript-deploys/pr-build 4.7.0-pr-48784-4 → 4.7.0-pr-48784-10

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/protocol.d.ts CHANGED
@@ -1825,6 +1825,7 @@ declare namespace ts.server.protocol {
1825
1825
  body?: CompletionInfo;
1826
1826
  }
1827
1827
  interface CompletionInfo {
1828
+ readonly flags?: number;
1828
1829
  readonly isGlobalCompletion: boolean;
1829
1830
  readonly isMemberCompletion: boolean;
1830
1831
  readonly isNewIdentifierLocation: boolean;
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-insiders.20220427";
72
+ ts.version = ts.versionMajorMinor + ".0-insiders.20220429";
73
73
  var NativeCollections;
74
74
  (function (NativeCollections) {
75
75
  var globals = typeof globalThis !== "undefined" ? globalThis :
@@ -5465,7 +5465,7 @@ var ts;
5465
5465
  Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node12_or_nodenext: diag(1323, ts.DiagnosticCategory.Error, "Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323", "Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node12', or 'nodenext'."),
5466
5466
  Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_or_nodenext: diag(1324, ts.DiagnosticCategory.Error, "Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_or_nodenext_1324", "Dynamic imports only support a second argument when the '--module' option is set to 'esnext' or 'nodenext'."),
5467
5467
  Argument_of_dynamic_import_cannot_be_spread_element: diag(1325, ts.DiagnosticCategory.Error, "Argument_of_dynamic_import_cannot_be_spread_element_1325", "Argument of dynamic import cannot be spread element."),
5468
- Dynamic_import_cannot_have_type_arguments: diag(1326, ts.DiagnosticCategory.Error, "Dynamic_import_cannot_have_type_arguments_1326", "Dynamic import cannot have type arguments."),
5468
+ This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments: diag(1326, ts.DiagnosticCategory.Error, "This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326", "This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),
5469
5469
  String_literal_with_double_quotes_expected: diag(1327, ts.DiagnosticCategory.Error, "String_literal_with_double_quotes_expected_1327", "String literal with double quotes expected."),
5470
5470
  Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal: diag(1328, ts.DiagnosticCategory.Error, "Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328", "Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),
5471
5471
  _0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0: diag(1329, ts.DiagnosticCategory.Error, "_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329", "'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),
@@ -5852,7 +5852,6 @@ var ts;
5852
5852
  A_rest_element_cannot_have_a_property_name: diag(2566, ts.DiagnosticCategory.Error, "A_rest_element_cannot_have_a_property_name_2566", "A rest element cannot have a property name."),
5853
5853
  Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations: diag(2567, ts.DiagnosticCategory.Error, "Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567", "Enum declarations can only merge with namespace or other enum declarations."),
5854
5854
  Property_0_may_not_exist_on_type_1_Did_you_mean_2: diag(2568, ts.DiagnosticCategory.Error, "Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568", "Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),
5855
- Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators: diag(2569, ts.DiagnosticCategory.Error, "Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterati_2569", "Type '{0}' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),
5856
5855
  Could_not_find_name_0_Did_you_mean_1: diag(2570, ts.DiagnosticCategory.Error, "Could_not_find_name_0_Did_you_mean_1_2570", "Could not find name '{0}'. Did you mean '{1}'?"),
5857
5856
  Object_is_of_type_unknown: diag(2571, ts.DiagnosticCategory.Error, "Object_is_of_type_unknown_2571", "Object is of type 'unknown'."),
5858
5857
  A_rest_element_type_must_be_an_array_type: diag(2574, ts.DiagnosticCategory.Error, "A_rest_element_type_must_be_an_array_type_2574", "A rest element type must be an array type."),
@@ -6540,6 +6539,7 @@ var ts;
6540
6539
  Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4: diag(6397, ts.DiagnosticCategory.Message, "Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397", "Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),
6541
6540
  Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved: diag(6398, ts.DiagnosticCategory.Message, "Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398", "Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),
6542
6541
  Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_are_not_emitted: diag(6399, ts.DiagnosticCategory.Message, "Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_are_not_emitted_6399", "Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes are not emitted"),
6542
+ Project_0_is_up_to_date_but_needs_update_to_timestamps_of_output_files_that_are_older_than_input_files: diag(6400, ts.DiagnosticCategory.Message, "Project_0_is_up_to_date_but_needs_update_to_timestamps_of_output_files_that_are_older_than_input_fil_6400", "Project '{0}' is up to date but needs update to timestamps of output files that are older than input files"),
6543
6543
  The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1: diag(6500, ts.DiagnosticCategory.Message, "The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500", "The expected type comes from property '{0}' which is declared here on type '{1}'"),
6544
6544
  The_expected_type_comes_from_this_index_signature: diag(6501, ts.DiagnosticCategory.Message, "The_expected_type_comes_from_this_index_signature_6501", "The expected type comes from this index signature."),
6545
6545
  The_expected_type_comes_from_the_return_type_of_this_signature: diag(6502, ts.DiagnosticCategory.Message, "The_expected_type_comes_from_the_return_type_of_this_signature_6502", "The expected type comes from the return type of this signature."),
@@ -69331,7 +69331,7 @@ var ts;
69331
69331
  }
69332
69332
  var yieldType = getIterationTypeOfIterable(use, 0, inputType, undefined);
69333
69333
  if (yieldType) {
69334
- return [ts.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators, false];
69334
+ return [ts.Diagnostics.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher, false];
69335
69335
  }
69336
69336
  if (isES2015OrLaterIterable((_a = inputType.symbol) === null || _a === void 0 ? void 0 : _a.escapedName)) {
69337
69337
  return [ts.Diagnostics.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher, true];
@@ -72161,7 +72161,7 @@ var ts;
72161
72161
  var symbol = getIntrinsicTagSymbol(name.parent);
72162
72162
  return symbol === unknownSymbol ? undefined : symbol;
72163
72163
  }
72164
- var result = resolveEntityName(name, meaning, false, !isJSDoc_1, ts.getHostSignatureFromJSDoc(name));
72164
+ var result = resolveEntityName(name, meaning, false, true, ts.getHostSignatureFromJSDoc(name));
72165
72165
  if (!result && isJSDoc_1) {
72166
72166
  var container = ts.findAncestor(name, ts.or(ts.isClassLike, ts.isInterfaceDeclaration));
72167
72167
  if (container) {
@@ -73843,6 +73843,9 @@ var ts;
73843
73843
  return ts.some(types, checkGrammarExpressionWithTypeArguments);
73844
73844
  }
73845
73845
  function checkGrammarExpressionWithTypeArguments(node) {
73846
+ if (ts.isExpressionWithTypeArguments(node) && ts.isImportKeyword(node.expression) && node.typeArguments) {
73847
+ return grammarErrorOnNode(node, ts.Diagnostics.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);
73848
+ }
73846
73849
  return checkGrammarTypeArguments(node, node.typeArguments);
73847
73850
  }
73848
73851
  function checkGrammarClassDeclarationHeritageClauses(node) {
@@ -74703,7 +74706,7 @@ var ts;
74703
74706
  return grammarErrorOnNode(node, ts.Diagnostics.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node12_or_nodenext);
74704
74707
  }
74705
74708
  if (node.typeArguments) {
74706
- return grammarErrorOnNode(node, ts.Diagnostics.Dynamic_import_cannot_have_type_arguments);
74709
+ return grammarErrorOnNode(node, ts.Diagnostics.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);
74707
74710
  }
74708
74711
  var nodeArguments = node.arguments;
74709
74712
  if (moduleKind !== ts.ModuleKind.ESNext && moduleKind !== ts.ModuleKind.NodeNext) {
@@ -89057,6 +89060,8 @@ var ts;
89057
89060
  var varDecl = factory.createVariableDeclaration(newId, undefined, resolver.createTypeOfExpression(input.expression, input, declarationEmitNodeBuilderFlags, symbolTracker), undefined);
89058
89061
  errorFallbackNode = undefined;
89059
89062
  var statement = factory.createVariableStatement(needsDeclare ? [factory.createModifier(135)] : [], factory.createVariableDeclarationList([varDecl], 2));
89063
+ preserveJsDoc(statement, input);
89064
+ ts.removeAllComments(input);
89060
89065
  return [statement, factory.updateExportAssignment(input, input.decorators, input.modifiers, newId)];
89061
89066
  }
89062
89067
  }
@@ -99252,6 +99257,10 @@ var ts;
99252
99257
  }
99253
99258
  return ts.filterSemanticDiagnostics(diagnostics, state.compilerOptions);
99254
99259
  }
99260
+ function isProgramBundleEmitBuildInfo(info) {
99261
+ return !!ts.outFile(info.options || {});
99262
+ }
99263
+ ts.isProgramBundleEmitBuildInfo = isProgramBundleEmitBuildInfo;
99255
99264
  function getProgramBuildInfo(state, getCanonicalFileName, host) {
99256
99265
  var outFilePath = ts.outFile(state.compilerOptions);
99257
99266
  if (outFilePath && !state.compilerOptions.composite)
@@ -99260,7 +99269,18 @@ var ts;
99260
99269
  var buildInfoDirectory = ts.getDirectoryPath(ts.getNormalizedAbsolutePath(ts.getTsBuildInfoEmitOutputFilePath(state.compilerOptions), currentDirectory));
99261
99270
  state.dtsChangeTime = state.hasChangedEmitSignature ? ts.getCurrentTime(host).getTime() : state.dtsChangeTime;
99262
99271
  if (outFilePath) {
99272
+ var fileNames_1 = [];
99273
+ var fileInfos_1 = [];
99274
+ state.program.getRootFileNames().forEach(function (f) {
99275
+ var sourceFile = state.program.getSourceFile(f);
99276
+ if (!sourceFile)
99277
+ return;
99278
+ fileNames_1.push(relativeToBuildInfo(sourceFile.resolvedPath));
99279
+ fileInfos_1.push(sourceFile.version);
99280
+ });
99263
99281
  var result_15 = {
99282
+ fileNames: fileNames_1,
99283
+ fileInfos: fileInfos_1,
99264
99284
  options: convertToProgramBuildInfoCompilerOptions(state.compilerOptions, "affectsBundleEmitBuildInfo"),
99265
99285
  outSignature: state.outSignature,
99266
99286
  dtsChangeTime: state.dtsChangeTime,
@@ -99715,43 +99735,54 @@ var ts;
99715
99735
  { version: fileInfo.version, signature: fileInfo.signature === false ? undefined : fileInfo.version, affectsGlobalScope: fileInfo.affectsGlobalScope, impliedFormat: fileInfo.impliedFormat };
99716
99736
  }
99717
99737
  ts.toBuilderStateFileInfo = toBuilderStateFileInfo;
99718
- function createBuilderProgramUsingProgramBuildInfo(programFromBuildInfo, buildInfoPath, host) {
99719
- var _a, _b, _c, _d, _e;
99738
+ function createBuilderProgramUsingProgramBuildInfo(program, buildInfoPath, host) {
99739
+ var _a, _b, _c, _d;
99720
99740
  var buildInfoDirectory = ts.getDirectoryPath(ts.getNormalizedAbsolutePath(buildInfoPath, host.getCurrentDirectory()));
99721
99741
  var getCanonicalFileName = ts.createGetCanonicalFileName(host.useCaseSensitiveFileNames());
99722
- var program = programFromBuildInfo;
99723
- var filePaths = (_a = program.fileNames) === null || _a === void 0 ? void 0 : _a.map(toPath);
99724
- var filePathsSetList = (_b = program.fileIdsList) === null || _b === void 0 ? void 0 : _b.map(function (fileIds) { return new ts.Set(fileIds.map(toFilePath)); });
99725
- var fileInfos = new ts.Map();
99726
- var emitSignatures = ((_c = program.options) === null || _c === void 0 ? void 0 : _c.composite) && !ts.outFile(program.options) ? new ts.Map() : undefined;
99727
- (_d = program.fileInfos) === null || _d === void 0 ? void 0 : _d.forEach(function (fileInfo, index) {
99728
- var path = toFilePath(index + 1);
99729
- var stateFileInfo = toBuilderStateFileInfo(fileInfo);
99730
- fileInfos.set(path, stateFileInfo);
99731
- if (emitSignatures && stateFileInfo.signature)
99732
- emitSignatures.set(path, stateFileInfo.signature);
99733
- });
99734
- (_e = program.emitSignatures) === null || _e === void 0 ? void 0 : _e.forEach(function (value) {
99735
- if (ts.isNumber(value))
99736
- emitSignatures.delete(toFilePath(value));
99737
- else
99738
- emitSignatures.set(toFilePath(value[0]), value[1]);
99739
- });
99740
- var state = {
99741
- fileInfos: fileInfos,
99742
- compilerOptions: program.options ? ts.convertToOptionsWithAbsolutePaths(program.options, toAbsolutePath) : {},
99743
- referencedMap: toManyToManyPathMap(program.referencedMap),
99744
- exportedModulesMap: toManyToManyPathMap(program.exportedModulesMap),
99745
- semanticDiagnosticsPerFile: program.semanticDiagnosticsPerFile && ts.arrayToMap(program.semanticDiagnosticsPerFile, function (value) { return toFilePath(ts.isNumber(value) ? value : value[0]); }, function (value) { return ts.isNumber(value) ? ts.emptyArray : value[1]; }),
99746
- hasReusableDiagnostic: true,
99747
- affectedFilesPendingEmit: ts.map(program.affectedFilesPendingEmit, function (value) { return toFilePath(value[0]); }),
99748
- affectedFilesPendingEmitKind: program.affectedFilesPendingEmit && ts.arrayToMap(program.affectedFilesPendingEmit, function (value) { return toFilePath(value[0]); }, function (value) { return value[1]; }),
99749
- affectedFilesPendingEmitIndex: program.affectedFilesPendingEmit && 0,
99750
- changedFilesSet: new ts.Set(ts.map(program.changeFileSet, toFilePath)),
99751
- dtsChangeTime: program.dtsChangeTime,
99752
- emitSignatures: (emitSignatures === null || emitSignatures === void 0 ? void 0 : emitSignatures.size) ? emitSignatures : undefined,
99753
- outSignature: program.outSignature,
99754
- };
99742
+ var state;
99743
+ var filePaths;
99744
+ var filePathsSetList;
99745
+ if (isProgramBundleEmitBuildInfo(program)) {
99746
+ state = {
99747
+ fileInfos: new ts.Map(),
99748
+ compilerOptions: program.options ? ts.convertToOptionsWithAbsolutePaths(program.options, toAbsolutePath) : {},
99749
+ dtsChangeTime: program.dtsChangeTime,
99750
+ outSignature: program.outSignature,
99751
+ };
99752
+ }
99753
+ else {
99754
+ filePaths = (_a = program.fileNames) === null || _a === void 0 ? void 0 : _a.map(toPath);
99755
+ filePathsSetList = (_b = program.fileIdsList) === null || _b === void 0 ? void 0 : _b.map(function (fileIds) { return new ts.Set(fileIds.map(toFilePath)); });
99756
+ var fileInfos_2 = new ts.Map();
99757
+ var emitSignatures_1 = ((_c = program.options) === null || _c === void 0 ? void 0 : _c.composite) && !ts.outFile(program.options) ? new ts.Map() : undefined;
99758
+ program.fileInfos.forEach(function (fileInfo, index) {
99759
+ var path = toFilePath(index + 1);
99760
+ var stateFileInfo = toBuilderStateFileInfo(fileInfo);
99761
+ fileInfos_2.set(path, stateFileInfo);
99762
+ if (emitSignatures_1 && stateFileInfo.signature)
99763
+ emitSignatures_1.set(path, stateFileInfo.signature);
99764
+ });
99765
+ (_d = program.emitSignatures) === null || _d === void 0 ? void 0 : _d.forEach(function (value) {
99766
+ if (ts.isNumber(value))
99767
+ emitSignatures_1.delete(toFilePath(value));
99768
+ else
99769
+ emitSignatures_1.set(toFilePath(value[0]), value[1]);
99770
+ });
99771
+ state = {
99772
+ fileInfos: fileInfos_2,
99773
+ compilerOptions: program.options ? ts.convertToOptionsWithAbsolutePaths(program.options, toAbsolutePath) : {},
99774
+ referencedMap: toManyToManyPathMap(program.referencedMap),
99775
+ exportedModulesMap: toManyToManyPathMap(program.exportedModulesMap),
99776
+ semanticDiagnosticsPerFile: program.semanticDiagnosticsPerFile && ts.arrayToMap(program.semanticDiagnosticsPerFile, function (value) { return toFilePath(ts.isNumber(value) ? value : value[0]); }, function (value) { return ts.isNumber(value) ? ts.emptyArray : value[1]; }),
99777
+ hasReusableDiagnostic: true,
99778
+ affectedFilesPendingEmit: ts.map(program.affectedFilesPendingEmit, function (value) { return toFilePath(value[0]); }),
99779
+ affectedFilesPendingEmitKind: program.affectedFilesPendingEmit && ts.arrayToMap(program.affectedFilesPendingEmit, function (value) { return toFilePath(value[0]); }, function (value) { return value[1]; }),
99780
+ affectedFilesPendingEmitIndex: program.affectedFilesPendingEmit && 0,
99781
+ changedFilesSet: new ts.Set(ts.map(program.changeFileSet, toFilePath)),
99782
+ dtsChangeTime: program.dtsChangeTime,
99783
+ emitSignatures: (emitSignatures_1 === null || emitSignatures_1 === void 0 ? void 0 : emitSignatures_1.size) ? emitSignatures_1 : undefined,
99784
+ };
99785
+ }
99755
99786
  return {
99756
99787
  getState: function () { return state; },
99757
99788
  backupEmitState: ts.noop,
@@ -99801,6 +99832,18 @@ var ts;
99801
99832
  }
99802
99833
  }
99803
99834
  ts.createBuilderProgramUsingProgramBuildInfo = createBuilderProgramUsingProgramBuildInfo;
99835
+ function getBuildInfoFileVersionMap(program, buildInfoPath, host) {
99836
+ var buildInfoDirectory = ts.getDirectoryPath(ts.getNormalizedAbsolutePath(buildInfoPath, host.getCurrentDirectory()));
99837
+ var getCanonicalFileName = ts.createGetCanonicalFileName(host.useCaseSensitiveFileNames());
99838
+ var fileInfos = new ts.Map();
99839
+ program.fileInfos.forEach(function (fileInfo, index) {
99840
+ var path = ts.toPath(program.fileNames[index], buildInfoDirectory, getCanonicalFileName);
99841
+ var version = ts.isString(fileInfo) ? fileInfo : fileInfo.version;
99842
+ fileInfos.set(path, version);
99843
+ });
99844
+ return fileInfos;
99845
+ }
99846
+ ts.getBuildInfoFileVersionMap = getBuildInfoFileVersionMap;
99804
99847
  function createRedirectedBuilderProgram(getState, configFileParsingDiagnostics) {
99805
99848
  return {
99806
99849
  getState: ts.notImplemented,
@@ -102402,8 +102445,9 @@ var ts;
102402
102445
  UpToDateStatusType[UpToDateStatusType["UpstreamBlocked"] = 9] = "UpstreamBlocked";
102403
102446
  UpToDateStatusType[UpToDateStatusType["ComputingUpstream"] = 10] = "ComputingUpstream";
102404
102447
  UpToDateStatusType[UpToDateStatusType["TsVersionOutputOfDate"] = 11] = "TsVersionOutputOfDate";
102405
- UpToDateStatusType[UpToDateStatusType["ContainerOnly"] = 12] = "ContainerOnly";
102406
- UpToDateStatusType[UpToDateStatusType["ForceBuild"] = 13] = "ForceBuild";
102448
+ UpToDateStatusType[UpToDateStatusType["UpToDateWithInputFileText"] = 12] = "UpToDateWithInputFileText";
102449
+ UpToDateStatusType[UpToDateStatusType["ContainerOnly"] = 13] = "ContainerOnly";
102450
+ UpToDateStatusType[UpToDateStatusType["ForceBuild"] = 14] = "ForceBuild";
102407
102451
  })(UpToDateStatusType = ts.UpToDateStatusType || (ts.UpToDateStatusType = {}));
102408
102452
  function resolveConfigFileProjectName(project) {
102409
102453
  if (ts.fileExtensionIs(project, ".json")) {
@@ -103189,7 +103233,7 @@ var ts;
103189
103233
  }
103190
103234
  continue;
103191
103235
  }
103192
- if (status.type === ts.UpToDateStatusType.UpToDateWithUpstreamTypes) {
103236
+ if (status.type === ts.UpToDateStatusType.UpToDateWithUpstreamTypes || status.type === ts.UpToDateStatusType.UpToDateWithInputFileText) {
103193
103237
  reportAndStoreErrors(state, projectPath, ts.getConfigFileParsingDiagnostics(config));
103194
103238
  return createUpdateOutputFileStampsProject(state, project, projectPath, config, buildOrder);
103195
103239
  }
@@ -103395,6 +103439,8 @@ var ts;
103395
103439
  var oldestOutputFileName = "(none)";
103396
103440
  var oldestOutputFileTime = maximumDate;
103397
103441
  var buildInfoTime;
103442
+ var buildInfoProgram;
103443
+ var buildInfoVersionMap;
103398
103444
  var newestDeclarationFileContentChangedTime;
103399
103445
  if (buildInfoPath) {
103400
103446
  var buildInfoCacheEntry_1 = getBuildInfoCacheEntry(state, buildInfoPath, resolvedPath);
@@ -103427,6 +103473,7 @@ var ts;
103427
103473
  buildInfoFile: buildInfoPath
103428
103474
  };
103429
103475
  }
103476
+ buildInfoProgram = buildInfo.program;
103430
103477
  }
103431
103478
  oldestOutputFileTime = buildInfoTime;
103432
103479
  oldestOutputFileName = buildInfoPath;
@@ -103434,6 +103481,7 @@ var ts;
103434
103481
  }
103435
103482
  var newestInputFileName = undefined;
103436
103483
  var newestInputFileTime = minimumDate;
103484
+ var pseudoInputUptodate = false;
103437
103485
  for (var _e = 0, _f = project.fileNames; _e < _f.length; _e++) {
103438
103486
  var inputFile = _f[_e];
103439
103487
  var inputTime = getModifiedTime(state, inputFile);
@@ -103444,11 +103492,24 @@ var ts;
103444
103492
  };
103445
103493
  }
103446
103494
  if (buildInfoTime && buildInfoTime < inputTime) {
103447
- return {
103448
- type: ts.UpToDateStatusType.OutOfDateWithSelf,
103449
- outOfDateOutputFileName: buildInfoPath,
103450
- newerInputFileName: inputFile
103451
- };
103495
+ var version_3 = void 0;
103496
+ var currentVersion = void 0;
103497
+ if (buildInfoProgram) {
103498
+ if (!buildInfoVersionMap)
103499
+ buildInfoVersionMap = ts.getBuildInfoFileVersionMap(buildInfoProgram, buildInfoPath, host);
103500
+ version_3 = buildInfoVersionMap.get(toPath(state, inputFile));
103501
+ var text = version_3 ? state.readFileWithCache(inputFile) : undefined;
103502
+ currentVersion = text && (host.createHash || ts.generateDjb2Hash)(text);
103503
+ if (version_3 && version_3 === currentVersion)
103504
+ pseudoInputUptodate = true;
103505
+ }
103506
+ if (!version_3 || version_3 !== currentVersion) {
103507
+ return {
103508
+ type: ts.UpToDateStatusType.OutOfDateWithSelf,
103509
+ outOfDateOutputFileName: buildInfoPath,
103510
+ newerInputFileName: inputFile
103511
+ };
103512
+ }
103452
103513
  }
103453
103514
  if (inputTime > newestInputFileTime) {
103454
103515
  newestInputFileName = inputFile;
@@ -103538,7 +103599,11 @@ var ts;
103538
103599
  };
103539
103600
  }
103540
103601
  return {
103541
- type: pseudoUpToDate ? ts.UpToDateStatusType.UpToDateWithUpstreamTypes : ts.UpToDateStatusType.UpToDate,
103602
+ type: pseudoUpToDate ?
103603
+ ts.UpToDateStatusType.UpToDateWithUpstreamTypes :
103604
+ pseudoInputUptodate ?
103605
+ ts.UpToDateStatusType.UpToDateWithInputFileText :
103606
+ ts.UpToDateStatusType.UpToDate,
103542
103607
  newestDeclarationFileContentChangedTime: newestDeclarationFileContentChangedTime,
103543
103608
  newestInputFileTime: newestInputFileTime,
103544
103609
  newestInputFileName: newestInputFileName,
@@ -103672,6 +103737,7 @@ var ts;
103672
103737
  }
103673
103738
  break;
103674
103739
  }
103740
+ case ts.UpToDateStatusType.UpToDateWithInputFileText:
103675
103741
  case ts.UpToDateStatusType.UpToDateWithUpstreamTypes:
103676
103742
  case ts.UpToDateStatusType.OutOfDateWithPrepend:
103677
103743
  if (!(buildResult & BuildResultFlags.DeclarationOutputUnchanged)) {
@@ -103858,7 +103924,7 @@ var ts;
103858
103924
  if (!state.watch || !state.lastCachedPackageJsonLookups)
103859
103925
  return;
103860
103926
  ts.mutateMap(getOrCreateValueMapFromConfigFileMap(state.allWatchedPackageJsonFiles, resolvedPath), new ts.Map(state.lastCachedPackageJsonLookups.get(resolvedPath)), {
103861
- createNewValue: function (path, _input) { return watchFile(state, path, function () { return invalidateProjectAndScheduleBuilds(state, resolvedPath, ts.ConfigFileProgramReloadLevel.Full); }, ts.PollingInterval.High, parsed === null || parsed === void 0 ? void 0 : parsed.watchOptions, ts.WatchType.PackageJson, resolved); },
103927
+ createNewValue: function (path, _input) { return watchFile(state, path, function () { return invalidateProjectAndScheduleBuilds(state, resolvedPath, ts.ConfigFileProgramReloadLevel.None); }, ts.PollingInterval.High, parsed === null || parsed === void 0 ? void 0 : parsed.watchOptions, ts.WatchType.PackageJson, resolved); },
103862
103928
  onDeleteValue: ts.closeFileWatcher,
103863
103929
  });
103864
103930
  }
@@ -104000,6 +104066,8 @@ var ts;
104000
104066
  return reportStatus(state, ts.Diagnostics.Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed, relName(state, configFileName), relName(state, status.newerProjectName));
104001
104067
  case ts.UpToDateStatusType.UpToDateWithUpstreamTypes:
104002
104068
  return reportStatus(state, ts.Diagnostics.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies, relName(state, configFileName));
104069
+ case ts.UpToDateStatusType.UpToDateWithInputFileText:
104070
+ return reportStatus(state, ts.Diagnostics.Project_0_is_up_to_date_but_needs_update_to_timestamps_of_output_files_that_are_older_than_input_files, relName(state, configFileName));
104003
104071
  case ts.UpToDateStatusType.UpstreamOutOfDate:
104004
104072
  return reportStatus(state, ts.Diagnostics.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date, relName(state, configFileName), relName(state, status.upstreamProjectName));
104005
104073
  case ts.UpToDateStatusType.UpstreamBlocked: