typescript 5.2.0-dev.20230707 → 5.2.0-dev.20230709
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/tsc.js +85 -85
- package/lib/tsserver.js +239 -135
- package/lib/tsserverlibrary.d.ts +5 -1
- package/lib/tsserverlibrary.js +239 -135
- package/lib/typescript.d.ts +4 -0
- package/lib/typescript.js +226 -123
- package/lib/typingsInstaller.js +55 -55
- package/package.json +2 -2
package/lib/tsserverlibrary.js
CHANGED
|
@@ -35,7 +35,7 @@ var ts = (() => {
|
|
|
35
35
|
"src/compiler/corePublic.ts"() {
|
|
36
36
|
"use strict";
|
|
37
37
|
versionMajorMinor = "5.2";
|
|
38
|
-
version = `${versionMajorMinor}.0-dev.
|
|
38
|
+
version = `${versionMajorMinor}.0-dev.20230709`;
|
|
39
39
|
Comparison = /* @__PURE__ */ ((Comparison3) => {
|
|
40
40
|
Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
|
|
41
41
|
Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
|
|
@@ -1464,8 +1464,8 @@ var ts = (() => {
|
|
|
1464
1464
|
}
|
|
1465
1465
|
return false;
|
|
1466
1466
|
}
|
|
1467
|
-
function createGetCanonicalFileName(
|
|
1468
|
-
return
|
|
1467
|
+
function createGetCanonicalFileName(useCaseSensitiveFileNames2) {
|
|
1468
|
+
return useCaseSensitiveFileNames2 ? identity : toFileNameLowerCase;
|
|
1469
1469
|
}
|
|
1470
1470
|
function patternText({ prefix, suffix }) {
|
|
1471
1471
|
return `${prefix}*${suffix}`;
|
|
@@ -5425,10 +5425,10 @@ ${lanes.join("\n")}
|
|
|
5425
5425
|
pollingIntervalQueue(pollingInterval).pollScheduled = host.setTimeout(pollingInterval === 250 /* Low */ ? pollLowPollingIntervalQueue : pollPollingIntervalQueue, pollingInterval, pollingInterval === 250 /* Low */ ? "pollLowPollingIntervalQueue" : "pollPollingIntervalQueue", pollingIntervalQueue(pollingInterval));
|
|
5426
5426
|
}
|
|
5427
5427
|
}
|
|
5428
|
-
function createUseFsEventsOnParentDirectoryWatchFile(fsWatch,
|
|
5428
|
+
function createUseFsEventsOnParentDirectoryWatchFile(fsWatch, useCaseSensitiveFileNames2) {
|
|
5429
5429
|
const fileWatcherCallbacks = createMultiMap();
|
|
5430
5430
|
const dirWatchers = /* @__PURE__ */ new Map();
|
|
5431
|
-
const toCanonicalName = createGetCanonicalFileName(
|
|
5431
|
+
const toCanonicalName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
5432
5432
|
return nonPollingWatchFile;
|
|
5433
5433
|
function nonPollingWatchFile(fileName, callback, _pollingInterval, fallbackOptions) {
|
|
5434
5434
|
const filePath = toCanonicalName(fileName);
|
|
@@ -5504,8 +5504,8 @@ ${lanes.join("\n")}
|
|
|
5504
5504
|
pollScheduled = host.setTimeout(pollQueue, 2e3 /* High */, "pollQueue");
|
|
5505
5505
|
}
|
|
5506
5506
|
}
|
|
5507
|
-
function createSingleWatcherPerName(cache,
|
|
5508
|
-
const toCanonicalFileName = createGetCanonicalFileName(
|
|
5507
|
+
function createSingleWatcherPerName(cache, useCaseSensitiveFileNames2, name, callback, createWatcher) {
|
|
5508
|
+
const toCanonicalFileName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
5509
5509
|
const path = toCanonicalFileName(name);
|
|
5510
5510
|
const existing = cache.get(path);
|
|
5511
5511
|
if (existing) {
|
|
@@ -5555,7 +5555,7 @@ ${lanes.join("\n")}
|
|
|
5555
5555
|
}
|
|
5556
5556
|
function createDirectoryWatcherSupportingRecursive({
|
|
5557
5557
|
watchDirectory,
|
|
5558
|
-
useCaseSensitiveFileNames,
|
|
5558
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
5559
5559
|
getCurrentDirectory,
|
|
5560
5560
|
getAccessibleSortedChildDirectories,
|
|
5561
5561
|
fileSystemEntryExists,
|
|
@@ -5567,8 +5567,8 @@ ${lanes.join("\n")}
|
|
|
5567
5567
|
const callbackCache = createMultiMap();
|
|
5568
5568
|
const cacheToUpdateChildWatches = /* @__PURE__ */ new Map();
|
|
5569
5569
|
let timerToUpdateChildWatches;
|
|
5570
|
-
const filePathComparer = getStringComparer(!
|
|
5571
|
-
const toCanonicalFilePath = createGetCanonicalFileName(
|
|
5570
|
+
const filePathComparer = getStringComparer(!useCaseSensitiveFileNames2);
|
|
5571
|
+
const toCanonicalFilePath = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
5572
5572
|
return (dirName, callback, recursive, options) => recursive ? createDirectoryWatcher(dirName, options, callback) : watchDirectory(dirName, callback, recursive, options);
|
|
5573
5573
|
function createDirectoryWatcher(dirName, options, callback) {
|
|
5574
5574
|
const dirPath = toCanonicalFilePath(dirName);
|
|
@@ -5735,12 +5735,12 @@ ${lanes.join("\n")}
|
|
|
5735
5735
|
}
|
|
5736
5736
|
}
|
|
5737
5737
|
function isIgnoredPath(path, options) {
|
|
5738
|
-
return some(ignoredPaths, (searchPath) => isInPath(path, searchPath)) || isIgnoredByWatchOptions(path, options,
|
|
5738
|
+
return some(ignoredPaths, (searchPath) => isInPath(path, searchPath)) || isIgnoredByWatchOptions(path, options, useCaseSensitiveFileNames2, getCurrentDirectory);
|
|
5739
5739
|
}
|
|
5740
5740
|
function isInPath(path, searchPath) {
|
|
5741
5741
|
if (stringContains(path, searchPath))
|
|
5742
5742
|
return true;
|
|
5743
|
-
if (
|
|
5743
|
+
if (useCaseSensitiveFileNames2)
|
|
5744
5744
|
return false;
|
|
5745
5745
|
return stringContains(toCanonicalFilePath(path), searchPath);
|
|
5746
5746
|
}
|
|
@@ -5758,14 +5758,14 @@ ${lanes.join("\n")}
|
|
|
5758
5758
|
}
|
|
5759
5759
|
};
|
|
5760
5760
|
}
|
|
5761
|
-
function isIgnoredByWatchOptions(pathToCheck, options,
|
|
5762
|
-
return ((options == null ? void 0 : options.excludeDirectories) || (options == null ? void 0 : options.excludeFiles)) && (matchesExclude(pathToCheck, options == null ? void 0 : options.excludeFiles,
|
|
5761
|
+
function isIgnoredByWatchOptions(pathToCheck, options, useCaseSensitiveFileNames2, getCurrentDirectory) {
|
|
5762
|
+
return ((options == null ? void 0 : options.excludeDirectories) || (options == null ? void 0 : options.excludeFiles)) && (matchesExclude(pathToCheck, options == null ? void 0 : options.excludeFiles, useCaseSensitiveFileNames2, getCurrentDirectory()) || matchesExclude(pathToCheck, options == null ? void 0 : options.excludeDirectories, useCaseSensitiveFileNames2, getCurrentDirectory()));
|
|
5763
5763
|
}
|
|
5764
|
-
function createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options,
|
|
5764
|
+
function createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options, useCaseSensitiveFileNames2, getCurrentDirectory) {
|
|
5765
5765
|
return (eventName, relativeFileName) => {
|
|
5766
5766
|
if (eventName === "rename") {
|
|
5767
5767
|
const fileName = !relativeFileName ? directoryName : normalizePath(combinePaths(directoryName, relativeFileName));
|
|
5768
|
-
if (!relativeFileName || !isIgnoredByWatchOptions(fileName, options,
|
|
5768
|
+
if (!relativeFileName || !isIgnoredByWatchOptions(fileName, options, useCaseSensitiveFileNames2, getCurrentDirectory)) {
|
|
5769
5769
|
callback(fileName);
|
|
5770
5770
|
}
|
|
5771
5771
|
}
|
|
@@ -5778,7 +5778,7 @@ ${lanes.join("\n")}
|
|
|
5778
5778
|
clearTimeout: clearTimeout2,
|
|
5779
5779
|
fsWatchWorker,
|
|
5780
5780
|
fileSystemEntryExists,
|
|
5781
|
-
useCaseSensitiveFileNames,
|
|
5781
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
5782
5782
|
getCurrentDirectory,
|
|
5783
5783
|
fsSupportsRecursiveFsWatch,
|
|
5784
5784
|
getAccessibleSortedChildDirectories,
|
|
@@ -5850,7 +5850,7 @@ ${lanes.join("\n")}
|
|
|
5850
5850
|
);
|
|
5851
5851
|
case 5 /* UseFsEventsOnParentDirectory */:
|
|
5852
5852
|
if (!nonPollingWatchFile) {
|
|
5853
|
-
nonPollingWatchFile = createUseFsEventsOnParentDirectoryWatchFile(fsWatch,
|
|
5853
|
+
nonPollingWatchFile = createUseFsEventsOnParentDirectoryWatchFile(fsWatch, useCaseSensitiveFileNames2);
|
|
5854
5854
|
}
|
|
5855
5855
|
return nonPollingWatchFile(fileName, callback, pollingInterval, getFallbackOptions(options));
|
|
5856
5856
|
default:
|
|
@@ -5899,7 +5899,7 @@ ${lanes.join("\n")}
|
|
|
5899
5899
|
return fsWatch(
|
|
5900
5900
|
directoryName,
|
|
5901
5901
|
1 /* Directory */,
|
|
5902
|
-
createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options,
|
|
5902
|
+
createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options, useCaseSensitiveFileNames2, getCurrentDirectory),
|
|
5903
5903
|
recursive,
|
|
5904
5904
|
500 /* Medium */,
|
|
5905
5905
|
getFallbackOptions(options)
|
|
@@ -5907,7 +5907,7 @@ ${lanes.join("\n")}
|
|
|
5907
5907
|
}
|
|
5908
5908
|
if (!hostRecursiveDirectoryWatcher) {
|
|
5909
5909
|
hostRecursiveDirectoryWatcher = createDirectoryWatcherSupportingRecursive({
|
|
5910
|
-
useCaseSensitiveFileNames,
|
|
5910
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
5911
5911
|
getCurrentDirectory,
|
|
5912
5912
|
fileSystemEntryExists,
|
|
5913
5913
|
getAccessibleSortedChildDirectories,
|
|
@@ -5953,7 +5953,7 @@ ${lanes.join("\n")}
|
|
|
5953
5953
|
return fsWatch(
|
|
5954
5954
|
directoryName,
|
|
5955
5955
|
1 /* Directory */,
|
|
5956
|
-
createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options,
|
|
5956
|
+
createFsWatchCallbackForDirectoryWatcherCallback(directoryName, callback, options, useCaseSensitiveFileNames2, getCurrentDirectory),
|
|
5957
5957
|
recursive,
|
|
5958
5958
|
500 /* Medium */,
|
|
5959
5959
|
getFallbackOptions(watchDirectoryOptions)
|
|
@@ -5981,7 +5981,7 @@ ${lanes.join("\n")}
|
|
|
5981
5981
|
function pollingWatchFile(fileName, callback, pollingInterval, options) {
|
|
5982
5982
|
return createSingleWatcherPerName(
|
|
5983
5983
|
pollingWatches,
|
|
5984
|
-
|
|
5984
|
+
useCaseSensitiveFileNames2,
|
|
5985
5985
|
fileName,
|
|
5986
5986
|
callback,
|
|
5987
5987
|
(cb) => pollingWatchFileWorker(fileName, cb, pollingInterval, options)
|
|
@@ -5990,7 +5990,7 @@ ${lanes.join("\n")}
|
|
|
5990
5990
|
function fsWatch(fileOrDirectory, entryKind, callback, recursive, fallbackPollingInterval, fallbackOptions) {
|
|
5991
5991
|
return createSingleWatcherPerName(
|
|
5992
5992
|
recursive ? fsWatchesRecursive : fsWatches,
|
|
5993
|
-
|
|
5993
|
+
useCaseSensitiveFileNames2,
|
|
5994
5994
|
fileOrDirectory,
|
|
5995
5995
|
callback,
|
|
5996
5996
|
(cb) => fsWatchHandlingExistenceOnHost(fileOrDirectory, entryKind, cb, recursive, fallbackPollingInterval, fallbackOptions)
|
|
@@ -6149,7 +6149,7 @@ ${lanes.join("\n")}
|
|
|
6149
6149
|
const Buffer2 = require("buffer").Buffer;
|
|
6150
6150
|
const isLinuxOrMacOs = process.platform === "linux" || process.platform === "darwin";
|
|
6151
6151
|
const platform = _os.platform();
|
|
6152
|
-
const
|
|
6152
|
+
const useCaseSensitiveFileNames2 = isFileSystemCaseSensitive();
|
|
6153
6153
|
const fsRealpath = !!_fs.realpathSync.native ? process.platform === "win32" ? fsRealPathHandlingLongPath : _fs.realpathSync.native : _fs.realpathSync;
|
|
6154
6154
|
const executingFilePath = __filename.endsWith("sys.js") ? _path.join(_path.dirname(__dirname), "__fake__.js") : __filename;
|
|
6155
6155
|
const fsSupportsRecursiveFsWatch = process.platform === "win32" || process.platform === "darwin";
|
|
@@ -6160,7 +6160,7 @@ ${lanes.join("\n")}
|
|
|
6160
6160
|
setTimeout,
|
|
6161
6161
|
clearTimeout,
|
|
6162
6162
|
fsWatchWorker,
|
|
6163
|
-
useCaseSensitiveFileNames,
|
|
6163
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
6164
6164
|
getCurrentDirectory,
|
|
6165
6165
|
fileSystemEntryExists,
|
|
6166
6166
|
// Node 4.0 `fs.watch` function supports the "recursive" option on both OSX and Windows
|
|
@@ -6177,7 +6177,7 @@ ${lanes.join("\n")}
|
|
|
6177
6177
|
const nodeSystem = {
|
|
6178
6178
|
args: process.argv.slice(2),
|
|
6179
6179
|
newLine: _os.EOL,
|
|
6180
|
-
useCaseSensitiveFileNames,
|
|
6180
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
6181
6181
|
write(s) {
|
|
6182
6182
|
process.stdout.write(s);
|
|
6183
6183
|
},
|
|
@@ -6306,12 +6306,12 @@ ${lanes.join("\n")}
|
|
|
6306
6306
|
for (const node of profile.nodes) {
|
|
6307
6307
|
if (node.callFrame.url) {
|
|
6308
6308
|
const url = normalizeSlashes(node.callFrame.url);
|
|
6309
|
-
if (containsPath(fileUrlRoot, url,
|
|
6309
|
+
if (containsPath(fileUrlRoot, url, useCaseSensitiveFileNames2)) {
|
|
6310
6310
|
node.callFrame.url = getRelativePathToDirectoryOrUrl(
|
|
6311
6311
|
fileUrlRoot,
|
|
6312
6312
|
url,
|
|
6313
6313
|
fileUrlRoot,
|
|
6314
|
-
createGetCanonicalFileName(
|
|
6314
|
+
createGetCanonicalFileName(useCaseSensitiveFileNames2),
|
|
6315
6315
|
/*isAbsolutePathAnUrl*/
|
|
6316
6316
|
true
|
|
6317
6317
|
);
|
|
@@ -6491,7 +6491,7 @@ ${lanes.join("\n")}
|
|
|
6491
6491
|
}
|
|
6492
6492
|
}
|
|
6493
6493
|
function readDirectory(path, extensions, excludes, includes, depth) {
|
|
6494
|
-
return matchFiles(path, extensions, excludes, includes,
|
|
6494
|
+
return matchFiles(path, extensions, excludes, includes, useCaseSensitiveFileNames2, process.cwd(), depth, getAccessibleFileSystemEntries, realpath);
|
|
6495
6495
|
}
|
|
6496
6496
|
function fileSystemEntryExists(path, entryKind) {
|
|
6497
6497
|
const originalStackTraceLimit = Error.stackTraceLimit;
|
|
@@ -18402,7 +18402,7 @@ ${lanes.join("\n")}
|
|
|
18402
18402
|
function replaceWildcardCharacter(match, singleAsteriskRegexFragment) {
|
|
18403
18403
|
return match === "*" ? singleAsteriskRegexFragment : match === "?" ? "[^/]" : "\\" + match;
|
|
18404
18404
|
}
|
|
18405
|
-
function getFileMatcherPatterns(path, excludes, includes,
|
|
18405
|
+
function getFileMatcherPatterns(path, excludes, includes, useCaseSensitiveFileNames2, currentDirectory) {
|
|
18406
18406
|
path = normalizePath(path);
|
|
18407
18407
|
currentDirectory = normalizePath(currentDirectory);
|
|
18408
18408
|
const absolutePath = combinePaths(currentDirectory, path);
|
|
@@ -18411,22 +18411,22 @@ ${lanes.join("\n")}
|
|
|
18411
18411
|
includeFilePattern: getRegularExpressionForWildcard(includes, absolutePath, "files"),
|
|
18412
18412
|
includeDirectoryPattern: getRegularExpressionForWildcard(includes, absolutePath, "directories"),
|
|
18413
18413
|
excludePattern: getRegularExpressionForWildcard(excludes, absolutePath, "exclude"),
|
|
18414
|
-
basePaths: getBasePaths(path, includes,
|
|
18414
|
+
basePaths: getBasePaths(path, includes, useCaseSensitiveFileNames2)
|
|
18415
18415
|
};
|
|
18416
18416
|
}
|
|
18417
|
-
function getRegexFromPattern(pattern,
|
|
18418
|
-
return new RegExp(pattern,
|
|
18417
|
+
function getRegexFromPattern(pattern, useCaseSensitiveFileNames2) {
|
|
18418
|
+
return new RegExp(pattern, useCaseSensitiveFileNames2 ? "" : "i");
|
|
18419
18419
|
}
|
|
18420
|
-
function matchFiles(path, extensions, excludes, includes,
|
|
18420
|
+
function matchFiles(path, extensions, excludes, includes, useCaseSensitiveFileNames2, currentDirectory, depth, getFileSystemEntries, realpath) {
|
|
18421
18421
|
path = normalizePath(path);
|
|
18422
18422
|
currentDirectory = normalizePath(currentDirectory);
|
|
18423
|
-
const patterns = getFileMatcherPatterns(path, excludes, includes,
|
|
18424
|
-
const includeFileRegexes = patterns.includeFilePatterns && patterns.includeFilePatterns.map((pattern) => getRegexFromPattern(pattern,
|
|
18425
|
-
const includeDirectoryRegex = patterns.includeDirectoryPattern && getRegexFromPattern(patterns.includeDirectoryPattern,
|
|
18426
|
-
const excludeRegex = patterns.excludePattern && getRegexFromPattern(patterns.excludePattern,
|
|
18423
|
+
const patterns = getFileMatcherPatterns(path, excludes, includes, useCaseSensitiveFileNames2, currentDirectory);
|
|
18424
|
+
const includeFileRegexes = patterns.includeFilePatterns && patterns.includeFilePatterns.map((pattern) => getRegexFromPattern(pattern, useCaseSensitiveFileNames2));
|
|
18425
|
+
const includeDirectoryRegex = patterns.includeDirectoryPattern && getRegexFromPattern(patterns.includeDirectoryPattern, useCaseSensitiveFileNames2);
|
|
18426
|
+
const excludeRegex = patterns.excludePattern && getRegexFromPattern(patterns.excludePattern, useCaseSensitiveFileNames2);
|
|
18427
18427
|
const results = includeFileRegexes ? includeFileRegexes.map(() => []) : [[]];
|
|
18428
18428
|
const visited = /* @__PURE__ */ new Map();
|
|
18429
|
-
const toCanonical = createGetCanonicalFileName(
|
|
18429
|
+
const toCanonical = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
18430
18430
|
for (const basePath of patterns.basePaths) {
|
|
18431
18431
|
visitDirectory(basePath, combinePaths(currentDirectory, basePath), depth);
|
|
18432
18432
|
}
|
|
@@ -18468,7 +18468,7 @@ ${lanes.join("\n")}
|
|
|
18468
18468
|
}
|
|
18469
18469
|
}
|
|
18470
18470
|
}
|
|
18471
|
-
function getBasePaths(path, includes,
|
|
18471
|
+
function getBasePaths(path, includes, useCaseSensitiveFileNames2) {
|
|
18472
18472
|
const basePaths = [path];
|
|
18473
18473
|
if (includes) {
|
|
18474
18474
|
const includeBasePaths = [];
|
|
@@ -18476,9 +18476,9 @@ ${lanes.join("\n")}
|
|
|
18476
18476
|
const absolute = isRootedDiskPath(include) ? include : normalizePath(combinePaths(path, include));
|
|
18477
18477
|
includeBasePaths.push(getIncludeBasePath(absolute));
|
|
18478
18478
|
}
|
|
18479
|
-
includeBasePaths.sort(getStringComparer(!
|
|
18479
|
+
includeBasePaths.sort(getStringComparer(!useCaseSensitiveFileNames2));
|
|
18480
18480
|
for (const includeBasePath of includeBasePaths) {
|
|
18481
|
-
if (every(basePaths, (basePath) => !containsPath(basePath, includeBasePath, path, !
|
|
18481
|
+
if (every(basePaths, (basePath) => !containsPath(basePath, includeBasePath, path, !useCaseSensitiveFileNames2))) {
|
|
18482
18482
|
basePaths.push(includeBasePath);
|
|
18483
18483
|
}
|
|
18484
18484
|
}
|
|
@@ -37269,19 +37269,19 @@ ${lanes.join("\n")}
|
|
|
37269
37269
|
const wildcardFiles = arrayFrom(wildcardFileMap.values());
|
|
37270
37270
|
return literalFiles.concat(wildcardFiles, arrayFrom(wildCardJsonFileMap.values()));
|
|
37271
37271
|
}
|
|
37272
|
-
function isExcludedFile(pathToCheck, spec, basePath,
|
|
37272
|
+
function isExcludedFile(pathToCheck, spec, basePath, useCaseSensitiveFileNames2, currentDirectory) {
|
|
37273
37273
|
const { validatedFilesSpec, validatedIncludeSpecs, validatedExcludeSpecs } = spec;
|
|
37274
37274
|
if (!length(validatedIncludeSpecs) || !length(validatedExcludeSpecs))
|
|
37275
37275
|
return false;
|
|
37276
37276
|
basePath = normalizePath(basePath);
|
|
37277
|
-
const keyMapper = createGetCanonicalFileName(
|
|
37277
|
+
const keyMapper = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
37278
37278
|
if (validatedFilesSpec) {
|
|
37279
37279
|
for (const fileName of validatedFilesSpec) {
|
|
37280
37280
|
if (keyMapper(getNormalizedAbsolutePath(fileName, basePath)) === pathToCheck)
|
|
37281
37281
|
return false;
|
|
37282
37282
|
}
|
|
37283
37283
|
}
|
|
37284
|
-
return matchesExcludeWorker(pathToCheck, validatedExcludeSpecs,
|
|
37284
|
+
return matchesExcludeWorker(pathToCheck, validatedExcludeSpecs, useCaseSensitiveFileNames2, currentDirectory, basePath);
|
|
37285
37285
|
}
|
|
37286
37286
|
function invalidDotDotAfterRecursiveWildcard(s) {
|
|
37287
37287
|
const wildcardIndex = startsWith(s, "**/") ? 0 : s.indexOf("/**/");
|
|
@@ -37291,17 +37291,17 @@ ${lanes.join("\n")}
|
|
|
37291
37291
|
const lastDotIndex = endsWith(s, "/..") ? s.length : s.lastIndexOf("/../");
|
|
37292
37292
|
return lastDotIndex > wildcardIndex;
|
|
37293
37293
|
}
|
|
37294
|
-
function matchesExclude(pathToCheck, excludeSpecs,
|
|
37294
|
+
function matchesExclude(pathToCheck, excludeSpecs, useCaseSensitiveFileNames2, currentDirectory) {
|
|
37295
37295
|
return matchesExcludeWorker(
|
|
37296
37296
|
pathToCheck,
|
|
37297
37297
|
filter(excludeSpecs, (spec) => !invalidDotDotAfterRecursiveWildcard(spec)),
|
|
37298
|
-
|
|
37298
|
+
useCaseSensitiveFileNames2,
|
|
37299
37299
|
currentDirectory
|
|
37300
37300
|
);
|
|
37301
37301
|
}
|
|
37302
|
-
function matchesExcludeWorker(pathToCheck, excludeSpecs,
|
|
37302
|
+
function matchesExcludeWorker(pathToCheck, excludeSpecs, useCaseSensitiveFileNames2, currentDirectory, basePath) {
|
|
37303
37303
|
const excludePattern = getRegularExpressionForWildcard(excludeSpecs, combinePaths(normalizePath(currentDirectory), basePath), "exclude");
|
|
37304
|
-
const excludeRegex = excludePattern && getRegexFromPattern(excludePattern,
|
|
37304
|
+
const excludeRegex = excludePattern && getRegexFromPattern(excludePattern, useCaseSensitiveFileNames2);
|
|
37305
37305
|
if (!excludeRegex)
|
|
37306
37306
|
return false;
|
|
37307
37307
|
if (excludeRegex.test(pathToCheck))
|
|
@@ -37331,9 +37331,9 @@ ${lanes.join("\n")}
|
|
|
37331
37331
|
return [Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0, spec];
|
|
37332
37332
|
}
|
|
37333
37333
|
}
|
|
37334
|
-
function getWildcardDirectories({ validatedIncludeSpecs: include, validatedExcludeSpecs: exclude }, path,
|
|
37334
|
+
function getWildcardDirectories({ validatedIncludeSpecs: include, validatedExcludeSpecs: exclude }, path, useCaseSensitiveFileNames2) {
|
|
37335
37335
|
const rawExcludeRegex = getRegularExpressionForWildcard(exclude, path, "exclude");
|
|
37336
|
-
const excludeRegex = rawExcludeRegex && new RegExp(rawExcludeRegex,
|
|
37336
|
+
const excludeRegex = rawExcludeRegex && new RegExp(rawExcludeRegex, useCaseSensitiveFileNames2 ? "" : "i");
|
|
37337
37337
|
const wildcardDirectories = {};
|
|
37338
37338
|
if (include !== void 0) {
|
|
37339
37339
|
const recursiveKeys = [];
|
|
@@ -37342,7 +37342,7 @@ ${lanes.join("\n")}
|
|
|
37342
37342
|
if (excludeRegex && excludeRegex.test(spec)) {
|
|
37343
37343
|
continue;
|
|
37344
37344
|
}
|
|
37345
|
-
const match = getWildcardDirectoryFromSpec(spec,
|
|
37345
|
+
const match = getWildcardDirectoryFromSpec(spec, useCaseSensitiveFileNames2);
|
|
37346
37346
|
if (match) {
|
|
37347
37347
|
const { key, flags } = match;
|
|
37348
37348
|
const existingFlags = wildcardDirectories[key];
|
|
@@ -37357,7 +37357,7 @@ ${lanes.join("\n")}
|
|
|
37357
37357
|
for (const key in wildcardDirectories) {
|
|
37358
37358
|
if (hasProperty(wildcardDirectories, key)) {
|
|
37359
37359
|
for (const recursiveKey of recursiveKeys) {
|
|
37360
|
-
if (key !== recursiveKey && containsPath(recursiveKey, key, path, !
|
|
37360
|
+
if (key !== recursiveKey && containsPath(recursiveKey, key, path, !useCaseSensitiveFileNames2)) {
|
|
37361
37361
|
delete wildcardDirectories[key];
|
|
37362
37362
|
}
|
|
37363
37363
|
}
|
|
@@ -37366,20 +37366,20 @@ ${lanes.join("\n")}
|
|
|
37366
37366
|
}
|
|
37367
37367
|
return wildcardDirectories;
|
|
37368
37368
|
}
|
|
37369
|
-
function getWildcardDirectoryFromSpec(spec,
|
|
37369
|
+
function getWildcardDirectoryFromSpec(spec, useCaseSensitiveFileNames2) {
|
|
37370
37370
|
const match = wildcardDirectoryPattern.exec(spec);
|
|
37371
37371
|
if (match) {
|
|
37372
37372
|
const questionWildcardIndex = spec.indexOf("?");
|
|
37373
37373
|
const starWildcardIndex = spec.indexOf("*");
|
|
37374
37374
|
const lastDirectorySeperatorIndex = spec.lastIndexOf(directorySeparator);
|
|
37375
37375
|
return {
|
|
37376
|
-
key:
|
|
37376
|
+
key: useCaseSensitiveFileNames2 ? match[0] : toFileNameLowerCase(match[0]),
|
|
37377
37377
|
flags: questionWildcardIndex !== -1 && questionWildcardIndex < lastDirectorySeperatorIndex || starWildcardIndex !== -1 && starWildcardIndex < lastDirectorySeperatorIndex ? 1 /* Recursive */ : 0 /* None */
|
|
37378
37378
|
};
|
|
37379
37379
|
}
|
|
37380
37380
|
if (isImplicitGlob(spec.substring(spec.lastIndexOf(directorySeparator) + 1))) {
|
|
37381
37381
|
return {
|
|
37382
|
-
key: removeTrailingDirectorySeparator(
|
|
37382
|
+
key: removeTrailingDirectorySeparator(useCaseSensitiveFileNames2 ? spec : toFileNameLowerCase(spec)),
|
|
37383
37383
|
flags: 1 /* Recursive */
|
|
37384
37384
|
};
|
|
37385
37385
|
}
|
|
@@ -39065,6 +39065,18 @@ ${lanes.join("\n")}
|
|
|
39065
39065
|
result.push("JSON");
|
|
39066
39066
|
return result.join(", ");
|
|
39067
39067
|
}
|
|
39068
|
+
function extensionsToExtensionsArray(extensions) {
|
|
39069
|
+
const result = [];
|
|
39070
|
+
if (extensions & 1 /* TypeScript */)
|
|
39071
|
+
result.push(...supportedTSImplementationExtensions);
|
|
39072
|
+
if (extensions & 2 /* JavaScript */)
|
|
39073
|
+
result.push(...supportedJSExtensionsFlat);
|
|
39074
|
+
if (extensions & 4 /* Declaration */)
|
|
39075
|
+
result.push(...supportedDeclarationExtensions);
|
|
39076
|
+
if (extensions & 8 /* Json */)
|
|
39077
|
+
result.push(".json" /* Json */);
|
|
39078
|
+
return result;
|
|
39079
|
+
}
|
|
39068
39080
|
function resolvedTypeScriptOnly(resolved) {
|
|
39069
39081
|
if (!resolved) {
|
|
39070
39082
|
return void 0;
|
|
@@ -39237,8 +39249,8 @@ ${lanes.join("\n")}
|
|
|
39237
39249
|
return typeRoots;
|
|
39238
39250
|
}
|
|
39239
39251
|
function arePathsEqual(path1, path2, host) {
|
|
39240
|
-
const
|
|
39241
|
-
return comparePaths(path1, path2, !
|
|
39252
|
+
const useCaseSensitiveFileNames2 = typeof host.useCaseSensitiveFileNames === "function" ? host.useCaseSensitiveFileNames() : host.useCaseSensitiveFileNames;
|
|
39253
|
+
return comparePaths(path1, path2, !useCaseSensitiveFileNames2) === 0 /* EqualTo */;
|
|
39242
39254
|
}
|
|
39243
39255
|
function getOriginalAndResolvedFileName(fileName, host, traceEnabled) {
|
|
39244
39256
|
const resolvedFileName = realPath(fileName, host, traceEnabled);
|
|
@@ -40501,7 +40513,7 @@ ${lanes.join("\n")}
|
|
|
40501
40513
|
arrayIsEqualTo
|
|
40502
40514
|
);
|
|
40503
40515
|
for (const conditions of conditionSets) {
|
|
40504
|
-
const loadPackageJsonExportsState = { ...loadPackageJsonMainState, failedLookupLocations: [], conditions };
|
|
40516
|
+
const loadPackageJsonExportsState = { ...loadPackageJsonMainState, failedLookupLocations: [], conditions, host };
|
|
40505
40517
|
const exportResolutions = loadEntrypointsFromExportMap(
|
|
40506
40518
|
packageJsonInfo,
|
|
40507
40519
|
packageJsonInfo.contents.packageJsonContent.exports,
|
|
@@ -40533,23 +40545,42 @@ ${lanes.join("\n")}
|
|
|
40533
40545
|
return entrypoints;
|
|
40534
40546
|
function loadEntrypointsFromTargetExports(target) {
|
|
40535
40547
|
var _a, _b;
|
|
40536
|
-
if (typeof target === "string" && startsWith(target, "./")
|
|
40537
|
-
|
|
40538
|
-
|
|
40539
|
-
|
|
40540
|
-
|
|
40541
|
-
|
|
40542
|
-
|
|
40543
|
-
|
|
40544
|
-
|
|
40545
|
-
|
|
40546
|
-
|
|
40547
|
-
|
|
40548
|
-
|
|
40549
|
-
|
|
40550
|
-
|
|
40551
|
-
|
|
40552
|
-
|
|
40548
|
+
if (typeof target === "string" && startsWith(target, "./")) {
|
|
40549
|
+
if (target.indexOf("*") >= 0 && state.host.readDirectory) {
|
|
40550
|
+
if (target.indexOf("*") !== target.lastIndexOf("*")) {
|
|
40551
|
+
return false;
|
|
40552
|
+
}
|
|
40553
|
+
state.host.readDirectory(
|
|
40554
|
+
scope.packageDirectory,
|
|
40555
|
+
extensionsToExtensionsArray(extensions),
|
|
40556
|
+
/*excludes*/
|
|
40557
|
+
void 0,
|
|
40558
|
+
[changeAnyExtension(target.replace("*", "**/*"), getDeclarationEmitExtensionForPath(target))]
|
|
40559
|
+
).forEach((entry) => {
|
|
40560
|
+
entrypoints = appendIfUnique(entrypoints, {
|
|
40561
|
+
path: entry,
|
|
40562
|
+
ext: getAnyExtensionFromPath(entry),
|
|
40563
|
+
resolvedUsingTsExtension: void 0
|
|
40564
|
+
});
|
|
40565
|
+
});
|
|
40566
|
+
} else {
|
|
40567
|
+
const partsAfterFirst = getPathComponents(target).slice(2);
|
|
40568
|
+
if (partsAfterFirst.indexOf("..") >= 0 || partsAfterFirst.indexOf(".") >= 0 || partsAfterFirst.indexOf("node_modules") >= 0) {
|
|
40569
|
+
return false;
|
|
40570
|
+
}
|
|
40571
|
+
const resolvedTarget = combinePaths(scope.packageDirectory, target);
|
|
40572
|
+
const finalPath = getNormalizedAbsolutePath(resolvedTarget, (_b = (_a = state.host).getCurrentDirectory) == null ? void 0 : _b.call(_a));
|
|
40573
|
+
const result = loadFileNameFromPackageJsonField(
|
|
40574
|
+
extensions,
|
|
40575
|
+
finalPath,
|
|
40576
|
+
/*onlyRecordFailures*/
|
|
40577
|
+
false,
|
|
40578
|
+
state
|
|
40579
|
+
);
|
|
40580
|
+
if (result) {
|
|
40581
|
+
entrypoints = appendIfUnique(entrypoints, result, (a, b) => a.path === b.path);
|
|
40582
|
+
return true;
|
|
40583
|
+
}
|
|
40553
40584
|
}
|
|
40554
40585
|
} else if (Array.isArray(target)) {
|
|
40555
40586
|
for (const t of target) {
|
|
@@ -41108,13 +41139,10 @@ ${lanes.join("\n")}
|
|
|
41108
41139
|
function combineDirectoryPath(root, dir) {
|
|
41109
41140
|
return ensureTrailingDirectorySeparator(combinePaths(root, dir));
|
|
41110
41141
|
}
|
|
41111
|
-
function useCaseSensitiveFileNames() {
|
|
41112
|
-
return !state.host.useCaseSensitiveFileNames ? true : typeof state.host.useCaseSensitiveFileNames === "boolean" ? state.host.useCaseSensitiveFileNames : state.host.useCaseSensitiveFileNames();
|
|
41113
|
-
}
|
|
41114
41142
|
function tryLoadInputFileForPath(finalPath, entry, packagePath, isImports2) {
|
|
41115
41143
|
var _a, _b, _c, _d;
|
|
41116
|
-
if (!state.isConfigLookup && (state.compilerOptions.declarationDir || state.compilerOptions.outDir) && finalPath.indexOf("/node_modules/") === -1 && (state.compilerOptions.configFile ? containsPath(scope.packageDirectory, toAbsolutePath(state.compilerOptions.configFile.fileName), !useCaseSensitiveFileNames()) : true)) {
|
|
41117
|
-
const getCanonicalFileName = hostGetCanonicalFileName({ useCaseSensitiveFileNames });
|
|
41144
|
+
if (!state.isConfigLookup && (state.compilerOptions.declarationDir || state.compilerOptions.outDir) && finalPath.indexOf("/node_modules/") === -1 && (state.compilerOptions.configFile ? containsPath(scope.packageDirectory, toAbsolutePath(state.compilerOptions.configFile.fileName), !useCaseSensitiveFileNames(state)) : true)) {
|
|
41145
|
+
const getCanonicalFileName = hostGetCanonicalFileName({ useCaseSensitiveFileNames: () => useCaseSensitiveFileNames(state) });
|
|
41118
41146
|
const commonSourceDirGuesses = [];
|
|
41119
41147
|
if (state.compilerOptions.rootDir || state.compilerOptions.composite && state.compilerOptions.configFilePath) {
|
|
41120
41148
|
const commonDir = toAbsolutePath(getCommonSourceDirectory(state.compilerOptions, () => [], ((_b = (_a = state.host).getCurrentDirectory) == null ? void 0 : _b.call(_a)) || "", getCanonicalFileName));
|
|
@@ -41143,7 +41171,7 @@ ${lanes.join("\n")}
|
|
|
41143
41171
|
for (const commonSourceDirGuess of commonSourceDirGuesses) {
|
|
41144
41172
|
const candidateDirectories = getOutputDirectoriesForBaseDirectory(commonSourceDirGuess);
|
|
41145
41173
|
for (const candidateDir of candidateDirectories) {
|
|
41146
|
-
if (containsPath(candidateDir, finalPath, !useCaseSensitiveFileNames())) {
|
|
41174
|
+
if (containsPath(candidateDir, finalPath, !useCaseSensitiveFileNames(state))) {
|
|
41147
41175
|
const pathFragment = finalPath.slice(candidateDir.length + 1);
|
|
41148
41176
|
const possibleInputBase = combinePaths(commonSourceDirGuess, pathFragment);
|
|
41149
41177
|
const jsAndDtsExtensions = [".mjs" /* Mjs */, ".cjs" /* Cjs */, ".js" /* Js */, ".json" /* Json */, ".d.mts" /* Dmts */, ".d.cts" /* Dcts */, ".d.ts" /* Dts */];
|
|
@@ -41153,7 +41181,7 @@ ${lanes.join("\n")}
|
|
|
41153
41181
|
for (const possibleExt of inputExts) {
|
|
41154
41182
|
if (!extensionIsOk(extensions, possibleExt))
|
|
41155
41183
|
continue;
|
|
41156
|
-
const possibleInputWithInputExtension = changeAnyExtension(possibleInputBase, possibleExt, ext, !useCaseSensitiveFileNames());
|
|
41184
|
+
const possibleInputWithInputExtension = changeAnyExtension(possibleInputBase, possibleExt, ext, !useCaseSensitiveFileNames(state));
|
|
41157
41185
|
if (state.host.fileExists(possibleInputWithInputExtension)) {
|
|
41158
41186
|
return toSearchResult(withPackageId(scope, loadFileNameFromPackageJsonField(
|
|
41159
41187
|
extensions,
|
|
@@ -41569,6 +41597,9 @@ ${lanes.join("\n")}
|
|
|
41569
41597
|
trace(state.host, diagnostic, ...args);
|
|
41570
41598
|
}
|
|
41571
41599
|
}
|
|
41600
|
+
function useCaseSensitiveFileNames(state) {
|
|
41601
|
+
return !state.host.useCaseSensitiveFileNames ? true : typeof state.host.useCaseSensitiveFileNames === "boolean" ? state.host.useCaseSensitiveFileNames : state.host.useCaseSensitiveFileNames();
|
|
41602
|
+
}
|
|
41572
41603
|
var typeScriptVersion, nodeModulesAtTypes, NodeResolutionFeatures, nodeModulesPathPart, mangledScopedPackageSeparator;
|
|
41573
41604
|
var init_moduleNameResolver = __esm({
|
|
41574
41605
|
"src/compiler/moduleNameResolver.ts"() {
|
|
@@ -45148,7 +45179,7 @@ ${lanes.join("\n")}
|
|
|
45148
45179
|
for (const key of getOwnKeys(exports)) {
|
|
45149
45180
|
if (key === "default" || conditions.indexOf(key) >= 0 || isApplicableVersionedTypesKey(conditions, key)) {
|
|
45150
45181
|
const subTarget = exports[key];
|
|
45151
|
-
const result = tryGetModuleNameFromExports(options, targetFilePath, packageDirectory, packageName, subTarget, conditions);
|
|
45182
|
+
const result = tryGetModuleNameFromExports(options, targetFilePath, packageDirectory, packageName, subTarget, conditions, mode);
|
|
45152
45183
|
if (result) {
|
|
45153
45184
|
return result;
|
|
45154
45185
|
}
|
|
@@ -116968,14 +116999,14 @@ ${lanes.join("\n")}
|
|
|
116968
116999
|
});
|
|
116969
117000
|
|
|
116970
117001
|
// src/compiler/watchUtilities.ts
|
|
116971
|
-
function createCachedDirectoryStructureHost(host, currentDirectory,
|
|
117002
|
+
function createCachedDirectoryStructureHost(host, currentDirectory, useCaseSensitiveFileNames2) {
|
|
116972
117003
|
if (!host.getDirectories || !host.readDirectory) {
|
|
116973
117004
|
return void 0;
|
|
116974
117005
|
}
|
|
116975
117006
|
const cachedReadDirectoryResult = /* @__PURE__ */ new Map();
|
|
116976
|
-
const getCanonicalFileName = createGetCanonicalFileName(
|
|
117007
|
+
const getCanonicalFileName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
116977
117008
|
return {
|
|
116978
|
-
useCaseSensitiveFileNames,
|
|
117009
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
116979
117010
|
fileExists,
|
|
116980
117011
|
readFile: (path, encoding) => host.readFile(path, encoding),
|
|
116981
117012
|
directoryExists: host.directoryExists && directoryExists,
|
|
@@ -117097,7 +117128,7 @@ ${lanes.join("\n")}
|
|
|
117097
117128
|
const rootResult = tryReadDirectory2(rootDir, rootDirPath);
|
|
117098
117129
|
let rootSymLinkResult;
|
|
117099
117130
|
if (rootResult !== void 0) {
|
|
117100
|
-
return matchFiles(rootDir, extensions, excludes, includes,
|
|
117131
|
+
return matchFiles(rootDir, extensions, excludes, includes, useCaseSensitiveFileNames2, currentDirectory, depth, getFileSystemEntries, realpath);
|
|
117101
117132
|
}
|
|
117102
117133
|
return host.readDirectory(rootDir, extensions, excludes, includes, depth);
|
|
117103
117134
|
function getFileSystemEntries(dir) {
|
|
@@ -117292,7 +117323,7 @@ ${lanes.join("\n")}
|
|
|
117292
117323
|
program,
|
|
117293
117324
|
extraFileExtensions,
|
|
117294
117325
|
currentDirectory,
|
|
117295
|
-
useCaseSensitiveFileNames,
|
|
117326
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
117296
117327
|
writeLog,
|
|
117297
117328
|
toPath: toPath3
|
|
117298
117329
|
}) {
|
|
@@ -117308,7 +117339,7 @@ ${lanes.join("\n")}
|
|
|
117308
117339
|
writeLog(`Project: ${configFileName} Detected file add/remove of non supported extension: ${fileOrDirectory}`);
|
|
117309
117340
|
return true;
|
|
117310
117341
|
}
|
|
117311
|
-
if (isExcludedFile(fileOrDirectory, options.configFile.configFileSpecs, getNormalizedAbsolutePath(getDirectoryPath(configFileName), currentDirectory),
|
|
117342
|
+
if (isExcludedFile(fileOrDirectory, options.configFile.configFileSpecs, getNormalizedAbsolutePath(getDirectoryPath(configFileName), currentDirectory), useCaseSensitiveFileNames2, currentDirectory)) {
|
|
117312
117343
|
writeLog(`Project: ${configFileName} Detected excluded file: ${fileOrDirectory}`);
|
|
117313
117344
|
return true;
|
|
117314
117345
|
}
|
|
@@ -117365,7 +117396,7 @@ ${lanes.join("\n")}
|
|
|
117365
117396
|
function createExcludeHandlingAddWatch(key) {
|
|
117366
117397
|
return (file, cb, flags, options, detailInfo1, detailInfo2) => {
|
|
117367
117398
|
var _a;
|
|
117368
|
-
return !matchesExclude(file, key === "watchFile" ? options == null ? void 0 : options.excludeFiles : options == null ? void 0 : options.excludeDirectories,
|
|
117399
|
+
return !matchesExclude(file, key === "watchFile" ? options == null ? void 0 : options.excludeFiles : options == null ? void 0 : options.excludeDirectories, useCaseSensitiveFileNames2(), ((_a = host.getCurrentDirectory) == null ? void 0 : _a.call(host)) || "") ? factory2[key].call(
|
|
117369
117400
|
/*thisArgs*/
|
|
117370
117401
|
void 0,
|
|
117371
117402
|
file,
|
|
@@ -117377,7 +117408,7 @@ ${lanes.join("\n")}
|
|
|
117377
117408
|
) : excludeWatcherFactory(file, flags, options, detailInfo1, detailInfo2);
|
|
117378
117409
|
};
|
|
117379
117410
|
}
|
|
117380
|
-
function
|
|
117411
|
+
function useCaseSensitiveFileNames2() {
|
|
117381
117412
|
return typeof host.useCaseSensitiveFileNames === "boolean" ? host.useCaseSensitiveFileNames : host.useCaseSensitiveFileNames();
|
|
117382
117413
|
}
|
|
117383
117414
|
function createExcludeWatcherWithLogging(file, flags, options, detailInfo1, detailInfo2) {
|
|
@@ -124512,12 +124543,12 @@ ${lanes.join("\n")}
|
|
|
124512
124543
|
return true;
|
|
124513
124544
|
const isJsonFile = fileExtensionIs(fileName, ".json" /* Json */);
|
|
124514
124545
|
const basePath = getDirectoryPath(getNormalizedAbsolutePath(configFile.fileName, program.getCurrentDirectory()));
|
|
124515
|
-
const
|
|
124546
|
+
const useCaseSensitiveFileNames2 = program.useCaseSensitiveFileNames();
|
|
124516
124547
|
return find((_b = configFile == null ? void 0 : configFile.configFileSpecs) == null ? void 0 : _b.validatedIncludeSpecs, (includeSpec) => {
|
|
124517
124548
|
if (isJsonFile && !endsWith(includeSpec, ".json" /* Json */))
|
|
124518
124549
|
return false;
|
|
124519
124550
|
const pattern = getPatternFromSpec(includeSpec, basePath, "files");
|
|
124520
|
-
return !!pattern && getRegexFromPattern(`(${pattern})$`,
|
|
124551
|
+
return !!pattern && getRegexFromPattern(`(${pattern})$`, useCaseSensitiveFileNames2).test(fileName);
|
|
124521
124552
|
});
|
|
124522
124553
|
}
|
|
124523
124554
|
function fileIncludeReasonToDiagnostics(program, reason, fileNameConvertor) {
|
|
@@ -124721,7 +124752,7 @@ ${lanes.join("\n")}
|
|
|
124721
124752
|
return result;
|
|
124722
124753
|
}
|
|
124723
124754
|
function createCompilerHostFromProgramHost(host, getCompilerOptions, directoryStructureHost = host) {
|
|
124724
|
-
const
|
|
124755
|
+
const useCaseSensitiveFileNames2 = host.useCaseSensitiveFileNames();
|
|
124725
124756
|
const compilerHost = {
|
|
124726
124757
|
getSourceFile: createGetSourceFile(
|
|
124727
124758
|
(fileName, encoding) => !encoding ? compilerHost.readFile(fileName) : host.readFile(fileName, encoding),
|
|
@@ -124737,8 +124768,8 @@ ${lanes.join("\n")}
|
|
|
124737
124768
|
(path) => host.directoryExists(path)
|
|
124738
124769
|
),
|
|
124739
124770
|
getCurrentDirectory: memoize(() => host.getCurrentDirectory()),
|
|
124740
|
-
useCaseSensitiveFileNames: () =>
|
|
124741
|
-
getCanonicalFileName: createGetCanonicalFileName(
|
|
124771
|
+
useCaseSensitiveFileNames: () => useCaseSensitiveFileNames2,
|
|
124772
|
+
getCanonicalFileName: createGetCanonicalFileName(useCaseSensitiveFileNames2),
|
|
124742
124773
|
getNewLine: () => getNewLineCharacter(getCompilerOptions()),
|
|
124743
124774
|
fileExists: (f) => host.fileExists(f),
|
|
124744
124775
|
readFile: (f) => host.readFile(f),
|
|
@@ -125019,7 +125050,7 @@ ${lanes.join("\n")}
|
|
|
125019
125050
|
const sourceFilesCache = /* @__PURE__ */ new Map();
|
|
125020
125051
|
let missingFilePathsRequestedForRelease;
|
|
125021
125052
|
let hasChangedCompilerOptions = false;
|
|
125022
|
-
const
|
|
125053
|
+
const useCaseSensitiveFileNames2 = host.useCaseSensitiveFileNames();
|
|
125023
125054
|
const currentDirectory = host.getCurrentDirectory();
|
|
125024
125055
|
const { configFileName, optionsToExtend: optionsToExtendForConfigFile = {}, watchOptionsToExtend, extraFileExtensions, createProgram: createProgram2 } = host;
|
|
125025
125056
|
let { rootFiles: rootFileNames, options: compilerOptions, watchOptions, projectReferences } = host;
|
|
@@ -125027,7 +125058,7 @@ ${lanes.join("\n")}
|
|
|
125027
125058
|
let configFileParsingDiagnostics;
|
|
125028
125059
|
let canConfigFileJsonReportNoInputFiles = false;
|
|
125029
125060
|
let hasChangedConfigFileParsingErrors = false;
|
|
125030
|
-
const cachedDirectoryStructureHost = configFileName === void 0 ? void 0 : createCachedDirectoryStructureHost(host, currentDirectory,
|
|
125061
|
+
const cachedDirectoryStructureHost = configFileName === void 0 ? void 0 : createCachedDirectoryStructureHost(host, currentDirectory, useCaseSensitiveFileNames2);
|
|
125031
125062
|
const directoryStructureHost = cachedDirectoryStructureHost || host;
|
|
125032
125063
|
const parseConfigFileHost = parseConfigHostFromCompilerHostLike(host, directoryStructureHost);
|
|
125033
125064
|
let newLine = updateNewLine();
|
|
@@ -125045,8 +125076,8 @@ ${lanes.join("\n")}
|
|
|
125045
125076
|
Debug.assert(compilerOptions);
|
|
125046
125077
|
Debug.assert(rootFileNames);
|
|
125047
125078
|
const { watchFile: watchFile2, watchDirectory, writeLog } = createWatchFactory(host, compilerOptions);
|
|
125048
|
-
const getCanonicalFileName = createGetCanonicalFileName(
|
|
125049
|
-
writeLog(`Current directory: ${currentDirectory} CaseSensitiveFileNames: ${
|
|
125079
|
+
const getCanonicalFileName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
125080
|
+
writeLog(`Current directory: ${currentDirectory} CaseSensitiveFileNames: ${useCaseSensitiveFileNames2}`);
|
|
125050
125081
|
let configFileWatcher;
|
|
125051
125082
|
if (configFileName) {
|
|
125052
125083
|
configFileWatcher = watchFile2(configFileName, scheduleProgramReload, 2e3 /* High */, watchOptions, WatchType.ConfigFile);
|
|
@@ -125552,7 +125583,7 @@ ${lanes.join("\n")}
|
|
|
125552
125583
|
options: compilerOptions,
|
|
125553
125584
|
program: getCurrentBuilderProgram() || rootFileNames,
|
|
125554
125585
|
currentDirectory,
|
|
125555
|
-
useCaseSensitiveFileNames,
|
|
125586
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
125556
125587
|
writeLog,
|
|
125557
125588
|
toPath: toPath3
|
|
125558
125589
|
}))
|
|
@@ -125642,7 +125673,7 @@ ${lanes.join("\n")}
|
|
|
125642
125673
|
options: config.parsedCommandLine.options,
|
|
125643
125674
|
program: config.parsedCommandLine.fileNames,
|
|
125644
125675
|
currentDirectory,
|
|
125645
|
-
useCaseSensitiveFileNames,
|
|
125676
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
125646
125677
|
writeLog,
|
|
125647
125678
|
toPath: toPath3
|
|
125648
125679
|
}))
|
|
@@ -128405,6 +128436,8 @@ ${lanes.join("\n")}
|
|
|
128405
128436
|
ScriptElementKind2["enumMemberElement"] = "enum member";
|
|
128406
128437
|
ScriptElementKind2["variableElement"] = "var";
|
|
128407
128438
|
ScriptElementKind2["localVariableElement"] = "local var";
|
|
128439
|
+
ScriptElementKind2["variableUsingElement"] = "using";
|
|
128440
|
+
ScriptElementKind2["variableAwaitUsingElement"] = "await using";
|
|
128408
128441
|
ScriptElementKind2["functionElement"] = "function";
|
|
128409
128442
|
ScriptElementKind2["localFunctionElement"] = "local function";
|
|
128410
128443
|
ScriptElementKind2["memberFunctionElement"] = "method";
|
|
@@ -131538,10 +131571,10 @@ ${lanes.join("\n")}
|
|
|
131538
131571
|
}
|
|
131539
131572
|
function forEachExternalModuleToImportFrom(program, host, preferences, useAutoImportProvider, cb) {
|
|
131540
131573
|
var _a, _b;
|
|
131541
|
-
const
|
|
131574
|
+
const useCaseSensitiveFileNames2 = hostUsesCaseSensitiveFileNames(host);
|
|
131542
131575
|
const excludePatterns = preferences.autoImportFileExcludePatterns && mapDefined(preferences.autoImportFileExcludePatterns, (spec) => {
|
|
131543
131576
|
const pattern = getPatternFromSpec(spec, "", "exclude");
|
|
131544
|
-
return pattern ? getRegexFromPattern(pattern,
|
|
131577
|
+
return pattern ? getRegexFromPattern(pattern, useCaseSensitiveFileNames2) : void 0;
|
|
131545
131578
|
});
|
|
131546
131579
|
forEachExternalModule(program.getTypeChecker(), program.getSourceFiles(), excludePatterns, (module2, file) => cb(
|
|
131547
131580
|
module2,
|
|
@@ -133037,12 +133070,12 @@ ${lanes.join("\n")}
|
|
|
133037
133070
|
function isDocumentRegistryEntry(entry) {
|
|
133038
133071
|
return !!entry.sourceFile;
|
|
133039
133072
|
}
|
|
133040
|
-
function createDocumentRegistry(
|
|
133041
|
-
return createDocumentRegistryInternal(
|
|
133073
|
+
function createDocumentRegistry(useCaseSensitiveFileNames2, currentDirectory) {
|
|
133074
|
+
return createDocumentRegistryInternal(useCaseSensitiveFileNames2, currentDirectory);
|
|
133042
133075
|
}
|
|
133043
|
-
function createDocumentRegistryInternal(
|
|
133076
|
+
function createDocumentRegistryInternal(useCaseSensitiveFileNames2, currentDirectory = "", externalCache) {
|
|
133044
133077
|
const buckets = /* @__PURE__ */ new Map();
|
|
133045
|
-
const getCanonicalFileName = createGetCanonicalFileName(!!
|
|
133078
|
+
const getCanonicalFileName = createGetCanonicalFileName(!!useCaseSensitiveFileNames2);
|
|
133046
133079
|
function reportStats() {
|
|
133047
133080
|
const bucketInfoArray = arrayFrom(buckets.keys()).filter((name) => name && name.charAt(0) === "_").map((name) => {
|
|
133048
133081
|
const entries = buckets.get(name);
|
|
@@ -133251,12 +133284,12 @@ ${lanes.join("\n")}
|
|
|
133251
133284
|
|
|
133252
133285
|
// src/services/getEditsForFileRename.ts
|
|
133253
133286
|
function getEditsForFileRename(program, oldFileOrDirPath, newFileOrDirPath, host, formatContext, preferences, sourceMapper) {
|
|
133254
|
-
const
|
|
133255
|
-
const getCanonicalFileName = createGetCanonicalFileName(
|
|
133287
|
+
const useCaseSensitiveFileNames2 = hostUsesCaseSensitiveFileNames(host);
|
|
133288
|
+
const getCanonicalFileName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
133256
133289
|
const oldToNew = getPathUpdater(oldFileOrDirPath, newFileOrDirPath, getCanonicalFileName, sourceMapper);
|
|
133257
133290
|
const newToOld = getPathUpdater(newFileOrDirPath, oldFileOrDirPath, getCanonicalFileName, sourceMapper);
|
|
133258
133291
|
return ts_textChanges_exports.ChangeTracker.with({ host, formatContext, preferences }, (changeTracker) => {
|
|
133259
|
-
updateTsconfigFiles(program, changeTracker, oldToNew, oldFileOrDirPath, newFileOrDirPath, host.getCurrentDirectory(),
|
|
133292
|
+
updateTsconfigFiles(program, changeTracker, oldToNew, oldFileOrDirPath, newFileOrDirPath, host.getCurrentDirectory(), useCaseSensitiveFileNames2);
|
|
133260
133293
|
updateImports(program, changeTracker, oldToNew, newToOld, host, getCanonicalFileName);
|
|
133261
133294
|
});
|
|
133262
133295
|
}
|
|
@@ -133278,7 +133311,7 @@ ${lanes.join("\n")}
|
|
|
133278
133311
|
const rel = getRelativePathFromFile(a0, b0, getCanonicalFileName);
|
|
133279
133312
|
return combinePathsSafe(getDirectoryPath(a1), rel);
|
|
133280
133313
|
}
|
|
133281
|
-
function updateTsconfigFiles(program, changeTracker, oldToNew, oldFileOrDirPath, newFileOrDirPath, currentDirectory,
|
|
133314
|
+
function updateTsconfigFiles(program, changeTracker, oldToNew, oldFileOrDirPath, newFileOrDirPath, currentDirectory, useCaseSensitiveFileNames2) {
|
|
133282
133315
|
const { configFile } = program.getCompilerOptions();
|
|
133283
133316
|
if (!configFile)
|
|
133284
133317
|
return;
|
|
@@ -133302,10 +133335,10 @@ ${lanes.join("\n")}
|
|
|
133302
133335
|
/*excludes*/
|
|
133303
133336
|
[],
|
|
133304
133337
|
includes,
|
|
133305
|
-
|
|
133338
|
+
useCaseSensitiveFileNames2,
|
|
133306
133339
|
currentDirectory
|
|
133307
133340
|
);
|
|
133308
|
-
if (getRegexFromPattern(Debug.checkDefined(matchers.includeFilePattern),
|
|
133341
|
+
if (getRegexFromPattern(Debug.checkDefined(matchers.includeFilePattern), useCaseSensitiveFileNames2).test(oldFileOrDirPath) && !getRegexFromPattern(Debug.checkDefined(matchers.includeFilePattern), useCaseSensitiveFileNames2).test(newFileOrDirPath)) {
|
|
133309
133342
|
changeTracker.insertNodeAfter(configFile, last(property.initializer.elements), factory.createStringLiteral(relativePath(newFileOrDirPath)));
|
|
133310
133343
|
}
|
|
133311
133344
|
return;
|
|
@@ -133353,7 +133386,7 @@ ${lanes.join("\n")}
|
|
|
133353
133386
|
configDir,
|
|
133354
133387
|
path,
|
|
133355
133388
|
/*ignoreCase*/
|
|
133356
|
-
!
|
|
133389
|
+
!useCaseSensitiveFileNames2
|
|
133357
133390
|
);
|
|
133358
133391
|
}
|
|
133359
133392
|
}
|
|
@@ -136667,7 +136700,7 @@ ${lanes.join("\n")}
|
|
|
136667
136700
|
const body = addExports(oldFile, toMove.all, usage.oldFileImportsFromTargetFile, useEsModuleSyntax);
|
|
136668
136701
|
if (typeof targetFile !== "string") {
|
|
136669
136702
|
if (targetFile.statements.length > 0) {
|
|
136670
|
-
changes
|
|
136703
|
+
moveStatementsToTargetFile(changes, program, body, targetFile, toMove);
|
|
136671
136704
|
} else {
|
|
136672
136705
|
changes.insertNodesAtEndOfFile(
|
|
136673
136706
|
targetFile,
|
|
@@ -137460,6 +137493,67 @@ ${lanes.join("\n")}
|
|
|
137460
137493
|
return false;
|
|
137461
137494
|
}
|
|
137462
137495
|
}
|
|
137496
|
+
function moveStatementsToTargetFile(changes, program, statements, targetFile, toMove) {
|
|
137497
|
+
var _a;
|
|
137498
|
+
const removedExports = /* @__PURE__ */ new Set();
|
|
137499
|
+
const targetExports = (_a = targetFile.symbol) == null ? void 0 : _a.exports;
|
|
137500
|
+
if (targetExports) {
|
|
137501
|
+
const checker = program.getTypeChecker();
|
|
137502
|
+
const targetToSourceExports = /* @__PURE__ */ new Map();
|
|
137503
|
+
for (const node of toMove.all) {
|
|
137504
|
+
if (isTopLevelDeclarationStatement(node) && hasSyntacticModifier(node, 1 /* Export */)) {
|
|
137505
|
+
forEachTopLevelDeclaration(node, (declaration) => {
|
|
137506
|
+
var _a2;
|
|
137507
|
+
const targetDeclarations = canHaveSymbol(declaration) ? (_a2 = targetExports.get(declaration.symbol.escapedName)) == null ? void 0 : _a2.declarations : void 0;
|
|
137508
|
+
const exportDeclaration = firstDefined(targetDeclarations, (d) => isExportDeclaration(d) ? d : isExportSpecifier(d) ? tryCast(d.parent.parent, isExportDeclaration) : void 0);
|
|
137509
|
+
if (exportDeclaration && exportDeclaration.moduleSpecifier) {
|
|
137510
|
+
targetToSourceExports.set(
|
|
137511
|
+
exportDeclaration,
|
|
137512
|
+
(targetToSourceExports.get(exportDeclaration) || /* @__PURE__ */ new Set()).add(declaration)
|
|
137513
|
+
);
|
|
137514
|
+
}
|
|
137515
|
+
});
|
|
137516
|
+
}
|
|
137517
|
+
}
|
|
137518
|
+
for (const [exportDeclaration, topLevelDeclarations] of arrayFrom(targetToSourceExports)) {
|
|
137519
|
+
if (exportDeclaration.exportClause && isNamedExports(exportDeclaration.exportClause) && length(exportDeclaration.exportClause.elements)) {
|
|
137520
|
+
const elements = exportDeclaration.exportClause.elements;
|
|
137521
|
+
const updatedElements = filter(elements, (elem) => find(skipAlias(elem.symbol, checker).declarations, (d) => isTopLevelDeclaration(d) && topLevelDeclarations.has(d)) === void 0);
|
|
137522
|
+
if (length(updatedElements) === 0) {
|
|
137523
|
+
changes.deleteNode(targetFile, exportDeclaration);
|
|
137524
|
+
removedExports.add(exportDeclaration);
|
|
137525
|
+
continue;
|
|
137526
|
+
}
|
|
137527
|
+
if (length(updatedElements) < length(elements)) {
|
|
137528
|
+
changes.replaceNode(
|
|
137529
|
+
targetFile,
|
|
137530
|
+
exportDeclaration,
|
|
137531
|
+
factory.updateExportDeclaration(
|
|
137532
|
+
exportDeclaration,
|
|
137533
|
+
exportDeclaration.modifiers,
|
|
137534
|
+
exportDeclaration.isTypeOnly,
|
|
137535
|
+
factory.updateNamedExports(exportDeclaration.exportClause, factory.createNodeArray(updatedElements, elements.hasTrailingComma)),
|
|
137536
|
+
exportDeclaration.moduleSpecifier,
|
|
137537
|
+
exportDeclaration.assertClause
|
|
137538
|
+
)
|
|
137539
|
+
);
|
|
137540
|
+
}
|
|
137541
|
+
}
|
|
137542
|
+
}
|
|
137543
|
+
}
|
|
137544
|
+
const lastReExport = findLast(targetFile.statements, (n) => isExportDeclaration(n) && !!n.moduleSpecifier && !removedExports.has(n));
|
|
137545
|
+
if (lastReExport) {
|
|
137546
|
+
changes.insertNodesBefore(
|
|
137547
|
+
targetFile,
|
|
137548
|
+
lastReExport,
|
|
137549
|
+
statements,
|
|
137550
|
+
/*blankLineBetween*/
|
|
137551
|
+
true
|
|
137552
|
+
);
|
|
137553
|
+
} else {
|
|
137554
|
+
changes.insertNodesAfter(targetFile, targetFile.statements[targetFile.statements.length - 1], statements);
|
|
137555
|
+
}
|
|
137556
|
+
}
|
|
137463
137557
|
function getOverloadRangeToMove(sourceFile, statement) {
|
|
137464
137558
|
if (isFunctionLikeDeclaration(statement)) {
|
|
137465
137559
|
const declarations = statement.symbol.declarations;
|
|
@@ -141495,10 +141589,10 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
141495
141589
|
host.log(message);
|
|
141496
141590
|
}
|
|
141497
141591
|
}
|
|
141498
|
-
const
|
|
141499
|
-
const getCanonicalFileName = createGetCanonicalFileName(
|
|
141592
|
+
const useCaseSensitiveFileNames2 = hostUsesCaseSensitiveFileNames(host);
|
|
141593
|
+
const getCanonicalFileName = createGetCanonicalFileName(useCaseSensitiveFileNames2);
|
|
141500
141594
|
const sourceMapper = getSourceMapper({
|
|
141501
|
-
useCaseSensitiveFileNames: () =>
|
|
141595
|
+
useCaseSensitiveFileNames: () => useCaseSensitiveFileNames2,
|
|
141502
141596
|
getCurrentDirectory: () => currentDirectory,
|
|
141503
141597
|
getProgram,
|
|
141504
141598
|
fileExists: maybeBind(host, host.fileExists),
|
|
@@ -141546,7 +141640,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
141546
141640
|
getSourceFileByPath: getOrCreateSourceFileByPath,
|
|
141547
141641
|
getCancellationToken: () => cancellationToken,
|
|
141548
141642
|
getCanonicalFileName,
|
|
141549
|
-
useCaseSensitiveFileNames: () =>
|
|
141643
|
+
useCaseSensitiveFileNames: () => useCaseSensitiveFileNames2,
|
|
141550
141644
|
getNewLine: () => getNewLineCharacter(newSettings),
|
|
141551
141645
|
getDefaultLibFileName: (options2) => host.getDefaultLibFileName(options2),
|
|
141552
141646
|
writeFile: noop,
|
|
@@ -141590,7 +141684,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
141590
141684
|
compilerHost.getSourceFile = getSourceFileWithCache;
|
|
141591
141685
|
(_c = host.setCompilerHost) == null ? void 0 : _c.call(host, compilerHost);
|
|
141592
141686
|
const parseConfigHost = {
|
|
141593
|
-
useCaseSensitiveFileNames,
|
|
141687
|
+
useCaseSensitiveFileNames: useCaseSensitiveFileNames2,
|
|
141594
141688
|
fileExists: (fileName) => compilerHost.fileExists(fileName),
|
|
141595
141689
|
readFile: (fileName) => compilerHost.readFile(fileName),
|
|
141596
141690
|
readDirectory: (...args) => compilerHost.readDirectory(...args),
|
|
@@ -166469,6 +166563,10 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
166469
166563
|
return "parameter" /* parameterElement */;
|
|
166470
166564
|
} else if (symbol.valueDeclaration && isVarConst(symbol.valueDeclaration)) {
|
|
166471
166565
|
return "const" /* constElement */;
|
|
166566
|
+
} else if (symbol.valueDeclaration && isVarUsing(symbol.valueDeclaration)) {
|
|
166567
|
+
return "using" /* variableUsingElement */;
|
|
166568
|
+
} else if (symbol.valueDeclaration && isVarAwaitUsing(symbol.valueDeclaration)) {
|
|
166569
|
+
return "await using" /* variableAwaitUsingElement */;
|
|
166472
166570
|
} else if (forEach(symbol.declarations, isLet)) {
|
|
166473
166571
|
return "let" /* letElement */;
|
|
166474
166572
|
}
|
|
@@ -166862,7 +166960,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
166862
166960
|
} else {
|
|
166863
166961
|
addPrefixForAnyFunctionOrVar(symbol, symbolKind);
|
|
166864
166962
|
}
|
|
166865
|
-
if (symbolKind === "property" /* memberVariableElement */ || symbolKind === "accessor" /* memberAccessorVariableElement */ || symbolKind === "getter" /* memberGetAccessorElement */ || symbolKind === "setter" /* memberSetAccessorElement */ || symbolKind === "JSX attribute" /* jsxAttribute */ || symbolFlags & 3 /* Variable */ || symbolKind === "local var" /* localVariableElement */ || symbolKind === "index" /* indexSignatureElement */ || isThisExpression) {
|
|
166963
|
+
if (symbolKind === "property" /* memberVariableElement */ || symbolKind === "accessor" /* memberAccessorVariableElement */ || symbolKind === "getter" /* memberGetAccessorElement */ || symbolKind === "setter" /* memberSetAccessorElement */ || symbolKind === "JSX attribute" /* jsxAttribute */ || symbolFlags & 3 /* Variable */ || symbolKind === "local var" /* localVariableElement */ || symbolKind === "index" /* indexSignatureElement */ || symbolKind === "using" /* variableUsingElement */ || symbolKind === "await using" /* variableAwaitUsingElement */ || isThisExpression) {
|
|
166866
166964
|
displayParts.push(punctuationPart(59 /* ColonToken */));
|
|
166867
166965
|
displayParts.push(spacePart());
|
|
166868
166966
|
if (type.symbol && type.symbol.flags & 262144 /* TypeParameter */ && symbolKind !== "index" /* indexSignatureElement */) {
|
|
@@ -167012,6 +167110,8 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
167012
167110
|
case "let" /* letElement */:
|
|
167013
167111
|
case "const" /* constElement */:
|
|
167014
167112
|
case "constructor" /* constructorImplementationElement */:
|
|
167113
|
+
case "using" /* variableUsingElement */:
|
|
167114
|
+
case "await using" /* variableAwaitUsingElement */:
|
|
167015
167115
|
displayParts.push(textOrKeywordPart(symbolKind2));
|
|
167016
167116
|
return;
|
|
167017
167117
|
default:
|
|
@@ -167826,6 +167926,9 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
|
|
|
167826
167926
|
insertNodeBefore(sourceFile, before, newNode, blankLineBetween = false, options = {}) {
|
|
167827
167927
|
this.insertNodeAt(sourceFile, getAdjustedStartPosition(sourceFile, before, options), newNode, this.getOptionsForInsertNodeBefore(before, newNode, blankLineBetween));
|
|
167828
167928
|
}
|
|
167929
|
+
insertNodesBefore(sourceFile, before, newNodes, blankLineBetween = false, options = {}) {
|
|
167930
|
+
this.insertNodesAt(sourceFile, getAdjustedStartPosition(sourceFile, before, options), newNodes, this.getOptionsForInsertNodeBefore(before, first(newNodes), blankLineBetween));
|
|
167931
|
+
}
|
|
167829
167932
|
insertModifierAt(sourceFile, pos, modifier, options = {}) {
|
|
167830
167933
|
this.insertNodeAt(sourceFile, pos, factory.createToken(modifier), options);
|
|
167831
167934
|
}
|
|
@@ -174466,7 +174569,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174466
174569
|
return this.projectService.includePackageJsonAutoImports();
|
|
174467
174570
|
}
|
|
174468
174571
|
/** @internal */
|
|
174469
|
-
|
|
174572
|
+
getHostForAutoImportProvider() {
|
|
174470
174573
|
var _a, _b;
|
|
174471
174574
|
if (this.program) {
|
|
174472
174575
|
return {
|
|
@@ -174477,7 +174580,8 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174477
174580
|
readFile: this.projectService.host.readFile.bind(this.projectService.host),
|
|
174478
174581
|
getDirectories: this.projectService.host.getDirectories.bind(this.projectService.host),
|
|
174479
174582
|
trace: (_b = this.projectService.host.trace) == null ? void 0 : _b.bind(this.projectService.host),
|
|
174480
|
-
useCaseSensitiveFileNames: this.program.useCaseSensitiveFileNames()
|
|
174583
|
+
useCaseSensitiveFileNames: this.program.useCaseSensitiveFileNames(),
|
|
174584
|
+
readDirectory: this.projectService.host.readDirectory.bind(this.projectService.host)
|
|
174481
174585
|
};
|
|
174482
174586
|
}
|
|
174483
174587
|
return this.projectService.host;
|
|
@@ -174505,7 +174609,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174505
174609
|
if (dependencySelection) {
|
|
174506
174610
|
(_a = tracing) == null ? void 0 : _a.push(tracing.Phase.Session, "getPackageJsonAutoImportProvider");
|
|
174507
174611
|
const start = timestamp();
|
|
174508
|
-
this.autoImportProviderHost = AutoImportProviderProject.create(dependencySelection, this, this.
|
|
174612
|
+
this.autoImportProviderHost = AutoImportProviderProject.create(dependencySelection, this, this.getHostForAutoImportProvider(), this.documentRegistry);
|
|
174509
174613
|
if (this.autoImportProviderHost) {
|
|
174510
174614
|
updateProjectIfDirty(this.autoImportProviderHost);
|
|
174511
174615
|
this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider", timestamp() - start);
|
|
@@ -174721,7 +174825,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174721
174825
|
this.getParsedCommandLine = maybeBind(this.hostProject, this.hostProject.getParsedCommandLine);
|
|
174722
174826
|
}
|
|
174723
174827
|
/** @internal */
|
|
174724
|
-
static getRootFileNames(dependencySelection, hostProject,
|
|
174828
|
+
static getRootFileNames(dependencySelection, hostProject, host, compilerOptions) {
|
|
174725
174829
|
var _a, _b;
|
|
174726
174830
|
if (!dependencySelection) {
|
|
174727
174831
|
return emptyArray;
|
|
@@ -174751,7 +174855,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174751
174855
|
name,
|
|
174752
174856
|
hostProject.currentDirectory,
|
|
174753
174857
|
compilerOptions,
|
|
174754
|
-
|
|
174858
|
+
host,
|
|
174755
174859
|
program.getModuleResolutionCache()
|
|
174756
174860
|
);
|
|
174757
174861
|
if (packageJson) {
|
|
@@ -174768,7 +174872,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174768
174872
|
`@types/${name}`,
|
|
174769
174873
|
directory,
|
|
174770
174874
|
compilerOptions,
|
|
174771
|
-
|
|
174875
|
+
host,
|
|
174772
174876
|
program.getModuleResolutionCache()
|
|
174773
174877
|
);
|
|
174774
174878
|
if (typesPackageJson) {
|
|
@@ -174808,12 +174912,12 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174808
174912
|
const entrypoints = getEntrypointsFromPackageJsonInfo(
|
|
174809
174913
|
packageJson,
|
|
174810
174914
|
compilerOptions,
|
|
174811
|
-
|
|
174915
|
+
host,
|
|
174812
174916
|
program2.getModuleResolutionCache(),
|
|
174813
174917
|
resolveJs
|
|
174814
174918
|
);
|
|
174815
174919
|
if (entrypoints) {
|
|
174816
|
-
const real = (_a2 =
|
|
174920
|
+
const real = (_a2 = host.realpath) == null ? void 0 : _a2.call(host, packageJson.packageDirectory);
|
|
174817
174921
|
const isSymlink = real && real !== packageJson.packageDirectory;
|
|
174818
174922
|
if (isSymlink) {
|
|
174819
174923
|
symlinkCache.setSymlinkedDirectory(packageJson.packageDirectory, {
|
|
@@ -174831,7 +174935,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174831
174935
|
}
|
|
174832
174936
|
}
|
|
174833
174937
|
/** @internal */
|
|
174834
|
-
static create(dependencySelection, hostProject,
|
|
174938
|
+
static create(dependencySelection, hostProject, host, documentRegistry) {
|
|
174835
174939
|
if (dependencySelection === 0 /* Off */) {
|
|
174836
174940
|
return void 0;
|
|
174837
174941
|
}
|
|
@@ -174839,7 +174943,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174839
174943
|
...hostProject.getCompilerOptions(),
|
|
174840
174944
|
...this.compilerOptionsOverrides
|
|
174841
174945
|
};
|
|
174842
|
-
const rootNames = this.getRootFileNames(dependencySelection, hostProject,
|
|
174946
|
+
const rootNames = this.getRootFileNames(dependencySelection, hostProject, host, compilerOptions);
|
|
174843
174947
|
if (!rootNames.length) {
|
|
174844
174948
|
return void 0;
|
|
174845
174949
|
}
|
|
@@ -174858,7 +174962,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174858
174962
|
rootFileNames = _AutoImportProviderProject.getRootFileNames(
|
|
174859
174963
|
this.hostProject.includePackageJsonAutoImports(),
|
|
174860
174964
|
this.hostProject,
|
|
174861
|
-
this.hostProject.
|
|
174965
|
+
this.hostProject.getHostForAutoImportProvider(),
|
|
174862
174966
|
this.getCompilationSettings()
|
|
174863
174967
|
);
|
|
174864
174968
|
}
|
|
@@ -174897,7 +175001,7 @@ ${options.prefix}` : "\n" : options.prefix
|
|
|
174897
175001
|
onPackageJsonChange() {
|
|
174898
175002
|
throw new Error("package.json changes should be notified on an AutoImportProvider's host project");
|
|
174899
175003
|
}
|
|
174900
|
-
|
|
175004
|
+
getHostForAutoImportProvider() {
|
|
174901
175005
|
throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.");
|
|
174902
175006
|
}
|
|
174903
175007
|
getProjectReferences() {
|