@@ -25,6 +25,19 @@ function init(modules: { typescript: typeof ts_module }):
25
25
return undefined as any ;
26
26
}
27
27
28
+ function defaultTypescriptResolver ( moduleName : string , containingFile : string ,
29
+ info : ts . server . PluginCreateInfo , resolveModuleNames : any ) : ts_module . ResolvedModule | undefined {
30
+ if ( ! moduleName . startsWith ( '.' ) && resolveModuleNames ) {
31
+ // info.project.projectService.logger.info(`Resolve ${moduleName} on orig LSHost`);
32
+ const result = resolveModuleNames . call ( info . languageServiceHost , [ moduleName ] ,
33
+ containingFile ) as ts_module . ResolvedModule [ ] ;
34
+ if ( result && result . length > 0 ) {
35
+ return result [ 0 ] ;
36
+ }
37
+ }
38
+ return undefined ;
39
+ }
40
+
28
41
function create ( info : ts . server . PluginCreateInfo ) : ts . LanguageService {
29
42
info . project . projectService . logger . info ( 'Configuring patternplate resolver for typescript' ) ;
30
43
const resolveModuleNames = info . languageServiceHost . resolveModuleNames ;
@@ -43,15 +56,7 @@ function init(modules: { typescript: typeof ts_module }):
43
56
return resolvedModule ;
44
57
}
45
58
}
46
- if ( resolveModuleNames ) {
47
- // info.project.projectService.logger.info(`Resolve ${moduleName} on orig LSHost`);
48
- const result = resolveModuleNames . call ( info . languageServiceHost , [ moduleName ] ,
49
- containingFile ) as ts_module . ResolvedModule [ ] ;
50
- if ( result && result . length > 0 ) {
51
- return result [ 0 ] ;
52
- }
53
- }
54
- return undefined ;
59
+ return defaultTypescriptResolver ( moduleName , containingFile , info , resolveModuleNames ) ;
55
60
} ) ;
56
61
if ( resolvedNames && resolvedNames . length > 0 ) {
57
62
return resolvedNames as any ;
0 commit comments