Merge pull request #95 from github/cschleiden/support-browser-clients

Support webWorker clients
This commit is contained in:
Christopher Schleiden
2023-01-23 08:25:45 -08:00
committed by GitHub
3 changed files with 26 additions and 15 deletions
+23 -4
View File
@@ -1,7 +1,26 @@
import {createConnection} from "vscode-languageserver/node";
import {Connection} from "vscode-languageserver";
import {
BrowserMessageReader,
BrowserMessageWriter,
createConnection as createBrowserConnection
} from "vscode-languageserver/browser";
import {createConnection as createNodeConnection} from "vscode-languageserver/node";
import {initConnection} from "./connection";
// By default create node connection
const connection = createConnection();
initConnection(connection);
/** Helper function determining whether we are executing with node runtime */
function isNode(): boolean {
return typeof process !== "undefined" && process.versions?.node != null;
}
function getConnection(): Connection {
if (isNode()) {
return createNodeConnection();
} else {
const messageReader = new BrowserMessageReader(self);
const messageWriter = new BrowserMessageWriter(self);
return createBrowserConnection(messageReader, messageWriter);
}
}
initConnection(getConnection());
+2 -1
View File
@@ -7,7 +7,8 @@
"forceConsistentCasingInFileNames": true,
"sourceMap": true,
"strict": true,
"moduleResolution": "node"
"moduleResolution": "node",
"lib": ["es6", "webworker"]
},
"watchOptions": {
"watchFile": "useFsEvents",
@@ -1,10 +1 @@
import {BrowserMessageReader, BrowserMessageWriter, createConnection} from "vscode-languageserver/browser.js";
import {initConnection} from "@github/actions-languageserver/connection";
const messageReader = new BrowserMessageReader(self);
const messageWriter = new BrowserMessageWriter(self);
const connection = createConnection(messageReader, messageWriter);
initConnection(connection);
import "@github/actions-languageserver";