@macroforge/svelte-language-server 0.1.3
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/README.md +331 -0
- package/bin/server.js +5 -0
- package/dist/src/importPackage.d.ts +16 -0
- package/dist/src/importPackage.js +76 -0
- package/dist/src/importPackage.js.map +1 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +23 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/lib/DiagnosticsManager.d.ts +20 -0
- package/dist/src/lib/DiagnosticsManager.js +71 -0
- package/dist/src/lib/DiagnosticsManager.js.map +1 -0
- package/dist/src/lib/FallbackWatcher.d.ts +15 -0
- package/dist/src/lib/FallbackWatcher.js +66 -0
- package/dist/src/lib/FallbackWatcher.js.map +1 -0
- package/dist/src/lib/documentHighlight/wordHighlight.d.ts +3 -0
- package/dist/src/lib/documentHighlight/wordHighlight.js +62 -0
- package/dist/src/lib/documentHighlight/wordHighlight.js.map +1 -0
- package/dist/src/lib/documents/Document.d.ts +63 -0
- package/dist/src/lib/documents/Document.js +138 -0
- package/dist/src/lib/documents/Document.js.map +1 -0
- package/dist/src/lib/documents/DocumentBase.d.ts +65 -0
- package/dist/src/lib/documents/DocumentBase.js +69 -0
- package/dist/src/lib/documents/DocumentBase.js.map +1 -0
- package/dist/src/lib/documents/DocumentManager.d.ts +28 -0
- package/dist/src/lib/documents/DocumentManager.js +122 -0
- package/dist/src/lib/documents/DocumentManager.js.map +1 -0
- package/dist/src/lib/documents/DocumentMapper.d.ts +88 -0
- package/dist/src/lib/documents/DocumentMapper.js +258 -0
- package/dist/src/lib/documents/DocumentMapper.js.map +1 -0
- package/dist/src/lib/documents/configLoader.d.ts +80 -0
- package/dist/src/lib/documents/configLoader.js +265 -0
- package/dist/src/lib/documents/configLoader.js.map +1 -0
- package/dist/src/lib/documents/fileCollection.d.ts +41 -0
- package/dist/src/lib/documents/fileCollection.js +87 -0
- package/dist/src/lib/documents/fileCollection.js.map +1 -0
- package/dist/src/lib/documents/index.d.ts +5 -0
- package/dist/src/lib/documents/index.js +22 -0
- package/dist/src/lib/documents/index.js.map +1 -0
- package/dist/src/lib/documents/parseHtml.d.ts +13 -0
- package/dist/src/lib/documents/parseHtml.js +160 -0
- package/dist/src/lib/documents/parseHtml.js.map +1 -0
- package/dist/src/lib/documents/utils.d.ts +105 -0
- package/dist/src/lib/documents/utils.js +410 -0
- package/dist/src/lib/documents/utils.js.map +1 -0
- package/dist/src/lib/foldingRange/indentFolding.d.ts +26 -0
- package/dist/src/lib/foldingRange/indentFolding.js +142 -0
- package/dist/src/lib/foldingRange/indentFolding.js.map +1 -0
- package/dist/src/lib/semanticToken/semanticTokenLegend.d.ts +33 -0
- package/dist/src/lib/semanticToken/semanticTokenLegend.js +37 -0
- package/dist/src/lib/semanticToken/semanticTokenLegend.js.map +1 -0
- package/dist/src/logger.d.ts +9 -0
- package/dist/src/logger.js +28 -0
- package/dist/src/logger.js.map +1 -0
- package/dist/src/ls-config.d.ts +326 -0
- package/dist/src/ls-config.js +386 -0
- package/dist/src/ls-config.js.map +1 -0
- package/dist/src/plugins/PluginHost.d.ts +68 -0
- package/dist/src/plugins/PluginHost.js +447 -0
- package/dist/src/plugins/PluginHost.js.map +1 -0
- package/dist/src/plugins/css/CSSDocument.d.ts +46 -0
- package/dist/src/plugins/css/CSSDocument.js +78 -0
- package/dist/src/plugins/css/CSSDocument.js.map +1 -0
- package/dist/src/plugins/css/CSSPlugin.d.ts +35 -0
- package/dist/src/plugins/css/CSSPlugin.js +407 -0
- package/dist/src/plugins/css/CSSPlugin.js.map +1 -0
- package/dist/src/plugins/css/FileSystemProvider.d.ts +10 -0
- package/dist/src/plugins/css/FileSystemProvider.js +75 -0
- package/dist/src/plugins/css/FileSystemProvider.js.map +1 -0
- package/dist/src/plugins/css/StyleAttributeDocument.d.ts +41 -0
- package/dist/src/plugins/css/StyleAttributeDocument.js +65 -0
- package/dist/src/plugins/css/StyleAttributeDocument.js.map +1 -0
- package/dist/src/plugins/css/features/getIdClassCompletion.d.ts +19 -0
- package/dist/src/plugins/css/features/getIdClassCompletion.js +56 -0
- package/dist/src/plugins/css/features/getIdClassCompletion.js.map +1 -0
- package/dist/src/plugins/css/features/svelte-selectors.d.ts +2 -0
- package/dist/src/plugins/css/features/svelte-selectors.js +18 -0
- package/dist/src/plugins/css/features/svelte-selectors.js.map +1 -0
- package/dist/src/plugins/css/global-vars.d.ts +16 -0
- package/dist/src/plugins/css/global-vars.js +82 -0
- package/dist/src/plugins/css/global-vars.js.map +1 -0
- package/dist/src/plugins/css/service.d.ts +5 -0
- package/dist/src/plugins/css/service.js +66 -0
- package/dist/src/plugins/css/service.js.map +1 -0
- package/dist/src/plugins/documentContext.d.ts +3 -0
- package/dist/src/plugins/documentContext.js +36 -0
- package/dist/src/plugins/documentContext.js.map +1 -0
- package/dist/src/plugins/html/HTMLPlugin.d.ts +36 -0
- package/dist/src/plugins/html/HTMLPlugin.js +363 -0
- package/dist/src/plugins/html/HTMLPlugin.js.map +1 -0
- package/dist/src/plugins/html/dataProvider.d.ts +1 -0
- package/dist/src/plugins/html/dataProvider.js +481 -0
- package/dist/src/plugins/html/dataProvider.js.map +1 -0
- package/dist/src/plugins/index.d.ts +7 -0
- package/dist/src/plugins/index.js +24 -0
- package/dist/src/plugins/index.js.map +1 -0
- package/dist/src/plugins/interfaces.d.ts +132 -0
- package/dist/src/plugins/interfaces.js +3 -0
- package/dist/src/plugins/interfaces.js.map +1 -0
- package/dist/src/plugins/svelte/SvelteDocument.d.ts +98 -0
- package/dist/src/plugins/svelte/SvelteDocument.js +318 -0
- package/dist/src/plugins/svelte/SvelteDocument.js.map +1 -0
- package/dist/src/plugins/svelte/SveltePlugin.d.ts +24 -0
- package/dist/src/plugins/svelte/SveltePlugin.js +306 -0
- package/dist/src/plugins/svelte/SveltePlugin.js.map +1 -0
- package/dist/src/plugins/svelte/features/SvelteTags.d.ts +28 -0
- package/dist/src/plugins/svelte/features/SvelteTags.js +136 -0
- package/dist/src/plugins/svelte/features/SvelteTags.js.map +1 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getQuickfixes.d.ts +11 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getQuickfixes.js +140 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getQuickfixes.js.map +1 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getRefactorings.d.ts +9 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getRefactorings.js +140 -0
- package/dist/src/plugins/svelte/features/getCodeActions/getRefactorings.js.map +1 -0
- package/dist/src/plugins/svelte/features/getCodeActions/index.d.ts +4 -0
- package/dist/src/plugins/svelte/features/getCodeActions/index.js +19 -0
- package/dist/src/plugins/svelte/features/getCodeActions/index.js.map +1 -0
- package/dist/src/plugins/svelte/features/getCompletions.d.ts +4 -0
- package/dist/src/plugins/svelte/features/getCompletions.js +184 -0
- package/dist/src/plugins/svelte/features/getCompletions.js.map +1 -0
- package/dist/src/plugins/svelte/features/getDiagnostics.d.ts +9 -0
- package/dist/src/plugins/svelte/features/getDiagnostics.js +284 -0
- package/dist/src/plugins/svelte/features/getDiagnostics.js.map +1 -0
- package/dist/src/plugins/svelte/features/getHoverInfo.d.ts +7 -0
- package/dist/src/plugins/svelte/features/getHoverInfo.js +93 -0
- package/dist/src/plugins/svelte/features/getHoverInfo.js.map +1 -0
- package/dist/src/plugins/svelte/features/getModifierData.d.ts +7 -0
- package/dist/src/plugins/svelte/features/getModifierData.js +56 -0
- package/dist/src/plugins/svelte/features/getModifierData.js.map +1 -0
- package/dist/src/plugins/svelte/features/getSelectionRanges.d.ts +3 -0
- package/dist/src/plugins/svelte/features/getSelectionRanges.js +46 -0
- package/dist/src/plugins/svelte/features/getSelectionRanges.js.map +1 -0
- package/dist/src/plugins/svelte/features/utils.d.ts +5 -0
- package/dist/src/plugins/svelte/features/utils.js +18 -0
- package/dist/src/plugins/svelte/features/utils.js.map +1 -0
- package/dist/src/plugins/typescript/ComponentInfoProvider.d.ts +27 -0
- package/dist/src/plugins/typescript/ComponentInfoProvider.js +116 -0
- package/dist/src/plugins/typescript/ComponentInfoProvider.js.map +1 -0
- package/dist/src/plugins/typescript/DocumentMapper.d.ts +10 -0
- package/dist/src/plugins/typescript/DocumentMapper.js +25 -0
- package/dist/src/plugins/typescript/DocumentMapper.js.map +1 -0
- package/dist/src/plugins/typescript/DocumentSnapshot.d.ts +173 -0
- package/dist/src/plugins/typescript/DocumentSnapshot.js +623 -0
- package/dist/src/plugins/typescript/DocumentSnapshot.js.map +1 -0
- package/dist/src/plugins/typescript/LSAndTSDocResolver.d.ts +100 -0
- package/dist/src/plugins/typescript/LSAndTSDocResolver.js +301 -0
- package/dist/src/plugins/typescript/LSAndTSDocResolver.js.map +1 -0
- package/dist/src/plugins/typescript/SnapshotManager.d.ts +59 -0
- package/dist/src/plugins/typescript/SnapshotManager.js +238 -0
- package/dist/src/plugins/typescript/SnapshotManager.js.map +1 -0
- package/dist/src/plugins/typescript/TypeScriptPlugin.d.ts +65 -0
- package/dist/src/plugins/typescript/TypeScriptPlugin.js +332 -0
- package/dist/src/plugins/typescript/TypeScriptPlugin.js.map +1 -0
- package/dist/src/plugins/typescript/features/CallHierarchyProvider.d.ts +24 -0
- package/dist/src/plugins/typescript/features/CallHierarchyProvider.js +325 -0
- package/dist/src/plugins/typescript/features/CallHierarchyProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/CodeActionsProvider.d.ts +72 -0
- package/dist/src/plugins/typescript/features/CodeActionsProvider.js +1030 -0
- package/dist/src/plugins/typescript/features/CodeActionsProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/CodeLensProvider.d.ts +28 -0
- package/dist/src/plugins/typescript/features/CodeLensProvider.js +205 -0
- package/dist/src/plugins/typescript/features/CodeLensProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/CompletionProvider.d.ts +57 -0
- package/dist/src/plugins/typescript/features/CompletionProvider.js +791 -0
- package/dist/src/plugins/typescript/features/CompletionProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/DiagnosticsProvider.d.ts +36 -0
- package/dist/src/plugins/typescript/features/DiagnosticsProvider.js +497 -0
- package/dist/src/plugins/typescript/features/DiagnosticsProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/DocumentHighlightProvider.d.ts +17 -0
- package/dist/src/plugins/typescript/features/DocumentHighlightProvider.js +211 -0
- package/dist/src/plugins/typescript/features/DocumentHighlightProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/FindComponentReferencesProvider.d.ts +9 -0
- package/dist/src/plugins/typescript/features/FindComponentReferencesProvider.js +66 -0
- package/dist/src/plugins/typescript/features/FindComponentReferencesProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/FindFileReferencesProvider.d.ts +9 -0
- package/dist/src/plugins/typescript/features/FindFileReferencesProvider.js +38 -0
- package/dist/src/plugins/typescript/features/FindFileReferencesProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/FindReferencesProvider.d.ts +20 -0
- package/dist/src/plugins/typescript/features/FindReferencesProvider.js +149 -0
- package/dist/src/plugins/typescript/features/FindReferencesProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/FoldingRangeProvider.d.ts +28 -0
- package/dist/src/plugins/typescript/features/FoldingRangeProvider.js +247 -0
- package/dist/src/plugins/typescript/features/FoldingRangeProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/HoverProvider.d.ts +11 -0
- package/dist/src/plugins/typescript/features/HoverProvider.js +75 -0
- package/dist/src/plugins/typescript/features/HoverProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/ImplementationProvider.d.ts +9 -0
- package/dist/src/plugins/typescript/features/ImplementationProvider.js +47 -0
- package/dist/src/plugins/typescript/features/ImplementationProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/InlayHintProvider.d.ts +22 -0
- package/dist/src/plugins/typescript/features/InlayHintProvider.js +225 -0
- package/dist/src/plugins/typescript/features/InlayHintProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/RenameProvider.d.ts +53 -0
- package/dist/src/plugins/typescript/features/RenameProvider.js +423 -0
- package/dist/src/plugins/typescript/features/RenameProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/SelectionRangeProvider.d.ts +18 -0
- package/dist/src/plugins/typescript/features/SelectionRangeProvider.js +62 -0
- package/dist/src/plugins/typescript/features/SelectionRangeProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/SemanticTokensProvider.d.ts +15 -0
- package/dist/src/plugins/typescript/features/SemanticTokensProvider.js +116 -0
- package/dist/src/plugins/typescript/features/SemanticTokensProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/SignatureHelpProvider.d.ts +22 -0
- package/dist/src/plugins/typescript/features/SignatureHelpProvider.js +110 -0
- package/dist/src/plugins/typescript/features/SignatureHelpProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/TypeDefinitionProvider.d.ts +9 -0
- package/dist/src/plugins/typescript/features/TypeDefinitionProvider.js +35 -0
- package/dist/src/plugins/typescript/features/TypeDefinitionProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/UpdateImportsProvider.d.ts +11 -0
- package/dist/src/plugins/typescript/features/UpdateImportsProvider.js +109 -0
- package/dist/src/plugins/typescript/features/UpdateImportsProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/WorkspaceSymbolProvider.d.ts +25 -0
- package/dist/src/plugins/typescript/features/WorkspaceSymbolProvider.js +176 -0
- package/dist/src/plugins/typescript/features/WorkspaceSymbolProvider.js.map +1 -0
- package/dist/src/plugins/typescript/features/getDirectiveCommentCompletions.d.ts +13 -0
- package/dist/src/plugins/typescript/features/getDirectiveCommentCompletions.js +58 -0
- package/dist/src/plugins/typescript/features/getDirectiveCommentCompletions.js.map +1 -0
- package/dist/src/plugins/typescript/features/getJsDocTemplateCompletion.d.ts +4 -0
- package/dist/src/plugins/typescript/features/getJsDocTemplateCompletion.js +57 -0
- package/dist/src/plugins/typescript/features/getJsDocTemplateCompletion.js.map +1 -0
- package/dist/src/plugins/typescript/features/utils.d.ts +81 -0
- package/dist/src/plugins/typescript/features/utils.js +331 -0
- package/dist/src/plugins/typescript/features/utils.js.map +1 -0
- package/dist/src/plugins/typescript/macroforgeAugmenter.d.ts +23 -0
- package/dist/src/plugins/typescript/macroforgeAugmenter.js +41 -0
- package/dist/src/plugins/typescript/macroforgeAugmenter.js.map +1 -0
- package/dist/src/plugins/typescript/module-loader.d.ts +28 -0
- package/dist/src/plugins/typescript/module-loader.js +254 -0
- package/dist/src/plugins/typescript/module-loader.js.map +1 -0
- package/dist/src/plugins/typescript/previewer.d.ts +7 -0
- package/dist/src/plugins/typescript/previewer.js +120 -0
- package/dist/src/plugins/typescript/previewer.js.map +1 -0
- package/dist/src/plugins/typescript/service.d.ts +105 -0
- package/dist/src/plugins/typescript/service.js +1073 -0
- package/dist/src/plugins/typescript/service.js.map +1 -0
- package/dist/src/plugins/typescript/serviceCache.d.ts +90 -0
- package/dist/src/plugins/typescript/serviceCache.js +50 -0
- package/dist/src/plugins/typescript/serviceCache.js.map +1 -0
- package/dist/src/plugins/typescript/svelte-ast-utils.d.ts +77 -0
- package/dist/src/plugins/typescript/svelte-ast-utils.js +100 -0
- package/dist/src/plugins/typescript/svelte-ast-utils.js.map +1 -0
- package/dist/src/plugins/typescript/svelte-sys.d.ts +9 -0
- package/dist/src/plugins/typescript/svelte-sys.js +79 -0
- package/dist/src/plugins/typescript/svelte-sys.js.map +1 -0
- package/dist/src/plugins/typescript/utils.d.ts +48 -0
- package/dist/src/plugins/typescript/utils.js +334 -0
- package/dist/src/plugins/typescript/utils.js.map +1 -0
- package/dist/src/server.d.ts +19 -0
- package/dist/src/server.js +434 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/svelte-check.d.ts +65 -0
- package/dist/src/svelte-check.js +288 -0
- package/dist/src/svelte-check.js.map +1 -0
- package/dist/src/utils.d.ts +111 -0
- package/dist/src/utils.js +337 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +79 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { PublishDiagnosticsParams, RelativePattern, TextDocumentContentChangeEvent } from 'vscode-languageserver';
|
|
3
|
+
import { Document, DocumentManager } from '../../lib/documents';
|
|
4
|
+
import { LSConfigManager } from '../../ls-config';
|
|
5
|
+
import { DocumentSnapshot, SvelteDocumentSnapshot } from './DocumentSnapshot';
|
|
6
|
+
import { LanguageServiceContainer } from './service';
|
|
7
|
+
interface LSAndTSDocResolverOptions {
|
|
8
|
+
notifyExceedSizeLimit?: () => void;
|
|
9
|
+
/**
|
|
10
|
+
* True, if used in the context of svelte-check
|
|
11
|
+
*/
|
|
12
|
+
isSvelteCheck?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* This should only be set via svelte-check. Makes sure all documents are resolved to that tsconfig. Has to be absolute.
|
|
15
|
+
*/
|
|
16
|
+
tsconfigPath?: string;
|
|
17
|
+
onProjectReloaded?: () => void;
|
|
18
|
+
reportConfigError?: (diagnostic: PublishDiagnosticsParams) => void;
|
|
19
|
+
watch?: boolean;
|
|
20
|
+
tsSystem?: ts.System;
|
|
21
|
+
watchDirectory?: (patterns: RelativePattern[]) => void;
|
|
22
|
+
nonRecursiveWatchPattern?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Optional callback invoked when a new snapshot is created.
|
|
25
|
+
* Passes the absolute file path of the created snapshot.
|
|
26
|
+
* Consumers (like svelte-check) can derive the directory as needed.
|
|
27
|
+
*/
|
|
28
|
+
onFileSnapshotCreated?: (filePath: string) => void;
|
|
29
|
+
}
|
|
30
|
+
export declare class LSAndTSDocResolver {
|
|
31
|
+
private readonly docManager;
|
|
32
|
+
private readonly workspaceUris;
|
|
33
|
+
private readonly configManager;
|
|
34
|
+
private readonly options?;
|
|
35
|
+
constructor(docManager: DocumentManager, workspaceUris: string[], configManager: LSConfigManager, options?: LSAndTSDocResolverOptions | undefined);
|
|
36
|
+
/**
|
|
37
|
+
* Create a svelte document -> should only be invoked with svelte files.
|
|
38
|
+
*/
|
|
39
|
+
private createDocument;
|
|
40
|
+
private tsSystem;
|
|
41
|
+
private globalSnapshotsManager;
|
|
42
|
+
private extendedConfigCache;
|
|
43
|
+
private getCanonicalFileName;
|
|
44
|
+
private userPreferencesAccessor;
|
|
45
|
+
private readonly packageJsonWatchers;
|
|
46
|
+
private lsDocumentContext;
|
|
47
|
+
private readonly watchedDirectories;
|
|
48
|
+
getLSAndTSDoc(document: Document): Promise<{
|
|
49
|
+
tsDoc: SvelteDocumentSnapshot;
|
|
50
|
+
lang: ts.LanguageService;
|
|
51
|
+
userPreferences: ts.UserPreferences;
|
|
52
|
+
lsContainer: LanguageServiceContainer;
|
|
53
|
+
}>;
|
|
54
|
+
/**
|
|
55
|
+
* Retrieves the LS for operations that don't need cross-files information.
|
|
56
|
+
* can save some time by not synchronizing languageService program
|
|
57
|
+
*/
|
|
58
|
+
getLsForSyntheticOperations(document: Document): Promise<{
|
|
59
|
+
tsDoc: SvelteDocumentSnapshot;
|
|
60
|
+
lang: ts.LanguageService;
|
|
61
|
+
userPreferences: ts.UserPreferences;
|
|
62
|
+
}>;
|
|
63
|
+
private getLSAndTSDocWorker;
|
|
64
|
+
/**
|
|
65
|
+
* Retrieves and updates the snapshot for the given document or path from
|
|
66
|
+
* the ts service it primarily belongs into.
|
|
67
|
+
* The update is mirrored in all other services, too.
|
|
68
|
+
*/
|
|
69
|
+
getOrCreateSnapshot(document: Document): Promise<SvelteDocumentSnapshot>;
|
|
70
|
+
getOrCreateSnapshot(pathOrDoc: string | Document): Promise<DocumentSnapshot>;
|
|
71
|
+
private updateSnapshot;
|
|
72
|
+
/**
|
|
73
|
+
* Updates snapshot path in all existing ts services and retrieves snapshot
|
|
74
|
+
*/
|
|
75
|
+
updateSnapshotPath(oldPath: string, newPath: string): Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Deletes snapshot in all existing ts services
|
|
78
|
+
*/
|
|
79
|
+
deleteSnapshot(filePath: string): Promise<void>;
|
|
80
|
+
invalidateModuleCache(filePaths: string[]): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Updates project files in all existing ts services
|
|
83
|
+
*/
|
|
84
|
+
updateProjectFiles(watcherNewFiles: string[]): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Updates file in all ts services where it exists
|
|
87
|
+
*/
|
|
88
|
+
updateExistingTsOrJsFile(path: string, changes?: TextDocumentContentChangeEvent[]): Promise<void>;
|
|
89
|
+
updateExistingSvelteFile(path: string): Promise<void>;
|
|
90
|
+
private updateExistingFile;
|
|
91
|
+
getTSService(filePath?: string): Promise<LanguageServiceContainer>;
|
|
92
|
+
getTSServiceByConfigPath(tsconfigPath: string, workspacePath: string): Promise<LanguageServiceContainer>;
|
|
93
|
+
private getUserPreferences;
|
|
94
|
+
private getTsUserPreferences;
|
|
95
|
+
private wrapWithPackageJsonMonitoring;
|
|
96
|
+
private onPackageJsonWatchChange;
|
|
97
|
+
private updateSnapshotsInDirectory;
|
|
98
|
+
private watchDirectory;
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
@@ -0,0 +1,301 @@
|
|
|
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.LSAndTSDocResolver = void 0;
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
+
const utils_1 = require("../../utils");
|
|
10
|
+
const service_1 = require("./service");
|
|
11
|
+
const serviceCache_1 = require("./serviceCache");
|
|
12
|
+
const SnapshotManager_1 = require("./SnapshotManager");
|
|
13
|
+
const utils_2 = require("./utils");
|
|
14
|
+
const fileCollection_1 = require("../../lib/documents/fileCollection");
|
|
15
|
+
class LSAndTSDocResolver {
|
|
16
|
+
constructor(docManager, workspaceUris, configManager, options) {
|
|
17
|
+
this.docManager = docManager;
|
|
18
|
+
this.workspaceUris = workspaceUris;
|
|
19
|
+
this.configManager = configManager;
|
|
20
|
+
this.options = options;
|
|
21
|
+
/**
|
|
22
|
+
* Create a svelte document -> should only be invoked with svelte files.
|
|
23
|
+
*/
|
|
24
|
+
this.createDocument = (fileName, content) => {
|
|
25
|
+
const uri = (0, utils_1.pathToUrl)(fileName);
|
|
26
|
+
const document = this.docManager.openDocument({
|
|
27
|
+
text: content,
|
|
28
|
+
uri
|
|
29
|
+
},
|
|
30
|
+
/* openedByClient */ false);
|
|
31
|
+
this.docManager.lockDocument(uri);
|
|
32
|
+
return document;
|
|
33
|
+
};
|
|
34
|
+
this.extendedConfigCache = new Map();
|
|
35
|
+
docManager.on('documentChange', (0, utils_1.debounceSameArg)(this.updateSnapshot.bind(this), (newDoc, prevDoc) => newDoc.uri === prevDoc?.uri, 1000));
|
|
36
|
+
// New files would cause typescript to rebuild its type-checker.
|
|
37
|
+
// Open it immediately to reduce rebuilds in the startup
|
|
38
|
+
// where multiple files and their dependencies
|
|
39
|
+
// being loaded in a short period of times
|
|
40
|
+
docManager.on('documentOpen', (document) => {
|
|
41
|
+
if (document.openedByClient) {
|
|
42
|
+
this.getOrCreateSnapshot(document);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.updateSnapshot(document);
|
|
46
|
+
}
|
|
47
|
+
docManager.lockDocument(document.uri);
|
|
48
|
+
});
|
|
49
|
+
this.getCanonicalFileName = (0, utils_1.createGetCanonicalFileName)((options?.tsSystem ?? typescript_1.default.sys).useCaseSensitiveFileNames);
|
|
50
|
+
this.tsSystem = this.wrapWithPackageJsonMonitoring(this.options?.tsSystem ?? typescript_1.default.sys);
|
|
51
|
+
this.globalSnapshotsManager = new SnapshotManager_1.GlobalSnapshotsManager(this.tsSystem);
|
|
52
|
+
// Notify when new snapshots are created so external watchers (svelte-check)
|
|
53
|
+
// can react dynamically (for example: add parent directories to file watchers).
|
|
54
|
+
if (this.options?.onFileSnapshotCreated) {
|
|
55
|
+
this.globalSnapshotsManager.onChange((fileName, newDocument) => {
|
|
56
|
+
if (newDocument) {
|
|
57
|
+
try {
|
|
58
|
+
this.options?.onFileSnapshotCreated?.(fileName);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// best-effort; ignore errors in callback
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
this.userPreferencesAccessor = { preferences: this.getTsUserPreferences() };
|
|
67
|
+
const projectService = (0, serviceCache_1.createProjectService)(this.tsSystem, this.userPreferencesAccessor);
|
|
68
|
+
configManager.onChange(() => {
|
|
69
|
+
const newPreferences = this.getTsUserPreferences();
|
|
70
|
+
const autoImportConfigChanged = newPreferences.includePackageJsonAutoImports !==
|
|
71
|
+
this.userPreferencesAccessor.preferences.includePackageJsonAutoImports;
|
|
72
|
+
this.userPreferencesAccessor.preferences = newPreferences;
|
|
73
|
+
if (autoImportConfigChanged) {
|
|
74
|
+
(0, service_1.forAllServices)((service) => {
|
|
75
|
+
service.onAutoImportProviderSettingsChanged();
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
this.packageJsonWatchers = new fileCollection_1.FileMap(this.tsSystem.useCaseSensitiveFileNames);
|
|
80
|
+
this.watchedDirectories = new fileCollection_1.FileSet(this.tsSystem.useCaseSensitiveFileNames);
|
|
81
|
+
// workspaceUris are already watched during initialization
|
|
82
|
+
for (const root of this.workspaceUris) {
|
|
83
|
+
const rootPath = (0, utils_1.urlToPath)(root);
|
|
84
|
+
if (rootPath) {
|
|
85
|
+
this.watchedDirectories.add(rootPath);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
this.lsDocumentContext = {
|
|
89
|
+
isSvelteCheck: !!this.options?.isSvelteCheck,
|
|
90
|
+
ambientTypesSource: this.options?.isSvelteCheck ? 'svelte-check' : 'svelte2tsx',
|
|
91
|
+
createDocument: this.createDocument,
|
|
92
|
+
transformOnTemplateError: !this.options?.isSvelteCheck,
|
|
93
|
+
globalSnapshotsManager: this.globalSnapshotsManager,
|
|
94
|
+
notifyExceedSizeLimit: this.options?.notifyExceedSizeLimit,
|
|
95
|
+
extendedConfigCache: this.extendedConfigCache,
|
|
96
|
+
onProjectReloaded: this.options?.onProjectReloaded,
|
|
97
|
+
watchTsConfig: !!this.options?.watch,
|
|
98
|
+
tsSystem: this.tsSystem,
|
|
99
|
+
projectService,
|
|
100
|
+
watchDirectory: this.options?.watchDirectory
|
|
101
|
+
? this.watchDirectory.bind(this)
|
|
102
|
+
: undefined,
|
|
103
|
+
nonRecursiveWatchPattern: this.options?.nonRecursiveWatchPattern,
|
|
104
|
+
reportConfigError: this.options?.reportConfigError
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
async getLSAndTSDoc(document) {
|
|
108
|
+
const { tsDoc, lsContainer, userPreferences } = await this.getLSAndTSDocWorker(document);
|
|
109
|
+
return {
|
|
110
|
+
tsDoc,
|
|
111
|
+
lang: lsContainer.getService(),
|
|
112
|
+
userPreferences,
|
|
113
|
+
lsContainer
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Retrieves the LS for operations that don't need cross-files information.
|
|
118
|
+
* can save some time by not synchronizing languageService program
|
|
119
|
+
*/
|
|
120
|
+
async getLsForSyntheticOperations(document) {
|
|
121
|
+
const { tsDoc, lsContainer, userPreferences } = await this.getLSAndTSDocWorker(document);
|
|
122
|
+
return { tsDoc, userPreferences, lang: lsContainer.getService(/* skipSynchronize */ true) };
|
|
123
|
+
}
|
|
124
|
+
async getLSAndTSDocWorker(document) {
|
|
125
|
+
const lsContainer = await this.getTSService(document.getFilePath() || '');
|
|
126
|
+
const tsDoc = await this.getOrCreateSnapshot(document);
|
|
127
|
+
const userPreferences = this.getUserPreferences(tsDoc);
|
|
128
|
+
return { tsDoc, lsContainer, userPreferences };
|
|
129
|
+
}
|
|
130
|
+
async getOrCreateSnapshot(pathOrDoc) {
|
|
131
|
+
const filePath = typeof pathOrDoc === 'string' ? pathOrDoc : pathOrDoc.getFilePath() || '';
|
|
132
|
+
const tsService = await this.getTSService(filePath);
|
|
133
|
+
return tsService.updateSnapshot(pathOrDoc);
|
|
134
|
+
}
|
|
135
|
+
async updateSnapshot(document) {
|
|
136
|
+
const filePath = document.getFilePath();
|
|
137
|
+
if (!filePath) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
// ensure no new service is created
|
|
141
|
+
await this.updateExistingFile(filePath, (service) => service.updateSnapshot(document));
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Updates snapshot path in all existing ts services and retrieves snapshot
|
|
145
|
+
*/
|
|
146
|
+
async updateSnapshotPath(oldPath, newPath) {
|
|
147
|
+
const document = this.docManager.get((0, utils_1.pathToUrl)(oldPath));
|
|
148
|
+
const isOpenedInClient = document?.openedByClient;
|
|
149
|
+
for (const snapshot of this.globalSnapshotsManager.getByPrefix(oldPath)) {
|
|
150
|
+
await this.deleteSnapshot(snapshot.filePath);
|
|
151
|
+
}
|
|
152
|
+
if (isOpenedInClient) {
|
|
153
|
+
this.docManager.openClientDocument({
|
|
154
|
+
uri: (0, utils_1.pathToUrl)(newPath),
|
|
155
|
+
text: document.getText()
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
// This may not be a file but a directory, still try
|
|
160
|
+
await this.getOrCreateSnapshot(newPath);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Deletes snapshot in all existing ts services
|
|
165
|
+
*/
|
|
166
|
+
async deleteSnapshot(filePath) {
|
|
167
|
+
await (0, service_1.forAllServices)((service) => service.deleteSnapshot(filePath));
|
|
168
|
+
const uri = (0, utils_1.pathToUrl)(filePath);
|
|
169
|
+
if (this.docManager.get(uri)) {
|
|
170
|
+
// Guard this call, due to race conditions it may already have been closed;
|
|
171
|
+
// also this may not be a Svelte file
|
|
172
|
+
this.docManager.closeDocument(uri);
|
|
173
|
+
}
|
|
174
|
+
this.docManager.releaseDocument(uri);
|
|
175
|
+
}
|
|
176
|
+
async invalidateModuleCache(filePaths) {
|
|
177
|
+
await (0, service_1.forAllServices)((service) => service.invalidateModuleCache(filePaths));
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Updates project files in all existing ts services
|
|
181
|
+
*/
|
|
182
|
+
async updateProjectFiles(watcherNewFiles) {
|
|
183
|
+
await (0, service_1.forAllServices)((service) => service.scheduleProjectFileUpdate(watcherNewFiles));
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Updates file in all ts services where it exists
|
|
187
|
+
*/
|
|
188
|
+
async updateExistingTsOrJsFile(path, changes) {
|
|
189
|
+
await this.updateExistingFile(path, (service) => service.updateTsOrJsFile(path, changes));
|
|
190
|
+
}
|
|
191
|
+
async updateExistingSvelteFile(path) {
|
|
192
|
+
const newDocument = this.createDocument(path, this.tsSystem.readFile(path) ?? '');
|
|
193
|
+
await this.updateExistingFile(path, (service) => {
|
|
194
|
+
service.updateSnapshot(newDocument);
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
async updateExistingFile(path, cb) {
|
|
198
|
+
path = (0, utils_1.normalizePath)(path);
|
|
199
|
+
// Only update once because all snapshots are shared between
|
|
200
|
+
// services. Since we don't have a current version of TS/JS
|
|
201
|
+
// files, the operation wouldn't be idempotent.
|
|
202
|
+
let didUpdate = false;
|
|
203
|
+
await (0, service_1.forAllServices)((service) => {
|
|
204
|
+
if (service.hasFile(path) && !didUpdate) {
|
|
205
|
+
didUpdate = true;
|
|
206
|
+
cb(service);
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
async getTSService(filePath) {
|
|
211
|
+
if (this.options?.tsconfigPath) {
|
|
212
|
+
return this.getTSServiceByConfigPath(this.options.tsconfigPath, (0, path_1.dirname)(this.options.tsconfigPath));
|
|
213
|
+
}
|
|
214
|
+
if (!filePath) {
|
|
215
|
+
throw new Error('Cannot call getTSService without filePath and without tsconfigPath');
|
|
216
|
+
}
|
|
217
|
+
return (0, service_1.getService)(filePath, this.workspaceUris, this.lsDocumentContext);
|
|
218
|
+
}
|
|
219
|
+
async getTSServiceByConfigPath(tsconfigPath, workspacePath) {
|
|
220
|
+
return (0, service_1.getServiceForTsconfig)(tsconfigPath, workspacePath, this.lsDocumentContext);
|
|
221
|
+
}
|
|
222
|
+
getUserPreferences(tsDoc) {
|
|
223
|
+
const configLang = tsDoc.scriptKind === typescript_1.default.ScriptKind.TS || tsDoc.scriptKind === typescript_1.default.ScriptKind.TSX
|
|
224
|
+
? 'typescript'
|
|
225
|
+
: 'javascript';
|
|
226
|
+
const nearestWorkspaceUri = this.workspaceUris.find((workspaceUri) => (0, utils_2.isSubPath)(workspaceUri, tsDoc.filePath, this.getCanonicalFileName));
|
|
227
|
+
return this.configManager.getTsUserPreferences(configLang, nearestWorkspaceUri ? (0, utils_1.urlToPath)(nearestWorkspaceUri) : null);
|
|
228
|
+
}
|
|
229
|
+
getTsUserPreferences() {
|
|
230
|
+
return this.configManager.getTsUserPreferences('typescript', null);
|
|
231
|
+
}
|
|
232
|
+
wrapWithPackageJsonMonitoring(sys) {
|
|
233
|
+
if (!sys.watchFile || !this.options?.watch) {
|
|
234
|
+
return sys;
|
|
235
|
+
}
|
|
236
|
+
const watchFile = sys.watchFile;
|
|
237
|
+
return {
|
|
238
|
+
...sys,
|
|
239
|
+
readFile: (path, encoding) => {
|
|
240
|
+
if (path.endsWith('package.json') && !this.packageJsonWatchers.has(path)) {
|
|
241
|
+
this.packageJsonWatchers.set(path, watchFile(path, this.onPackageJsonWatchChange.bind(this), 3_000));
|
|
242
|
+
}
|
|
243
|
+
return sys.readFile(path, encoding);
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
onPackageJsonWatchChange(path, onWatchChange) {
|
|
248
|
+
const dir = (0, path_1.dirname)(path);
|
|
249
|
+
const projectService = this.lsDocumentContext.projectService;
|
|
250
|
+
const packageJsonCache = projectService?.packageJsonCache;
|
|
251
|
+
const normalizedPath = projectService?.toPath(path);
|
|
252
|
+
if (onWatchChange === typescript_1.default.FileWatcherEventKind.Deleted) {
|
|
253
|
+
this.packageJsonWatchers.get(path)?.close();
|
|
254
|
+
this.packageJsonWatchers.delete(path);
|
|
255
|
+
packageJsonCache?.delete(normalizedPath);
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
packageJsonCache?.addOrUpdate(normalizedPath);
|
|
259
|
+
}
|
|
260
|
+
(0, service_1.forAllServices)((service) => {
|
|
261
|
+
service.onPackageJsonChange(path);
|
|
262
|
+
});
|
|
263
|
+
if (!path.includes('node_modules')) {
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
setTimeout(() => {
|
|
267
|
+
this.updateSnapshotsInDirectory(dir);
|
|
268
|
+
const realPath = this.tsSystem.realpath &&
|
|
269
|
+
this.getCanonicalFileName((0, utils_1.normalizePath)(this.tsSystem.realpath?.(dir)));
|
|
270
|
+
// pnpm
|
|
271
|
+
if (realPath && realPath !== dir) {
|
|
272
|
+
this.updateSnapshotsInDirectory(realPath);
|
|
273
|
+
const realPkgPath = (0, path_1.join)(realPath, 'package.json');
|
|
274
|
+
(0, service_1.forAllServices)((service) => {
|
|
275
|
+
service.onPackageJsonChange(realPkgPath);
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
}, 500);
|
|
279
|
+
}
|
|
280
|
+
updateSnapshotsInDirectory(dir) {
|
|
281
|
+
this.globalSnapshotsManager.getByPrefix(dir).forEach((snapshot) => {
|
|
282
|
+
this.globalSnapshotsManager.updateTsOrJsFile(snapshot.filePath);
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
watchDirectory(patterns) {
|
|
286
|
+
if (!this.options?.watchDirectory || patterns.length === 0) {
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
for (const pattern of patterns) {
|
|
290
|
+
const uri = typeof pattern.baseUri === 'string' ? pattern.baseUri : pattern.baseUri.uri;
|
|
291
|
+
for (const watched of this.watchedDirectories) {
|
|
292
|
+
if ((0, utils_2.isSubPath)(watched, uri, this.getCanonicalFileName)) {
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
this.options.watchDirectory(patterns);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
exports.LSAndTSDocResolver = LSAndTSDocResolver;
|
|
301
|
+
//# sourceMappingURL=LSAndTSDocResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LSAndTSDocResolver.js","sourceRoot":"","sources":["../../../../src/plugins/typescript/LSAndTSDocResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { DocumentSnapshot, JSOrTSDocumentSnapshot } from './DocumentSnapshot';
|
|
3
|
+
import { TextDocumentContentChangeEvent } from 'vscode-languageserver';
|
|
4
|
+
type SnapshotChangeHandler = (fileName: string, newDocument: DocumentSnapshot | undefined) => void;
|
|
5
|
+
/**
|
|
6
|
+
* Every snapshot corresponds to a unique file on disk.
|
|
7
|
+
* A snapshot can be part of multiple projects, but for a given file path
|
|
8
|
+
* there can be only one snapshot.
|
|
9
|
+
*/
|
|
10
|
+
export declare class GlobalSnapshotsManager {
|
|
11
|
+
private readonly tsSystem;
|
|
12
|
+
private emitter;
|
|
13
|
+
private documents;
|
|
14
|
+
private getCanonicalFileName;
|
|
15
|
+
constructor(tsSystem: ts.System);
|
|
16
|
+
get(fileName: string): DocumentSnapshot | undefined;
|
|
17
|
+
getByPrefix(path: string): DocumentSnapshot[];
|
|
18
|
+
set(fileName: string, document: DocumentSnapshot): void;
|
|
19
|
+
delete(fileName: string): void;
|
|
20
|
+
updateTsOrJsFile(fileName: string, changes?: TextDocumentContentChangeEvent[]): JSOrTSDocumentSnapshot | undefined;
|
|
21
|
+
onChange(listener: SnapshotChangeHandler): void;
|
|
22
|
+
removeChangeListener(listener: SnapshotChangeHandler): void;
|
|
23
|
+
}
|
|
24
|
+
export interface TsFilesSpec {
|
|
25
|
+
include?: readonly string[];
|
|
26
|
+
exclude?: readonly string[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Should only be used by `service.ts`
|
|
30
|
+
*/
|
|
31
|
+
export declare class SnapshotManager {
|
|
32
|
+
private globalSnapshotsManager;
|
|
33
|
+
private fileSpec;
|
|
34
|
+
private workspaceRoot;
|
|
35
|
+
private tsSystem;
|
|
36
|
+
private readonly documents;
|
|
37
|
+
private lastLogged;
|
|
38
|
+
private readonly projectFileToOriginalCasing;
|
|
39
|
+
private getCanonicalFileName;
|
|
40
|
+
private watchingCanonicalDirectories;
|
|
41
|
+
private readonly watchExtensions;
|
|
42
|
+
constructor(globalSnapshotsManager: GlobalSnapshotsManager, fileSpec: TsFilesSpec, workspaceRoot: string, tsSystem: ts.System, projectFiles: string[], wildcardDirectories: ts.MapLike<ts.WatchDirectoryFlags> | undefined);
|
|
43
|
+
private onSnapshotChange;
|
|
44
|
+
areIgnoredFromNewFileWatch(watcherNewFiles: string[]): boolean;
|
|
45
|
+
updateProjectFiles(): void;
|
|
46
|
+
updateTsOrJsFile(fileName: string, changes?: TextDocumentContentChangeEvent[]): void;
|
|
47
|
+
has(fileName: string): boolean;
|
|
48
|
+
set(fileName: string, snapshot: DocumentSnapshot): void;
|
|
49
|
+
get(fileName: string): DocumentSnapshot | undefined;
|
|
50
|
+
delete(fileName: string): void;
|
|
51
|
+
getClientFileNames(): string[];
|
|
52
|
+
getProjectFileNames(): string[];
|
|
53
|
+
isProjectFile(fileName: string): boolean;
|
|
54
|
+
private logStatistics;
|
|
55
|
+
allFilesAreJsOrDts(): boolean;
|
|
56
|
+
dispose(): void;
|
|
57
|
+
}
|
|
58
|
+
export declare const ignoredBuildDirectories: string[];
|
|
59
|
+
export {};
|