@@ -4,6 +4,7 @@ export * from '@volar/language-service';
44// for @vue /language-server usage
55export * from '@volar/language-service/lib/utils/featureWorkers' ;
66
7+ import type { Requests } from '@vue/typescript-plugin/lib/requests' ;
78import { create as createEmmetPlugin } from 'volar-service-emmet' ;
89import { create as createJsonPlugin } from 'volar-service-json' ;
910import { create as createPugFormatPlugin } from 'volar-service-pug-beautify' ;
@@ -29,16 +30,16 @@ import { create as createVueTemplatePlugin } from './lib/plugins/vue-template';
2930import { create as createVueTemplateRefLinksPlugin } from './lib/plugins/vue-template-ref-links' ;
3031import { create as createVueTwoslashQueriesPlugin } from './lib/plugins/vue-twoslash-queries' ;
3132
33+ const noop = ( ) => { } ;
34+
3235export function createVueLanguageServicePlugins (
3336 ts : typeof import ( 'typescript' ) ,
34- tsPluginClient ?: import ( '@vue/typescript-plugin/lib/requests' ) . Requests ,
35- ) {
36- tsPluginClient ??= new Proxy ( { } , {
37+ client = new Proxy ( { } as Requests , {
3738 get ( ) {
38- return ( ) => undefined ;
39+ return noop ;
3940 } ,
40- } ) as NonNullable < typeof tsPluginClient > ;
41-
41+ } ) ,
42+ ) {
4243 return [
4344 createCssPlugin ( ) ,
4445 createJsonPlugin ( ) ,
@@ -64,15 +65,15 @@ export function createVueLanguageServicePlugins(
6465 createVueInlayHintsPlugin ( ts ) ,
6566
6667 // type aware plugins
67- createTypescriptSemanticTokensPlugin ( tsPluginClient ) ,
68- createVueAutoDotValuePlugin ( ts , tsPluginClient ) ,
69- createVueComponentSemanticTokensPlugin ( tsPluginClient ) ,
70- createVueDocumentDropPlugin ( ts , tsPluginClient ) ,
71- createVueDocumentHighlightsPlugin ( tsPluginClient ) ,
72- createVueExtractFilePlugin ( ts , tsPluginClient ) ,
73- createVueMissingPropsHintsPlugin ( tsPluginClient ) ,
74- createVueTemplatePlugin ( 'html' , tsPluginClient ) ,
75- createVueTemplatePlugin ( 'jade' , tsPluginClient ) ,
76- createVueTwoslashQueriesPlugin ( tsPluginClient ) ,
68+ createTypescriptSemanticTokensPlugin ( client ) ,
69+ createVueAutoDotValuePlugin ( ts , client ) ,
70+ createVueComponentSemanticTokensPlugin ( client ) ,
71+ createVueDocumentDropPlugin ( ts , client ) ,
72+ createVueDocumentHighlightsPlugin ( client ) ,
73+ createVueExtractFilePlugin ( ts , client ) ,
74+ createVueMissingPropsHintsPlugin ( client ) ,
75+ createVueTemplatePlugin ( 'html' , client ) ,
76+ createVueTemplatePlugin ( 'jade' , client ) ,
77+ createVueTwoslashQueriesPlugin ( client ) ,
7778 ] ;
7879}
0 commit comments