@typescript-eslint/typescript-estree 6.0.1-alpha.9 → 6.1.0
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/_ts4.3/dist/create-program/createProjectProgram.d.ts +2 -1
- package/_ts4.3/dist/create-program/createProjectService.d.ts +4 -0
- package/_ts4.3/dist/create-program/shared.d.ts +1 -1
- package/_ts4.3/dist/create-program/useProvidedPrograms.d.ts +5 -2
- package/_ts4.3/dist/parseSettings/createParseSettings.d.ts +1 -0
- package/_ts4.3/dist/parseSettings/index.d.ts +5 -0
- package/_ts4.3/dist/parser-options.d.ts +9 -1
- package/_ts4.3/dist/useProgramFromProjectService.d.ts +5 -0
- package/dist/clear-caches.d.ts.map +1 -1
- package/dist/clear-caches.js +1 -0
- package/dist/clear-caches.js.map +1 -1
- package/dist/create-program/createProjectProgram.d.ts +2 -1
- package/dist/create-program/createProjectProgram.d.ts.map +1 -1
- package/dist/create-program/createProjectProgram.js +2 -4
- package/dist/create-program/createProjectProgram.js.map +1 -1
- package/dist/create-program/createProjectService.d.ts +4 -0
- package/dist/create-program/createProjectService.d.ts.map +1 -0
- package/dist/create-program/createProjectService.js +45 -0
- package/dist/create-program/createProjectService.js.map +1 -0
- package/dist/create-program/shared.d.ts +1 -1
- package/dist/create-program/shared.d.ts.map +1 -1
- package/dist/create-program/shared.js +3 -3
- package/dist/create-program/shared.js.map +1 -1
- package/dist/create-program/useProvidedPrograms.d.ts +5 -2
- package/dist/create-program/useProvidedPrograms.d.ts.map +1 -1
- package/dist/create-program/useProvidedPrograms.js +4 -4
- package/dist/create-program/useProvidedPrograms.js.map +1 -1
- package/dist/parseSettings/createParseSettings.d.ts +1 -0
- package/dist/parseSettings/createParseSettings.d.ts.map +1 -1
- package/dist/parseSettings/createParseSettings.js +15 -3
- package/dist/parseSettings/createParseSettings.js.map +1 -1
- package/dist/parseSettings/index.d.ts +5 -0
- package/dist/parseSettings/index.d.ts.map +1 -1
- package/dist/parser-options.d.ts +9 -1
- package/dist/parser-options.d.ts.map +1 -1
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +23 -15
- package/dist/parser.js.map +1 -1
- package/dist/useProgramFromProjectService.d.ts +5 -0
- package/dist/useProgramFromProjectService.d.ts.map +1 -0
- package/dist/useProgramFromProjectService.js +31 -0
- package/dist/useProgramFromProjectService.js.map +1 -0
- package/package.json +4 -4
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import * as ts from 'typescript';
|
|
1
2
|
import type { ParseSettings } from '../parseSettings';
|
|
2
3
|
import type { ASTAndDefiniteProgram } from './shared';
|
|
3
4
|
/**
|
|
4
5
|
* @param parseSettings Internal settings for parsing the file
|
|
5
6
|
* @returns If found, the source file corresponding to the code and the containing program
|
|
6
7
|
*/
|
|
7
|
-
declare function createProjectProgram(parseSettings: ParseSettings): ASTAndDefiniteProgram | undefined;
|
|
8
|
+
declare function createProjectProgram(parseSettings: ParseSettings, programsForProjects: readonly ts.Program[]): ASTAndDefiniteProgram | undefined;
|
|
8
9
|
export { createProjectProgram };
|
|
9
10
|
//# sourceMappingURL=createProjectProgram.d.ts.map
|
|
@@ -21,7 +21,7 @@ type CanonicalPath = string & {
|
|
|
21
21
|
declare function getCanonicalFileName(filePath: string): CanonicalPath;
|
|
22
22
|
declare function ensureAbsolutePath(p: string, tsconfigRootDir: string): string;
|
|
23
23
|
declare function canonicalDirname(p: CanonicalPath): CanonicalPath;
|
|
24
|
-
declare function getAstFromProgram(currentProgram: Program,
|
|
24
|
+
declare function getAstFromProgram(currentProgram: Program, filePath: string): ASTAndDefiniteProgram | undefined;
|
|
25
25
|
/**
|
|
26
26
|
* Hash content for compare content.
|
|
27
27
|
* @param content hashed contend
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import * as ts from 'typescript';
|
|
2
|
-
import type { ParseSettings } from '../parseSettings';
|
|
3
2
|
import type { ASTAndDefiniteProgram } from './shared';
|
|
4
|
-
|
|
3
|
+
export interface ProvidedProgramsSettings {
|
|
4
|
+
filePath: string;
|
|
5
|
+
tsconfigRootDir: string;
|
|
6
|
+
}
|
|
7
|
+
declare function useProvidedPrograms(programInstances: Iterable<ts.Program>, { filePath, tsconfigRootDir }: ProvidedProgramsSettings): ASTAndDefiniteProgram | undefined;
|
|
5
8
|
/**
|
|
6
9
|
* Utility offered by parser to help consumers construct their own program instance.
|
|
7
10
|
*
|
|
@@ -3,4 +3,5 @@ import type { TSESTreeOptions } from '../parser-options';
|
|
|
3
3
|
import type { MutableParseSettings } from './index';
|
|
4
4
|
export declare function createParseSettings(code: ts.SourceFile | string, options?: Partial<TSESTreeOptions>): MutableParseSettings;
|
|
5
5
|
export declare function clearTSConfigMatchCache(): void;
|
|
6
|
+
export declare function clearTSServerProjectService(): void;
|
|
6
7
|
//# sourceMappingURL=createParseSettings.d.ts.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type * as ts from 'typescript';
|
|
2
|
+
import type * as tsserverlibrary from 'typescript/lib/tsserverlibrary';
|
|
2
3
|
import type { CanonicalPath } from '../create-program/shared';
|
|
3
4
|
import type { TSESTree } from '../ts-estree';
|
|
4
5
|
import type { CacheLike } from './ExpiringCache';
|
|
@@ -45,6 +46,10 @@ export interface MutableParseSettings {
|
|
|
45
46
|
* Whether to error if an unknown AST node type is encountered.
|
|
46
47
|
*/
|
|
47
48
|
errorOnUnknownASTType: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Experimental: TypeScript server to power program creation.
|
|
51
|
+
*/
|
|
52
|
+
EXPERIMENTAL_projectService: tsserverlibrary.server.ProjectService | undefined;
|
|
48
53
|
/**
|
|
49
54
|
* Whether TS should use the source files for referenced projects instead of the compiled .d.ts files.
|
|
50
55
|
*
|
|
@@ -68,6 +68,14 @@ interface ParseAndGenerateServicesOptions extends ParseOptions {
|
|
|
68
68
|
* Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors.
|
|
69
69
|
*/
|
|
70
70
|
errorOnTypeScriptSyntacticAndSemanticIssues?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* ***EXPERIMENTAL FLAG*** - Use this at your own risk.
|
|
73
|
+
*
|
|
74
|
+
* Whether to create a shared TypeScript server to power program creation.
|
|
75
|
+
*
|
|
76
|
+
* @see https://github.com/typescript-eslint/typescript-eslint/issues/6575
|
|
77
|
+
*/
|
|
78
|
+
EXPERIMENTAL_useProjectService?: boolean;
|
|
71
79
|
/**
|
|
72
80
|
* ***EXPERIMENTAL FLAG*** - Use this at your own risk.
|
|
73
81
|
*
|
|
@@ -76,7 +84,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions {
|
|
|
76
84
|
*
|
|
77
85
|
* This flag REQUIRES at least TS v3.9, otherwise it does nothing.
|
|
78
86
|
*
|
|
79
|
-
*
|
|
87
|
+
* @see https://github.com/typescript-eslint/typescript-eslint/issues/2094
|
|
80
88
|
*/
|
|
81
89
|
EXPERIMENTAL_useSourceOfProjectReferenceRedirect?: boolean;
|
|
82
90
|
/**
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { server } from 'typescript/lib/tsserverlibrary';
|
|
2
|
+
import type { ASTAndDefiniteProgram } from './create-program/shared';
|
|
3
|
+
import type { MutableParseSettings } from './parseSettings';
|
|
4
|
+
export declare function useProgramFromProjectService(projectService: server.ProjectService, parseSettings: Readonly<MutableParseSettings>): ASTAndDefiniteProgram | undefined;
|
|
5
|
+
//# sourceMappingURL=useProgramFromProjectService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clear-caches.d.ts","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clear-caches.d.ts","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":"AAQA;;;;;;GAMG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAGD,eAAO,MAAM,iBAAiB,oBAAc,CAAC"}
|
package/dist/clear-caches.js
CHANGED
|
@@ -16,6 +16,7 @@ function clearCaches() {
|
|
|
16
16
|
(0, parser_1.clearProgramCache)();
|
|
17
17
|
(0, getWatchProgramsForProjects_1.clearWatchCaches)();
|
|
18
18
|
(0, createParseSettings_1.clearTSConfigMatchCache)();
|
|
19
|
+
(0, createParseSettings_1.clearTSServerProjectService)();
|
|
19
20
|
(0, resolveProjectList_1.clearGlobCache)();
|
|
20
21
|
}
|
|
21
22
|
exports.clearCaches = clearCaches;
|
package/dist/clear-caches.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clear-caches.js","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":";;;AAAA,8FAAgF;AAChF,qCAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"clear-caches.js","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":";;;AAAA,8FAAgF;AAChF,qCAA0E;AAC1E,6EAG6C;AAC7C,2EAAoE;AAEpE;;;;;;GAMG;AACH,SAAgB,WAAW;IACzB,IAAA,0BAAyB,GAAE,CAAC;IAC5B,IAAA,8CAAgB,GAAE,CAAC;IACnB,IAAA,6CAAuB,GAAE,CAAC;IAC1B,IAAA,iDAA2B,GAAE,CAAC;IAC9B,IAAA,mCAAc,GAAE,CAAC;AACnB,CAAC;AAND,kCAMC;AAED,mCAAmC;AACtB,QAAA,iBAAiB,GAAG,WAAW,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import * as ts from 'typescript';
|
|
1
2
|
import type { ParseSettings } from '../parseSettings';
|
|
2
3
|
import type { ASTAndDefiniteProgram } from './shared';
|
|
3
4
|
/**
|
|
4
5
|
* @param parseSettings Internal settings for parsing the file
|
|
5
6
|
* @returns If found, the source file corresponding to the code and the containing program
|
|
6
7
|
*/
|
|
7
|
-
declare function createProjectProgram(parseSettings: ParseSettings): ASTAndDefiniteProgram | undefined;
|
|
8
|
+
declare function createProjectProgram(parseSettings: ParseSettings, programsForProjects: readonly ts.Program[]): ASTAndDefiniteProgram | undefined;
|
|
8
9
|
export { createProjectProgram };
|
|
9
10
|
//# sourceMappingURL=createProjectProgram.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createProjectProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createProjectProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAgBtD;;;GAGG;AACH,iBAAS,oBAAoB,CAC3B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,GACzC,qBAAqB,GAAG,SAAS,CA8EnC;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -32,7 +32,6 @@ const path_1 = __importDefault(require("path"));
|
|
|
32
32
|
const ts = __importStar(require("typescript"));
|
|
33
33
|
const node_utils_1 = require("../node-utils");
|
|
34
34
|
const describeFilePath_1 = require("./describeFilePath");
|
|
35
|
-
const getWatchProgramsForProjects_1 = require("./getWatchProgramsForProjects");
|
|
36
35
|
const shared_1 = require("./shared");
|
|
37
36
|
const log = (0, debug_1.default)('typescript-eslint:typescript-estree:createProjectProgram');
|
|
38
37
|
const DEFAULT_EXTRA_FILE_EXTENSIONS = [
|
|
@@ -49,10 +48,9 @@ const DEFAULT_EXTRA_FILE_EXTENSIONS = [
|
|
|
49
48
|
* @param parseSettings Internal settings for parsing the file
|
|
50
49
|
* @returns If found, the source file corresponding to the code and the containing program
|
|
51
50
|
*/
|
|
52
|
-
function createProjectProgram(parseSettings) {
|
|
51
|
+
function createProjectProgram(parseSettings, programsForProjects) {
|
|
53
52
|
log('Creating project program for: %s', parseSettings.filePath);
|
|
54
|
-
const
|
|
55
|
-
const astAndProgram = (0, node_utils_1.firstDefined)(programsForProjects, currentProgram => (0, shared_1.getAstFromProgram)(currentProgram, parseSettings));
|
|
53
|
+
const astAndProgram = (0, node_utils_1.firstDefined)(programsForProjects, currentProgram => (0, shared_1.getAstFromProgram)(currentProgram, parseSettings.filePath));
|
|
56
54
|
// The file was either matched within the tsconfig, or we allow creating a default program
|
|
57
55
|
// eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major
|
|
58
56
|
if (astAndProgram || parseSettings.DEPRECATED__createDefaultProgram) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createProjectProgram.js","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAAiC;AAEjC,8CAA6C;AAE7C,yDAAsD;
|
|
1
|
+
{"version":3,"file":"createProjectProgram.js","sourceRoot":"","sources":["../../src/create-program/createProjectProgram.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createProjectService.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAQ1D,MAAM,MAAM,wBAAwB,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC;AAEhE,wBAAgB,oBAAoB,IAAI,wBAAwB,CAoC/D"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createProjectService = void 0;
|
|
4
|
+
const doNothing = () => { };
|
|
5
|
+
const createStubFileWatcher = () => ({
|
|
6
|
+
close: doNothing,
|
|
7
|
+
});
|
|
8
|
+
function createProjectService() {
|
|
9
|
+
// We import this lazily to avoid its cost for users who don't use the service
|
|
10
|
+
const tsserver = require('typescript/lib/tsserverlibrary');
|
|
11
|
+
// TODO: see getWatchProgramsForProjects
|
|
12
|
+
// We don't watch the disk, we just refer to these when ESLint calls us
|
|
13
|
+
// there's a whole separate update pass in maybeInvalidateProgram at the bottom of getWatchProgramsForProjects
|
|
14
|
+
// (this "goes nuclear on TypeScript")
|
|
15
|
+
const system = {
|
|
16
|
+
...tsserver.sys,
|
|
17
|
+
clearImmediate,
|
|
18
|
+
clearTimeout,
|
|
19
|
+
setImmediate,
|
|
20
|
+
setTimeout,
|
|
21
|
+
watchDirectory: createStubFileWatcher,
|
|
22
|
+
watchFile: createStubFileWatcher,
|
|
23
|
+
};
|
|
24
|
+
return new tsserver.server.ProjectService({
|
|
25
|
+
host: system,
|
|
26
|
+
cancellationToken: { isCancellationRequested: () => false },
|
|
27
|
+
useSingleInferredProject: false,
|
|
28
|
+
useInferredProjectPerProjectRoot: false,
|
|
29
|
+
logger: {
|
|
30
|
+
close: doNothing,
|
|
31
|
+
endGroup: doNothing,
|
|
32
|
+
getLogFileName: () => undefined,
|
|
33
|
+
hasLevel: () => false,
|
|
34
|
+
info: doNothing,
|
|
35
|
+
loggingEnabled: () => false,
|
|
36
|
+
msg: doNothing,
|
|
37
|
+
perftrc: doNothing,
|
|
38
|
+
startGroup: doNothing,
|
|
39
|
+
},
|
|
40
|
+
session: undefined,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
exports.createProjectService = createProjectService;
|
|
44
|
+
/* eslint-enable @typescript-eslint/no-empty-function */
|
|
45
|
+
//# sourceMappingURL=createProjectService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createProjectService.js","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":";;;AAGA,MAAM,SAAS,GAAG,GAAS,EAAE,GAAE,CAAC,CAAC;AAEjC,MAAM,qBAAqB,GAAG,GAAmB,EAAE,CAAC,CAAC;IACnD,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAIH,SAAgB,oBAAoB;IAClC,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,gCAAgC,CAAc,CAAC;IAExE,wCAAwC;IACxC,uEAAuE;IACvE,8GAA8G;IAC9G,sCAAsC;IACtC,MAAM,MAAM,GAAyB;QACnC,GAAG,QAAQ,CAAC,GAAG;QACf,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,cAAc,EAAE,qBAAqB;QACrC,SAAS,EAAE,qBAAqB;KACjC,CAAC;IAEF,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QACxC,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,EAAE,uBAAuB,EAAE,GAAY,EAAE,CAAC,KAAK,EAAE;QACpE,wBAAwB,EAAE,KAAK;QAC/B,gCAAgC,EAAE,KAAK;QACvC,MAAM,EAAE;YACN,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;YAC/B,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;YACrB,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,GAAG,EAAE,CAAC,KAAK;YAC3B,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACtB;QACD,OAAO,EAAE,SAAS;KACnB,CAAC,CAAC;AACL,CAAC;AApCD,oDAoCC;AACD,wDAAwD"}
|
|
@@ -21,7 +21,7 @@ type CanonicalPath = string & {
|
|
|
21
21
|
declare function getCanonicalFileName(filePath: string): CanonicalPath;
|
|
22
22
|
declare function ensureAbsolutePath(p: string, tsconfigRootDir: string): string;
|
|
23
23
|
declare function canonicalDirname(p: CanonicalPath): CanonicalPath;
|
|
24
|
-
declare function getAstFromProgram(currentProgram: Program,
|
|
24
|
+
declare function getAstFromProgram(currentProgram: Program, filePath: string): ASTAndDefiniteProgram | undefined;
|
|
25
25
|
/**
|
|
26
26
|
* Hash content for compare content.
|
|
27
27
|
* @param content hashed contend
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,UAAU,eAAe;IACvB,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;CACf;AACD,UAAU,qBAAqB;IAC7B,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;CACrB;AACD,KAAK,aAAa,GAAG,qBAAqB,GAAG,eAAe,CAAC;AAE7D;;GAEG;AACH,QAAA,MAAM,qBAAqB,EAAE,EAAE,CAAC,eAQ/B,CAAC;AAYF,iBAAS,qCAAqC,CAC5C,aAAa,EAAE,aAAa,GAC3B,EAAE,CAAC,eAAe,CASpB;AAGD,KAAK,aAAa,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AASnD,iBAAS,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7D;AAED,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAItE;AAED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAEzD;AAmBD,iBAAS,iBAAiB,CACxB,cAAc,EAAE,OAAO,EACvB,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,UAAU,eAAe;IACvB,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,IAAI,CAAC;CACf;AACD,UAAU,qBAAqB;IAC7B,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC;CACrB;AACD,KAAK,aAAa,GAAG,qBAAqB,GAAG,eAAe,CAAC;AAE7D;;GAEG;AACH,QAAA,MAAM,qBAAqB,EAAE,EAAE,CAAC,eAQ/B,CAAC;AAYF,iBAAS,qCAAqC,CAC5C,aAAa,EAAE,aAAa,GAC3B,EAAE,CAAC,eAAe,CASpB;AAGD,KAAK,aAAa,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AASnD,iBAAS,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAM7D;AAED,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAItE;AAED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,aAAa,CAEzD;AAmBD,iBAAS,iBAAiB,CACxB,cAAc,EAAE,OAAO,EACvB,QAAQ,EAAE,MAAM,GACf,qBAAqB,GAAG,SAAS,CAWnC;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAM3C;AAED,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,GAClB,CAAC"}
|
|
@@ -94,10 +94,10 @@ function getExtension(fileName) {
|
|
|
94
94
|
}
|
|
95
95
|
return (DEFINITION_EXTENSIONS.find(definitionExt => fileName.endsWith(definitionExt)) ?? path_1.default.extname(fileName));
|
|
96
96
|
}
|
|
97
|
-
function getAstFromProgram(currentProgram,
|
|
98
|
-
const ast = currentProgram.getSourceFile(
|
|
97
|
+
function getAstFromProgram(currentProgram, filePath) {
|
|
98
|
+
const ast = currentProgram.getSourceFile(filePath);
|
|
99
99
|
// working around https://github.com/typescript-eslint/typescript-eslint/issues/1573
|
|
100
|
-
const expectedExt = getExtension(
|
|
100
|
+
const expectedExt = getExtension(filePath);
|
|
101
101
|
const returnedExt = getExtension(ast?.fileName);
|
|
102
102
|
if (expectedExt !== returnedExt) {
|
|
103
103
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,+CAAiC;AAcjC;;GAEG;AACH,MAAM,qBAAqB,GAAuB;IAChD,MAAM,EAAE,IAAI;IAEZ;;OAEG;IACH,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;CACzB,CAAC;AAuGA,sDAAqB;AArGvB;;GAEG;AACH,MAAM,wBAAwB,GAAuB;IACnD,GAAG,qBAAqB;IACxB,oBAAoB,EAAE,IAAI;IAC1B,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,SAAS,qCAAqC,CAC5C,aAA4B;IAE5B,IAAI,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;QAC9C,OAAO;YACL,GAAG,wBAAwB;YAC3B,mBAAmB,EAAE,IAAI;SAC1B,CAAC;KACH;IAED,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAmFC,sFAAqC;AA9EvC,8EAA8E;AAC9E,MAAM,yBAAyB,GAC7B,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,MAAM,iBAAiB,GAAG,yBAAyB;IACjD,CAAC,CAAC,CAAC,QAAgB,EAAU,EAAE,CAAC,QAAQ;IACxC,CAAC,CAAC,CAAC,QAAgB,EAAU,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;AAEzD,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,IAAI,UAAU,GAAG,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,cAAI,CAAC,GAAG,CAAC,EAAE;QACjC,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACtC;IACD,OAAO,iBAAiB,CAAC,UAAU,CAAkB,CAAC;AACxD,CAAC;AAoEC,oDAAoB;AAlEtB,SAAS,kBAAkB,CAAC,CAAS,EAAE,eAAuB;IAC5D,OAAO,cAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACrD,CAAC;AA6DC,gDAAkB;AA3DpB,SAAS,gBAAgB,CAAC,CAAgB;IACxC,OAAO,cAAI,CAAC,OAAO,CAAC,CAAC,CAAkB,CAAC;AAC1C,CAAC;AAqDC,4CAAgB;AAnDlB,MAAM,qBAAqB,GAAG;IAC5B,EAAE,CAAC,SAAS,CAAC,GAAG;IAChB,EAAE,CAAC,SAAS,CAAC,IAAI;IACjB,EAAE,CAAC,SAAS,CAAC,IAAI;CACT,CAAC;AACX,SAAS,YAAY,CAAC,QAA4B;IAChD,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CACzC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CACjC,IAAI,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAC5B,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,cAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/create-program/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import * as ts from 'typescript';
|
|
2
|
-
import type { ParseSettings } from '../parseSettings';
|
|
3
2
|
import type { ASTAndDefiniteProgram } from './shared';
|
|
4
|
-
|
|
3
|
+
export interface ProvidedProgramsSettings {
|
|
4
|
+
filePath: string;
|
|
5
|
+
tsconfigRootDir: string;
|
|
6
|
+
}
|
|
7
|
+
declare function useProvidedPrograms(programInstances: Iterable<ts.Program>, { filePath, tsconfigRootDir }: ProvidedProgramsSettings): ASTAndDefiniteProgram | undefined;
|
|
5
8
|
/**
|
|
6
9
|
* Utility offered by parser to help consumers construct their own program instance.
|
|
7
10
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useProvidedPrograms.d.ts","sourceRoot":"","sources":["../../src/create-program/useProvidedPrograms.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"useProvidedPrograms.d.ts","sourceRoot":"","sources":["../../src/create-program/useProvidedPrograms.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAKtD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,iBAAS,mBAAmB,CAC1B,gBAAgB,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,EACtC,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE,wBAAwB,GACtD,qBAAqB,GAAG,SAAS,CA4BnC;AAED;;;;;GAKG;AACH,iBAAS,2BAA2B,CAClC,UAAU,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,MAAM,GACxB,EAAE,CAAC,OAAO,CA4BZ;AAUD,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -33,18 +33,18 @@ const path = __importStar(require("path"));
|
|
|
33
33
|
const ts = __importStar(require("typescript"));
|
|
34
34
|
const shared_1 = require("./shared");
|
|
35
35
|
const log = (0, debug_1.default)('typescript-eslint:typescript-estree:useProvidedProgram');
|
|
36
|
-
function useProvidedPrograms(programInstances,
|
|
37
|
-
log('Retrieving ast for %s from provided program instance(s)',
|
|
36
|
+
function useProvidedPrograms(programInstances, { filePath, tsconfigRootDir }) {
|
|
37
|
+
log('Retrieving ast for %s from provided program instance(s)', filePath);
|
|
38
38
|
let astAndProgram;
|
|
39
39
|
for (const programInstance of programInstances) {
|
|
40
|
-
astAndProgram = (0, shared_1.getAstFromProgram)(programInstance,
|
|
40
|
+
astAndProgram = (0, shared_1.getAstFromProgram)(programInstance, filePath);
|
|
41
41
|
// Stop at the first applicable program instance
|
|
42
42
|
if (astAndProgram) {
|
|
43
43
|
break;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
if (!astAndProgram) {
|
|
47
|
-
const relativeFilePath = path.relative(
|
|
47
|
+
const relativeFilePath = path.relative(tsconfigRootDir || process.cwd(), filePath);
|
|
48
48
|
const errorLines = [
|
|
49
49
|
'"parserOptions.programs" has been provided for @typescript-eslint/parser.',
|
|
50
50
|
`The file was not found in any of the provided program instance(s): ${relativeFilePath}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useProvidedPrograms.js","sourceRoot":"","sources":["../../src/create-program/useProvidedPrograms.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,uCAAyB;AACzB,2CAA6B;AAC7B,+CAAiC;
|
|
1
|
+
{"version":3,"file":"useProvidedPrograms.js","sourceRoot":"","sources":["../../src/create-program/useProvidedPrograms.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,uCAAyB;AACzB,2CAA6B;AAC7B,+CAAiC;AAGjC,qCAAoE;AAEpE,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,wDAAwD,CAAC,CAAC;AAO5E,SAAS,mBAAmB,CAC1B,gBAAsC,EACtC,EAAE,QAAQ,EAAE,eAAe,EAA4B;IAEvD,GAAG,CAAC,yDAAyD,EAAE,QAAQ,CAAC,CAAC;IAEzE,IAAI,aAAgD,CAAC;IACrD,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;QAC9C,aAAa,GAAG,IAAA,0BAAiB,EAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAC7D,gDAAgD;QAChD,IAAI,aAAa,EAAE;YACjB,MAAM;SACP;KACF;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CACpC,eAAe,IAAI,OAAO,CAAC,GAAG,EAAE,EAChC,QAAQ,CACT,CAAC;QACF,MAAM,UAAU,GAAG;YACjB,2EAA2E;YAC3E,sEAAsE,gBAAgB,EAAE;SACzF,CAAC;QAEF,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACxC;IAED,aAAa,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,iDAAiD;IAEzF,OAAO,aAAa,CAAC;AACvB,CAAC;AAiDQ,kDAAmB;AA/C5B;;;;;GAKG;AACH,SAAS,2BAA2B,CAClC,UAAkB,EAClB,gBAAyB;IAEzB,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE;QACxB,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;KACH;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,gCAAgC,CAChD,UAAU,EACV,8BAAqB,EACrB;QACE,mCAAmC,EAAE,IAAI,CAAC,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC;QAClF,CAAC;QACD,UAAU,EAAE,EAAE,CAAC,UAAU;QACzB,mBAAmB,EAAE,GAAG,EAAE,CACxB,CAAC,gBAAgB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE;QACvE,aAAa,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa;QACnC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC;QAChD,yBAAyB,EAAE,EAAE,CAAC,GAAG,CAAC,yBAAyB;KAC5D,CACF,CAAC;IACF,MAAM,MAAM,GAAG,MAAO,CAAC,CAAC,sDAAsD;IAC9E,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;KACnD;IACD,MAAM,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAClE,CAAC;AAU6B,kEAA2B;AARzD,SAAS,iBAAiB,CAAC,WAA4B;IACrD,OAAO,EAAE,CAAC,iBAAiB,CAAC,WAAW,EAAE;QACvC,oBAAoB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,mBAAmB,EAAE,OAAO,CAAC,GAAG;QAChC,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;KACvB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -3,4 +3,5 @@ import type { TSESTreeOptions } from '../parser-options';
|
|
|
3
3
|
import type { MutableParseSettings } from './index';
|
|
4
4
|
export declare function createParseSettings(code: ts.SourceFile | string, options?: Partial<TSESTreeOptions>): MutableParseSettings;
|
|
5
5
|
export declare function clearTSConfigMatchCache(): void;
|
|
6
|
+
export declare function clearTSServerProjectService(): void;
|
|
6
7
|
//# sourceMappingURL=createParseSettings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createParseSettings.d.ts","sourceRoot":"","sources":["../../src/parseSettings/createParseSettings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"createParseSettings.d.ts","sourceRoot":"","sources":["../../src/parseSettings/createParseSettings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAKtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAYpD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,MAAM,EAC5B,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM,GACrC,oBAAoB,CAgHtB;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAElD"}
|
|
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.clearTSConfigMatchCache = exports.createParseSettings = void 0;
|
|
6
|
+
exports.clearTSServerProjectService = exports.clearTSConfigMatchCache = exports.createParseSettings = void 0;
|
|
7
7
|
const debug_1 = __importDefault(require("debug"));
|
|
8
|
+
const createProjectService_1 = require("../create-program/createProjectService");
|
|
8
9
|
const shared_1 = require("../create-program/shared");
|
|
9
10
|
const source_files_1 = require("../source-files");
|
|
10
11
|
const ExpiringCache_1 = require("./ExpiringCache");
|
|
@@ -14,6 +15,7 @@ const resolveProjectList_1 = require("./resolveProjectList");
|
|
|
14
15
|
const warnAboutTSVersion_1 = require("./warnAboutTSVersion");
|
|
15
16
|
const log = (0, debug_1.default)('typescript-eslint:typescript-estree:parser:parseSettings:createParseSettings');
|
|
16
17
|
let TSCONFIG_MATCH_CACHE;
|
|
18
|
+
let TSSERVER_PROJECT_SERVICE = null;
|
|
17
19
|
function createParseSettings(code, options = {}) {
|
|
18
20
|
const codeFullText = enforceCodeString(code);
|
|
19
21
|
const singleRun = (0, inferSingleRun_1.inferSingleRun)(options);
|
|
@@ -36,6 +38,12 @@ function createParseSettings(code, options = {}) {
|
|
|
36
38
|
: new Set(),
|
|
37
39
|
errorOnTypeScriptSyntacticAndSemanticIssues: false,
|
|
38
40
|
errorOnUnknownASTType: options.errorOnUnknownASTType === true,
|
|
41
|
+
EXPERIMENTAL_projectService: (options.EXPERIMENTAL_useProjectService === true &&
|
|
42
|
+
process.env.TYPESCRIPT_ESLINT_EXPERIMENTAL_TSSERVER !== 'false') ||
|
|
43
|
+
(process.env.TYPESCRIPT_ESLINT_EXPERIMENTAL_TSSERVER === 'true' &&
|
|
44
|
+
options.EXPERIMENTAL_useProjectService !== false)
|
|
45
|
+
? (TSSERVER_PROJECT_SERVICE ??= (0, createProjectService_1.createProjectService)())
|
|
46
|
+
: undefined,
|
|
39
47
|
EXPERIMENTAL_useSourceOfProjectReferenceRedirect: options.EXPERIMENTAL_useSourceOfProjectReferenceRedirect === true,
|
|
40
48
|
extraFileExtensions: Array.isArray(options.extraFileExtensions) &&
|
|
41
49
|
options.extraFileExtensions.every(ext => typeof ext === 'string')
|
|
@@ -85,8 +93,8 @@ function createParseSettings(code, options = {}) {
|
|
|
85
93
|
}
|
|
86
94
|
log('parserOptions.programs was provided, so parserOptions.project will be ignored.');
|
|
87
95
|
}
|
|
88
|
-
// Providing a program overrides project resolution
|
|
89
|
-
if (!parseSettings.programs) {
|
|
96
|
+
// Providing a program or project service overrides project resolution
|
|
97
|
+
if (!parseSettings.programs && !parseSettings.EXPERIMENTAL_projectService) {
|
|
90
98
|
parseSettings.projects = (0, resolveProjectList_1.resolveProjectList)({
|
|
91
99
|
cacheLifetime: options.cacheLifetime,
|
|
92
100
|
project: (0, getProjectConfigFiles_1.getProjectConfigFiles)(parseSettings, options.project),
|
|
@@ -103,6 +111,10 @@ function clearTSConfigMatchCache() {
|
|
|
103
111
|
TSCONFIG_MATCH_CACHE?.clear();
|
|
104
112
|
}
|
|
105
113
|
exports.clearTSConfigMatchCache = clearTSConfigMatchCache;
|
|
114
|
+
function clearTSServerProjectService() {
|
|
115
|
+
TSSERVER_PROJECT_SERVICE = null;
|
|
116
|
+
}
|
|
117
|
+
exports.clearTSServerProjectService = clearTSServerProjectService;
|
|
106
118
|
/**
|
|
107
119
|
* Ensures source code is a string.
|
|
108
120
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createParseSettings.js","sourceRoot":"","sources":["../../src/parseSettings/createParseSettings.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;
|
|
1
|
+
{"version":3,"file":"createParseSettings.js","sourceRoot":"","sources":["../../src/parseSettings/createParseSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type * as ts from 'typescript';
|
|
2
|
+
import type * as tsserverlibrary from 'typescript/lib/tsserverlibrary';
|
|
2
3
|
import type { CanonicalPath } from '../create-program/shared';
|
|
3
4
|
import type { TSESTree } from '../ts-estree';
|
|
4
5
|
import type { CacheLike } from './ExpiringCache';
|
|
@@ -45,6 +46,10 @@ export interface MutableParseSettings {
|
|
|
45
46
|
* Whether to error if an unknown AST node type is encountered.
|
|
46
47
|
*/
|
|
47
48
|
errorOnUnknownASTType: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Experimental: TypeScript server to power program creation.
|
|
51
|
+
*/
|
|
52
|
+
EXPERIMENTAL_projectService: tsserverlibrary.server.ProjectService | undefined;
|
|
48
53
|
/**
|
|
49
54
|
* Whether TS should use the source files for referenced projects instead of the compiled .d.ts files.
|
|
50
55
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parseSettings/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parseSettings/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,KAAK,WAAW,GAAG,QAAQ,GAAG,mBAAmB,GAAG,YAAY,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC;IAE7B;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAE7B;;;;OAIG;IACH,gCAAgC,EAAE,OAAO,CAAC;IAE1C;;OAEG;IACH,UAAU,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAE7B;;OAEG;IACH,2CAA2C,EAAE,OAAO,CAAC;IAErD;;OAEG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,2BAA2B,EACvB,eAAe,CAAC,MAAM,CAAC,cAAc,GACrC,SAAS,CAAC;IAEd;;;;;;OAMG;IACH,gDAAgD,EAAE,OAAO,CAAC;IAE1D;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAE9B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,GAAG,EAAE,OAAO,CAAC;IAEb;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IAEb;;OAEG;IACH,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAEtC;;OAEG;IACH,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;IAEnC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,kCAAkC,EAAE,OAAO,CAAC;IAE5C;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;IAEhC;;OAEG;IACH,kBAAkB,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE9C;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC"}
|
package/dist/parser-options.d.ts
CHANGED
|
@@ -68,6 +68,14 @@ interface ParseAndGenerateServicesOptions extends ParseOptions {
|
|
|
68
68
|
* Causes the parser to error if the TypeScript compiler returns any unexpected syntax/semantic errors.
|
|
69
69
|
*/
|
|
70
70
|
errorOnTypeScriptSyntacticAndSemanticIssues?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* ***EXPERIMENTAL FLAG*** - Use this at your own risk.
|
|
73
|
+
*
|
|
74
|
+
* Whether to create a shared TypeScript server to power program creation.
|
|
75
|
+
*
|
|
76
|
+
* @see https://github.com/typescript-eslint/typescript-eslint/issues/6575
|
|
77
|
+
*/
|
|
78
|
+
EXPERIMENTAL_useProjectService?: boolean;
|
|
71
79
|
/**
|
|
72
80
|
* ***EXPERIMENTAL FLAG*** - Use this at your own risk.
|
|
73
81
|
*
|
|
@@ -76,7 +84,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions {
|
|
|
76
84
|
*
|
|
77
85
|
* This flag REQUIRES at least TS v3.9, otherwise it does nothing.
|
|
78
86
|
*
|
|
79
|
-
*
|
|
87
|
+
* @see https://github.com/typescript-eslint/typescript-eslint/issues/2094
|
|
80
88
|
*/
|
|
81
89
|
EXPERIMENTAL_useSourceOfProjectReferenceRedirect?: boolean;
|
|
82
90
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"}
|
package/dist/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAkBtC,OAAO,KAAK,EACV,cAAc,EAEd,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,iBAAS,iBAAiB,IAAI,IAAI,CAEjC;AA0DD,UAAU,WAAW;CAAG;AACxB,KAAK,GAAG,CAAC,CAAC,SAAS,eAAe,IAAI,QAAQ,CAAC,OAAO,GACpD,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,GAC5E,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,CAAC;AAE1E,UAAU,8BAA8B,CAAC,CAAC,SAAS,eAAe;IAChE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAMD,iBAAS,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,GACV,GAAG,CAAC,CAAC,CAAC,CAGR;AA4CD,iBAAS,kCAAkC,IAAI,IAAI,CAElD;AAED,iBAAS,wBAAwB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAC3E,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,MAAM,EAC5B,OAAO,EAAE,CAAC,GACT,8BAA8B,CAAC,CAAC,CAAC,CAkHnC;AAED,OAAO,EACL,GAAG,EACH,KAAK,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,iBAAiB,EACjB,kCAAkC,GACnC,CAAC"}
|
package/dist/parser.js
CHANGED
|
@@ -11,10 +11,12 @@ const createDefaultProgram_1 = require("./create-program/createDefaultProgram");
|
|
|
11
11
|
const createIsolatedProgram_1 = require("./create-program/createIsolatedProgram");
|
|
12
12
|
const createProjectProgram_1 = require("./create-program/createProjectProgram");
|
|
13
13
|
const createSourceFile_1 = require("./create-program/createSourceFile");
|
|
14
|
+
const getWatchProgramsForProjects_1 = require("./create-program/getWatchProgramsForProjects");
|
|
14
15
|
const useProvidedPrograms_1 = require("./create-program/useProvidedPrograms");
|
|
15
16
|
const createParserServices_1 = require("./createParserServices");
|
|
16
17
|
const createParseSettings_1 = require("./parseSettings/createParseSettings");
|
|
17
18
|
const semantic_or_syntactic_errors_1 = require("./semantic-or-syntactic-errors");
|
|
19
|
+
const useProgramFromProjectService_1 = require("./useProgramFromProjectService");
|
|
18
20
|
const log = (0, debug_1.default)('typescript-eslint:typescript-estree:parser');
|
|
19
21
|
/**
|
|
20
22
|
* Cache existing programs for the single run use-case.
|
|
@@ -32,30 +34,36 @@ exports.clearProgramCache = clearProgramCache;
|
|
|
32
34
|
* @returns Returns a source file and program corresponding to the linted code
|
|
33
35
|
*/
|
|
34
36
|
function getProgramAndAST(parseSettings, hasFullTypeInformation) {
|
|
37
|
+
if (parseSettings.EXPERIMENTAL_projectService) {
|
|
38
|
+
const fromProjectService = (0, useProgramFromProjectService_1.useProgramFromProjectService)(parseSettings.EXPERIMENTAL_projectService, parseSettings);
|
|
39
|
+
if (fromProjectService) {
|
|
40
|
+
return fromProjectService;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
35
43
|
if (parseSettings.programs) {
|
|
36
44
|
const fromProvidedPrograms = (0, useProvidedPrograms_1.useProvidedPrograms)(parseSettings.programs, parseSettings);
|
|
37
45
|
if (fromProvidedPrograms) {
|
|
38
46
|
return fromProvidedPrograms;
|
|
39
47
|
}
|
|
40
48
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
49
|
+
// no need to waste time creating a program as the caller didn't want parser services
|
|
50
|
+
// so we can save time and just create a lonesome source file
|
|
51
|
+
if (!hasFullTypeInformation) {
|
|
52
|
+
return (0, createSourceFile_1.createNoProgram)(parseSettings);
|
|
53
|
+
}
|
|
54
|
+
const fromProjectProgram = (0, createProjectProgram_1.createProjectProgram)(parseSettings, (0, getWatchProgramsForProjects_1.getWatchProgramsForProjects)(parseSettings));
|
|
55
|
+
if (fromProjectProgram) {
|
|
56
|
+
return fromProjectProgram;
|
|
57
|
+
}
|
|
58
|
+
// eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major
|
|
59
|
+
if (parseSettings.DEPRECATED__createDefaultProgram) {
|
|
46
60
|
// eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
if (fromDefaultProgram) {
|
|
51
|
-
return fromDefaultProgram;
|
|
52
|
-
}
|
|
61
|
+
const fromDefaultProgram = (0, createDefaultProgram_1.createDefaultProgram)(parseSettings);
|
|
62
|
+
if (fromDefaultProgram) {
|
|
63
|
+
return fromDefaultProgram;
|
|
53
64
|
}
|
|
54
|
-
return (0, createIsolatedProgram_1.createIsolatedProgram)(parseSettings);
|
|
55
65
|
}
|
|
56
|
-
|
|
57
|
-
// so we can save time and just create a lonesome source file
|
|
58
|
-
return (0, createSourceFile_1.createNoProgram)(parseSettings);
|
|
66
|
+
return (0, createIsolatedProgram_1.createIsolatedProgram)(parseSettings);
|
|
59
67
|
}
|
|
60
68
|
function parse(code, options) {
|
|
61
69
|
const { ast } = parseWithNodeMapsInternal(code, options, false);
|
package/dist/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,mDAA+C;AAC/C,uCAAyC;AACzC,gFAA6E;AAC7E,kFAA+E;AAC/E,gFAA6E;AAC7E,wEAG2C;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { server } from 'typescript/lib/tsserverlibrary';
|
|
2
|
+
import { type ASTAndDefiniteProgram } from './create-program/shared';
|
|
3
|
+
import type { MutableParseSettings } from './parseSettings';
|
|
4
|
+
export declare function useProgramFromProjectService(projectService: server.ProjectService, parseSettings: Readonly<MutableParseSettings>): ASTAndDefiniteProgram | undefined;
|
|
5
|
+
//# sourceMappingURL=useProgramFromProjectService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProgramFromProjectService.d.ts","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAG7D,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,wBAAgB,4BAA4B,CAC1C,cAAc,EAAE,MAAM,CAAC,cAAc,EACrC,aAAa,EAAE,QAAQ,CAAC,oBAAoB,CAAC,GAC5C,qBAAqB,GAAG,SAAS,CA4BnC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.useProgramFromProjectService = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const createProjectProgram_1 = require("./create-program/createProjectProgram");
|
|
9
|
+
function useProgramFromProjectService(projectService, parseSettings) {
|
|
10
|
+
const opened = projectService.openClientFile(absolutify(parseSettings.filePath), parseSettings.codeFullText,
|
|
11
|
+
/* scriptKind */ undefined, parseSettings.tsconfigRootDir);
|
|
12
|
+
if (!opened.configFileName) {
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
const scriptInfo = projectService.getScriptInfo(parseSettings.filePath);
|
|
16
|
+
const program = projectService
|
|
17
|
+
.getDefaultProjectForFile(scriptInfo.fileName, true)
|
|
18
|
+
.getLanguageService(/*ensureSynchronized*/ true)
|
|
19
|
+
.getProgram();
|
|
20
|
+
if (!program) {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
return (0, createProjectProgram_1.createProjectProgram)(parseSettings, [program]);
|
|
24
|
+
function absolutify(filePath) {
|
|
25
|
+
return path_1.default.isAbsolute(filePath)
|
|
26
|
+
? filePath
|
|
27
|
+
: path_1.default.join(projectService.host.getCurrentDirectory(), filePath);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.useProgramFromProjectService = useProgramFromProjectService;
|
|
31
|
+
//# sourceMappingURL=useProgramFromProjectService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProgramFromProjectService.js","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAIxB,gFAA6E;AAI7E,SAAgB,4BAA4B,CAC1C,cAAqC,EACrC,aAA6C;IAE7C,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,CAC1C,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,EAClC,aAAa,CAAC,YAAY;IAC1B,gBAAgB,CAAC,SAAS,EAC1B,aAAa,CAAC,eAAe,CAC9B,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE;QAC1B,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,UAAU,GAAG,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,cAAc;SAC3B,wBAAwB,CAAC,UAAW,CAAC,QAAQ,EAAE,IAAI,CAAE;SACrD,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC;SAC/C,UAAU,EAAE,CAAC;IAEhB,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,IAAA,2CAAoB,EAAC,aAAa,EAAE,CAAC,OAAqB,CAAC,CAAC,CAAC;IAEpE,SAAS,UAAU,CAAC,QAAgB;QAClC,OAAO,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC9B,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AA/BD,oEA+BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typescript-eslint/typescript-estree",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.1.0",
|
|
4
4
|
"description": "A parser that converts TypeScript source code into an ESTree compatible form",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@typescript-eslint/types": "6.
|
|
56
|
-
"@typescript-eslint/visitor-keys": "6.
|
|
55
|
+
"@typescript-eslint/types": "6.1.0",
|
|
56
|
+
"@typescript-eslint/visitor-keys": "6.1.0",
|
|
57
57
|
"debug": "^4.3.4",
|
|
58
58
|
"globby": "^11.1.0",
|
|
59
59
|
"is-glob": "^4.0.3",
|
|
@@ -85,5 +85,5 @@
|
|
|
85
85
|
]
|
|
86
86
|
}
|
|
87
87
|
},
|
|
88
|
-
"gitHead": "
|
|
88
|
+
"gitHead": "d98f1e811a6a06128a86f10824b6005984dc8265"
|
|
89
89
|
}
|