@vue/typescript-plugin 2.0.10 → 2.0.11
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/index.js +1 -1
- package/lib/client.js +1 -1
- package/lib/server.d.ts +1 -1
- package/lib/server.js +7 -2
- package/lib/utils.d.ts +10 -1
- package/lib/utils.js +10 -4
- package/package.json +4 -4
package/index.js
CHANGED
|
@@ -42,7 +42,7 @@ function createLanguageServicePlugin() {
|
|
|
42
42
|
server_1.projects.set(info.project, { info, language, vueOptions });
|
|
43
43
|
(0, decorateLanguageService_1.decorateLanguageService)(language, info.languageService);
|
|
44
44
|
(0, common_1.decorateLanguageServiceForVue)(language, info.languageService, vueOptions, ts, true);
|
|
45
|
-
(0, decorateLanguageServiceHost_1.decorateLanguageServiceHost)(ts, language, info.languageServiceHost
|
|
45
|
+
(0, decorateLanguageServiceHost_1.decorateLanguageServiceHost)(ts, language, info.languageServiceHost);
|
|
46
46
|
(0, server_1.startNamedPipeServer)(ts, info.project.projectKind, info.project.getCurrentDirectory());
|
|
47
47
|
}
|
|
48
48
|
return info.languageService;
|
package/lib/client.js
CHANGED
|
@@ -67,7 +67,7 @@ function getElementAttrs(...args) {
|
|
|
67
67
|
}
|
|
68
68
|
exports.getElementAttrs = getElementAttrs;
|
|
69
69
|
async function sendRequest(request) {
|
|
70
|
-
const server = await (0, utils_1.searchNamedPipeServerForFile)(request.args[0]);
|
|
70
|
+
const server = (await (0, utils_1.searchNamedPipeServerForFile)(request.args[0]))?.server;
|
|
71
71
|
if (!server) {
|
|
72
72
|
console.warn('[Vue Named Pipe Client] No server found for', request.args[0]);
|
|
73
73
|
return;
|
package/lib/server.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type * as ts from 'typescript';
|
|
2
2
|
import type { Language, VueCompilerOptions } from '@vue/language-core';
|
|
3
3
|
export interface Request {
|
|
4
|
-
type: '
|
|
4
|
+
type: 'projectInfoForFile' | 'collectExtractProps' | 'getImportPathForFile' | 'getPropertiesAtLocation' | 'getQuickInfoAtPosition' | 'getComponentProps' | 'getComponentEvents' | 'getTemplateContextProps' | 'getComponentNames' | 'getElementAttrs';
|
|
5
5
|
args: [fileName: string, ...rest: any];
|
|
6
6
|
}
|
|
7
7
|
export declare function startNamedPipeServer(ts: typeof import('typescript'), serverKind: ts.server.ProjectKind, currentDirectory: string): void;
|
package/lib/server.js
CHANGED
|
@@ -24,8 +24,13 @@ function startNamedPipeServer(ts, serverKind, currentDirectory) {
|
|
|
24
24
|
const request = JSON.parse(text);
|
|
25
25
|
const fileName = request.args[0];
|
|
26
26
|
const project = getProject(fileName);
|
|
27
|
-
if (request.type === '
|
|
28
|
-
connection.write(JSON.stringify(
|
|
27
|
+
if (request.type === 'projectInfoForFile') {
|
|
28
|
+
connection.write(JSON.stringify(project
|
|
29
|
+
? {
|
|
30
|
+
name: project.info.project.getProjectName(),
|
|
31
|
+
kind: project.info.project.projectKind,
|
|
32
|
+
}
|
|
33
|
+
: undefined));
|
|
29
34
|
}
|
|
30
35
|
else if (project) {
|
|
31
36
|
const requestContext = {
|
package/lib/utils.d.ts
CHANGED
|
@@ -10,5 +10,14 @@ export interface NamedPipeServer {
|
|
|
10
10
|
export declare function readPipeTable(): NamedPipeServer[];
|
|
11
11
|
export declare function updatePipeTable(servers: NamedPipeServer[]): void;
|
|
12
12
|
export declare function connect(path: string): Promise<net.Socket | undefined>;
|
|
13
|
-
export declare function searchNamedPipeServerForFile(fileName: string): Promise<
|
|
13
|
+
export declare function searchNamedPipeServerForFile(fileName: string): Promise<{
|
|
14
|
+
server: NamedPipeServer;
|
|
15
|
+
projectInfo: {
|
|
16
|
+
name: string;
|
|
17
|
+
kind: ts.server.ProjectKind;
|
|
18
|
+
};
|
|
19
|
+
} | {
|
|
20
|
+
server: NamedPipeServer;
|
|
21
|
+
projectInfo: undefined;
|
|
22
|
+
} | undefined>;
|
|
14
23
|
export declare function sendRequestWorker<T>(request: Request, client: net.Socket): Promise<T | null | undefined>;
|
package/lib/utils.js
CHANGED
|
@@ -52,9 +52,12 @@ async function searchNamedPipeServerForFile(fileName) {
|
|
|
52
52
|
for (const server of configuredServers) {
|
|
53
53
|
const client = await connect(server.path);
|
|
54
54
|
if (client) {
|
|
55
|
-
const
|
|
56
|
-
if (
|
|
57
|
-
return
|
|
55
|
+
const projectInfo = await sendRequestWorker({ type: 'projectInfoForFile', args: [fileName] }, client);
|
|
56
|
+
if (projectInfo) {
|
|
57
|
+
return {
|
|
58
|
+
server,
|
|
59
|
+
projectInfo,
|
|
60
|
+
};
|
|
58
61
|
}
|
|
59
62
|
}
|
|
60
63
|
}
|
|
@@ -62,7 +65,10 @@ async function searchNamedPipeServerForFile(fileName) {
|
|
|
62
65
|
if (!path.relative(server.currentDirectory, fileName).startsWith('..')) {
|
|
63
66
|
const client = await connect(server.path);
|
|
64
67
|
if (client) {
|
|
65
|
-
return
|
|
68
|
+
return {
|
|
69
|
+
server,
|
|
70
|
+
projectInfo: undefined,
|
|
71
|
+
};
|
|
66
72
|
}
|
|
67
73
|
}
|
|
68
74
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vue/typescript-plugin",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.11",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"**/*.js",
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
"directory": "packages/typescript-plugin"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@volar/typescript": "~2.2.0-alpha.
|
|
16
|
-
"@vue/language-core": "2.0.
|
|
15
|
+
"@volar/typescript": "~2.2.0-alpha.6",
|
|
16
|
+
"@vue/language-core": "2.0.11",
|
|
17
17
|
"@vue/shared": "^3.4.0"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@types/node": "latest"
|
|
21
21
|
},
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "c89f25ffc32c760130adeeac796b9a5d20585bf7"
|
|
23
23
|
}
|