/
index.ts
26 lines (25 loc) · 804 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import * as base from '@volar/typescript';
import * as vue from '@vue/language-core';
export function createLanguageService(
host: vue.LanguageServiceHost,
vueCompilerOptions?: vue.VueCompilerOptions,
ts?: typeof import('typescript/lib/tsserverlibrary'),
) {
const languageService = base.createLanguageService(
host,
vue.createLanguages(
host.getCompilationSettings(),
vueCompilerOptions,
ts,
),
);
const getCompletionsAtPosition = languageService.getCompletionsAtPosition;
languageService.getCompletionsAtPosition = (fileName, position, options) => {
const result = getCompletionsAtPosition(fileName, position, options);
if (result) {
result.entries = result.entries.filter(entry => entry.name.indexOf('__VLS_') === -1);
}
return result;
};
return languageService;
}