mirror of
https://github.com/microsoft/monaco-editor.git
synced 2025-12-22 07:00:11 +01:00
WIP worker-based LSP server instead of mirror model
This commit is contained in:
parent
ec78a33c7b
commit
39e9e78254
8 changed files with 15895 additions and 192 deletions
|
|
@ -1,5 +1,7 @@
|
||||||
import * as fs from 'fs';
|
import * as fs from 'fs';
|
||||||
import * as path from 'path';
|
import * as path from 'path';
|
||||||
|
import yargs from 'yargs';
|
||||||
|
import { hideBin } from 'yargs/helpers';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Utility class for writing formatted code with proper indentation
|
* Utility class for writing formatted code with proper indentation
|
||||||
|
|
@ -259,12 +261,16 @@ interface BooleanLiteralType {
|
||||||
class LSPTypesGenerator {
|
class LSPTypesGenerator {
|
||||||
private writer = new LineWriter();
|
private writer = new LineWriter();
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
private readonly metaModelPath: string,
|
||||||
|
private readonly outPath: string
|
||||||
|
) { }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load and parse the metaModel.json file
|
* Load and parse the metaModel.json file
|
||||||
*/
|
*/
|
||||||
private loadMetaModel(): MetaModel {
|
private loadMetaModel(): MetaModel {
|
||||||
const metaModelPath = path.join(__dirname, '..', 'metaModel.json');
|
const content = fs.readFileSync(this.metaModelPath, 'utf-8');
|
||||||
const content = fs.readFileSync(metaModelPath, 'utf-8');
|
|
||||||
return JSON.parse(content) as MetaModel;
|
return JSON.parse(content) as MetaModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -561,7 +567,7 @@ class LSPTypesGenerator {
|
||||||
// Server requests (sent from client to server)
|
// Server requests (sent from client to server)
|
||||||
for (const request of metaModel.requests) {
|
for (const request of metaModel.requests) {
|
||||||
if (request.messageDirection === 'clientToServer' || request.messageDirection === 'both') {
|
if (request.messageDirection === 'clientToServer' || request.messageDirection === 'both') {
|
||||||
generateRequest(request);
|
generateRequest(request, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -670,18 +676,34 @@ class LSPTypesGenerator {
|
||||||
this.generateApiContract(metaModel);
|
this.generateApiContract(metaModel);
|
||||||
|
|
||||||
// Write types file
|
// Write types file
|
||||||
const srcDir = path.join(__dirname, '..', 'src');
|
const outDir = path.dirname(this.outPath);
|
||||||
if (!fs.existsSync(srcDir)) {
|
if (!fs.existsSync(outDir)) {
|
||||||
fs.mkdirSync(srcDir, { recursive: true });
|
fs.mkdirSync(outDir, { recursive: true });
|
||||||
}
|
}
|
||||||
fs.writeFileSync(path.join(srcDir, 'types.ts'), this.writer.toString());
|
fs.writeFileSync(this.outPath, this.writer.toString());
|
||||||
|
|
||||||
console.log('Generated LSP types file: src/types.ts');
|
console.log(`Generated LSP types file: ${this.outPath}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Run the generator
|
// Run the generator
|
||||||
if (require.main === module) {
|
if (require.main === module) {
|
||||||
const generator = new LSPTypesGenerator();
|
const argv = yargs(hideBin(process.argv))
|
||||||
|
.option('input', {
|
||||||
|
alias: 'i',
|
||||||
|
type: 'string',
|
||||||
|
description: 'Path to metaModel.json',
|
||||||
|
default: path.join(__dirname, '..', 'spec', 'metaModel.json')
|
||||||
|
})
|
||||||
|
.option('output', {
|
||||||
|
alias: 'o',
|
||||||
|
type: 'string',
|
||||||
|
description: 'Output file',
|
||||||
|
default: path.join(__dirname, '..', 'src', 'types.ts')
|
||||||
|
})
|
||||||
|
.help()
|
||||||
|
.parseSync();
|
||||||
|
|
||||||
|
const generator = new LSPTypesGenerator(argv.input, argv.output);
|
||||||
generator.generate();
|
generator.generate();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
698
monaco-lsp-client/package-lock.json
generated
698
monaco-lsp-client/package-lock.json
generated
|
|
@ -13,9 +13,12 @@
|
||||||
"@hediet/json-rpc-websocket": "^0.5.1"
|
"@hediet/json-rpc-websocket": "^0.5.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@types/yargs": "^17.0.35",
|
||||||
"rolldown": "^1.0.0-beta.41",
|
"rolldown": "^1.0.0-beta.41",
|
||||||
"rolldown-plugin-dts": "^0.16.11",
|
"rolldown-plugin-dts": "^0.16.11",
|
||||||
"rollup-plugin-delete": "^3.0.1"
|
"rollup-plugin-delete": "^3.0.1",
|
||||||
|
"tsx": "^4.21.0",
|
||||||
|
"yargs": "^18.0.0"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"monaco-editor-core": "^0.54.0-dev-20250929"
|
"monaco-editor-core": "^0.54.0-dev-20250929"
|
||||||
|
|
@ -143,6 +146,448 @@
|
||||||
"tslib": "^2.4.0"
|
"tslib": "^2.4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@esbuild/aix-ppc64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==",
|
||||||
|
"cpu": [
|
||||||
|
"ppc64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"aix"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/android-arm": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/android-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/android-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/darwin-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/darwin-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/freebsd-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/freebsd-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-arm": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-ia32": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-loong64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==",
|
||||||
|
"cpu": [
|
||||||
|
"loong64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-mips64el": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==",
|
||||||
|
"cpu": [
|
||||||
|
"mips64el"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-ppc64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==",
|
||||||
|
"cpu": [
|
||||||
|
"ppc64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-riscv64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==",
|
||||||
|
"cpu": [
|
||||||
|
"riscv64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-s390x": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==",
|
||||||
|
"cpu": [
|
||||||
|
"s390x"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/linux-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/netbsd-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"netbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/netbsd-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"netbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/openbsd-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"openbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/openbsd-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"openbsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/openharmony-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"openharmony"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/sunos-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"sunos"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/win32-arm64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/win32-ia32": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@esbuild/win32-x64": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@hediet/json-rpc": {
|
"node_modules/@hediet/json-rpc": {
|
||||||
"version": "0.5.0",
|
"version": "0.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@hediet/json-rpc/-/json-rpc-0.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/@hediet/json-rpc/-/json-rpc-0.5.0.tgz",
|
||||||
|
|
@ -894,6 +1339,49 @@
|
||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@types/yargs": {
|
||||||
|
"version": "17.0.35",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz",
|
||||||
|
"integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@types/yargs-parser": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@types/yargs-parser": {
|
||||||
|
"version": "21.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz",
|
||||||
|
"integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/ansi-regex": {
|
||||||
|
"version": "6.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
|
||||||
|
"integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/ansi-styles": {
|
||||||
|
"version": "6.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz",
|
||||||
|
"integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/ansis": {
|
"node_modules/ansis": {
|
||||||
"version": "4.2.0",
|
"version": "4.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/ansis/-/ansis-4.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/ansis/-/ansis-4.2.0.tgz",
|
||||||
|
|
@ -944,6 +1432,21 @@
|
||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/cliui": {
|
||||||
|
"version": "9.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/cliui/-/cliui-9.0.1.tgz",
|
||||||
|
"integrity": "sha512-k7ndgKhwoQveBL+/1tqGJYNz097I7WOvwbmmU2AR5+magtbjPWQTS1C5vzGkBC8Ym8UWRzfKUzUUqFLypY4Q+w==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "ISC",
|
||||||
|
"dependencies": {
|
||||||
|
"string-width": "^7.2.0",
|
||||||
|
"strip-ansi": "^7.1.0",
|
||||||
|
"wrap-ansi": "^9.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=20"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/debug": {
|
"node_modules/debug": {
|
||||||
"version": "4.4.3",
|
"version": "4.4.3",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
|
||||||
|
|
@ -1010,6 +1513,65 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/emoji-regex": {
|
||||||
|
"version": "10.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz",
|
||||||
|
"integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/esbuild": {
|
||||||
|
"version": "0.27.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz",
|
||||||
|
"integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==",
|
||||||
|
"dev": true,
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"bin": {
|
||||||
|
"esbuild": "bin/esbuild"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@esbuild/aix-ppc64": "0.27.2",
|
||||||
|
"@esbuild/android-arm": "0.27.2",
|
||||||
|
"@esbuild/android-arm64": "0.27.2",
|
||||||
|
"@esbuild/android-x64": "0.27.2",
|
||||||
|
"@esbuild/darwin-arm64": "0.27.2",
|
||||||
|
"@esbuild/darwin-x64": "0.27.2",
|
||||||
|
"@esbuild/freebsd-arm64": "0.27.2",
|
||||||
|
"@esbuild/freebsd-x64": "0.27.2",
|
||||||
|
"@esbuild/linux-arm": "0.27.2",
|
||||||
|
"@esbuild/linux-arm64": "0.27.2",
|
||||||
|
"@esbuild/linux-ia32": "0.27.2",
|
||||||
|
"@esbuild/linux-loong64": "0.27.2",
|
||||||
|
"@esbuild/linux-mips64el": "0.27.2",
|
||||||
|
"@esbuild/linux-ppc64": "0.27.2",
|
||||||
|
"@esbuild/linux-riscv64": "0.27.2",
|
||||||
|
"@esbuild/linux-s390x": "0.27.2",
|
||||||
|
"@esbuild/linux-x64": "0.27.2",
|
||||||
|
"@esbuild/netbsd-arm64": "0.27.2",
|
||||||
|
"@esbuild/netbsd-x64": "0.27.2",
|
||||||
|
"@esbuild/openbsd-arm64": "0.27.2",
|
||||||
|
"@esbuild/openbsd-x64": "0.27.2",
|
||||||
|
"@esbuild/openharmony-arm64": "0.27.2",
|
||||||
|
"@esbuild/sunos-x64": "0.27.2",
|
||||||
|
"@esbuild/win32-arm64": "0.27.2",
|
||||||
|
"@esbuild/win32-ia32": "0.27.2",
|
||||||
|
"@esbuild/win32-x64": "0.27.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/escalade": {
|
||||||
|
"version": "3.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
|
||||||
|
"integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/fast-glob": {
|
"node_modules/fast-glob": {
|
||||||
"version": "3.3.3",
|
"version": "3.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz",
|
||||||
|
|
@ -1061,11 +1623,33 @@
|
||||||
"os": [
|
"os": [
|
||||||
"darwin"
|
"darwin"
|
||||||
],
|
],
|
||||||
"peer": true,
|
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/get-caller-file": {
|
||||||
|
"version": "2.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||||
|
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "ISC",
|
||||||
|
"engines": {
|
||||||
|
"node": "6.* || 8.* || >= 10.*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/get-east-asian-width": {
|
||||||
|
"version": "1.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.4.0.tgz",
|
||||||
|
"integrity": "sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/get-tsconfig": {
|
"node_modules/get-tsconfig": {
|
||||||
"version": "4.11.0",
|
"version": "4.11.0",
|
||||||
"resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.11.0.tgz",
|
"resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.11.0.tgz",
|
||||||
|
|
@ -1541,6 +2125,40 @@
|
||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/string-width": {
|
||||||
|
"version": "7.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz",
|
||||||
|
"integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"emoji-regex": "^10.3.0",
|
||||||
|
"get-east-asian-width": "^1.0.0",
|
||||||
|
"strip-ansi": "^7.1.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/strip-ansi": {
|
||||||
|
"version": "7.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz",
|
||||||
|
"integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-regex": "^6.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/to-regex-range": {
|
"node_modules/to-regex-range": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||||
|
|
@ -1562,6 +2180,26 @@
|
||||||
"license": "0BSD",
|
"license": "0BSD",
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"node_modules/tsx": {
|
||||||
|
"version": "4.21.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz",
|
||||||
|
"integrity": "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"esbuild": "~0.27.0",
|
||||||
|
"get-tsconfig": "^4.7.5"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"tsx": "dist/cli.mjs"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18.0.0"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"fsevents": "~2.3.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/undici-types": {
|
"node_modules/undici-types": {
|
||||||
"version": "7.16.0",
|
"version": "7.16.0",
|
||||||
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
|
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
|
||||||
|
|
@ -1581,6 +2219,24 @@
|
||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/wrap-ansi": {
|
||||||
|
"version": "9.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz",
|
||||||
|
"integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-styles": "^6.2.1",
|
||||||
|
"string-width": "^7.0.0",
|
||||||
|
"strip-ansi": "^7.1.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/ws": {
|
"node_modules/ws": {
|
||||||
"version": "8.18.3",
|
"version": "8.18.3",
|
||||||
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz",
|
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz",
|
||||||
|
|
@ -1602,6 +2258,44 @@
|
||||||
"optional": true
|
"optional": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"node_modules/y18n": {
|
||||||
|
"version": "5.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
|
||||||
|
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "ISC",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/yargs": {
|
||||||
|
"version": "18.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs/-/yargs-18.0.0.tgz",
|
||||||
|
"integrity": "sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"cliui": "^9.0.1",
|
||||||
|
"escalade": "^3.1.1",
|
||||||
|
"get-caller-file": "^2.0.5",
|
||||||
|
"string-width": "^7.2.0",
|
||||||
|
"y18n": "^5.0.5",
|
||||||
|
"yargs-parser": "^22.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^20.19.0 || ^22.12.0 || >=23"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/yargs-parser": {
|
||||||
|
"version": "22.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz",
|
||||||
|
"integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "ISC",
|
||||||
|
"engines": {
|
||||||
|
"node": "^20.19.0 || ^22.12.0 || >=23"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,12 @@
|
||||||
"monaco-editor-core": "^0.54.0-dev-20250929"
|
"monaco-editor-core": "^0.54.0-dev-20250929"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@types/yargs": "^17.0.35",
|
||||||
"rolldown": "^1.0.0-beta.41",
|
"rolldown": "^1.0.0-beta.41",
|
||||||
"rolldown-plugin-dts": "^0.16.11",
|
"rolldown-plugin-dts": "^0.16.11",
|
||||||
"rollup-plugin-delete": "^3.0.1"
|
"rollup-plugin-delete": "^3.0.1",
|
||||||
|
"tsx": "^4.21.0",
|
||||||
|
"yargs": "^18.0.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "npx rolldown -c rolldown.config.mjs",
|
"build": "npx rolldown -c rolldown.config.mjs",
|
||||||
|
|
|
||||||
14835
monaco-lsp-client/spec/metaModel.json
Normal file
14835
monaco-lsp-client/spec/metaModel.json
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -31,7 +31,6 @@ export class LspDiagnosticsFeature extends Disposable {
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
|
|
||||||
debugger;
|
|
||||||
this._register(this._connection.connection.registerNotificationHandler(
|
this._register(this._connection.connection.registerNotificationHandler(
|
||||||
api.client.textDocumentPublishDiagnostics,
|
api.client.textDocumentPublishDiagnostics,
|
||||||
(params) => this._handlePublishDiagnostics(params)
|
(params) => this._handlePublishDiagnostics(params)
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,10 @@
|
||||||
// This file is auto-generated. Do not edit manually.
|
// This file is auto-generated. Do not edit manually.
|
||||||
|
|
||||||
import {
|
import {
|
||||||
contract, unverifiedRequest,
|
contract,
|
||||||
unverifiedNotification
|
Contract,
|
||||||
|
unverifiedRequest,
|
||||||
|
unverifiedNotification,
|
||||||
} from "@hediet/json-rpc";
|
} from "@hediet/json-rpc";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -2102,7 +2104,7 @@ export interface InitializeResult {
|
||||||
serverInfo?: {
|
serverInfo?: {
|
||||||
name: string;
|
name: string;
|
||||||
version?: string
|
version?: string
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -2538,11 +2540,11 @@ export interface CompletionList {
|
||||||
editRange?: Range | {
|
editRange?: Range | {
|
||||||
insert: Range;
|
insert: Range;
|
||||||
replace: Range
|
replace: Range
|
||||||
};
|
};
|
||||||
insertTextFormat?: InsertTextFormat;
|
insertTextFormat?: InsertTextFormat;
|
||||||
insertTextMode?: InsertTextMode;
|
insertTextMode?: InsertTextMode;
|
||||||
data?: LSPAny
|
data?: LSPAny
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The completion items.
|
* The completion items.
|
||||||
*/
|
*/
|
||||||
|
|
@ -2868,7 +2870,7 @@ export interface CodeAction {
|
||||||
*/
|
*/
|
||||||
disabled?: {
|
disabled?: {
|
||||||
reason: string
|
reason: string
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The workspace edit this code action performs.
|
* The workspace edit this code action performs.
|
||||||
*/
|
*/
|
||||||
|
|
@ -2922,7 +2924,7 @@ export interface WorkspaceSymbol extends BaseSymbolInformation {
|
||||||
*/
|
*/
|
||||||
location: Location | {
|
location: Location | {
|
||||||
uri: string
|
uri: string
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* A data entry field that is preserved on a workspace symbol between a
|
* A data entry field that is preserved on a workspace symbol between a
|
||||||
* workspace symbol request and a workspace symbol resolve request.
|
* workspace symbol request and a workspace symbol resolve request.
|
||||||
|
|
@ -3547,13 +3549,13 @@ export interface SemanticTokensOptions extends WorkDoneProgressOptions {
|
||||||
*/
|
*/
|
||||||
range?: boolean | {
|
range?: boolean | {
|
||||||
|
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Server supports providing semantic tokens for a full document.
|
* Server supports providing semantic tokens for a full document.
|
||||||
*/
|
*/
|
||||||
full?: boolean | {
|
full?: boolean | {
|
||||||
delta?: boolean
|
delta?: boolean
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -4127,13 +4129,13 @@ export interface NotebookDocumentChangeEvent {
|
||||||
array: NotebookCellArrayChange;
|
array: NotebookCellArrayChange;
|
||||||
didOpen?: (TextDocumentItem)[];
|
didOpen?: (TextDocumentItem)[];
|
||||||
didClose?: (TextDocumentIdentifier)[]
|
didClose?: (TextDocumentIdentifier)[]
|
||||||
};
|
};
|
||||||
data?: (NotebookCell)[];
|
data?: (NotebookCell)[];
|
||||||
textContent?: ({
|
textContent?: ({
|
||||||
document: VersionedTextDocumentIdentifier;
|
document: VersionedTextDocumentIdentifier;
|
||||||
changes: (TextDocumentContentChangeEvent)[]
|
changes: (TextDocumentContentChangeEvent)[]
|
||||||
})[]
|
})[]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -4251,7 +4253,7 @@ export interface _InitializeParams extends WorkDoneProgressParams {
|
||||||
clientInfo?: {
|
clientInfo?: {
|
||||||
name: string;
|
name: string;
|
||||||
version?: string
|
version?: string
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The locale the client is currently showing the user interface
|
* The locale the client is currently showing the user interface
|
||||||
* in. This must not necessarily be the locale of the operating
|
* in. This must not necessarily be the locale of the operating
|
||||||
|
|
@ -4487,7 +4489,7 @@ export interface ServerCapabilities {
|
||||||
workspace?: {
|
workspace?: {
|
||||||
workspaceFolders?: WorkspaceFoldersServerCapabilities;
|
workspaceFolders?: WorkspaceFoldersServerCapabilities;
|
||||||
fileOperations?: FileOperationOptions
|
fileOperations?: FileOperationOptions
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Experimental server capabilities.
|
* Experimental server capabilities.
|
||||||
*/
|
*/
|
||||||
|
|
@ -4690,7 +4692,7 @@ export interface CompletionOptions extends WorkDoneProgressOptions {
|
||||||
*/
|
*/
|
||||||
completionItem?: {
|
completionItem?: {
|
||||||
labelDetailsSupport?: boolean
|
labelDetailsSupport?: boolean
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -5333,13 +5335,13 @@ export interface NotebookDocumentSyncOptions {
|
||||||
notebook: string | NotebookDocumentFilter;
|
notebook: string | NotebookDocumentFilter;
|
||||||
cells?: ({
|
cells?: ({
|
||||||
language: string
|
language: string
|
||||||
})[]
|
})[]
|
||||||
} | {
|
} | {
|
||||||
notebook?: string | NotebookDocumentFilter;
|
notebook?: string | NotebookDocumentFilter;
|
||||||
cells: ({
|
cells: ({
|
||||||
language: string
|
language: string
|
||||||
})[]
|
})[]
|
||||||
})[];
|
})[];
|
||||||
/**
|
/**
|
||||||
* Whether save notification should be forwarded to
|
* Whether save notification should be forwarded to
|
||||||
* the server. Will only be honored if mode === `notebook`.
|
* the server. Will only be honored if mode === `notebook`.
|
||||||
|
|
@ -5816,7 +5818,7 @@ export interface GeneralClientCapabilities {
|
||||||
staleRequestSupport?: {
|
staleRequestSupport?: {
|
||||||
cancel: boolean;
|
cancel: boolean;
|
||||||
retryOnContentModified: (string)[]
|
retryOnContentModified: (string)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Client capabilities specific to regular expressions.
|
* Client capabilities specific to regular expressions.
|
||||||
*
|
*
|
||||||
|
|
@ -5908,7 +5910,7 @@ export interface WorkspaceEditClientCapabilities {
|
||||||
*/
|
*/
|
||||||
changeAnnotationSupport?: {
|
changeAnnotationSupport?: {
|
||||||
groupsOnLabel?: boolean
|
groupsOnLabel?: boolean
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface DidChangeConfigurationClientCapabilities {
|
export interface DidChangeConfigurationClientCapabilities {
|
||||||
|
|
@ -5947,7 +5949,7 @@ export interface WorkspaceSymbolClientCapabilities {
|
||||||
*/
|
*/
|
||||||
symbolKind?: {
|
symbolKind?: {
|
||||||
valueSet?: (SymbolKind)[]
|
valueSet?: (SymbolKind)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The client supports tags on `SymbolInformation`.
|
* The client supports tags on `SymbolInformation`.
|
||||||
* Clients supporting tags have to handle unknown tags gracefully.
|
* Clients supporting tags have to handle unknown tags gracefully.
|
||||||
|
|
@ -5956,7 +5958,7 @@ export interface WorkspaceSymbolClientCapabilities {
|
||||||
*/
|
*/
|
||||||
tagSupport?: {
|
tagSupport?: {
|
||||||
valueSet: (SymbolTag)[]
|
valueSet: (SymbolTag)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The client support partial workspace symbols. The client will send the
|
* The client support partial workspace symbols. The client will send the
|
||||||
* request `workspaceSymbol/resolve` to the server to resolve additional
|
* request `workspaceSymbol/resolve` to the server to resolve additional
|
||||||
|
|
@ -5966,7 +5968,7 @@ export interface WorkspaceSymbolClientCapabilities {
|
||||||
*/
|
*/
|
||||||
resolveSupport?: {
|
resolveSupport?: {
|
||||||
properties: (string)[]
|
properties: (string)[]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -6167,19 +6169,19 @@ export interface CompletionClientCapabilities {
|
||||||
preselectSupport?: boolean;
|
preselectSupport?: boolean;
|
||||||
tagSupport?: {
|
tagSupport?: {
|
||||||
valueSet: (CompletionItemTag)[]
|
valueSet: (CompletionItemTag)[]
|
||||||
};
|
};
|
||||||
insertReplaceSupport?: boolean;
|
insertReplaceSupport?: boolean;
|
||||||
resolveSupport?: {
|
resolveSupport?: {
|
||||||
properties: (string)[]
|
properties: (string)[]
|
||||||
};
|
};
|
||||||
insertTextModeSupport?: {
|
insertTextModeSupport?: {
|
||||||
valueSet: (InsertTextMode)[]
|
valueSet: (InsertTextMode)[]
|
||||||
};
|
};
|
||||||
labelDetailsSupport?: boolean
|
labelDetailsSupport?: boolean
|
||||||
};
|
};
|
||||||
completionItemKind?: {
|
completionItemKind?: {
|
||||||
valueSet?: (CompletionItemKind)[]
|
valueSet?: (CompletionItemKind)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Defines how the client handles whitespace and indentation
|
* Defines how the client handles whitespace and indentation
|
||||||
* when accepting a completion item that uses multi line
|
* when accepting a completion item that uses multi line
|
||||||
|
|
@ -6201,7 +6203,7 @@ export interface CompletionClientCapabilities {
|
||||||
*/
|
*/
|
||||||
completionList?: {
|
completionList?: {
|
||||||
itemDefaults?: (string)[]
|
itemDefaults?: (string)[]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface HoverClientCapabilities {
|
export interface HoverClientCapabilities {
|
||||||
|
|
@ -6232,9 +6234,9 @@ export interface SignatureHelpClientCapabilities {
|
||||||
documentationFormat?: (MarkupKind)[];
|
documentationFormat?: (MarkupKind)[];
|
||||||
parameterInformation?: {
|
parameterInformation?: {
|
||||||
labelOffsetSupport?: boolean
|
labelOffsetSupport?: boolean
|
||||||
};
|
};
|
||||||
activeParameterSupport?: boolean
|
activeParameterSupport?: boolean
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The client supports to send additional context information for a
|
* The client supports to send additional context information for a
|
||||||
* `textDocument/signatureHelp` request. A client that opts into
|
* `textDocument/signatureHelp` request. A client that opts into
|
||||||
|
|
@ -6348,7 +6350,7 @@ export interface DocumentSymbolClientCapabilities {
|
||||||
*/
|
*/
|
||||||
symbolKind?: {
|
symbolKind?: {
|
||||||
valueSet?: (SymbolKind)[]
|
valueSet?: (SymbolKind)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The client supports hierarchical document symbols.
|
* The client supports hierarchical document symbols.
|
||||||
*/
|
*/
|
||||||
|
|
@ -6362,7 +6364,7 @@ export interface DocumentSymbolClientCapabilities {
|
||||||
*/
|
*/
|
||||||
tagSupport?: {
|
tagSupport?: {
|
||||||
valueSet: (SymbolTag)[]
|
valueSet: (SymbolTag)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The client supports an additional label presented in the UI when
|
* The client supports an additional label presented in the UI when
|
||||||
* registering a document symbol provider.
|
* registering a document symbol provider.
|
||||||
|
|
@ -6390,8 +6392,8 @@ export interface CodeActionClientCapabilities {
|
||||||
codeActionLiteralSupport?: {
|
codeActionLiteralSupport?: {
|
||||||
codeActionKind: {
|
codeActionKind: {
|
||||||
valueSet: (CodeActionKind)[]
|
valueSet: (CodeActionKind)[]
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Whether code action supports the `isPreferred` property.
|
* Whether code action supports the `isPreferred` property.
|
||||||
*
|
*
|
||||||
|
|
@ -6420,7 +6422,7 @@ export interface CodeActionClientCapabilities {
|
||||||
*/
|
*/
|
||||||
resolveSupport?: {
|
resolveSupport?: {
|
||||||
properties: (string)[]
|
properties: (string)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Whether the client honors the change annotations in
|
* Whether the client honors the change annotations in
|
||||||
* text edits and resource operations returned via the
|
* text edits and resource operations returned via the
|
||||||
|
|
@ -6565,7 +6567,7 @@ export interface FoldingRangeClientCapabilities {
|
||||||
*/
|
*/
|
||||||
foldingRangeKind?: {
|
foldingRangeKind?: {
|
||||||
valueSet?: (FoldingRangeKind)[]
|
valueSet?: (FoldingRangeKind)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Specific options for the folding range.
|
* Specific options for the folding range.
|
||||||
*
|
*
|
||||||
|
|
@ -6573,7 +6575,7 @@ export interface FoldingRangeClientCapabilities {
|
||||||
*/
|
*/
|
||||||
foldingRange?: {
|
foldingRange?: {
|
||||||
collapsedText?: boolean
|
collapsedText?: boolean
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface SelectionRangeClientCapabilities {
|
export interface SelectionRangeClientCapabilities {
|
||||||
|
|
@ -6601,7 +6603,7 @@ export interface PublishDiagnosticsClientCapabilities {
|
||||||
*/
|
*/
|
||||||
tagSupport?: {
|
tagSupport?: {
|
||||||
valueSet: (DiagnosticTag)[]
|
valueSet: (DiagnosticTag)[]
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* Whether the client interprets the version property of the
|
* Whether the client interprets the version property of the
|
||||||
* `textDocument/publishDiagnostics` notification's parameter.
|
* `textDocument/publishDiagnostics` notification's parameter.
|
||||||
|
|
@ -6660,11 +6662,11 @@ export interface SemanticTokensClientCapabilities {
|
||||||
requests: {
|
requests: {
|
||||||
range?: boolean | {
|
range?: boolean | {
|
||||||
|
|
||||||
};
|
};
|
||||||
full?: boolean | {
|
full?: boolean | {
|
||||||
delta?: boolean
|
delta?: boolean
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
* The token types that the client supports.
|
* The token types that the client supports.
|
||||||
*/
|
*/
|
||||||
|
|
@ -6777,7 +6779,7 @@ export interface InlayHintClientCapabilities {
|
||||||
*/
|
*/
|
||||||
resolveSupport?: {
|
resolveSupport?: {
|
||||||
properties: (string)[]
|
properties: (string)[]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -6839,7 +6841,7 @@ export interface ShowMessageRequestClientCapabilities {
|
||||||
*/
|
*/
|
||||||
messageActionItem?: {
|
messageActionItem?: {
|
||||||
additionalPropertiesSupport?: boolean
|
additionalPropertiesSupport?: boolean
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -6898,7 +6900,7 @@ export interface MarkdownClientCapabilities {
|
||||||
* Represents a capability with its associated method and registration options type
|
* Represents a capability with its associated method and registration options type
|
||||||
*/
|
*/
|
||||||
export class Capability<T> {
|
export class Capability<T> {
|
||||||
constructor(public readonly method: string) { }
|
constructor(public readonly method: string) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -6966,85 +6968,85 @@ export const api = contract({
|
||||||
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
||||||
* the response is of type {@link Definition} or a Thenable that resolves to such.
|
* the response is of type {@link Definition} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentImplementation: unverifiedRequest<ImplementationParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/implementation" }),
|
textDocumentImplementation: unverifiedRequest<ImplementationParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/implementation" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the type definition locations of a symbol at a given text
|
* A request to resolve the type definition locations of a symbol at a given text
|
||||||
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
||||||
* the response is of type {@link Definition} or a Thenable that resolves to such.
|
* the response is of type {@link Definition} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentTypeDefinition: unverifiedRequest<TypeDefinitionParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/typeDefinition" }),
|
textDocumentTypeDefinition: unverifiedRequest<TypeDefinitionParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/typeDefinition" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to list all color symbols found in a given text document. The request's
|
* A request to list all color symbols found in a given text document. The request's
|
||||||
* parameter is of type {@link DocumentColorParams} the
|
* parameter is of type {@link DocumentColorParams} the
|
||||||
* response is of type {@link ColorInformation ColorInformation[]} or a Thenable
|
* response is of type {@link ColorInformation ColorInformation[]} or a Thenable
|
||||||
* that resolves to such.
|
* that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentDocumentColor: unverifiedRequest<DocumentColorParams, (ColorInformation)[]>({ method: "textDocument/documentColor" }),
|
textDocumentDocumentColor: unverifiedRequest<DocumentColorParams, (ColorInformation)[]>({ method: "textDocument/documentColor" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to list all presentation for a color. The request's
|
* A request to list all presentation for a color. The request's
|
||||||
* parameter is of type {@link ColorPresentationParams} the
|
* parameter is of type {@link ColorPresentationParams} the
|
||||||
* response is of type {@link ColorInformation ColorInformation[]} or a Thenable
|
* response is of type {@link ColorInformation ColorInformation[]} or a Thenable
|
||||||
* that resolves to such.
|
* that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentColorPresentation: unverifiedRequest<ColorPresentationParams, (ColorPresentation)[]>({ method: "textDocument/colorPresentation" }),
|
textDocumentColorPresentation: unverifiedRequest<ColorPresentationParams, (ColorPresentation)[]>({ method: "textDocument/colorPresentation" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide folding ranges in a document. The request's
|
* A request to provide folding ranges in a document. The request's
|
||||||
* parameter is of type {@link FoldingRangeParams}, the
|
* parameter is of type {@link FoldingRangeParams}, the
|
||||||
* response is of type {@link FoldingRangeList} or a Thenable
|
* response is of type {@link FoldingRangeList} or a Thenable
|
||||||
* that resolves to such.
|
* that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentFoldingRange: unverifiedRequest<FoldingRangeParams, (FoldingRange)[] | null>({ method: "textDocument/foldingRange" }),
|
textDocumentFoldingRange: unverifiedRequest<FoldingRangeParams, (FoldingRange)[] | null>({ method: "textDocument/foldingRange" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the type definition locations of a symbol at a given text
|
* A request to resolve the type definition locations of a symbol at a given text
|
||||||
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
* document position. The request's parameter is of type {@link TextDocumentPositionParams}
|
||||||
* the response is of type {@link Declaration} or a typed array of {@link DeclarationLink}
|
* the response is of type {@link Declaration} or a typed array of {@link DeclarationLink}
|
||||||
* or a Thenable that resolves to such.
|
* or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentDeclaration: unverifiedRequest<DeclarationParams, Declaration | (DeclarationLink)[] | null>({ method: "textDocument/declaration" }),
|
textDocumentDeclaration: unverifiedRequest<DeclarationParams, Declaration | (DeclarationLink)[] | null>({ method: "textDocument/declaration" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide selection ranges in a document. The request's
|
* A request to provide selection ranges in a document. The request's
|
||||||
* parameter is of type {@link SelectionRangeParams}, the
|
* parameter is of type {@link SelectionRangeParams}, the
|
||||||
* response is of type {@link SelectionRange SelectionRange[]} or a Thenable
|
* response is of type {@link SelectionRange SelectionRange[]} or a Thenable
|
||||||
* that resolves to such.
|
* that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentSelectionRange: unverifiedRequest<SelectionRangeParams, (SelectionRange)[] | null>({ method: "textDocument/selectionRange" }),
|
textDocumentSelectionRange: unverifiedRequest<SelectionRangeParams, (SelectionRange)[] | null>({ method: "textDocument/selectionRange" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to result a `CallHierarchyItem` in a document at a given position.
|
* A request to result a `CallHierarchyItem` in a document at a given position.
|
||||||
* Can be used as an input to an incoming or outgoing call hierarchy.
|
* Can be used as an input to an incoming or outgoing call hierarchy.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
textDocumentPrepareCallHierarchy: unverifiedRequest<CallHierarchyPrepareParams, (CallHierarchyItem)[] | null>({ method: "textDocument/prepareCallHierarchy" }),
|
textDocumentPrepareCallHierarchy: unverifiedRequest<CallHierarchyPrepareParams, (CallHierarchyItem)[] | null>({ method: "textDocument/prepareCallHierarchy" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the incoming calls for a given `CallHierarchyItem`.
|
* A request to resolve the incoming calls for a given `CallHierarchyItem`.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
callHierarchyIncomingCalls: unverifiedRequest<CallHierarchyIncomingCallsParams, (CallHierarchyIncomingCall)[] | null>({ method: "callHierarchy/incomingCalls" }),
|
callHierarchyIncomingCalls: unverifiedRequest<CallHierarchyIncomingCallsParams, (CallHierarchyIncomingCall)[] | null>({ method: "callHierarchy/incomingCalls" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the outgoing calls for a given `CallHierarchyItem`.
|
* A request to resolve the outgoing calls for a given `CallHierarchyItem`.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
callHierarchyOutgoingCalls: unverifiedRequest<CallHierarchyOutgoingCallsParams, (CallHierarchyOutgoingCall)[] | null>({ method: "callHierarchy/outgoingCalls" }),
|
callHierarchyOutgoingCalls: unverifiedRequest<CallHierarchyOutgoingCallsParams, (CallHierarchyOutgoingCall)[] | null>({ method: "callHierarchy/outgoingCalls" }).optional(),
|
||||||
/**
|
/**
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
textDocumentSemanticTokensFull: unverifiedRequest<SemanticTokensParams, SemanticTokens | null>({ method: "textDocument/semanticTokens/full" }),
|
textDocumentSemanticTokensFull: unverifiedRequest<SemanticTokensParams, SemanticTokens | null>({ method: "textDocument/semanticTokens/full" }).optional(),
|
||||||
/**
|
/**
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
textDocumentSemanticTokensFullDelta: unverifiedRequest<SemanticTokensDeltaParams, SemanticTokens | SemanticTokensDelta | null>({ method: "textDocument/semanticTokens/full/delta" }),
|
textDocumentSemanticTokensFullDelta: unverifiedRequest<SemanticTokensDeltaParams, SemanticTokens | SemanticTokensDelta | null>({ method: "textDocument/semanticTokens/full/delta" }).optional(),
|
||||||
/**
|
/**
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
textDocumentSemanticTokensRange: unverifiedRequest<SemanticTokensRangeParams, SemanticTokens | null>({ method: "textDocument/semanticTokens/range" }),
|
textDocumentSemanticTokensRange: unverifiedRequest<SemanticTokensRangeParams, SemanticTokens | null>({ method: "textDocument/semanticTokens/range" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide ranges that can be edited together.
|
* A request to provide ranges that can be edited together.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
textDocumentLinkedEditingRange: unverifiedRequest<LinkedEditingRangeParams, LinkedEditingRanges | null>({ method: "textDocument/linkedEditingRange" }),
|
textDocumentLinkedEditingRange: unverifiedRequest<LinkedEditingRangeParams, LinkedEditingRanges | null>({ method: "textDocument/linkedEditingRange" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The will create files request is sent from the client to the server before files are actually
|
* The will create files request is sent from the client to the server before files are actually
|
||||||
* created as long as the creation is triggered from within the client.
|
* created as long as the creation is triggered from within the client.
|
||||||
|
|
@ -7055,46 +7057,46 @@ export const api = contract({
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
workspaceWillCreateFiles: unverifiedRequest<CreateFilesParams, WorkspaceEdit | null>({ method: "workspace/willCreateFiles" }),
|
workspaceWillCreateFiles: unverifiedRequest<CreateFilesParams, WorkspaceEdit | null>({ method: "workspace/willCreateFiles" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The will rename files request is sent from the client to the server before files are actually
|
* The will rename files request is sent from the client to the server before files are actually
|
||||||
* renamed as long as the rename is triggered from within the client.
|
* renamed as long as the rename is triggered from within the client.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
workspaceWillRenameFiles: unverifiedRequest<RenameFilesParams, WorkspaceEdit | null>({ method: "workspace/willRenameFiles" }),
|
workspaceWillRenameFiles: unverifiedRequest<RenameFilesParams, WorkspaceEdit | null>({ method: "workspace/willRenameFiles" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The did delete files notification is sent from the client to the server when
|
* The did delete files notification is sent from the client to the server when
|
||||||
* files were deleted from within the client.
|
* files were deleted from within the client.
|
||||||
*
|
*
|
||||||
* @since 3.16.0
|
* @since 3.16.0
|
||||||
*/
|
*/
|
||||||
workspaceWillDeleteFiles: unverifiedRequest<DeleteFilesParams, WorkspaceEdit | null>({ method: "workspace/willDeleteFiles" }),
|
workspaceWillDeleteFiles: unverifiedRequest<DeleteFilesParams, WorkspaceEdit | null>({ method: "workspace/willDeleteFiles" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to get the moniker of a symbol at a given text document position.
|
* A request to get the moniker of a symbol at a given text document position.
|
||||||
* The request parameter is of type {@link TextDocumentPositionParams}.
|
* The request parameter is of type {@link TextDocumentPositionParams}.
|
||||||
* The response is of type {@link Moniker Moniker[]} or `null`.
|
* The response is of type {@link Moniker Moniker[]} or `null`.
|
||||||
*/
|
*/
|
||||||
textDocumentMoniker: unverifiedRequest<MonikerParams, (Moniker)[] | null>({ method: "textDocument/moniker" }),
|
textDocumentMoniker: unverifiedRequest<MonikerParams, (Moniker)[] | null>({ method: "textDocument/moniker" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to result a `TypeHierarchyItem` in a document at a given position.
|
* A request to result a `TypeHierarchyItem` in a document at a given position.
|
||||||
* Can be used as an input to a subtypes or supertypes type hierarchy.
|
* Can be used as an input to a subtypes or supertypes type hierarchy.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
textDocumentPrepareTypeHierarchy: unverifiedRequest<TypeHierarchyPrepareParams, (TypeHierarchyItem)[] | null>({ method: "textDocument/prepareTypeHierarchy" }),
|
textDocumentPrepareTypeHierarchy: unverifiedRequest<TypeHierarchyPrepareParams, (TypeHierarchyItem)[] | null>({ method: "textDocument/prepareTypeHierarchy" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the supertypes for a given `TypeHierarchyItem`.
|
* A request to resolve the supertypes for a given `TypeHierarchyItem`.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
typeHierarchySupertypes: unverifiedRequest<TypeHierarchySupertypesParams, (TypeHierarchyItem)[] | null>({ method: "typeHierarchy/supertypes" }),
|
typeHierarchySupertypes: unverifiedRequest<TypeHierarchySupertypesParams, (TypeHierarchyItem)[] | null>({ method: "typeHierarchy/supertypes" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the subtypes for a given `TypeHierarchyItem`.
|
* A request to resolve the subtypes for a given `TypeHierarchyItem`.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
typeHierarchySubtypes: unverifiedRequest<TypeHierarchySubtypesParams, (TypeHierarchyItem)[] | null>({ method: "typeHierarchy/subtypes" }),
|
typeHierarchySubtypes: unverifiedRequest<TypeHierarchySubtypesParams, (TypeHierarchyItem)[] | null>({ method: "typeHierarchy/subtypes" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide inline values in a document. The request's parameter is of
|
* A request to provide inline values in a document. The request's parameter is of
|
||||||
* type {@link InlineValueParams}, the response is of type
|
* type {@link InlineValueParams}, the response is of type
|
||||||
|
|
@ -7102,7 +7104,7 @@ export const api = contract({
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
textDocumentInlineValue: unverifiedRequest<InlineValueParams, (InlineValue)[] | null>({ method: "textDocument/inlineValue" }),
|
textDocumentInlineValue: unverifiedRequest<InlineValueParams, (InlineValue)[] | null>({ method: "textDocument/inlineValue" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide inlay hints in a document. The request's parameter is of
|
* A request to provide inlay hints in a document. The request's parameter is of
|
||||||
* type {@link InlayHintsParams}, the response is of type
|
* type {@link InlayHintsParams}, the response is of type
|
||||||
|
|
@ -7110,7 +7112,7 @@ export const api = contract({
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
textDocumentInlayHint: unverifiedRequest<InlayHintParams, (InlayHint)[] | null>({ method: "textDocument/inlayHint" }),
|
textDocumentInlayHint: unverifiedRequest<InlayHintParams, (InlayHint)[] | null>({ method: "textDocument/inlayHint" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve additional properties for an inlay hint.
|
* A request to resolve additional properties for an inlay hint.
|
||||||
* The request's parameter is of type {@link InlayHint}, the response is
|
* The request's parameter is of type {@link InlayHint}, the response is
|
||||||
|
|
@ -7118,19 +7120,19 @@ export const api = contract({
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
inlayHintResolve: unverifiedRequest<InlayHint, InlayHint>({ method: "inlayHint/resolve" }),
|
inlayHintResolve: unverifiedRequest<InlayHint, InlayHint>({ method: "inlayHint/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The document diagnostic request definition.
|
* The document diagnostic request definition.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
textDocumentDiagnostic: unverifiedRequest<DocumentDiagnosticParams, DocumentDiagnosticReport>({ method: "textDocument/diagnostic" }),
|
textDocumentDiagnostic: unverifiedRequest<DocumentDiagnosticParams, DocumentDiagnosticReport>({ method: "textDocument/diagnostic" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The workspace diagnostic request definition.
|
* The workspace diagnostic request definition.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
workspaceDiagnostic: unverifiedRequest<WorkspaceDiagnosticParams, WorkspaceDiagnosticReport>({ method: "workspace/diagnostic" }),
|
workspaceDiagnostic: unverifiedRequest<WorkspaceDiagnosticParams, WorkspaceDiagnosticReport>({ method: "workspace/diagnostic" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide inline completions in a document. The request's parameter is of
|
* A request to provide inline completions in a document. The request's parameter is of
|
||||||
* type {@link InlineCompletionParams}, the response is of type
|
* type {@link InlineCompletionParams}, the response is of type
|
||||||
|
|
@ -7139,7 +7141,7 @@ export const api = contract({
|
||||||
* @since 3.18.0
|
* @since 3.18.0
|
||||||
* @proposed
|
* @proposed
|
||||||
*/
|
*/
|
||||||
textDocumentInlineCompletion: unverifiedRequest<InlineCompletionParams, InlineCompletionList | (InlineCompletionItem)[] | null>({ method: "textDocument/inlineCompletion" }),
|
textDocumentInlineCompletion: unverifiedRequest<InlineCompletionParams, InlineCompletionList | (InlineCompletionItem)[] | null>({ method: "textDocument/inlineCompletion" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The initialize request is sent from the client to the server.
|
* The initialize request is sent from the client to the server.
|
||||||
* It is sent once as the request after starting up the server.
|
* It is sent once as the request after starting up the server.
|
||||||
|
|
@ -7147,14 +7149,14 @@ export const api = contract({
|
||||||
* the response if of type {@link InitializeResult} of a Thenable that
|
* the response if of type {@link InitializeResult} of a Thenable that
|
||||||
* resolves to such.
|
* resolves to such.
|
||||||
*/
|
*/
|
||||||
initialize: unverifiedRequest<InitializeParams, InitializeResult>({ method: "initialize" }),
|
initialize: unverifiedRequest<InitializeParams, InitializeResult>({ method: "initialize" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A shutdown request is sent from the client to the server.
|
* A shutdown request is sent from the client to the server.
|
||||||
* It is sent once when the client decides to shutdown the
|
* It is sent once when the client decides to shutdown the
|
||||||
* server. The only notification that is sent after a shutdown request
|
* server. The only notification that is sent after a shutdown request
|
||||||
* is the exit event.
|
* is the exit event.
|
||||||
*/
|
*/
|
||||||
shutdown: unverifiedRequest<void, null>({ method: "shutdown" }),
|
shutdown: unverifiedRequest<void, null>({ method: "shutdown" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A document will save request is sent from the client to the server before
|
* A document will save request is sent from the client to the server before
|
||||||
* the document is actually saved. The request can return an array of TextEdits
|
* the document is actually saved. The request can return an array of TextEdits
|
||||||
|
|
@ -7163,7 +7165,7 @@ export const api = contract({
|
||||||
* server constantly fails on this request. This is done to keep the save fast and
|
* server constantly fails on this request. This is done to keep the save fast and
|
||||||
* reliable.
|
* reliable.
|
||||||
*/
|
*/
|
||||||
textDocumentWillSaveWaitUntil: unverifiedRequest<WillSaveTextDocumentParams, (TextEdit)[] | null>({ method: "textDocument/willSaveWaitUntil" }),
|
textDocumentWillSaveWaitUntil: unverifiedRequest<WillSaveTextDocumentParams, (TextEdit)[] | null>({ method: "textDocument/willSaveWaitUntil" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to request completion at a given text document position. The request's
|
* Request to request completion at a given text document position. The request's
|
||||||
* parameter is of type {@link TextDocumentPosition} the response
|
* parameter is of type {@link TextDocumentPosition} the response
|
||||||
|
|
@ -7175,58 +7177,58 @@ export const api = contract({
|
||||||
* request. However, properties that are needed for the initial sorting and filtering, like `sortText`,
|
* request. However, properties that are needed for the initial sorting and filtering, like `sortText`,
|
||||||
* `filterText`, `insertText`, and `textEdit`, must not be changed during resolve.
|
* `filterText`, `insertText`, and `textEdit`, must not be changed during resolve.
|
||||||
*/
|
*/
|
||||||
textDocumentCompletion: unverifiedRequest<CompletionParams, (CompletionItem)[] | CompletionList | null>({ method: "textDocument/completion" }),
|
textDocumentCompletion: unverifiedRequest<CompletionParams, (CompletionItem)[] | CompletionList | null>({ method: "textDocument/completion" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to resolve additional information for a given completion item.The request's
|
* Request to resolve additional information for a given completion item.The request's
|
||||||
* parameter is of type {@link CompletionItem} the response
|
* parameter is of type {@link CompletionItem} the response
|
||||||
* is of type {@link CompletionItem} or a Thenable that resolves to such.
|
* is of type {@link CompletionItem} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
completionItemResolve: unverifiedRequest<CompletionItem, CompletionItem>({ method: "completionItem/resolve" }),
|
completionItemResolve: unverifiedRequest<CompletionItem, CompletionItem>({ method: "completionItem/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to request hover information at a given text document position. The request's
|
* Request to request hover information at a given text document position. The request's
|
||||||
* parameter is of type {@link TextDocumentPosition} the response is of
|
* parameter is of type {@link TextDocumentPosition} the response is of
|
||||||
* type {@link Hover} or a Thenable that resolves to such.
|
* type {@link Hover} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentHover: unverifiedRequest<HoverParams, Hover | null>({ method: "textDocument/hover" }),
|
textDocumentHover: unverifiedRequest<HoverParams, Hover | null>({ method: "textDocument/hover" }).optional(),
|
||||||
textDocumentSignatureHelp: unverifiedRequest<SignatureHelpParams, SignatureHelp | null>({ method: "textDocument/signatureHelp" }),
|
textDocumentSignatureHelp: unverifiedRequest<SignatureHelpParams, SignatureHelp | null>({ method: "textDocument/signatureHelp" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the definition location of a symbol at a given text
|
* A request to resolve the definition location of a symbol at a given text
|
||||||
* document position. The request's parameter is of type {@link TextDocumentPosition}
|
* document position. The request's parameter is of type {@link TextDocumentPosition}
|
||||||
* the response is of either type {@link Definition} or a typed array of
|
* the response is of either type {@link Definition} or a typed array of
|
||||||
* {@link DefinitionLink} or a Thenable that resolves to such.
|
* {@link DefinitionLink} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentDefinition: unverifiedRequest<DefinitionParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/definition" }),
|
textDocumentDefinition: unverifiedRequest<DefinitionParams, Definition | (DefinitionLink)[] | null>({ method: "textDocument/definition" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve project-wide references for the symbol denoted
|
* A request to resolve project-wide references for the symbol denoted
|
||||||
* by the given text document position. The request's parameter is of
|
* by the given text document position. The request's parameter is of
|
||||||
* type {@link ReferenceParams} the response is of type
|
* type {@link ReferenceParams} the response is of type
|
||||||
* {@link Location Location[]} or a Thenable that resolves to such.
|
* {@link Location Location[]} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentReferences: unverifiedRequest<ReferenceParams, (Location)[] | null>({ method: "textDocument/references" }),
|
textDocumentReferences: unverifiedRequest<ReferenceParams, (Location)[] | null>({ method: "textDocument/references" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to resolve a {@link DocumentHighlight} for a given
|
* Request to resolve a {@link DocumentHighlight} for a given
|
||||||
* text document position. The request's parameter is of type {@link TextDocumentPosition}
|
* text document position. The request's parameter is of type {@link TextDocumentPosition}
|
||||||
* the request response is an array of type {@link DocumentHighlight}
|
* the request response is an array of type {@link DocumentHighlight}
|
||||||
* or a Thenable that resolves to such.
|
* or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentDocumentHighlight: unverifiedRequest<DocumentHighlightParams, (DocumentHighlight)[] | null>({ method: "textDocument/documentHighlight" }),
|
textDocumentDocumentHighlight: unverifiedRequest<DocumentHighlightParams, (DocumentHighlight)[] | null>({ method: "textDocument/documentHighlight" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to list all symbols found in a given text document. The request's
|
* A request to list all symbols found in a given text document. The request's
|
||||||
* parameter is of type {@link TextDocumentIdentifier} the
|
* parameter is of type {@link TextDocumentIdentifier} the
|
||||||
* response is of type {@link SymbolInformation SymbolInformation[]} or a Thenable
|
* response is of type {@link SymbolInformation SymbolInformation[]} or a Thenable
|
||||||
* that resolves to such.
|
* that resolves to such.
|
||||||
*/
|
*/
|
||||||
textDocumentDocumentSymbol: unverifiedRequest<DocumentSymbolParams, (SymbolInformation)[] | (DocumentSymbol)[] | null>({ method: "textDocument/documentSymbol" }),
|
textDocumentDocumentSymbol: unverifiedRequest<DocumentSymbolParams, (SymbolInformation)[] | (DocumentSymbol)[] | null>({ method: "textDocument/documentSymbol" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide commands for the given text document and range.
|
* A request to provide commands for the given text document and range.
|
||||||
*/
|
*/
|
||||||
textDocumentCodeAction: unverifiedRequest<CodeActionParams, (Command | CodeAction)[] | null>({ method: "textDocument/codeAction" }),
|
textDocumentCodeAction: unverifiedRequest<CodeActionParams, (Command | CodeAction)[] | null>({ method: "textDocument/codeAction" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to resolve additional information for a given code action.The request's
|
* Request to resolve additional information for a given code action.The request's
|
||||||
* parameter is of type {@link CodeAction} the response
|
* parameter is of type {@link CodeAction} the response
|
||||||
* is of type {@link CodeAction} or a Thenable that resolves to such.
|
* is of type {@link CodeAction} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
codeActionResolve: unverifiedRequest<CodeAction, CodeAction>({ method: "codeAction/resolve" }),
|
codeActionResolve: unverifiedRequest<CodeAction, CodeAction>({ method: "codeAction/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to list project-wide symbols matching the query string given
|
* A request to list project-wide symbols matching the query string given
|
||||||
* by the {@link WorkspaceSymbolParams}. The response is
|
* by the {@link WorkspaceSymbolParams}. The response is
|
||||||
|
|
@ -7238,66 +7240,66 @@ export const api = contract({
|
||||||
* `workspace.symbol.resolveSupport`.
|
* `workspace.symbol.resolveSupport`.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
workspaceSymbol: unverifiedRequest<WorkspaceSymbolParams, (SymbolInformation)[] | (WorkspaceSymbol)[] | null>({ method: "workspace/symbol" }),
|
workspaceSymbol: unverifiedRequest<WorkspaceSymbolParams, (SymbolInformation)[] | (WorkspaceSymbol)[] | null>({ method: "workspace/symbol" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve the range inside the workspace
|
* A request to resolve the range inside the workspace
|
||||||
* symbol's location.
|
* symbol's location.
|
||||||
*
|
*
|
||||||
* @since 3.17.0
|
* @since 3.17.0
|
||||||
*/
|
*/
|
||||||
workspaceSymbolResolve: unverifiedRequest<WorkspaceSymbol, WorkspaceSymbol>({ method: "workspaceSymbol/resolve" }),
|
workspaceSymbolResolve: unverifiedRequest<WorkspaceSymbol, WorkspaceSymbol>({ method: "workspaceSymbol/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide code lens for the given text document.
|
* A request to provide code lens for the given text document.
|
||||||
*/
|
*/
|
||||||
textDocumentCodeLens: unverifiedRequest<CodeLensParams, (CodeLens)[] | null>({ method: "textDocument/codeLens" }),
|
textDocumentCodeLens: unverifiedRequest<CodeLensParams, (CodeLens)[] | null>({ method: "textDocument/codeLens" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to resolve a command for a given code lens.
|
* A request to resolve a command for a given code lens.
|
||||||
*/
|
*/
|
||||||
codeLensResolve: unverifiedRequest<CodeLens, CodeLens>({ method: "codeLens/resolve" }),
|
codeLensResolve: unverifiedRequest<CodeLens, CodeLens>({ method: "codeLens/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to provide document links
|
* A request to provide document links
|
||||||
*/
|
*/
|
||||||
textDocumentDocumentLink: unverifiedRequest<DocumentLinkParams, (DocumentLink)[] | null>({ method: "textDocument/documentLink" }),
|
textDocumentDocumentLink: unverifiedRequest<DocumentLinkParams, (DocumentLink)[] | null>({ method: "textDocument/documentLink" }).optional(),
|
||||||
/**
|
/**
|
||||||
* Request to resolve additional information for a given document link. The request's
|
* Request to resolve additional information for a given document link. The request's
|
||||||
* parameter is of type {@link DocumentLink} the response
|
* parameter is of type {@link DocumentLink} the response
|
||||||
* is of type {@link DocumentLink} or a Thenable that resolves to such.
|
* is of type {@link DocumentLink} or a Thenable that resolves to such.
|
||||||
*/
|
*/
|
||||||
documentLinkResolve: unverifiedRequest<DocumentLink, DocumentLink>({ method: "documentLink/resolve" }),
|
documentLinkResolve: unverifiedRequest<DocumentLink, DocumentLink>({ method: "documentLink/resolve" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to format a whole document.
|
* A request to format a whole document.
|
||||||
*/
|
*/
|
||||||
textDocumentFormatting: unverifiedRequest<DocumentFormattingParams, (TextEdit)[] | null>({ method: "textDocument/formatting" }),
|
textDocumentFormatting: unverifiedRequest<DocumentFormattingParams, (TextEdit)[] | null>({ method: "textDocument/formatting" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to format a range in a document.
|
* A request to format a range in a document.
|
||||||
*/
|
*/
|
||||||
textDocumentRangeFormatting: unverifiedRequest<DocumentRangeFormattingParams, (TextEdit)[] | null>({ method: "textDocument/rangeFormatting" }),
|
textDocumentRangeFormatting: unverifiedRequest<DocumentRangeFormattingParams, (TextEdit)[] | null>({ method: "textDocument/rangeFormatting" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to format ranges in a document.
|
* A request to format ranges in a document.
|
||||||
*
|
*
|
||||||
* @since 3.18.0
|
* @since 3.18.0
|
||||||
* @proposed
|
* @proposed
|
||||||
*/
|
*/
|
||||||
textDocumentRangesFormatting: unverifiedRequest<DocumentRangesFormattingParams, (TextEdit)[] | null>({ method: "textDocument/rangesFormatting" }),
|
textDocumentRangesFormatting: unverifiedRequest<DocumentRangesFormattingParams, (TextEdit)[] | null>({ method: "textDocument/rangesFormatting" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to format a document on type.
|
* A request to format a document on type.
|
||||||
*/
|
*/
|
||||||
textDocumentOnTypeFormatting: unverifiedRequest<DocumentOnTypeFormattingParams, (TextEdit)[] | null>({ method: "textDocument/onTypeFormatting" }),
|
textDocumentOnTypeFormatting: unverifiedRequest<DocumentOnTypeFormattingParams, (TextEdit)[] | null>({ method: "textDocument/onTypeFormatting" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to rename a symbol.
|
* A request to rename a symbol.
|
||||||
*/
|
*/
|
||||||
textDocumentRename: unverifiedRequest<RenameParams, WorkspaceEdit | null>({ method: "textDocument/rename" }),
|
textDocumentRename: unverifiedRequest<RenameParams, WorkspaceEdit | null>({ method: "textDocument/rename" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request to test and perform the setup necessary for a rename.
|
* A request to test and perform the setup necessary for a rename.
|
||||||
*
|
*
|
||||||
* @since 3.16 - support for default behavior
|
* @since 3.16 - support for default behavior
|
||||||
*/
|
*/
|
||||||
textDocumentPrepareRename: unverifiedRequest<PrepareRenameParams, PrepareRenameResult | null>({ method: "textDocument/prepareRename" }),
|
textDocumentPrepareRename: unverifiedRequest<PrepareRenameParams, PrepareRenameResult | null>({ method: "textDocument/prepareRename" }).optional(),
|
||||||
/**
|
/**
|
||||||
* A request send from the client to the server to execute a command. The request might return
|
* A request send from the client to the server to execute a command. The request might return
|
||||||
* a workspace edit which the client will apply to the workspace.
|
* a workspace edit which the client will apply to the workspace.
|
||||||
*/
|
*/
|
||||||
workspaceExecuteCommand: unverifiedRequest<ExecuteCommandParams, LSPAny | null>({ method: "workspace/executeCommand" }),
|
workspaceExecuteCommand: unverifiedRequest<ExecuteCommandParams, LSPAny | null>({ method: "workspace/executeCommand" }).optional(),
|
||||||
/**
|
/**
|
||||||
* The `workspace/didChangeWorkspaceFolders` notification is sent from the client to the server when the workspace
|
* The `workspace/didChangeWorkspaceFolders` notification is sent from the client to the server when the workspace
|
||||||
* folder configuration changes.
|
* folder configuration changes.
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
import './style.css';
|
import './style.css';
|
||||||
import * as monaco from '../../src/editor/editor.main';
|
import * as monaco from '../../src/editor/editor.main';
|
||||||
|
import type { WorkerImpl } from './worker';
|
||||||
|
|
||||||
monaco.languages.register({ id: 'typescript' });
|
monaco.languages.register({ id: 'typescript' });
|
||||||
|
|
||||||
|
|
@ -11,3 +12,33 @@ const editor = monaco.editor.create(document.getElementById('root')!, {
|
||||||
language: 'typescript',
|
language: 'typescript',
|
||||||
theme: 'vs-dark',
|
theme: 'vs-dark',
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export class ClientImpl extends Disposable {
|
||||||
|
private readonly _workerImpl: WorkerImpl;
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
|
||||||
|
const w = new Worker(new URL('./worker.ts', import.meta.url), { type: 'module' });
|
||||||
|
const t = monaco.lsp.createTransportToWorker(w);
|
||||||
|
const client = this._register(new monaco.lsp.MonacoLspClient(t));
|
||||||
|
|
||||||
|
this._workerImpl = getRemoteObject<WorkerImpl>(client.channel);
|
||||||
|
this._register(registerLocalObject(client.channel, this));
|
||||||
|
|
||||||
|
|
||||||
|
this._workerImpl.$setTextToWarnFor('warn', 'This is a warning from the LSP server!');
|
||||||
|
|
||||||
|
// this should now see all text documents
|
||||||
|
this._workerImpl.$getDiagnosticsCount().then(count => {
|
||||||
|
console.log(`Diagnostics count: ${count}`);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$callback(): void {
|
||||||
|
console.log('Callback from server received!');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
117
samples/browser-esm-vite/worker.ts
Normal file
117
samples/browser-esm-vite/worker.ts
Normal file
|
|
@ -0,0 +1,117 @@
|
||||||
|
import * as m from '@vscode/monaco-lsp-client/src/types';
|
||||||
|
import { createTransportFromWorkerToParent } from '@hediet/json-rpc-browser';
|
||||||
|
import { TypedChannel, IMessageTransport } from '@hediet/json-rpc';
|
||||||
|
import type { ClientImpl } from './main';
|
||||||
|
|
||||||
|
|
||||||
|
class LspConnection {
|
||||||
|
constructor(
|
||||||
|
public readonly server: typeof client,
|
||||||
|
public readonly channel: TypedChannel,
|
||||||
|
) { }
|
||||||
|
}
|
||||||
|
|
||||||
|
class TextDocuments {
|
||||||
|
constructor(connection: LspConnection) {
|
||||||
|
const { client } = m.api.registerServer(connection.channel, {
|
||||||
|
textDocumentDidOpen: async (arg, info) => {
|
||||||
|
arg.textDocument.text;
|
||||||
|
},
|
||||||
|
textDocumentDidClose: async (arg, info) => {
|
||||||
|
arg.textDocument.uri;
|
||||||
|
},
|
||||||
|
textDocumentDidChange: async (arg, info) => {
|
||||||
|
arg.contentChanges;
|
||||||
|
arg.textDocument.uri;
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
getTextModel(uri: string): TextModel | null {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
getTextModelOrThrow(uri: string | m.TextDocumentIdentifier): TextModel {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class TextModel {
|
||||||
|
getValue(): string {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class LspServer {
|
||||||
|
public static create(transport: IMessageTransport): LspServer { }
|
||||||
|
|
||||||
|
public readonly textDocuments: TextDocuments;
|
||||||
|
public readonly server: typeof m.api.TClientInterface;
|
||||||
|
public readonly channel: TypedChannel;
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
channel: TypedChannel,
|
||||||
|
) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public startListen(): void { }
|
||||||
|
}
|
||||||
|
|
||||||
|
const channel = TypedChannel.fromTransport(transport);
|
||||||
|
const { client } = m.api.registerServer(channel, {
|
||||||
|
initialize: async (arg, info) => {
|
||||||
|
return {
|
||||||
|
capabilities: {
|
||||||
|
textDocumentSync: m.TextDocumentSyncKind.Full,
|
||||||
|
diagnosticProvider: {
|
||||||
|
interFileDependencies: false,
|
||||||
|
workspaceDiagnostics: false,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export class WorkerImpl extends Disposable {
|
||||||
|
private readonly _clientImpl: ClientImpl;
|
||||||
|
private readonly _server: LspServer;
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
|
||||||
|
this._server = LspServer.create(createTransportFromWorkerToParent());
|
||||||
|
|
||||||
|
this._clientImpl = getRemoteObject<ClientImpl>(server.channel);
|
||||||
|
this._register(registerLocalObject(server.channel, this));
|
||||||
|
|
||||||
|
this._clientImpl.$callback();
|
||||||
|
|
||||||
|
m.api.registerServer(this._server.channel, {
|
||||||
|
textDocumentDiagnostic: async (arg) => {
|
||||||
|
const doc = this._server.textDocuments.getTextModelOrThrow(arg.textDocument);
|
||||||
|
|
||||||
|
return {
|
||||||
|
items: [],
|
||||||
|
kind: "full",
|
||||||
|
};
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$setTextToWarnFor(text: string, message: string): void {
|
||||||
|
this._server.server.workspaceDiagnosticRefresh();
|
||||||
|
}
|
||||||
|
|
||||||
|
$getDiagnosticsCount(): Promise<number> {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue