[css/json/html] adopt latest lsp, update to `module: node16` (#230371)

* adopt latest language-server/client

* update package-locks

* transpiler to support Node16
This commit is contained in:
Martin Aeschlimann 2024-10-03 13:49:56 +02:00 committed by GitHub
parent 52b181c2ce
commit fc6d94b806
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
35 changed files with 164 additions and 137 deletions

View File

@ -263,7 +263,7 @@ class SwcTranspiler {
options = SwcTranspiler._swcrcAmd;
}
}
else if (this._cmdLine.options.module === ts.ModuleKind.CommonJS) {
else if (this._cmdLine.options.module === ts.ModuleKind.CommonJS || this._cmdLine.options.module === ts.ModuleKind.Node16) {
options = SwcTranspiler._swcrcCommonJS;
}
this._jobs.push(swc.transform(tsSrc, options).then(output => {

View File

@ -337,7 +337,7 @@ export class SwcTranspiler implements ITranspiler {
if (isAmd) {
options = SwcTranspiler._swcrcAmd;
}
} else if (this._cmdLine.options.module === ts.ModuleKind.CommonJS) {
} else if (this._cmdLine.options.module === ts.ModuleKind.CommonJS || this._cmdLine.options.module === ts.ModuleKind.Node16) {
options = SwcTranspiler._swcrcCommonJS;
}

View File

@ -4,7 +4,8 @@
"outDir": "./out",
"lib": [
"webworker"
]
],
"module": "Node16",
},
"include": [
"src/**/*",

View File

@ -9,7 +9,7 @@
"version": "1.0.0",
"license": "MIT",
"dependencies": {
"vscode-languageclient": "10.0.0-next.8",
"vscode-languageclient": "^10.0.0-next.13",
"vscode-uri": "^3.0.8"
},
"devDependencies": {
@ -87,39 +87,39 @@
"dev": true
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageclient": {
"version": "10.0.0-next.8",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.8.tgz",
"integrity": "sha512-D9inIHgqKayO9Tv0MeLb3XIL76yTuWmKdHqcGZKzjtQrMGJgASJDYWTapu+yAjEpDp0gmVOaCYyIlLB86ncDoQ==",
"version": "10.0.0-next.13",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.13.tgz",
"integrity": "sha512-KLsOMJoYpkk36PIgcOjyZ4AekOfzp4kdWdRRbVKeVvSIrwrn/4RSZr0NlD6EvUBBJSsJW4WDrYY7Y3znkqa6+w==",
"dependencies": {
"minimatch": "^9.0.3",
"semver": "^7.6.0",
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"engines": {
"vscode": "^1.89.0"
"vscode": "^1.91.0"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/vscode-uri": {
"version": "3.0.8",

View File

@ -997,7 +997,7 @@
]
},
"dependencies": {
"vscode-languageclient": "10.0.0-next.8",
"vscode-languageclient": "^10.0.0-next.13",
"vscode-uri": "^3.0.8"
},
"devDependencies": {

View File

@ -11,7 +11,7 @@
"dependencies": {
"@vscode/l10n": "^0.0.18",
"vscode-css-languageservice": "^6.3.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-uri": "^3.0.8"
},
"devDependencies": {
@ -60,37 +60,37 @@
}
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageserver": {
"version": "10.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.6.tgz",
"integrity": "sha512-0Lh1nhQfSxo5Ob+ayYO1QTIsDix2/Lc72Urm1KZrCFxK5zIFYaEh3QFeM9oZih4Rzs0ZkQPXXnoHtpvs5GT+Zw==",
"version": "10.0.0-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.11.tgz",
"integrity": "sha512-cmobSrVDYhlh/t02vz/bV8nNpds8mus5HnILULae2iAvOjoaJPnTAp0jJWoYdUqTpIVzT9JV6JMKqLEvdqpeqg==",
"dependencies": {
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"bin": {
"installServerIntoExtension": "bin/installServerIntoExtension"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-protocol/node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/vscode-languageserver-textdocument": {
"version": "1.0.12",

View File

@ -12,7 +12,7 @@
"dependencies": {
"@vscode/l10n": "^0.0.18",
"vscode-css-languageservice": "^6.3.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-uri": "^3.0.8"
},
"devDependencies": {

View File

@ -22,7 +22,7 @@ const messageHandler = async (e: any) => {
} else {
l10nLog.push(`l10n: No bundle configured.`);
}
await import('./cssServerMain');
await import('./cssServerMain.js');
if (self.onmessage !== messageHandler) {
pendingMessages.forEach(msg => self.onmessage?.(msg));
pendingMessages.length = 0;

View File

@ -15,7 +15,7 @@ async function setupMain() {
l10nLog.push(`l10n: Problems loading ${i10lLocation.toString()} : ${e}`);
}
}
await import('./cssServerMain');
await import('./cssServerMain.js');
l10nLog.forEach(console.log);
}
setupMain();

View File

@ -5,7 +5,8 @@
"lib": [
"ES2020",
"WebWorker"
]
],
"module": "Node16",
},
"include": [
"src/**/*"

View File

@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { DocumentSelector } from 'vscode-languageclient';
import { Event, EventEmitter, extensions } from 'vscode';
/**
@ -22,7 +21,7 @@ interface LanguageParticipantContribution {
export interface LanguageParticipants {
readonly onDidChange: Event<void>;
readonly documentSelector: DocumentSelector;
readonly documentSelector: string[];
hasLanguage(languageId: string): boolean;
useAutoInsert(languageId: string): boolean;
dispose(): void;

View File

@ -4,7 +4,8 @@
"outDir": "./out",
"lib": [
"webworker"
]
],
"module": "Node16",
},
"include": [
"src/**/*",

View File

@ -10,7 +10,7 @@
"license": "MIT",
"dependencies": {
"@vscode/extension-telemetry": "^0.9.0",
"vscode-languageclient": "10.0.0-next.8",
"vscode-languageclient": "^10.0.0-next.13",
"vscode-uri": "^3.0.8"
},
"devDependencies": {
@ -215,39 +215,39 @@
"dev": true
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageclient": {
"version": "10.0.0-next.8",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.8.tgz",
"integrity": "sha512-D9inIHgqKayO9Tv0MeLb3XIL76yTuWmKdHqcGZKzjtQrMGJgASJDYWTapu+yAjEpDp0gmVOaCYyIlLB86ncDoQ==",
"version": "10.0.0-next.13",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.13.tgz",
"integrity": "sha512-KLsOMJoYpkk36PIgcOjyZ4AekOfzp4kdWdRRbVKeVvSIrwrn/4RSZr0NlD6EvUBBJSsJW4WDrYY7Y3znkqa6+w==",
"dependencies": {
"minimatch": "^9.0.3",
"semver": "^7.6.0",
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"engines": {
"vscode": "^1.89.0"
"vscode": "^1.91.0"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/vscode-uri": {
"version": "3.0.8",

View File

@ -259,7 +259,7 @@
},
"dependencies": {
"@vscode/extension-telemetry": "^0.9.0",
"vscode-languageclient": "10.0.0-next.8",
"vscode-languageclient": "^10.0.0-next.13",
"vscode-uri": "^3.0.8"
},
"devDependencies": {

View File

@ -15,6 +15,12 @@ const serverConfig = withBrowserDefaults({
entry: {
extension: './src/browser/htmlServerWorkerMain.ts',
},
resolve: {
extensionAlias: {
// this is needed to resolve dynamic imports that now require the .js extension
'.js': ['.js', '.ts'],
},
},
output: {
filename: 'htmlServerMain.js',
path: path.join(__dirname, 'dist', 'browser'),

View File

@ -12,7 +12,7 @@
"@vscode/l10n": "^0.0.18",
"vscode-css-languageservice": "^6.3.1",
"vscode-html-languageservice": "^5.3.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-languageserver-textdocument": "^1.0.12",
"vscode-uri": "^3.0.8"
},
@ -73,37 +73,37 @@
}
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageserver": {
"version": "10.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.6.tgz",
"integrity": "sha512-0Lh1nhQfSxo5Ob+ayYO1QTIsDix2/Lc72Urm1KZrCFxK5zIFYaEh3QFeM9oZih4Rzs0ZkQPXXnoHtpvs5GT+Zw==",
"version": "10.0.0-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.11.tgz",
"integrity": "sha512-cmobSrVDYhlh/t02vz/bV8nNpds8mus5HnILULae2iAvOjoaJPnTAp0jJWoYdUqTpIVzT9JV6JMKqLEvdqpeqg==",
"dependencies": {
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"bin": {
"installServerIntoExtension": "bin/installServerIntoExtension"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-protocol/node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/vscode-languageserver-textdocument": {
"version": "1.0.12",

View File

@ -12,7 +12,7 @@
"@vscode/l10n": "^0.0.18",
"vscode-css-languageservice": "^6.3.1",
"vscode-html-languageservice": "^5.3.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-languageserver-textdocument": "^1.0.12",
"vscode-uri": "^3.0.8"
},

View File

@ -22,7 +22,7 @@ const messageHandler = async (e: any) => {
} else {
l10nLog.push(`l10n: No bundle configured.`);
}
await import('./htmlServerMain');
await import('./htmlServerMain.js');
if (self.onmessage !== messageHandler) {
pendingMessages.forEach(msg => self.onmessage?.(msg));
pendingMessages.length = 0;

View File

@ -22,7 +22,7 @@ function getLanguageServiceHost(scriptKind: ts.ScriptKind) {
const compilerOptions: ts.CompilerOptions = { allowNonTsExtensions: true, allowJs: true, lib: ['lib.es2020.full.d.ts'], target: ts.ScriptTarget.Latest, moduleResolution: ts.ModuleResolutionKind.Classic, experimentalDecorators: false };
let currentTextDocument = TextDocument.create('init', 'javascript', 1, '');
const jsLanguageService = import(/* webpackChunkName: "javascriptLibs" */ './javascriptLibs').then(libs => {
const jsLanguageService = import(/* webpackChunkName: "javascriptLibs" */ './javascriptLibs.js').then(libs => {
const host: ts.LanguageServiceHost = {
getCompilationSettings: () => compilerOptions,
getScriptFileNames: () => [currentTextDocument.uri, 'jquery'],

View File

@ -16,7 +16,7 @@ async function setupMain() {
l10nLog.push(`l10n: Problems loading ${i10lLocation.toString()} : ${e}`);
}
}
await import('./htmlServerMain');
await import('./htmlServerMain.js');
l10nLog.forEach(console.log);
}
setupMain();

View File

@ -24,8 +24,8 @@ suite('HTML Language Configuration', () => {
value = value.substr(0, offset) + value.substring(offset + 1);
const actualRange = words.getWordAtText(value, offset, wordRegex);
assert(actualRange.start <= offset);
assert(actualRange.start + actualRange.length >= offset);
assert.ok(actualRange.start <= offset);
assert.ok(actualRange.start + actualRange.length >= offset);
assert.strictEqual(value.substr(actualRange.start, actualRange.length), expected);
}

View File

@ -5,7 +5,8 @@
"lib": [
"ES2020",
"WebWorker"
]
],
"module": "Node16",
},
"include": [
"src/**/*"

View File

@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { DocumentSelector } from 'vscode-languageclient';
import { Event, EventEmitter, extensions } from 'vscode';
/**
@ -23,7 +22,7 @@ interface LanguageParticipantContribution {
export interface LanguageParticipants {
readonly onDidChange: Event<void>;
readonly documentSelector: DocumentSelector;
readonly documentSelector: string[];
hasLanguage(languageId: string): boolean;
useComments(languageId: string): boolean;
dispose(): void;

View File

@ -6,10 +6,9 @@
import {
window, languages, Uri, Disposable, commands, QuickPickItem,
extensions, workspace, Extension, WorkspaceFolder, QuickPickItemKind,
ThemeIcon, TextDocument, LanguageStatusSeverity, l10n
ThemeIcon, TextDocument, LanguageStatusSeverity, l10n, DocumentSelector
} from 'vscode';
import { JSONLanguageStatus, JSONSchemaSettings } from './jsonClient';
import { DocumentSelector } from 'vscode-languageclient';
type ShowSchemasInput = {
schemas: string[];

View File

@ -4,7 +4,8 @@
"outDir": "./out",
"lib": [
"webworker"
]
],
"module": "Node16",
},
"include": [
"src/**/*",

View File

@ -11,7 +11,7 @@
"dependencies": {
"@vscode/extension-telemetry": "^0.9.0",
"request-light": "^0.8.0",
"vscode-languageclient": "10.0.0-next.8"
"vscode-languageclient": "^10.0.0-next.13"
},
"devDependencies": {
"@types/node": "20.x"
@ -220,39 +220,39 @@
"dev": true
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageclient": {
"version": "10.0.0-next.8",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.8.tgz",
"integrity": "sha512-D9inIHgqKayO9Tv0MeLb3XIL76yTuWmKdHqcGZKzjtQrMGJgASJDYWTapu+yAjEpDp0gmVOaCYyIlLB86ncDoQ==",
"version": "10.0.0-next.13",
"resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-10.0.0-next.13.tgz",
"integrity": "sha512-KLsOMJoYpkk36PIgcOjyZ4AekOfzp4kdWdRRbVKeVvSIrwrn/4RSZr0NlD6EvUBBJSsJW4WDrYY7Y3znkqa6+w==",
"dependencies": {
"minimatch": "^9.0.3",
"semver": "^7.6.0",
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"engines": {
"vscode": "^1.89.0"
"vscode": "^1.91.0"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/yallist": {
"version": "4.0.0",

View File

@ -163,7 +163,7 @@
"dependencies": {
"@vscode/extension-telemetry": "^0.9.0",
"request-light": "^0.8.0",
"vscode-languageclient": "10.0.0-next.8"
"vscode-languageclient": "^10.0.0-next.13"
},
"devDependencies": {
"@types/node": "20.x"

View File

@ -13,7 +13,7 @@
"jsonc-parser": "^3.3.1",
"request-light": "^0.8.0",
"vscode-json-languageservice": "^5.4.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-uri": "^3.0.8"
},
"bin": {
@ -76,37 +76,37 @@
}
},
"node_modules/vscode-jsonrpc": {
"version": "9.0.0-next.4",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.4.tgz",
"integrity": "sha512-zSVIr58lJSMYKIsZ5P7GtBbv1eEx25eNyOf0NmEzxmn1GhUNJAVAb5hkA1poKUwj1FRMwN6CeyWxZypmr8SsQQ==",
"version": "9.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-9.0.0-next.6.tgz",
"integrity": "sha512-KCSvUNsFiVciG9iqjJKBZOd66CN3ZKohDlYRmoOi+pd8l15MFLZ8wRG4c+wuzePGba/8WcCG2TM+C/GVlvuaeA==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/vscode-languageserver": {
"version": "10.0.0-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.6.tgz",
"integrity": "sha512-0Lh1nhQfSxo5Ob+ayYO1QTIsDix2/Lc72Urm1KZrCFxK5zIFYaEh3QFeM9oZih4Rzs0ZkQPXXnoHtpvs5GT+Zw==",
"version": "10.0.0-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-10.0.0-next.11.tgz",
"integrity": "sha512-cmobSrVDYhlh/t02vz/bV8nNpds8mus5HnILULae2iAvOjoaJPnTAp0jJWoYdUqTpIVzT9JV6JMKqLEvdqpeqg==",
"dependencies": {
"vscode-languageserver-protocol": "3.17.6-next.6"
"vscode-languageserver-protocol": "3.17.6-next.11"
},
"bin": {
"installServerIntoExtension": "bin/installServerIntoExtension"
}
},
"node_modules/vscode-languageserver-protocol": {
"version": "3.17.6-next.6",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.6.tgz",
"integrity": "sha512-naxM9kc/phpl0kAFNVPejMUWUtzFXdPYY/BtQTYtfbBbHf8sceHOrKkmf6yynZRu1A4oFtRZNqV3wyFRTWqUHw==",
"version": "3.17.6-next.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.6-next.11.tgz",
"integrity": "sha512-GeJxEp1TiLsp79f8WG5n10wLViXfgFKb99hU9K8m7KDWM95/QFEqWkm79f9LVm54tUK74I91a9EeiQLCS/FABQ==",
"dependencies": {
"vscode-jsonrpc": "9.0.0-next.4",
"vscode-languageserver-types": "3.17.6-next.4"
"vscode-jsonrpc": "9.0.0-next.6",
"vscode-languageserver-types": "3.17.6-next.5"
}
},
"node_modules/vscode-languageserver-protocol/node_modules/vscode-languageserver-types": {
"version": "3.17.6-next.4",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.4.tgz",
"integrity": "sha512-SeJTpH/S14EbxOAVaOUoGVqPToqpRTld5QO5Ghig3AlbFJTFF9Wu7srHMfa85L0SX1RYAuuCSFKJVVCxDIk1/Q=="
"version": "3.17.6-next.5",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.6-next.5.tgz",
"integrity": "sha512-QFmf3Yl1tCgUQfA77N9Me/LXldJXkIVypQbty2rJ1DNHQkC+iwvm4Z2tXg9czSwlhvv0pD4pbF5mT7WhAglolw=="
},
"node_modules/vscode-languageserver-textdocument": {
"version": "1.0.12",

View File

@ -16,7 +16,7 @@
"jsonc-parser": "^3.3.1",
"request-light": "^0.8.0",
"vscode-json-languageservice": "^5.4.1",
"vscode-languageserver": "10.0.0-next.6",
"vscode-languageserver": "^10.0.0-next.11",
"vscode-uri": "^3.0.8"
},
"devDependencies": {

View File

@ -22,7 +22,7 @@ const messageHandler = async (e: any) => {
} else {
l10nLog.push(`l10n: No bundle configured.`);
}
await import('./jsonServerMain');
await import('./jsonServerMain.js');
if (self.onmessage !== messageHandler) {
pendingMessages.forEach(msg => self.onmessage?.(msg));
pendingMessages.length = 0;

View File

@ -16,7 +16,7 @@ async function setupMain() {
l10nLog.push(`l10n: Problems loading ${i10lLocation.toString()} : ${e}`);
}
}
await import('./jsonServerMain');
await import('./jsonServerMain.js');
l10nLog.forEach(console.log);
}
setupMain();

View File

@ -7,7 +7,8 @@
"lib": [
"ES2020",
"WebWorker"
]
],
"module": "Node16",
},
"include": [
"src/**/*"

View File

@ -32,7 +32,11 @@ function withNodeDefaults(/**@type WebpackConfig & { context: string }*/extConfi
resolve: {
conditionNames: ['import', 'require', 'node-addons', 'node'],
mainFields: ['module', 'main'],
extensions: ['.ts', '.js'] // support ts-files and js-files
extensions: ['.ts', '.js'], // support ts-files and js-files
extensionAlias: {
// this is needed to resolve dynamic imports that now require the .js extension
'.js': ['.js', '.ts'],
}
},
module: {
rules: [{
@ -110,7 +114,11 @@ function withBrowserDefaults(/**@type WebpackConfig & { context: string }*/extCo
'path': require.resolve('path-browserify'),
'os': require.resolve('os-browserify'),
'util': require.resolve('util')
}
},
extensionAlias: {
// this is needed to resolve dynamic imports that now require the .js extension
'.js': ['.js', '.ts'],
},
},
module: {
rules: [{
@ -123,7 +131,7 @@ function withBrowserDefaults(/**@type WebpackConfig & { context: string }*/extCo
loader: 'ts-loader',
options: {
...tsLoaderOptions,
...(additionalOptions ? {} : { configFile: additionalOptions.configFile }),
// ...(additionalOptions ? {} : { configFile: additionalOptions.configFile }),
}
},
{

20
package-lock.json generated
View File

@ -150,7 +150,7 @@
"source-map": "0.6.1",
"source-map-support": "^0.3.2",
"style-loader": "^3.3.2",
"ts-loader": "^9.4.2",
"ts-loader": "^9.5.1",
"ts-node": "^10.9.1",
"tsec": "0.2.7",
"tslib": "^2.6.3",
@ -17412,15 +17412,16 @@
}
},
"node_modules/ts-loader": {
"version": "9.4.2",
"resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.2.tgz",
"integrity": "sha512-OmlC4WVmFv5I0PpaxYb+qGeGOdm5giHU7HwDDUjw59emP2UYMHy9fFSDcYgSNoH8sXcj4hGCSEhlDZ9ULeDraA==",
"version": "9.5.1",
"resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
"integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
"dev": true,
"dependencies": {
"chalk": "^4.1.0",
"enhanced-resolve": "^5.0.0",
"micromatch": "^4.0.0",
"semver": "^7.3.4"
"semver": "^7.3.4",
"source-map": "^0.7.4"
},
"engines": {
"node": ">=12.0.0"
@ -17430,6 +17431,15 @@
"webpack": "^5.0.0"
}
},
"node_modules/ts-loader/node_modules/source-map": {
"version": "0.7.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
"integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
"dev": true,
"engines": {
"node": ">= 8"
}
},
"node_modules/ts-morph": {
"version": "19.0.0",
"resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-19.0.0.tgz",

View File

@ -208,7 +208,7 @@
"source-map": "0.6.1",
"source-map-support": "^0.3.2",
"style-loader": "^3.3.2",
"ts-loader": "^9.4.2",
"ts-loader": "^9.5.1",
"ts-node": "^10.9.1",
"tsec": "0.2.7",
"tslib": "^2.6.3",