typescript-language-server 1.1.2 → 2.0.0

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.
Files changed (110) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/LICENSE +39 -0
  3. package/README.md +43 -2
  4. package/lib/cli.js +6 -6
  5. package/lib/cli.js.map +1 -1
  6. package/lib/completion.d.ts +1 -2
  7. package/lib/completion.d.ts.map +1 -1
  8. package/lib/completion.js +38 -19
  9. package/lib/completion.js.map +1 -1
  10. package/lib/configuration-manager.d.ts +3 -10
  11. package/lib/configuration-manager.d.ts.map +1 -1
  12. package/lib/configuration-manager.js +24 -4
  13. package/lib/configuration-manager.js.map +1 -1
  14. package/lib/diagnostic-queue.d.ts +1 -1
  15. package/lib/diagnostic-queue.d.ts.map +1 -1
  16. package/lib/features/inlay-hints.js +2 -2
  17. package/lib/features/inlay-hints.js.map +1 -1
  18. package/lib/lsp-connection.d.ts +5 -5
  19. package/lib/lsp-connection.d.ts.map +1 -1
  20. package/lib/lsp-connection.js +2 -3
  21. package/lib/lsp-connection.js.map +1 -1
  22. package/lib/lsp-server.d.ts +7 -10
  23. package/lib/lsp-server.d.ts.map +1 -1
  24. package/lib/lsp-server.js +61 -115
  25. package/lib/lsp-server.js.map +1 -1
  26. package/lib/lsp-server.spec.js +382 -81
  27. package/lib/lsp-server.spec.js.map +1 -1
  28. package/lib/refactor.d.ts +2 -1
  29. package/lib/refactor.d.ts.map +1 -1
  30. package/lib/refactor.js +17 -7
  31. package/lib/refactor.js.map +1 -1
  32. package/lib/test-utils.d.ts +18 -0
  33. package/lib/test-utils.d.ts.map +1 -1
  34. package/lib/test-utils.js +24 -12
  35. package/lib/test-utils.js.map +1 -1
  36. package/lib/ts-protocol.d.ts +30 -8
  37. package/lib/ts-protocol.d.ts.map +1 -1
  38. package/lib/ts-protocol.js +7 -1
  39. package/lib/ts-protocol.js.map +1 -1
  40. package/lib/tsServer/callbackMap.d.ts +17 -0
  41. package/lib/tsServer/callbackMap.d.ts.map +1 -0
  42. package/lib/tsServer/callbackMap.js +47 -0
  43. package/lib/tsServer/callbackMap.js.map +1 -0
  44. package/lib/tsServer/cancellation.d.ts +22 -0
  45. package/lib/tsServer/cancellation.d.ts.map +1 -0
  46. package/lib/tsServer/cancellation.js +51 -0
  47. package/lib/tsServer/cancellation.js.map +1 -0
  48. package/lib/tsServer/logDirectoryProvider.d.ts +13 -0
  49. package/lib/tsServer/logDirectoryProvider.d.ts.map +1 -0
  50. package/lib/tsServer/logDirectoryProvider.js +49 -0
  51. package/lib/tsServer/logDirectoryProvider.js.map +1 -0
  52. package/lib/tsServer/requestQueue.d.ts +34 -0
  53. package/lib/tsServer/requestQueue.d.ts.map +1 -0
  54. package/lib/tsServer/requestQueue.js +74 -0
  55. package/lib/tsServer/requestQueue.js.map +1 -0
  56. package/lib/tsServer/requests.d.ts +68 -0
  57. package/lib/tsServer/requests.d.ts.map +1 -0
  58. package/lib/tsServer/requests.js +28 -0
  59. package/lib/tsServer/requests.js.map +1 -0
  60. package/lib/tsServer/server.d.ts +95 -0
  61. package/lib/tsServer/server.d.ts.map +1 -0
  62. package/lib/tsServer/server.js +209 -0
  63. package/lib/tsServer/server.js.map +1 -0
  64. package/lib/tsServer/serverError.d.ts +18 -0
  65. package/lib/tsServer/serverError.d.ts.map +1 -0
  66. package/lib/tsServer/serverError.js +53 -0
  67. package/lib/tsServer/serverError.js.map +1 -0
  68. package/lib/tsServer/serverProcess.d.ts +7 -0
  69. package/lib/tsServer/serverProcess.d.ts.map +1 -0
  70. package/lib/tsServer/serverProcess.js +238 -0
  71. package/lib/tsServer/serverProcess.js.map +1 -0
  72. package/lib/tsServer/spawner.d.ts +19 -0
  73. package/lib/tsServer/spawner.d.ts.map +1 -0
  74. package/lib/tsServer/spawner.js +130 -0
  75. package/lib/tsServer/spawner.js.map +1 -0
  76. package/lib/tsServer/tracer.d.ts +26 -0
  77. package/lib/tsServer/tracer.d.ts.map +1 -0
  78. package/lib/tsServer/tracer.js +80 -0
  79. package/lib/tsServer/tracer.js.map +1 -0
  80. package/lib/{utils → tsServer}/versionProvider.d.ts +8 -8
  81. package/lib/tsServer/versionProvider.d.ts.map +1 -0
  82. package/lib/{utils → tsServer}/versionProvider.js +28 -22
  83. package/lib/tsServer/versionProvider.js.map +1 -0
  84. package/lib/tsp-client.d.ts +25 -55
  85. package/lib/tsp-client.d.ts.map +1 -1
  86. package/lib/tsp-client.js +186 -140
  87. package/lib/tsp-client.js.map +1 -1
  88. package/lib/tsp-client.spec.js +23 -8
  89. package/lib/tsp-client.spec.js.map +1 -1
  90. package/lib/utils/api.d.ts +1 -0
  91. package/lib/utils/api.d.ts.map +1 -1
  92. package/lib/utils/api.js +1 -0
  93. package/lib/utils/api.js.map +1 -1
  94. package/lib/utils/configuration.d.ts +17 -8
  95. package/lib/utils/configuration.d.ts.map +1 -1
  96. package/lib/utils/configuration.js +43 -1
  97. package/lib/utils/configuration.js.map +1 -1
  98. package/lib/utils/logger.d.ts +65 -0
  99. package/lib/utils/logger.d.ts.map +1 -0
  100. package/lib/utils/logger.js +189 -0
  101. package/lib/utils/logger.js.map +1 -0
  102. package/lib/utils/modules-resolver.spec.js +1 -1
  103. package/lib/utils/modules-resolver.spec.js.map +1 -1
  104. package/package.json +12 -12
  105. package/lib/logger.d.ts +0 -48
  106. package/lib/logger.d.ts.map +0 -1
  107. package/lib/logger.js +0 -106
  108. package/lib/logger.js.map +0 -1
  109. package/lib/utils/versionProvider.d.ts.map +0 -1
  110. package/lib/utils/versionProvider.js.map +0 -1
@@ -0,0 +1,65 @@
1
+ import lsp from 'vscode-languageserver';
2
+ import type { LspClient } from '../lsp-client.js';
3
+ export declare enum LogLevel {
4
+ Error = 0,
5
+ Warning = 1,
6
+ Info = 2,
7
+ Log = 3
8
+ }
9
+ export declare namespace LogLevel {
10
+ function fromString(value?: string): LogLevel;
11
+ function toString(level: LogLevel): string;
12
+ }
13
+ declare type TraceLevel = 'Trace' | 'Info' | 'Error';
14
+ export interface Logger {
15
+ error(...args: any[]): void;
16
+ warn(...args: any[]): void;
17
+ info(...args: any[]): void;
18
+ log(...args: any[]): void;
19
+ /**
20
+ * Logs the arguments regardless of the verbosity level set for the logger.
21
+ */
22
+ logIgnoringVerbosity(level: LogLevel, ...args: any[]): void;
23
+ /**
24
+ * Logs the arguments regardless of the verbosity level in a trace-specific format.
25
+ */
26
+ trace(level: TraceLevel, message: string, data?: any): void;
27
+ }
28
+ export declare class LspClientLogger implements Logger {
29
+ private client;
30
+ private level;
31
+ constructor(client: LspClient, level: lsp.MessageType);
32
+ private sendMessage;
33
+ private logLevelToLspMessageType;
34
+ error(...args: any[]): void;
35
+ warn(...args: any[]): void;
36
+ info(...args: any[]): void;
37
+ log(...args: any[]): void;
38
+ logIgnoringVerbosity(level: LogLevel, ...args: any[]): void;
39
+ trace(level: TraceLevel, message: string, data?: any): void;
40
+ }
41
+ export declare class ConsoleLogger implements Logger {
42
+ private level;
43
+ constructor(level?: LogLevel);
44
+ private print;
45
+ private toStrings;
46
+ error(...args: any[]): void;
47
+ warn(...args: any[]): void;
48
+ info(...args: any[]): void;
49
+ log(...args: any[]): void;
50
+ logIgnoringVerbosity(level: LogLevel, ...args: any[]): void;
51
+ trace(level: TraceLevel, message: string, data?: any): void;
52
+ }
53
+ export declare class PrefixingLogger implements Logger {
54
+ private logger;
55
+ private prefix;
56
+ constructor(logger: Logger, prefix: string);
57
+ error(...args: any[]): void;
58
+ warn(...args: any[]): void;
59
+ info(...args: any[]): void;
60
+ log(...args: any[]): void;
61
+ logIgnoringVerbosity(level: LogLevel, ...args: any[]): void;
62
+ trace(level: TraceLevel, message: string, data?: any): void;
63
+ }
64
+ export {};
65
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,189 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /*
6
+ * Copyright (C) 2017, 2018 TypeFox and others.
7
+ *
8
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
10
+ */
11
+ /* eslint-disable @typescript-eslint/no-unnecessary-qualifier */
12
+ import lsp from 'vscode-languageserver';
13
+ export var LogLevel;
14
+ (function (LogLevel) {
15
+ LogLevel[LogLevel["Error"] = 0] = "Error";
16
+ LogLevel[LogLevel["Warning"] = 1] = "Warning";
17
+ LogLevel[LogLevel["Info"] = 2] = "Info";
18
+ LogLevel[LogLevel["Log"] = 3] = "Log";
19
+ })(LogLevel = LogLevel || (LogLevel = {}));
20
+ (function (LogLevel) {
21
+ function fromString(value) {
22
+ switch (value?.toLowerCase()) {
23
+ case 'log':
24
+ return LogLevel.Log;
25
+ case 'info':
26
+ return LogLevel.Info;
27
+ case 'warning':
28
+ return LogLevel.Warning;
29
+ case 'error':
30
+ default:
31
+ return LogLevel.Error;
32
+ }
33
+ }
34
+ LogLevel.fromString = fromString;
35
+ function toString(level) {
36
+ switch (level) {
37
+ case LogLevel.Error:
38
+ return 'error';
39
+ case LogLevel.Warning:
40
+ return 'warning';
41
+ case LogLevel.Info:
42
+ return 'info';
43
+ case LogLevel.Log:
44
+ return 'log';
45
+ }
46
+ }
47
+ LogLevel.toString = toString;
48
+ })(LogLevel = LogLevel || (LogLevel = {}));
49
+ export class LspClientLogger {
50
+ constructor(client, level) {
51
+ this.client = client;
52
+ this.level = level;
53
+ }
54
+ sendMessage(severity, messageObjects, options) {
55
+ if (this.level >= severity || options?.overrideLevel) {
56
+ const message = messageObjects.map(p => {
57
+ if (typeof p === 'object') {
58
+ return JSON.stringify(p, null, 2);
59
+ }
60
+ else {
61
+ return p;
62
+ }
63
+ }).join(' ');
64
+ this.client.logMessage({
65
+ type: severity,
66
+ message: message,
67
+ });
68
+ }
69
+ }
70
+ logLevelToLspMessageType(level) {
71
+ switch (level) {
72
+ case LogLevel.Log:
73
+ return lsp.MessageType.Log;
74
+ case LogLevel.Info:
75
+ return lsp.MessageType.Info;
76
+ case LogLevel.Warning:
77
+ return lsp.MessageType.Warning;
78
+ case LogLevel.Error:
79
+ return lsp.MessageType.Error;
80
+ }
81
+ }
82
+ error(...args) {
83
+ this.sendMessage(lsp.MessageType.Error, args);
84
+ }
85
+ warn(...args) {
86
+ this.sendMessage(lsp.MessageType.Warning, args);
87
+ }
88
+ info(...args) {
89
+ this.sendMessage(lsp.MessageType.Info, args);
90
+ }
91
+ log(...args) {
92
+ this.sendMessage(lsp.MessageType.Log, args);
93
+ }
94
+ logIgnoringVerbosity(level, ...args) {
95
+ this.sendMessage(this.logLevelToLspMessageType(level), args, { overrideLevel: true });
96
+ }
97
+ trace(level, message, data) {
98
+ this.logIgnoringVerbosity(LogLevel.Log, `[${level} - ${now()}] ${message}`);
99
+ if (data) {
100
+ this.logIgnoringVerbosity(LogLevel.Log, data2String(data));
101
+ }
102
+ }
103
+ }
104
+ export class ConsoleLogger {
105
+ constructor(level = LogLevel.Error) {
106
+ this.level = level;
107
+ }
108
+ print(level, args, options) {
109
+ if (this.level >= level || options?.overrideLevel) {
110
+ // All messages logged to stderr as stdout is reserved for LSP communication.
111
+ console.error(`[${LogLevel.toString(level)}]`, ...this.toStrings(...args));
112
+ }
113
+ }
114
+ toStrings(...args) {
115
+ return args.map(a => {
116
+ if (typeof a === 'string') {
117
+ return a;
118
+ }
119
+ return JSON.stringify(a, null, 2);
120
+ });
121
+ }
122
+ error(...args) {
123
+ this.print(LogLevel.Error, args);
124
+ }
125
+ warn(...args) {
126
+ this.print(LogLevel.Warning, args);
127
+ }
128
+ info(...args) {
129
+ this.print(LogLevel.Info, args);
130
+ }
131
+ log(...args) {
132
+ this.print(LogLevel.Log, args);
133
+ }
134
+ logIgnoringVerbosity(level, ...args) {
135
+ this.print(level, args, { overrideLevel: true });
136
+ }
137
+ trace(level, message, data) {
138
+ this.logIgnoringVerbosity(LogLevel.Log, `[${level} - ${now()}] ${message}`);
139
+ if (data) {
140
+ this.logIgnoringVerbosity(LogLevel.Log, data2String(data));
141
+ }
142
+ }
143
+ }
144
+ export class PrefixingLogger {
145
+ constructor(logger, prefix) {
146
+ this.logger = logger;
147
+ this.prefix = prefix;
148
+ }
149
+ error(...args) {
150
+ this.logger.error(this.prefix, ...args);
151
+ }
152
+ warn(...args) {
153
+ this.logger.warn(this.prefix, ...args);
154
+ }
155
+ info(...args) {
156
+ this.logger.info(this.prefix, ...args);
157
+ }
158
+ log(...args) {
159
+ this.logger.log(this.prefix, ...args);
160
+ }
161
+ logIgnoringVerbosity(level, ...args) {
162
+ this.logger.logIgnoringVerbosity(level, this.prefix, ...args);
163
+ }
164
+ trace(level, message, data) {
165
+ this.logIgnoringVerbosity(LogLevel.Log, this.prefix, `[${level} - ${now()}] ${message}`);
166
+ if (data) {
167
+ this.logIgnoringVerbosity(LogLevel.Log, this.prefix, data2String(data));
168
+ }
169
+ }
170
+ }
171
+ function now() {
172
+ const now = new Date();
173
+ return padLeft(`${now.getUTCHours()}`, 2, '0')
174
+ + ':' + padLeft(`${now.getMinutes()}`, 2, '0')
175
+ + ':' + padLeft(`${now.getUTCSeconds()}`, 2, '0') + `.${now.getMilliseconds()}`;
176
+ }
177
+ function padLeft(s, n, pad = ' ') {
178
+ return pad.repeat(Math.max(0, n - s.length)) + s;
179
+ }
180
+ function data2String(data) {
181
+ if (data instanceof Error) {
182
+ return data.stack || data.message;
183
+ }
184
+ if (data.success === false && data.message) {
185
+ return data.message;
186
+ }
187
+ return data.toString();
188
+ }
189
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@ import * as chai from 'chai';
2
2
  import { dirname, resolve } from 'node:path';
3
3
  import { fileURLToPath } from 'node:url';
4
4
  import { findPathToModule } from './modules-resolver.js';
5
- import { MODULE_FOLDERS } from './versionProvider.js';
6
5
  import { PACKAGE_ROOT } from '../test-utils.js';
6
+ import { MODULE_FOLDERS } from '../tsServer/versionProvider.js';
7
7
  export const CURDIR = dirname(fileURLToPath(import.meta.url));
8
8
  describe('findPathToModule', () => {
9
9
  it('resolves tsserver in own directory', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"modules-resolver.spec.js","sourceRoot":"","sources":["../../src/utils/modules-resolver.spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE9D,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC1C,MAAM,YAAY,GAAG,gBAAgB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"modules-resolver.spec.js","sourceRoot":"","sources":["../../src/utils/modules-resolver.spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE9D,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC1C,MAAM,YAAY,GAAG,gBAAgB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typescript-language-server",
3
- "version": "1.1.2",
3
+ "version": "2.0.0",
4
4
  "description": "Language Server Protocol (LSP) implementation for TypeScript using tsserver",
5
5
  "author": "TypeFox and others",
6
6
  "license": "Apache-2.0",
@@ -20,9 +20,9 @@
20
20
  },
21
21
  "scripts": {
22
22
  "clean": "rimraf lib *.tsbuildinfo",
23
- "test": "cross-env CONSOLE_LOG_LEVEL=warn TS_NODE_PROJECT=./tsconfig.json mocha",
24
- "test:watch": "cross-env CONSOLE_LOG_LEVEL=warn TS_NODE_PROJECT=./tsconfig.json mocha --watch",
25
- "test:compiled": "cross-env CONSOLE_LOG_LEVEL=warn mocha \"./lib/**/*.spec.js\"",
23
+ "test": "cross-env CONSOLE_LOG_LEVEL=warning TS_NODE_PROJECT=./tsconfig.json mocha",
24
+ "test:watch": "cross-env CONSOLE_LOG_LEVEL=warning TS_NODE_PROJECT=./tsconfig.json mocha --watch",
25
+ "test:compiled": "cross-env CONSOLE_LOG_LEVEL=warning mocha \"./lib/**/*.spec.js\"",
26
26
  "lint": "eslint --ext \".js,.ts\" src",
27
27
  "fix": "eslint --ext \".js,.ts\" --fix src",
28
28
  "build": "concurrently -n compile,lint -c blue,green \"yarn compile\" \"yarn lint\"",
@@ -50,8 +50,8 @@
50
50
  "tempy": "^3.0.0",
51
51
  "vscode-languageserver": "^8.0.2",
52
52
  "vscode-languageserver-protocol": "^3.17.2",
53
- "vscode-languageserver-textdocument": "1.0.5",
54
- "vscode-uri": "^3.0.3",
53
+ "vscode-languageserver-textdocument": "1.0.7",
54
+ "vscode-uri": "^3.0.6",
55
55
  "which": "^2.0.2"
56
56
  },
57
57
  "devDependencies": {
@@ -59,20 +59,20 @@
59
59
  "@types/deepmerge": "^2.2.0",
60
60
  "@types/fs-extra": "^9.0.13",
61
61
  "@types/mocha": "^9.1.1",
62
- "@types/node": "^16.11.52",
62
+ "@types/node": "^16.11.62",
63
63
  "@types/semver": "^7.3.12",
64
64
  "@types/which": "^2.0.1",
65
- "@typescript-eslint/eslint-plugin": "^5.33.1",
66
- "@typescript-eslint/parser": "^5.33.1",
65
+ "@typescript-eslint/eslint-plugin": "^5.38.1",
66
+ "@typescript-eslint/parser": "^5.38.1",
67
67
  "chai": "^4.3.6",
68
- "concurrently": "^7.3.0",
68
+ "concurrently": "^7.4.0",
69
69
  "cross-env": "^7.0.3",
70
- "eslint": "^8.22.0",
70
+ "eslint": "^8.24.0",
71
71
  "husky": "4.x",
72
72
  "mocha": "^10.0.0",
73
73
  "rimraf": "^3.0.2",
74
74
  "source-map-support": "^0.5.21",
75
75
  "ts-node": "^10.9.1",
76
- "typescript": "^4.7.4"
76
+ "typescript": "^4.8.4"
77
77
  }
78
78
  }
package/lib/logger.d.ts DELETED
@@ -1,48 +0,0 @@
1
- import { LspClient } from './lsp-client.js';
2
- import * as lsp from 'vscode-languageserver';
3
- /**
4
- * the logger type
5
- */
6
- export interface Logger {
7
- error(...arg: any[]): void;
8
- warn(...arg: any[]): void;
9
- info(...arg: any[]): void;
10
- log(...arg: any[]): void;
11
- }
12
- export declare class LspClientLogger implements Logger {
13
- protected client: LspClient;
14
- protected level: lsp.MessageType;
15
- constructor(client: LspClient, level: lsp.MessageType);
16
- protected sendMessage(severity: lsp.MessageType, messageObjects: any[]): void;
17
- error(...arg: any[]): void;
18
- warn(...arg: any[]): void;
19
- info(...arg: any[]): void;
20
- log(...arg: any[]): void;
21
- }
22
- export declare enum ConsoleLogLevel {
23
- error = "error",
24
- warn = "warn",
25
- info = "warn",
26
- verbose = "verbose"
27
- }
28
- export declare class ConsoleLogger implements Logger {
29
- private level;
30
- constructor(level?: lsp.MessageType);
31
- static toMessageTypeLevel(type?: string): lsp.MessageType;
32
- private print;
33
- private toStrings;
34
- error(...arg: any[]): void;
35
- warn(...arg: any[]): void;
36
- info(...arg: any[]): void;
37
- log(...arg: any[]): void;
38
- }
39
- export declare class PrefixingLogger implements Logger {
40
- private logger;
41
- private prefix;
42
- constructor(logger: Logger, prefix: string);
43
- error(...arg: any[]): void;
44
- warn(...arg: any[]): void;
45
- info(...arg: any[]): void;
46
- log(...arg: any[]): void;
47
- }
48
- //# sourceMappingURL=logger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,GAAG,MAAM,uBAAuB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,MAAM;IACnB,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC1B,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC5B;AAED,qBAAa,eAAgB,YAAW,MAAM;IAC9B,SAAS,CAAC,MAAM,EAAE,SAAS;IAAE,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW;gBAAnD,MAAM,EAAE,SAAS,EAAY,KAAK,EAAE,GAAG,CAAC,WAAW;IAEzE,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI;IAiB7E,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;CAG3B;AAED,oBAAY,eAAe;IACvB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,OAAO,YAAY;CACtB;AAED,qBAAa,aAAc,YAAW,MAAM;IAC5B,OAAO,CAAC,KAAK;gBAAL,KAAK,GAAE,GAAG,CAAC,WAAkC;IAEjE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,WAAW;IAczD,OAAO,CAAC,KAAK;IAOb,OAAO,CAAC,SAAS;IAIjB,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAG1B,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAGzB,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAGzB,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;CAG3B;AAED,qBAAa,eAAgB,YAAW,MAAM;IAC9B,OAAO,CAAC,MAAM;IAAU,OAAO,CAAC,MAAM;gBAA9B,MAAM,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM;IAE1D,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;CAG3B"}
package/lib/logger.js DELETED
@@ -1,106 +0,0 @@
1
- /*
2
- * Copyright (C) 2017, 2018 TypeFox and others.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
6
- */
7
- import * as lsp from 'vscode-languageserver';
8
- export class LspClientLogger {
9
- constructor(client, level) {
10
- this.client = client;
11
- this.level = level;
12
- }
13
- sendMessage(severity, messageObjects) {
14
- if (this.level >= severity) {
15
- const message = messageObjects.map(p => {
16
- if (typeof p === 'object') {
17
- return JSON.stringify(p, null, 2);
18
- }
19
- else {
20
- return p;
21
- }
22
- }).join(' ');
23
- this.client.logMessage({
24
- type: severity,
25
- message: message,
26
- });
27
- }
28
- }
29
- error(...arg) {
30
- this.sendMessage(lsp.MessageType.Error, arg);
31
- }
32
- warn(...arg) {
33
- this.sendMessage(lsp.MessageType.Warning, arg);
34
- }
35
- info(...arg) {
36
- this.sendMessage(lsp.MessageType.Info, arg);
37
- }
38
- log(...arg) {
39
- this.sendMessage(lsp.MessageType.Log, arg);
40
- }
41
- }
42
- export var ConsoleLogLevel;
43
- (function (ConsoleLogLevel) {
44
- ConsoleLogLevel["error"] = "error";
45
- ConsoleLogLevel["warn"] = "warn";
46
- ConsoleLogLevel["info"] = "warn";
47
- ConsoleLogLevel["verbose"] = "verbose";
48
- })(ConsoleLogLevel = ConsoleLogLevel || (ConsoleLogLevel = {}));
49
- export class ConsoleLogger {
50
- constructor(level = lsp.MessageType.Info) {
51
- this.level = level;
52
- }
53
- static toMessageTypeLevel(type) {
54
- switch (type) {
55
- case 'error':
56
- return lsp.MessageType.Error;
57
- case 'warn':
58
- return lsp.MessageType.Warning;
59
- case 'log':
60
- return lsp.MessageType.Log;
61
- case 'info':
62
- default:
63
- return lsp.MessageType.Info;
64
- }
65
- }
66
- print(type, level, ...arg) {
67
- if (this.level >= level) {
68
- // eslint-disable-next-line no-console
69
- console[type](...this.toStrings(arg));
70
- }
71
- }
72
- toStrings(...arg) {
73
- return arg.map(a => JSON.stringify(a, null, 2));
74
- }
75
- error(...arg) {
76
- this.print('error', lsp.MessageType.Error, arg);
77
- }
78
- warn(...arg) {
79
- this.print('error', lsp.MessageType.Warning, arg);
80
- }
81
- info(...arg) {
82
- this.print('error', lsp.MessageType.Info, arg);
83
- }
84
- log(...arg) {
85
- this.print('error', lsp.MessageType.Log, arg);
86
- }
87
- }
88
- export class PrefixingLogger {
89
- constructor(logger, prefix) {
90
- this.logger = logger;
91
- this.prefix = prefix;
92
- }
93
- error(...arg) {
94
- this.logger.error(this.prefix, ...arg);
95
- }
96
- warn(...arg) {
97
- this.logger.warn(this.prefix, ...arg);
98
- }
99
- info(...arg) {
100
- this.logger.info(this.prefix, ...arg);
101
- }
102
- log(...arg) {
103
- this.logger.log(this.prefix, ...arg);
104
- }
105
- }
106
- //# sourceMappingURL=logger.js.map
package/lib/logger.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,GAAG,MAAM,uBAAuB,CAAC;AAY7C,MAAM,OAAO,eAAe;IACxB,YAAsB,MAAiB,EAAY,KAAsB;QAAnD,WAAM,GAAN,MAAM,CAAW;QAAY,UAAK,GAAL,KAAK,CAAiB;IAAI,CAAC;IAEpE,WAAW,CAAC,QAAyB,EAAE,cAAqB;QAClE,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,EAAE;YACxB,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACnC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;oBACvB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;iBACrC;qBAAM;oBACH,OAAO,CAAC,CAAC;iBACZ;YACL,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEb,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,OAAO;aACnB,CAAC,CAAC;SACN;IACL,CAAC;IAED,KAAK,CAAC,GAAG,GAAU;QACf,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,GAAG,GAAU;QACb,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,kCAAe,CAAA;IACf,gCAAa,CAAA;IACb,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACvB,CAAC,EALW,eAAe,GAAf,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,OAAO,aAAa;IACtB,YAAoB,QAAyB,GAAG,CAAC,WAAW,CAAC,IAAI;QAA7C,UAAK,GAAL,KAAK,CAAwC;IAAG,CAAC;IAErE,MAAM,CAAC,kBAAkB,CAAC,IAAa;QACnC,QAAQ,IAAI,EAAE;YACV,KAAK,OAAO;gBACR,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC;YACjC,KAAK,MAAM;gBACP,OAAO,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC;YACnC,KAAK,KAAK;gBACN,OAAO,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC;YAC/B,KAAK,MAAM,CAAC;YACZ;gBACI,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;SACnC;IACL,CAAC;IAEO,KAAK,CAAC,IAAkB,EAAE,KAAsB,EAAE,GAAG,GAAU;QACnE,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE;YACrB,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;SACzC;IACL,CAAC;IAEO,SAAS,CAAC,GAAG,GAAU;QAC3B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,GAAG,GAAU;QACf,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IACD,GAAG,CAAC,GAAG,GAAU;QACb,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;CACJ;AAED,MAAM,OAAO,eAAe;IACxB,YAAoB,MAAc,EAAU,MAAc;QAAtC,WAAM,GAAN,MAAM,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAQ;IAAI,CAAC;IAE/D,KAAK,CAAC,GAAG,GAAU;QACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,GAAG,GAAU;QACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,GAAG,CAAC,GAAG,GAAU;QACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IACzC,CAAC;CACJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"versionProvider.d.ts","sourceRoot":"","sources":["../../src/utils/versionProvider.ts"],"names":[],"mappings":"AASA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,0BAAkB,uBAAuB;IACrC,OAAO,YAAY;IACnB,WAAW,iBAAiB;IAC5B,SAAS,cAAc;CAC1B;AAED,qBAAa,iBAAiB;aAGN,MAAM,EAAE,uBAAuB;aAC/B,IAAI,EAAE,MAAM;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAL5B,OAAO,CAAC,IAAI,CAAyB;gBAEjB,MAAM,EAAE,uBAAuB,EAC/B,IAAI,EAAE,MAAM,EACX,UAAU,CAAC,oBAAQ,EACnB,MAAM,CAAC,oBAAQ;IAKpC,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,IAAI,GAAG,GAAG,IAAI,CAM/B;IAED,IAAW,aAAa,IAAI,MAAM,GAAG,IAAI,CAGxC;IAED,OAAO,CAAC,oBAAoB;CA0C/B;AAED,eAAO,MAAM,cAAc,UAAgG,CAAC;AAE5H,qBAAa,yBAAyB;IACf,OAAO,CAAC,aAAa,CAAC;IAAkB,OAAO,CAAC,MAAM,CAAC;gBAA/C,aAAa,CAAC,4BAAgB,EAAU,MAAM,CAAC,oBAAQ;IAE3E,qBAAqB,IAAI,iBAAiB,GAAG,IAAI;IA8CjD,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,iBAAiB,GAAG,IAAI;IAazE,cAAc,IAAI,iBAAiB,GAAG,IAAI;CAcpD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"versionProvider.js","sourceRoot":"","sources":["../../src/utils/versionProvider.ts"],"names":[],"mappings":"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"}