@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 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/plugins/typescript/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { ProjectService } from 'typescript-auto-import-cache/out/5_0/projectService';
|
|
2
|
+
import ts from 'typescript';
|
|
3
|
+
import { ExportInfoMap } from 'typescript-auto-import-cache/out/5_0/exportInfoMap';
|
|
4
|
+
import { ModuleSpecifierCache } from 'typescript-auto-import-cache/out/5_0/moduleSpecifierCache';
|
|
5
|
+
import { SymlinkCache } from 'typescript-auto-import-cache/out/5_0/symlinkCache';
|
|
6
|
+
import { ProjectPackageJsonInfo } from 'typescript-auto-import-cache/out/5_0/packageJsonCache';
|
|
7
|
+
export { ProjectService };
|
|
8
|
+
declare module 'typescript' {
|
|
9
|
+
interface LanguageServiceHost {
|
|
10
|
+
/** @internal */ getCachedExportInfoMap?(): ExportInfoMap;
|
|
11
|
+
/** @internal */ getModuleSpecifierCache?(): ModuleSpecifierCache;
|
|
12
|
+
/** @internal */ getGlobalTypingsCacheLocation?(): string | undefined;
|
|
13
|
+
/** @internal */ getSymlinkCache?(files: readonly ts.SourceFile[]): SymlinkCache;
|
|
14
|
+
/** @internal */ getPackageJsonsVisibleToFile?(fileName: string, rootDir?: string): readonly ProjectPackageJsonInfo[];
|
|
15
|
+
/** @internal */ getPackageJsonAutoImportProvider?(): ts.Program | undefined;
|
|
16
|
+
/** @internal */ useSourceOfProjectReferenceRedirect?(): boolean;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export declare function createProjectService(system: ts.System, hostConfiguration: {
|
|
20
|
+
preferences: ts.UserPreferences;
|
|
21
|
+
}): {
|
|
22
|
+
serverMode: ts.LanguageServiceMode;
|
|
23
|
+
host: ts.System;
|
|
24
|
+
currentDirectory: any;
|
|
25
|
+
toCanonicalFileName: any;
|
|
26
|
+
toPath(fileName: string): any;
|
|
27
|
+
getExecutingFilePath(): any;
|
|
28
|
+
getNormalizedAbsolutePath(fileName: string): any;
|
|
29
|
+
packageJsonCache: import("typescript-auto-import-cache/out/5_0/packageJsonCache").PackageJsonCache;
|
|
30
|
+
getPackageJsonsVisibleToFile(fileName: string, rootDir?: string): readonly ProjectPackageJsonInfo[];
|
|
31
|
+
includePackageJsonAutoImports(): import("typescript-auto-import-cache/out/5_0/projectService").PackageJsonAutoImportPreference;
|
|
32
|
+
fileExists(fileName: ts.server.NormalizedPath): boolean;
|
|
33
|
+
} | undefined;
|
|
34
|
+
export declare function createProject(host: ts.LanguageServiceHost, createLanguageService: (host: ts.LanguageServiceHost) => ts.LanguageService, options: {
|
|
35
|
+
projectService: ProjectService;
|
|
36
|
+
compilerOptions: ts.CompilerOptions;
|
|
37
|
+
currentDirectory: string;
|
|
38
|
+
}): {
|
|
39
|
+
dirty: boolean;
|
|
40
|
+
hostProject: any;
|
|
41
|
+
languageServiceEnabled: boolean;
|
|
42
|
+
languageService: ts.LanguageService | undefined;
|
|
43
|
+
projectService: {
|
|
44
|
+
serverMode: import("typescript").LanguageServiceMode;
|
|
45
|
+
host: import("typescript").System;
|
|
46
|
+
currentDirectory: any;
|
|
47
|
+
toCanonicalFileName: any;
|
|
48
|
+
toPath(fileName: string): any;
|
|
49
|
+
getExecutingFilePath(): any;
|
|
50
|
+
getNormalizedAbsolutePath(fileName: string): any;
|
|
51
|
+
packageJsonCache: import("typescript-auto-import-cache/out/5_0/packageJsonCache").PackageJsonCache;
|
|
52
|
+
getPackageJsonsVisibleToFile(fileName: string, rootDir?: string | undefined): readonly ProjectPackageJsonInfo[];
|
|
53
|
+
includePackageJsonAutoImports(): import("typescript-auto-import-cache/out/5_0/projectService").PackageJsonAutoImportPreference;
|
|
54
|
+
fileExists(fileName: import("typescript").server.NormalizedPath): boolean;
|
|
55
|
+
};
|
|
56
|
+
getCanonicalFileName: any;
|
|
57
|
+
exportMapCache: ExportInfoMap | undefined;
|
|
58
|
+
getCachedExportInfoMap(): any;
|
|
59
|
+
clearCachedExportInfoMap(): void;
|
|
60
|
+
moduleSpecifierCache: any;
|
|
61
|
+
getModuleSpecifierCache(): any;
|
|
62
|
+
compilerOptions: ts.CompilerOptions;
|
|
63
|
+
getCompilationSettings(): ts.CompilerOptions;
|
|
64
|
+
getCompilerOptions(): ts.CompilerOptions;
|
|
65
|
+
program: ts.Program | undefined;
|
|
66
|
+
getCurrentProgram(): ts.Program | undefined;
|
|
67
|
+
currentDirectory: any;
|
|
68
|
+
getCurrentDirectory(): string;
|
|
69
|
+
symlinks: SymlinkCache | undefined;
|
|
70
|
+
getSymlinkCache(): SymlinkCache;
|
|
71
|
+
packageJsonsForAutoImport: Set<string> | undefined;
|
|
72
|
+
getPackageJsonsForAutoImport(rootDir?: string): readonly ProjectPackageJsonInfo[];
|
|
73
|
+
getPackageJsonsVisibleToFile(fileName: string, rootDir?: string): readonly ProjectPackageJsonInfo[];
|
|
74
|
+
getModuleResolutionHostForAutoImportProvider(): ts.ModuleResolutionHost;
|
|
75
|
+
autoImportProviderHost: false | {
|
|
76
|
+
getCurrentProgram(): ts.Program | undefined;
|
|
77
|
+
isEmpty(): boolean;
|
|
78
|
+
close(): void;
|
|
79
|
+
markAsDirty(): void;
|
|
80
|
+
} | undefined;
|
|
81
|
+
getPackageJsonAutoImportProvider(): ts.Program | undefined;
|
|
82
|
+
includePackageJsonAutoImports(): import("typescript-auto-import-cache/out/5_0/projectService").PackageJsonAutoImportPreference;
|
|
83
|
+
close(): void;
|
|
84
|
+
log(_message: string): void;
|
|
85
|
+
sendPerformanceEvent(_kind: ts.PerformanceEvent["kind"], _durationMs: number): void;
|
|
86
|
+
toPath(fileName: string): any;
|
|
87
|
+
getGlobalTypingsCacheLocation(): undefined;
|
|
88
|
+
useSourceOfProjectReferenceRedirect(): boolean;
|
|
89
|
+
onAutoImportProviderSettingsChanged(): void;
|
|
90
|
+
} | undefined;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// abstracting the typescript-auto-import-cache package to support our use case
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.createProjectService = createProjectService;
|
|
8
|
+
exports.createProject = createProject;
|
|
9
|
+
const projectService_1 = require("typescript-auto-import-cache/out/5_0/projectService");
|
|
10
|
+
const project_1 = require("typescript-auto-import-cache/out/5_0/project");
|
|
11
|
+
const project_2 = require("typescript-auto-import-cache/out/5_3/project");
|
|
12
|
+
const project_3 = require("typescript-auto-import-cache/out/5_5/project");
|
|
13
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
14
|
+
function createProjectService(system, hostConfiguration) {
|
|
15
|
+
const version = typescript_1.default.version.split('.');
|
|
16
|
+
const major = parseInt(version[0]);
|
|
17
|
+
if (major < 5) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
const projectService = (0, projectService_1.createProjectService)(typescript_1.default, system, system.getCurrentDirectory(), hostConfiguration, typescript_1.default.LanguageServiceMode.Semantic);
|
|
21
|
+
return projectService;
|
|
22
|
+
}
|
|
23
|
+
function createProject(host, createLanguageService, options) {
|
|
24
|
+
const version = typescript_1.default.version.split('.');
|
|
25
|
+
const major = parseInt(version[0]);
|
|
26
|
+
const minor = parseInt(version[1]);
|
|
27
|
+
if (major < 5) {
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
const factory = minor < 3 ? project_1.createProject : minor < 5 ? project_2.createProject : project_3.createProject;
|
|
31
|
+
const project = factory(typescript_1.default, host, createLanguageService, options);
|
|
32
|
+
const proxyMethods = [
|
|
33
|
+
'getCachedExportInfoMap',
|
|
34
|
+
'getModuleSpecifierCache',
|
|
35
|
+
'getGlobalTypingsCacheLocation',
|
|
36
|
+
'getSymlinkCache',
|
|
37
|
+
'getPackageJsonsVisibleToFile',
|
|
38
|
+
'getPackageJsonAutoImportProvider',
|
|
39
|
+
'includePackageJsonAutoImports'
|
|
40
|
+
// Volar doesn't have the "languageServiceReducedMode" support but we do
|
|
41
|
+
// so don't proxy this method and implement this directly in the ts.LanguageServiceHost
|
|
42
|
+
// 'useSourceOfProjectReferenceRedirect'
|
|
43
|
+
];
|
|
44
|
+
proxyMethods.forEach((key) => (host[key] = project[key].bind(project)));
|
|
45
|
+
if (host.log) {
|
|
46
|
+
project.log = host.log.bind(host);
|
|
47
|
+
}
|
|
48
|
+
return project;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=serviceCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serviceCache.js","sourceRoot":"","sources":["../../../../src/plugins/typescript/serviceCache.ts"],"names":[],"mappings":";AAAA,+EAA+E;;;;;AAgC/E,oDAsBC;AAED,sCAuCC;AA7FD,wFAG6D;AAC7D,0EAAgG;AAChG,0EAAgG;AAChG,0EAAgG;AAChG,4DAA4B;AAuB5B,SAAgB,oBAAoB,CAChC,MAAiB,EACjB,iBAEC;IAED,MAAM,OAAO,GAAG,oBAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,qCAAsB,EACzC,oBAAE,EACF,MAAM,EACN,MAAM,CAAC,mBAAmB,EAAE,EAC5B,iBAAiB,EACjB,oBAAE,CAAC,mBAAmB,CAAC,QAAQ,CAClC,CAAC;IAEF,OAAO,cAAc,CAAC;AAC1B,CAAC;AAED,SAAgB,aAAa,CACzB,IAA4B,EAC5B,qBAA2E,EAC3E,OAIC;IAED,MAAM,OAAO,GAAG,oBAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAe,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAe,CAAC,CAAC,CAAC,uBAAe,CAAC;IAC5F,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAElE,MAAM,YAAY,GAA6B;QAC3C,wBAAwB;QACxB,yBAAyB;QACzB,+BAA+B;QAC/B,iBAAiB;QACjB,8BAA8B;QAC9B,kCAAkC;QAClC,+BAA+B;QAC/B,wEAAwE;QACxE,uFAAuF;QACvF,wCAAwC;KAC3C,CAAC;IACF,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAE,IAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAEjF,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Node } from 'estree';
|
|
2
|
+
import { walk } from 'estree-walker';
|
|
3
|
+
import { TemplateNode } from 'svelte/types/compiler/interfaces';
|
|
4
|
+
export interface SvelteNode {
|
|
5
|
+
start: number;
|
|
6
|
+
end: number;
|
|
7
|
+
type: string;
|
|
8
|
+
parent?: SvelteNode;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
}
|
|
11
|
+
export interface AwaitBlock extends SvelteNode {
|
|
12
|
+
type: 'AwaitBlock';
|
|
13
|
+
expression: SvelteNode & Node;
|
|
14
|
+
value: (SvelteNode & Node) | null;
|
|
15
|
+
error: (SvelteNode & Node) | null;
|
|
16
|
+
pending: AwaitSubBlock;
|
|
17
|
+
then: AwaitSubBlock;
|
|
18
|
+
catch: AwaitSubBlock;
|
|
19
|
+
}
|
|
20
|
+
export interface AwaitSubBlock extends SvelteNode {
|
|
21
|
+
skip: boolean;
|
|
22
|
+
children: SvelteNode[];
|
|
23
|
+
}
|
|
24
|
+
export interface EachBlock extends SvelteNode {
|
|
25
|
+
type: 'EachBlock';
|
|
26
|
+
expression: SvelteNode & Node;
|
|
27
|
+
context: SvelteNode & Node;
|
|
28
|
+
key?: SvelteNode & Node;
|
|
29
|
+
else?: SvelteNode;
|
|
30
|
+
children: SvelteNode[];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Returns true if given node is a component or html element, or if the offset is at the end of the node
|
|
34
|
+
* and its parent is a component or html element.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isInTag(node: SvelteNode | null | undefined, offset: number): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Returns when given node represents an HTML Attribute.
|
|
39
|
+
* Example: The `class` in `<div class=".."`.
|
|
40
|
+
* Note: This method returns `false` for shorthands like `<div {foo}`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function isAttributeName(node: SvelteNode | null | undefined, only?: 'Element' | 'InlineComponent'): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Returns when given node represents an HTML Attribute shorthand or is inside one.
|
|
45
|
+
* Example: The `{foo}` in `<div {foo}`
|
|
46
|
+
*/
|
|
47
|
+
export declare function isAttributeShorthand(node: SvelteNode | null | undefined, only?: 'Element' | 'InlineComponent'): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Returns when given node represents an HTML Attribute shorthand or is inside one.
|
|
50
|
+
* Example: The `on:click={foo}` in `<div on:click={foo}`
|
|
51
|
+
*/
|
|
52
|
+
export declare function isEventHandler(node: SvelteNode | null | undefined, only?: 'Element' | 'InlineComponent'): boolean;
|
|
53
|
+
export declare function isElseBlockWithElseIf(node: SvelteNode | null | undefined): boolean;
|
|
54
|
+
export declare function hasElseBlock(node: SvelteNode): node is SvelteNode & {
|
|
55
|
+
else: SvelteNode;
|
|
56
|
+
};
|
|
57
|
+
export declare function findElseBlockTagStart(documentText: string, elseBlock: SvelteNode): number;
|
|
58
|
+
export declare function findIfBlockEndTagStart(documentText: string, ifBlock: SvelteNode): number;
|
|
59
|
+
type ESTreeWaker = Parameters<typeof walk>[1];
|
|
60
|
+
type ESTreeEnterFunc = NonNullable<ESTreeWaker['enter']>;
|
|
61
|
+
type ESTreeLeaveFunc = NonNullable<ESTreeWaker['leave']>;
|
|
62
|
+
export interface SvelteNodeWalker {
|
|
63
|
+
enter?: (this: {
|
|
64
|
+
skip: () => void;
|
|
65
|
+
remove: () => void;
|
|
66
|
+
replace: (node: SvelteNode) => void;
|
|
67
|
+
}, node: SvelteNode, parent: SvelteNode, key: Parameters<ESTreeEnterFunc>[2], index: Parameters<ESTreeEnterFunc>[3]) => void;
|
|
68
|
+
leave?: (this: {
|
|
69
|
+
skip: () => void;
|
|
70
|
+
remove: () => void;
|
|
71
|
+
replace: (node: SvelteNode) => void;
|
|
72
|
+
}, node: SvelteNode, parent: SvelteNode, key: Parameters<ESTreeLeaveFunc>[2], index: Parameters<ESTreeLeaveFunc>[3]) => void;
|
|
73
|
+
}
|
|
74
|
+
export declare function walkSvelteAst(htmlAst: TemplateNode, walker: SvelteNodeWalker): void;
|
|
75
|
+
export declare function isAwaitBlock(node: SvelteNode): node is AwaitBlock;
|
|
76
|
+
export declare function isEachBlock(node: SvelteNode): node is EachBlock;
|
|
77
|
+
export {};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isInTag = isInTag;
|
|
4
|
+
exports.isAttributeName = isAttributeName;
|
|
5
|
+
exports.isAttributeShorthand = isAttributeShorthand;
|
|
6
|
+
exports.isEventHandler = isEventHandler;
|
|
7
|
+
exports.isElseBlockWithElseIf = isElseBlockWithElseIf;
|
|
8
|
+
exports.hasElseBlock = hasElseBlock;
|
|
9
|
+
exports.findElseBlockTagStart = findElseBlockTagStart;
|
|
10
|
+
exports.findIfBlockEndTagStart = findIfBlockEndTagStart;
|
|
11
|
+
exports.walkSvelteAst = walkSvelteAst;
|
|
12
|
+
exports.isAwaitBlock = isAwaitBlock;
|
|
13
|
+
exports.isEachBlock = isEachBlock;
|
|
14
|
+
const estree_walker_1 = require("estree-walker");
|
|
15
|
+
function matchesOnly(type, only) {
|
|
16
|
+
return (!only ||
|
|
17
|
+
// We hide the detail that body/window are also like elements in the context of this usage
|
|
18
|
+
(only === 'Element' && ['Element', 'Body', 'Window'].includes(type)) ||
|
|
19
|
+
(only === 'InlineComponent' && type === 'InlineComponent'));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Returns true if given node is a component or html element, or if the offset is at the end of the node
|
|
23
|
+
* and its parent is a component or html element.
|
|
24
|
+
*/
|
|
25
|
+
function isInTag(node, offset) {
|
|
26
|
+
return (node?.type === 'InlineComponent' ||
|
|
27
|
+
node?.type === 'Element' ||
|
|
28
|
+
(node?.end === offset &&
|
|
29
|
+
(node?.parent?.type === 'InlineComponent' || node?.parent?.type === 'Element')));
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Returns when given node represents an HTML Attribute.
|
|
33
|
+
* Example: The `class` in `<div class=".."`.
|
|
34
|
+
* Note: This method returns `false` for shorthands like `<div {foo}`.
|
|
35
|
+
*/
|
|
36
|
+
function isAttributeName(node, only) {
|
|
37
|
+
return !!node && node.type === 'Attribute' && matchesOnly(node.parent?.type, only);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Returns when given node represents an HTML Attribute shorthand or is inside one.
|
|
41
|
+
* Example: The `{foo}` in `<div {foo}`
|
|
42
|
+
*/
|
|
43
|
+
function isAttributeShorthand(node, only) {
|
|
44
|
+
if (!node) {
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
do {
|
|
48
|
+
// We could get the expression, or the shorthand, or the attribute
|
|
49
|
+
// Be pragmatic and just go upwards until we can't anymore
|
|
50
|
+
if (isAttributeName(node, only)) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
node = node.parent;
|
|
54
|
+
} while (node);
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Returns when given node represents an HTML Attribute shorthand or is inside one.
|
|
59
|
+
* Example: The `on:click={foo}` in `<div on:click={foo}`
|
|
60
|
+
*/
|
|
61
|
+
function isEventHandler(node, only) {
|
|
62
|
+
return !!node && node.type === 'EventHandler' && matchesOnly(node.parent?.type, only);
|
|
63
|
+
}
|
|
64
|
+
function isElseBlockWithElseIf(node) {
|
|
65
|
+
return (!!node &&
|
|
66
|
+
node.type === 'ElseBlock' &&
|
|
67
|
+
'children' in node &&
|
|
68
|
+
Array.isArray(node.children) &&
|
|
69
|
+
node.children.length === 1 &&
|
|
70
|
+
node.children[0].type === 'IfBlock');
|
|
71
|
+
}
|
|
72
|
+
function hasElseBlock(node) {
|
|
73
|
+
return 'else' in node && !!node.else;
|
|
74
|
+
}
|
|
75
|
+
function findElseBlockTagStart(documentText, elseBlock) {
|
|
76
|
+
return documentText.lastIndexOf('{', documentText.lastIndexOf(':else', elseBlock.start));
|
|
77
|
+
}
|
|
78
|
+
function findIfBlockEndTagStart(documentText, ifBlock) {
|
|
79
|
+
return documentText.lastIndexOf('{', documentText.lastIndexOf('/if', ifBlock.end));
|
|
80
|
+
}
|
|
81
|
+
// wrap the estree-walker to make it svelte specific
|
|
82
|
+
// the type casting is necessary because estree-walker is not designed for this
|
|
83
|
+
// especially in v3 which svelte 4 uses
|
|
84
|
+
function walkSvelteAst(htmlAst, walker) {
|
|
85
|
+
(0, estree_walker_1.walk)(htmlAst, {
|
|
86
|
+
enter(node, parent, key, index) {
|
|
87
|
+
walker.enter?.call(this, node, parent, key, index);
|
|
88
|
+
},
|
|
89
|
+
leave(node, parent, key, index) {
|
|
90
|
+
walker.leave?.call(this, node, parent, key, index);
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
function isAwaitBlock(node) {
|
|
95
|
+
return node.type === 'AwaitBlock';
|
|
96
|
+
}
|
|
97
|
+
function isEachBlock(node) {
|
|
98
|
+
return node.type === 'EachBlock';
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=svelte-ast-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svelte-ast-utils.js","sourceRoot":"","sources":["../../../../src/plugins/typescript/svelte-ast-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
/**
|
|
3
|
+
* This should only be accessed by TS svelte module resolution.
|
|
4
|
+
*/
|
|
5
|
+
export declare function createSvelteSys(tsSystem: ts.System): ts.System & {
|
|
6
|
+
deleteFromCache: (path: string) => void;
|
|
7
|
+
svelteFileExists: (path: string) => boolean;
|
|
8
|
+
getRealSveltePathIfExists: (path: string) => string;
|
|
9
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createSvelteSys = createSvelteSys;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
5
|
+
const fileCollection_1 = require("../../lib/documents/fileCollection");
|
|
6
|
+
/**
|
|
7
|
+
* This should only be accessed by TS svelte module resolution.
|
|
8
|
+
*/
|
|
9
|
+
function createSvelteSys(tsSystem) {
|
|
10
|
+
const fileExistsCache = new fileCollection_1.FileMap();
|
|
11
|
+
function svelteFileExists(path) {
|
|
12
|
+
if ((0, utils_1.isVirtualSvelteFilePath)(path)) {
|
|
13
|
+
const sveltePath = (0, utils_1.toRealSvelteFilePath)(path);
|
|
14
|
+
// First check if there's a `.svelte.d.ts` or `.d.svelte.ts` file, which should take precedence
|
|
15
|
+
const dtsPath = sveltePath.slice(0, -7) + '.svelte.d.ts';
|
|
16
|
+
const dtsPathExists = fileExistsCache.get(dtsPath) ?? tsSystem.fileExists(dtsPath);
|
|
17
|
+
fileExistsCache.set(dtsPath, dtsPathExists);
|
|
18
|
+
if (dtsPathExists)
|
|
19
|
+
return false;
|
|
20
|
+
const svelteDtsPathExists = fileExistsCache.get(path) ?? tsSystem.fileExists(path);
|
|
21
|
+
fileExistsCache.set(path, svelteDtsPathExists);
|
|
22
|
+
if (svelteDtsPathExists)
|
|
23
|
+
return false;
|
|
24
|
+
const sveltePathExists = fileExistsCache.get(sveltePath) ?? tsSystem.fileExists(sveltePath);
|
|
25
|
+
fileExistsCache.set(sveltePath, sveltePathExists);
|
|
26
|
+
return sveltePathExists;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
function getRealSveltePathIfExists(path) {
|
|
33
|
+
return svelteFileExists(path) ? (0, utils_1.toRealSvelteFilePath)(path) : path;
|
|
34
|
+
}
|
|
35
|
+
const svelteSys = {
|
|
36
|
+
...tsSystem,
|
|
37
|
+
svelteFileExists,
|
|
38
|
+
getRealSveltePathIfExists,
|
|
39
|
+
fileExists(path) {
|
|
40
|
+
// We need to check if this is a virtual svelte file
|
|
41
|
+
const sveltePathExists = svelteFileExists(path);
|
|
42
|
+
if (sveltePathExists)
|
|
43
|
+
return true;
|
|
44
|
+
const exists = fileExistsCache.get(path) ?? tsSystem.fileExists(path);
|
|
45
|
+
fileExistsCache.set(path, exists);
|
|
46
|
+
return exists;
|
|
47
|
+
},
|
|
48
|
+
readFile(path) {
|
|
49
|
+
// No getSnapshot here, because TS will very rarely call this and only for files that are not in the project
|
|
50
|
+
return tsSystem.readFile(getRealSveltePathIfExists(path));
|
|
51
|
+
},
|
|
52
|
+
readDirectory(path, extensions, exclude, include, depth) {
|
|
53
|
+
const extensionsWithSvelte = extensions ? [...extensions, '.svelte'] : undefined;
|
|
54
|
+
return tsSystem.readDirectory(path, extensionsWithSvelte, exclude, include, depth);
|
|
55
|
+
},
|
|
56
|
+
deleteFile(path) {
|
|
57
|
+
// assumption: never a foo.svelte.ts file next to a foo.svelte file
|
|
58
|
+
fileExistsCache.delete((0, utils_1.ensureRealSvelteFilePath)(path));
|
|
59
|
+
fileExistsCache.delete(path);
|
|
60
|
+
return tsSystem.deleteFile?.(path);
|
|
61
|
+
},
|
|
62
|
+
deleteFromCache(path) {
|
|
63
|
+
// assumption: never a foo.svelte.ts file next to a foo.svelte file
|
|
64
|
+
fileExistsCache.delete((0, utils_1.ensureRealSvelteFilePath)(path));
|
|
65
|
+
fileExistsCache.delete(path);
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
if (tsSystem.realpath) {
|
|
69
|
+
const realpath = tsSystem.realpath;
|
|
70
|
+
svelteSys.realpath = function (path) {
|
|
71
|
+
if (svelteFileExists(path)) {
|
|
72
|
+
return realpath((0, utils_1.toRealSvelteFilePath)(path));
|
|
73
|
+
}
|
|
74
|
+
return realpath(path);
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return svelteSys;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=svelte-sys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svelte-sys.js","sourceRoot":"","sources":["../../../../src/plugins/typescript/svelte-sys.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { CompletionItemKind, DiagnosticSeverity, DiagnosticTag, Position, Range, SymbolKind, Location } from 'vscode-languageserver';
|
|
3
|
+
import { Document } from '../../lib/documents';
|
|
4
|
+
import { GetCanonicalFileName } from '../../utils';
|
|
5
|
+
import { DocumentSnapshot, SvelteDocumentSnapshot } from './DocumentSnapshot';
|
|
6
|
+
export declare function getScriptKindFromFileName(fileName: string): ts.ScriptKind;
|
|
7
|
+
export declare function getExtensionFromScriptKind(kind: ts.ScriptKind | undefined): ts.Extension;
|
|
8
|
+
export declare function getScriptKindFromAttributes(attrs: Record<string, string>): ts.ScriptKind.TSX | ts.ScriptKind.JSX;
|
|
9
|
+
export declare function isSvelteFilePath(filePath: string): boolean;
|
|
10
|
+
export declare function isVirtualSvelteFilePath(filePath: string): boolean;
|
|
11
|
+
export declare function toRealSvelteFilePath(filePath: string): string;
|
|
12
|
+
export declare function toVirtualSvelteFilePath(svelteFilePath: string): string;
|
|
13
|
+
export declare function ensureRealSvelteFilePath(filePath: string): string;
|
|
14
|
+
export declare function convertRange(document: {
|
|
15
|
+
positionAt: (offset: number) => Position;
|
|
16
|
+
}, range: {
|
|
17
|
+
start?: number;
|
|
18
|
+
length?: number;
|
|
19
|
+
}): Range;
|
|
20
|
+
export declare function convertToLocationRange(snapshot: DocumentSnapshot, textSpan: ts.TextSpan): Range;
|
|
21
|
+
export declare function convertToLocationForReferenceOrDefinition(snapshot: DocumentSnapshot, textSpan: ts.TextSpan): Location;
|
|
22
|
+
export declare function hasNonZeroRange({ range }: {
|
|
23
|
+
range?: Range;
|
|
24
|
+
}): boolean;
|
|
25
|
+
export declare function rangeToTextSpan(range: Range, document: {
|
|
26
|
+
offsetAt: (position: Position) => number;
|
|
27
|
+
}): ts.TextSpan;
|
|
28
|
+
export declare function findTsConfigPath(fileName: string, rootUris: string[], fileExists: (path: string) => boolean, getCanonicalFileName: GetCanonicalFileName): string;
|
|
29
|
+
export declare function isSubPath(uri: string, possibleSubPath: string, getCanonicalFileName: GetCanonicalFileName): boolean;
|
|
30
|
+
export declare function getNearestWorkspaceUri(workspaceUris: string[], path: string, getCanonicalFileName: GetCanonicalFileName): string | undefined;
|
|
31
|
+
export declare function symbolKindFromString(kind: string): SymbolKind;
|
|
32
|
+
export declare function scriptElementKindToCompletionItemKind(kind: ts.ScriptElementKind): CompletionItemKind;
|
|
33
|
+
export declare function mapSeverity(category: ts.DiagnosticCategory): DiagnosticSeverity;
|
|
34
|
+
/**
|
|
35
|
+
* Returns `// @ts-check` or `// @ts-nocheck` if content starts with comments and has one of these
|
|
36
|
+
* in its comments.
|
|
37
|
+
*/
|
|
38
|
+
export declare function getTsCheckComment(str?: string): string | undefined;
|
|
39
|
+
export declare function convertToTextSpan(range: Range, snapshot: DocumentSnapshot): ts.TextSpan;
|
|
40
|
+
export declare function isInScript(position: Position, snapshot: SvelteDocumentSnapshot | Document): boolean;
|
|
41
|
+
export declare function getDiagnosticTag(diagnostic: ts.Diagnostic): DiagnosticTag[];
|
|
42
|
+
export declare function changeSvelteComponentName(name: string): string;
|
|
43
|
+
export declare function isGeneratedSvelteComponentName(className: string): boolean;
|
|
44
|
+
export declare function offsetOfGeneratedComponentExport(snapshot: SvelteDocumentSnapshot): number;
|
|
45
|
+
export declare function toGeneratedSvelteComponentName(className: string): string;
|
|
46
|
+
export declare function hasTsExtensions(fileName: string): boolean;
|
|
47
|
+
export declare function isSvelte2tsxShimFile(fileName: string | undefined): boolean | undefined;
|
|
48
|
+
export declare function cloneRange(range: Range): Range;
|