mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-22 09:38:38 +01:00
This makes the css, html, and json language servers to use the `webworker` typings. This lets us avoid having to redeclare `self`
31 lines
1.3 KiB
TypeScript
31 lines
1.3 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import { createConnection, BrowserMessageReader, BrowserMessageWriter, Disposable } from 'vscode-languageserver/browser';
|
|
import { RuntimeEnvironment, startServer } from '../cssServer';
|
|
|
|
const messageReader = new BrowserMessageReader(self);
|
|
const messageWriter = new BrowserMessageWriter(self);
|
|
|
|
const connection = createConnection(messageReader, messageWriter);
|
|
|
|
console.log = connection.console.log.bind(connection.console);
|
|
console.error = connection.console.error.bind(connection.console);
|
|
|
|
const runtime: RuntimeEnvironment = {
|
|
timer: {
|
|
setImmediate(callback: (...args: any[]) => void, ...args: any[]): Disposable {
|
|
const handle = setTimeout(callback, 0, ...args);
|
|
return { dispose: () => clearTimeout(handle) };
|
|
},
|
|
setTimeout(callback: (...args: any[]) => void, ms: number, ...args: any[]): Disposable {
|
|
const handle = setTimeout(callback, ms, ...args);
|
|
return { dispose: () => clearTimeout(handle) };
|
|
}
|
|
}
|
|
};
|
|
|
|
startServer(connection, runtime);
|