Skip to content

Commit f24ca40

Browse files
committed
refactor(typescript-plugin): remove unnecessary isTsPlugin and asScriptId
1 parent c964b32 commit f24ca40

12 files changed

+36
-47
lines changed

packages/typescript-plugin/index.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ export = createLanguageServicePlugin(
4040
language,
4141
info.languageService,
4242
vueOptions,
43-
fileName => fileName,
4443
);
4544

4645
// #3963
@@ -166,8 +165,6 @@ export = createLanguageServicePlugin(
166165
languageService: service[2],
167166
languageServiceHost: service[1],
168167
language: service[0],
169-
isTsPlugin: true,
170-
asScriptId: (fileName: string) => fileName,
171168
};
172169
}
173170
},

packages/typescript-plugin/lib/common.ts

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,23 @@ import type * as ts from 'typescript';
44

55
const windowsPathReg = /\\/g;
66

7-
export function createVueLanguageServiceProxy<T>(
7+
export function createVueLanguageServiceProxy(
88
ts: typeof import('typescript'),
9-
language: Language<T>,
9+
language: Language<string>,
1010
languageService: ts.LanguageService,
1111
vueOptions: VueCompilerOptions,
12-
asScriptId: (fileName: string) => T,
1312
) {
1413
const proxyCache = new Map<string | symbol, Function | undefined>();
1514
const getProxyMethod = (target: ts.LanguageService, p: string | symbol): Function | undefined => {
1615
switch (p) {
1716
case 'getCompletionsAtPosition':
18-
return getCompletionsAtPosition(ts, language, vueOptions, asScriptId, target[p]);
17+
return getCompletionsAtPosition(ts, language, vueOptions, target[p]);
1918
case 'getCompletionEntryDetails':
20-
return getCompletionEntryDetails(language, asScriptId, target[p]);
19+
return getCompletionEntryDetails(language, target[p]);
2120
case 'getCodeFixesAtPosition':
2221
return getCodeFixesAtPosition(target[p]);
2322
case 'getDefinitionAndBoundSpan':
24-
return getDefinitionAndBoundSpan(ts, language, languageService, vueOptions, asScriptId, target[p]);
23+
return getDefinitionAndBoundSpan(ts, language, languageService, vueOptions, target[p]);
2524
}
2625
};
2726

@@ -44,11 +43,10 @@ export function createVueLanguageServiceProxy<T>(
4443
});
4544
}
4645

47-
function getCompletionsAtPosition<T>(
46+
function getCompletionsAtPosition(
4847
ts: typeof import('typescript'),
49-
language: Language<T>,
48+
language: Language<string>,
5049
vueOptions: VueCompilerOptions,
51-
asScriptId: (fileName: string) => T,
5250
getCompletionsAtPosition: ts.LanguageService['getCompletionsAtPosition'],
5351
): ts.LanguageService['getCompletionsAtPosition'] {
5452
return (filePath, position, options, formattingSettings) => {
@@ -63,7 +61,7 @@ function getCompletionsAtPosition<T>(
6361
);
6462

6563
// filter global variables in template and styles
66-
const sourceScript = language.scripts.get(asScriptId(fileName));
64+
const sourceScript = language.scripts.get(fileName);
6765
const root = sourceScript?.generated?.root;
6866
if (root instanceof VueVirtualCode) {
6967
const blocks = [
@@ -131,9 +129,8 @@ function getCompletionsAtPosition<T>(
131129
};
132130
}
133131

134-
function getCompletionEntryDetails<T>(
135-
language: Language<T>,
136-
asScriptId: (fileName: string) => T,
132+
function getCompletionEntryDetails(
133+
language: Language<string>,
137134
getCompletionEntryDetails: ts.LanguageService['getCompletionEntryDetails'],
138135
): ts.LanguageService['getCompletionEntryDetails'] {
139136
return (...args) => {
@@ -158,7 +155,7 @@ function getCompletionEntryDetails<T>(
158155
if (args[6]?.__isAutoImport) {
159156
// @ts-expect-error
160157
const { fileName } = args[6].__isAutoImport;
161-
const sourceScript = language.scripts.get(asScriptId(fileName));
158+
const sourceScript = language.scripts.get(fileName);
162159
if (sourceScript?.generated?.root instanceof VueVirtualCode) {
163160
const sfc = sourceScript.generated.root.vueSfc;
164161
if (!sfc?.descriptor.script && !sfc?.descriptor.scriptSetup) {
@@ -190,12 +187,11 @@ function getCodeFixesAtPosition(
190187
};
191188
}
192189

193-
function getDefinitionAndBoundSpan<T>(
190+
function getDefinitionAndBoundSpan(
194191
ts: typeof import('typescript'),
195-
language: Language<T>,
192+
language: Language<string>,
196193
languageService: ts.LanguageService,
197194
vueOptions: VueCompilerOptions,
198-
asScriptId: (fileName: string) => T,
199195
getDefinitionAndBoundSpan: ts.LanguageService['getDefinitionAndBoundSpan'],
200196
): ts.LanguageService['getDefinitionAndBoundSpan'] {
201197
return (fileName, position) => {
@@ -205,7 +201,7 @@ function getDefinitionAndBoundSpan<T>(
205201
}
206202

207203
const program = languageService.getProgram()!;
208-
const sourceScript = language.scripts.get(asScriptId(fileName));
204+
const sourceScript = language.scripts.get(fileName);
209205
if (!sourceScript?.generated) {
210206
return result;
211207
}

packages/typescript-plugin/lib/requests/collectExtractProps.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ export function collectExtractProps(
66
fileName: string,
77
templateCodeRange: [number, number],
88
) {
9-
const { typescript: ts, languageService, language, isTsPlugin, asScriptId } = this;
9+
const { typescript: ts, languageService, language } = this;
1010

11-
const sourceScript = language.scripts.get(asScriptId(fileName));
11+
const sourceScript = language.scripts.get(fileName);
1212
if (!sourceScript?.generated) {
1313
return;
1414
}
@@ -41,7 +41,7 @@ export function collectExtractProps(
4141
for (const map of maps) {
4242
let mapped = false;
4343
for (
44-
const source of map.toSourceLocation(name.getEnd() - (isTsPlugin ? sourceScript.snapshot.getLength() : 0))
44+
const source of map.toSourceLocation(name.getEnd() - sourceScript.snapshot.getLength())
4545
) {
4646
if (
4747
source[0] >= sfc.template!.startTagEnd + templateCodeRange[0]

packages/typescript-plugin/lib/requests/getComponentDirectives.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ export function getComponentDirectives(
1515
this: RequestContext,
1616
fileName: string,
1717
) {
18-
const { typescript: ts, language, languageService, asScriptId } = this;
19-
const volarFile = language.scripts.get(asScriptId(fileName));
18+
const { typescript: ts, language, languageService } = this;
19+
const volarFile = language.scripts.get(fileName);
2020
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
2121
return;
2222
}

packages/typescript-plugin/lib/requests/getComponentEvents.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export function getComponentEvents(
77
fileName: string,
88
tag: string,
99
) {
10-
const { typescript: ts, language, languageService, asScriptId } = this;
11-
const volarFile = language.scripts.get(asScriptId(fileName));
10+
const { typescript: ts, language, languageService } = this;
11+
const volarFile = language.scripts.get(fileName);
1212
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
1313
return;
1414
}

packages/typescript-plugin/lib/requests/getComponentNames.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export function getComponentNames(
77
this: RequestContext,
88
fileName: string,
99
) {
10-
const { typescript: ts, language, languageService, asScriptId } = this;
11-
const volarFile = language.scripts.get(asScriptId(fileName));
10+
const { typescript: ts, language, languageService } = this;
11+
const volarFile = language.scripts.get(fileName);
1212
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
1313
return;
1414
}

packages/typescript-plugin/lib/requests/getComponentProps.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ export function getComponentProps(
1717
fileName: string,
1818
tag: string,
1919
) {
20-
const { typescript: ts, language, languageService, asScriptId } = this;
21-
const volarFile = language.scripts.get(asScriptId(fileName));
20+
const { typescript: ts, language, languageService } = this;
21+
const volarFile = language.scripts.get(fileName);
2222
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
2323
return;
2424
}

packages/typescript-plugin/lib/requests/getComponentSlots.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ export function getComponentSlots(
66
this: RequestContext,
77
fileName: string,
88
) {
9-
const { typescript: ts, language, languageService, asScriptId } = this;
10-
const volarFile = language.scripts.get(asScriptId(fileName));
9+
const { typescript: ts, language, languageService } = this;
10+
const volarFile = language.scripts.get(fileName);
1111
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
1212
return;
1313
}

packages/typescript-plugin/lib/requests/getElementAttrs.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export function getElementAttrs(
77
fileName: string,
88
tagName: string,
99
) {
10-
const { typescript: ts, language, languageService, asScriptId } = this;
11-
const volarFile = language.scripts.get(asScriptId(fileName));
10+
const { typescript: ts, language, languageService } = this;
11+
const volarFile = language.scripts.get(fileName);
1212
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
1313
return;
1414
}

packages/typescript-plugin/lib/requests/getElementNames.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ export function getElementNames(
77
this: RequestContext,
88
fileName: string,
99
) {
10-
const { typescript: ts, language, languageService, asScriptId } = this;
11-
const volarFile = language.scripts.get(asScriptId(fileName));
10+
const { typescript: ts, language, languageService } = this;
11+
const volarFile = language.scripts.get(fileName);
1212
if (!(volarFile?.generated?.root instanceof VueVirtualCode)) {
1313
return;
1414
}

0 commit comments

Comments
 (0)