mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-06-14 16:56:06 -05:00
Bump version to 4.0.2 and LKG
This commit is contained in:
142
lib/tsc.js
142
lib/tsc.js
@@ -67,7 +67,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
||||
var ts;
|
||||
(function (ts) {
|
||||
ts.versionMajorMinor = "4.0";
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
var NativeCollections;
|
||||
(function (NativeCollections) {
|
||||
function tryGetNativeMap() {
|
||||
@@ -29791,51 +29791,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -29849,28 +29844,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -30216,7 +30212,15 @@ var ts;
|
||||
validatedExcludeSpecs = validateSpecs(excludeSpecs, errors, true, jsonSourceFile, "exclude");
|
||||
}
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
function getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions) {
|
||||
@@ -30226,12 +30230,12 @@ var ts;
|
||||
var literalFileMap = new ts.Map();
|
||||
var wildcardFileMap = new ts.Map();
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -30278,14 +30282,14 @@ var ts;
|
||||
}
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -30301,6 +30305,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
|
||||
152
lib/tsserver.js
152
lib/tsserver.js
@@ -94,7 +94,7 @@ var ts;
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
ts.versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
/* @internal */
|
||||
var Comparison;
|
||||
(function (Comparison) {
|
||||
@@ -36687,51 +36687,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -36745,28 +36740,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -37191,7 +37187,15 @@ var ts;
|
||||
// or a recursive directory. This information is used by filesystem watchers to monitor for
|
||||
// new entries in these paths.
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
/**
|
||||
@@ -37220,16 +37224,16 @@ var ts;
|
||||
// file map with a possibly case insensitive key. We use this map to store paths matched
|
||||
// via wildcard of *.json kind
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
// Rather than requery this for each file and filespec, we query the supported extensions
|
||||
// once and store it on the expansion context.
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
|
||||
// remove a literal file.
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -37288,14 +37292,14 @@ var ts;
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
/* @internal */
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -37311,6 +37315,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
@@ -143502,7 +143508,7 @@ var ts;
|
||||
kind: "" /* unknown */,
|
||||
kindModifiers: "" /* none */,
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); }),
|
||||
displayParts: prefixWithApproximation(typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); })),
|
||||
documentation: type_2.symbol ? type_2.symbol.getDocumentationComment(typeChecker) : undefined,
|
||||
tags: type_2.symbol ? type_2.symbol.getJsDocTags() : undefined
|
||||
};
|
||||
@@ -143514,7 +143520,7 @@ var ts;
|
||||
kind: symbolKind,
|
||||
kindModifiers: ts.SymbolDisplay.getSymbolModifiers(symbol),
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: displayParts,
|
||||
displayParts: prefixWithApproximation(displayParts),
|
||||
documentation: documentation,
|
||||
tags: tags,
|
||||
};
|
||||
@@ -143541,6 +143547,12 @@ var ts;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
function prefixWithApproximation(displayParts) {
|
||||
if (languageServiceMode === ts.LanguageServiceMode.Semantic) {
|
||||
return displayParts;
|
||||
}
|
||||
return __spreadArrays([ts.textPart("(approximation)"), ts.spacePart()], displayParts);
|
||||
}
|
||||
/// Goto definition
|
||||
function getDefinitionAtPosition(fileName, position) {
|
||||
synchronizeHostData();
|
||||
|
||||
@@ -288,7 +288,7 @@ var ts;
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
ts.versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
/* @internal */
|
||||
var Comparison;
|
||||
(function (Comparison) {
|
||||
@@ -36881,51 +36881,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -36939,28 +36934,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -37385,7 +37381,15 @@ var ts;
|
||||
// or a recursive directory. This information is used by filesystem watchers to monitor for
|
||||
// new entries in these paths.
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
/**
|
||||
@@ -37414,16 +37418,16 @@ var ts;
|
||||
// file map with a possibly case insensitive key. We use this map to store paths matched
|
||||
// via wildcard of *.json kind
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
// Rather than requery this for each file and filespec, we query the supported extensions
|
||||
// once and store it on the expansion context.
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
|
||||
// remove a literal file.
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -37482,14 +37486,14 @@ var ts;
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
/* @internal */
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -37505,6 +37509,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
@@ -144069,7 +144075,7 @@ var ts;
|
||||
kind: "" /* unknown */,
|
||||
kindModifiers: "" /* none */,
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); }),
|
||||
displayParts: prefixWithApproximation(typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); })),
|
||||
documentation: type_2.symbol ? type_2.symbol.getDocumentationComment(typeChecker) : undefined,
|
||||
tags: type_2.symbol ? type_2.symbol.getJsDocTags() : undefined
|
||||
};
|
||||
@@ -144081,7 +144087,7 @@ var ts;
|
||||
kind: symbolKind,
|
||||
kindModifiers: ts.SymbolDisplay.getSymbolModifiers(symbol),
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: displayParts,
|
||||
displayParts: prefixWithApproximation(displayParts),
|
||||
documentation: documentation,
|
||||
tags: tags,
|
||||
};
|
||||
@@ -144108,6 +144114,12 @@ var ts;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
function prefixWithApproximation(displayParts) {
|
||||
if (languageServiceMode === ts.LanguageServiceMode.Semantic) {
|
||||
return displayParts;
|
||||
}
|
||||
return __spreadArrays([ts.textPart("(approximation)"), ts.spacePart()], displayParts);
|
||||
}
|
||||
/// Goto definition
|
||||
function getDefinitionAtPosition(fileName, position) {
|
||||
synchronizeHostData();
|
||||
|
||||
@@ -288,7 +288,7 @@ var ts;
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
ts.versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
/* @internal */
|
||||
var Comparison;
|
||||
(function (Comparison) {
|
||||
@@ -36881,51 +36881,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -36939,28 +36934,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -37385,7 +37381,15 @@ var ts;
|
||||
// or a recursive directory. This information is used by filesystem watchers to monitor for
|
||||
// new entries in these paths.
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
/**
|
||||
@@ -37414,16 +37418,16 @@ var ts;
|
||||
// file map with a possibly case insensitive key. We use this map to store paths matched
|
||||
// via wildcard of *.json kind
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
// Rather than requery this for each file and filespec, we query the supported extensions
|
||||
// once and store it on the expansion context.
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
|
||||
// remove a literal file.
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -37482,14 +37486,14 @@ var ts;
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
/* @internal */
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -37505,6 +37509,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
@@ -144069,7 +144075,7 @@ var ts;
|
||||
kind: "" /* unknown */,
|
||||
kindModifiers: "" /* none */,
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); }),
|
||||
displayParts: prefixWithApproximation(typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); })),
|
||||
documentation: type_2.symbol ? type_2.symbol.getDocumentationComment(typeChecker) : undefined,
|
||||
tags: type_2.symbol ? type_2.symbol.getJsDocTags() : undefined
|
||||
};
|
||||
@@ -144081,7 +144087,7 @@ var ts;
|
||||
kind: symbolKind,
|
||||
kindModifiers: ts.SymbolDisplay.getSymbolModifiers(symbol),
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: displayParts,
|
||||
displayParts: prefixWithApproximation(displayParts),
|
||||
documentation: documentation,
|
||||
tags: tags,
|
||||
};
|
||||
@@ -144108,6 +144114,12 @@ var ts;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
function prefixWithApproximation(displayParts) {
|
||||
if (languageServiceMode === ts.LanguageServiceMode.Semantic) {
|
||||
return displayParts;
|
||||
}
|
||||
return __spreadArrays([ts.textPart("(approximation)"), ts.spacePart()], displayParts);
|
||||
}
|
||||
/// Goto definition
|
||||
function getDefinitionAtPosition(fileName, position) {
|
||||
synchronizeHostData();
|
||||
|
||||
@@ -288,7 +288,7 @@ var ts;
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
ts.versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
/* @internal */
|
||||
var Comparison;
|
||||
(function (Comparison) {
|
||||
@@ -36881,51 +36881,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -36939,28 +36934,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -37385,7 +37381,15 @@ var ts;
|
||||
// or a recursive directory. This information is used by filesystem watchers to monitor for
|
||||
// new entries in these paths.
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
/**
|
||||
@@ -37414,16 +37418,16 @@ var ts;
|
||||
// file map with a possibly case insensitive key. We use this map to store paths matched
|
||||
// via wildcard of *.json kind
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
// Rather than requery this for each file and filespec, we query the supported extensions
|
||||
// once and store it on the expansion context.
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
|
||||
// remove a literal file.
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -37482,14 +37486,14 @@ var ts;
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
/* @internal */
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -37505,6 +37509,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
@@ -144069,7 +144075,7 @@ var ts;
|
||||
kind: "" /* unknown */,
|
||||
kindModifiers: "" /* none */,
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); }),
|
||||
displayParts: prefixWithApproximation(typeChecker.runWithCancellationToken(cancellationToken, function (typeChecker) { return ts.typeToDisplayParts(typeChecker, type_2, ts.getContainerNode(nodeForQuickInfo)); })),
|
||||
documentation: type_2.symbol ? type_2.symbol.getDocumentationComment(typeChecker) : undefined,
|
||||
tags: type_2.symbol ? type_2.symbol.getJsDocTags() : undefined
|
||||
};
|
||||
@@ -144081,7 +144087,7 @@ var ts;
|
||||
kind: symbolKind,
|
||||
kindModifiers: ts.SymbolDisplay.getSymbolModifiers(symbol),
|
||||
textSpan: ts.createTextSpanFromNode(nodeForQuickInfo, sourceFile),
|
||||
displayParts: displayParts,
|
||||
displayParts: prefixWithApproximation(displayParts),
|
||||
documentation: documentation,
|
||||
tags: tags,
|
||||
};
|
||||
@@ -144108,6 +144114,12 @@ var ts;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
function prefixWithApproximation(displayParts) {
|
||||
if (languageServiceMode === ts.LanguageServiceMode.Semantic) {
|
||||
return displayParts;
|
||||
}
|
||||
return __spreadArrays([ts.textPart("(approximation)"), ts.spacePart()], displayParts);
|
||||
}
|
||||
/// Goto definition
|
||||
function getDefinitionAtPosition(fileName, position) {
|
||||
synchronizeHostData();
|
||||
|
||||
@@ -83,7 +83,7 @@ var ts;
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
ts.versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
ts.version = ts.versionMajorMinor + ".1-rc";
|
||||
ts.version = "4.0.2";
|
||||
/* @internal */
|
||||
var Comparison;
|
||||
(function (Comparison) {
|
||||
@@ -36676,51 +36676,46 @@ var ts;
|
||||
configFileSpecs: spec
|
||||
};
|
||||
function getFileNames() {
|
||||
var filesSpecs;
|
||||
if (ts.hasProperty(raw, "files") && !isNullOrUndefined(raw.files)) {
|
||||
if (ts.isArray(raw.files)) {
|
||||
filesSpecs = raw.files;
|
||||
var hasReferences = ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references);
|
||||
var hasZeroOrNoReferences = !hasReferences || raw.references.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
var referencesOfRaw = getPropFromRaw("references", function (element) { return typeof element === "object"; }, "object");
|
||||
if (ts.isArray(referencesOfRaw)) {
|
||||
for (var _i = 0, referencesOfRaw_1 = referencesOfRaw; _i < referencesOfRaw_1.length; _i++) {
|
||||
var ref = referencesOfRaw_1[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "files", "Array");
|
||||
}
|
||||
var filesSpecs = toPropValue(getSpecsFromRaw("files"));
|
||||
if (filesSpecs) {
|
||||
var hasZeroOrNoReferences = referencesOfRaw === "no-prop" || ts.isArray(referencesOfRaw) && referencesOfRaw.length === 0;
|
||||
var hasExtends = ts.hasProperty(raw, "extends");
|
||||
if (filesSpecs.length === 0 && hasZeroOrNoReferences && !hasExtends) {
|
||||
if (sourceFile) {
|
||||
var fileName = configFileName || "tsconfig.json";
|
||||
var diagnosticMessage = ts.Diagnostics.The_files_list_in_config_file_0_is_empty;
|
||||
var nodeValue = ts.firstDefined(ts.getTsConfigPropArray(sourceFile, "files"), function (property) { return property.initializer; });
|
||||
var error = nodeValue
|
||||
? ts.createDiagnosticForNodeInSourceFile(sourceFile, nodeValue, diagnosticMessage, fileName)
|
||||
: ts.createCompilerDiagnostic(diagnosticMessage, fileName);
|
||||
errors.push(error);
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.The_files_list_in_config_file_0_is_empty, configFileName || "tsconfig.json");
|
||||
}
|
||||
}
|
||||
}
|
||||
var includeSpecs;
|
||||
if (ts.hasProperty(raw, "include") && !isNullOrUndefined(raw.include)) {
|
||||
if (ts.isArray(raw.include)) {
|
||||
includeSpecs = raw.include;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "include", "Array");
|
||||
}
|
||||
}
|
||||
var excludeSpecs;
|
||||
if (ts.hasProperty(raw, "exclude") && !isNullOrUndefined(raw.exclude)) {
|
||||
if (ts.isArray(raw.exclude)) {
|
||||
excludeSpecs = raw.exclude;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "exclude", "Array");
|
||||
}
|
||||
}
|
||||
else if (raw.compilerOptions) {
|
||||
var includeSpecs = toPropValue(getSpecsFromRaw("include"));
|
||||
var excludeOfRaw = getSpecsFromRaw("exclude");
|
||||
var excludeSpecs = toPropValue(excludeOfRaw);
|
||||
if (excludeOfRaw === "no-prop" && raw.compilerOptions) {
|
||||
var outDir = raw.compilerOptions.outDir;
|
||||
var declarationDir = raw.compilerOptions.declarationDir;
|
||||
if (outDir || declarationDir) {
|
||||
@@ -36734,28 +36729,29 @@ var ts;
|
||||
if (shouldReportNoInputFiles(result, canJsonReportNoInputFiles(raw), resolutionStack)) {
|
||||
errors.push(getErrorForNoInputFiles(result.spec, configFileName));
|
||||
}
|
||||
if (ts.hasProperty(raw, "references") && !isNullOrUndefined(raw.references)) {
|
||||
if (ts.isArray(raw.references)) {
|
||||
for (var _i = 0, _a = raw.references; _i < _a.length; _i++) {
|
||||
var ref = _a[_i];
|
||||
if (typeof ref.path !== "string") {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "reference.path", "string");
|
||||
}
|
||||
else {
|
||||
(projectReferences || (projectReferences = [])).push({
|
||||
path: ts.getNormalizedAbsolutePath(ref.path, basePath),
|
||||
originalPath: ref.path,
|
||||
prepend: ref.prepend,
|
||||
circular: ref.circular
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function toPropValue(specResult) {
|
||||
return ts.isArray(specResult) ? specResult : undefined;
|
||||
}
|
||||
function getSpecsFromRaw(prop) {
|
||||
return getPropFromRaw(prop, ts.isString, "string");
|
||||
}
|
||||
function getPropFromRaw(prop, validateElement, elementTypeName) {
|
||||
if (ts.hasProperty(raw, prop) && !isNullOrUndefined(raw[prop])) {
|
||||
if (ts.isArray(raw[prop])) {
|
||||
var result = raw[prop];
|
||||
if (!sourceFile && !ts.every(result, validateElement)) {
|
||||
errors.push(ts.createCompilerDiagnostic(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, elementTypeName));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, "references", "Array");
|
||||
createCompilerDiagnosticOnlyIfJson(ts.Diagnostics.Compiler_option_0_requires_a_value_of_type_1, prop, "Array");
|
||||
return "not-array";
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return "no-prop";
|
||||
}
|
||||
function createCompilerDiagnosticOnlyIfJson(message, arg0, arg1) {
|
||||
if (!sourceFile) {
|
||||
@@ -37180,7 +37176,15 @@ var ts;
|
||||
// or a recursive directory. This information is used by filesystem watchers to monitor for
|
||||
// new entries in these paths.
|
||||
var wildcardDirectories = getWildcardDirectories(validatedIncludeSpecs, validatedExcludeSpecs, basePath, host.useCaseSensitiveFileNames);
|
||||
var spec = { filesSpecs: filesSpecs, includeSpecs: includeSpecs, excludeSpecs: excludeSpecs, validatedIncludeSpecs: validatedIncludeSpecs, validatedExcludeSpecs: validatedExcludeSpecs, wildcardDirectories: wildcardDirectories };
|
||||
var spec = {
|
||||
filesSpecs: filesSpecs,
|
||||
includeSpecs: includeSpecs,
|
||||
excludeSpecs: excludeSpecs,
|
||||
validatedFilesSpec: ts.filter(filesSpecs, ts.isString),
|
||||
validatedIncludeSpecs: validatedIncludeSpecs,
|
||||
validatedExcludeSpecs: validatedExcludeSpecs,
|
||||
wildcardDirectories: wildcardDirectories
|
||||
};
|
||||
return getFileNamesFromConfigSpecs(spec, basePath, options, host, extraFileExtensions);
|
||||
}
|
||||
/**
|
||||
@@ -37209,16 +37213,16 @@ var ts;
|
||||
// file map with a possibly case insensitive key. We use this map to store paths matched
|
||||
// via wildcard of *.json kind
|
||||
var wildCardJsonFileMap = new ts.Map();
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs, wildcardDirectories = spec.wildcardDirectories;
|
||||
// Rather than requery this for each file and filespec, we query the supported extensions
|
||||
// once and store it on the expansion context.
|
||||
var supportedExtensions = ts.getSupportedExtensions(options, extraFileExtensions);
|
||||
var supportedExtensionsWithJsonIfResolveJsonModule = ts.getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
|
||||
// remove a literal file.
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_1 = filesSpecs; _i < filesSpecs_1.length; _i++) {
|
||||
var fileName = filesSpecs_1[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_1 = validatedFilesSpec; _i < validatedFilesSpec_1.length; _i++) {
|
||||
var fileName = validatedFilesSpec_1[_i];
|
||||
var file = ts.getNormalizedAbsolutePath(fileName, basePath);
|
||||
literalFileMap.set(keyMapper(file), file);
|
||||
}
|
||||
@@ -37277,14 +37281,14 @@ var ts;
|
||||
ts.getFileNamesFromConfigSpecs = getFileNamesFromConfigSpecs;
|
||||
/* @internal */
|
||||
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames, currentDirectory) {
|
||||
var filesSpecs = spec.filesSpecs, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
var validatedFilesSpec = spec.validatedFilesSpec, validatedIncludeSpecs = spec.validatedIncludeSpecs, validatedExcludeSpecs = spec.validatedExcludeSpecs;
|
||||
if (!ts.length(validatedIncludeSpecs) || !ts.length(validatedExcludeSpecs))
|
||||
return false;
|
||||
basePath = ts.normalizePath(basePath);
|
||||
var keyMapper = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
if (filesSpecs) {
|
||||
for (var _i = 0, filesSpecs_2 = filesSpecs; _i < filesSpecs_2.length; _i++) {
|
||||
var fileName = filesSpecs_2[_i];
|
||||
if (validatedFilesSpec) {
|
||||
for (var _i = 0, validatedFilesSpec_2 = validatedFilesSpec; _i < validatedFilesSpec_2.length; _i++) {
|
||||
var fileName = validatedFilesSpec_2[_i];
|
||||
if (keyMapper(ts.getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
||||
return false;
|
||||
}
|
||||
@@ -37300,6 +37304,8 @@ var ts;
|
||||
ts.isExcludedFile = isExcludedFile;
|
||||
function validateSpecs(specs, errors, allowTrailingRecursion, jsonSourceFile, specKey) {
|
||||
return specs.filter(function (spec) {
|
||||
if (!ts.isString(spec))
|
||||
return false;
|
||||
var diag = specToDiagnostic(spec, allowTrailingRecursion);
|
||||
if (diag !== undefined) {
|
||||
errors.push(createDiagnostic(diag, spec));
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "typescript",
|
||||
"author": "Microsoft Corp.",
|
||||
"homepage": "https://www.typescriptlang.org/",
|
||||
"version": "4.0.1-rc",
|
||||
"version": "4.0.2",
|
||||
"license": "Apache-2.0",
|
||||
"description": "TypeScript is a language for application scale JavaScript development",
|
||||
"keywords": [
|
||||
|
||||
@@ -3,7 +3,7 @@ namespace ts {
|
||||
// If changing the text in this section, be sure to test `configurePrerelease` too.
|
||||
export const versionMajorMinor = "4.0";
|
||||
/** The version of the TypeScript compiler release */
|
||||
export const version = `${versionMajorMinor}.1-rc`;
|
||||
export const version = "4.0.2" as string;
|
||||
|
||||
/**
|
||||
* Type of objects whose values are all of the same type.
|
||||
|
||||
Reference in New Issue
Block a user