From 2118c084f57c871d6b1112bd5c97124fcd079eb0 Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Tue, 29 Mar 2016 16:39:30 +0200 Subject: [PATCH] some lib.d.ts --- .../typescript/common/worker/workerManager.ts | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/vs/languages/typescript/common/worker/workerManager.ts b/src/vs/languages/typescript/common/worker/workerManager.ts index 5c0095b612c..2f3415c1072 100644 --- a/src/vs/languages/typescript/common/worker/workerManager.ts +++ b/src/vs/languages/typescript/common/worker/workerManager.ts @@ -4,6 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; +import URI from 'vs/base/common/uri'; import {TPromise} from 'vs/base/common/winjs.base'; import {DefaultWorkerFactory} from 'vs/base/worker/defaultWorkerFactory'; import {SimpleWorkerClient} from 'vs/base/common/worker/simpleWorker'; @@ -11,12 +12,30 @@ import AbstractWorker from './worker'; import {IModelService} from 'vs/editor/common/services/modelService'; import registerLanguageFeatures from '../languageFeatures'; +import 'vs/text!vs/languages/typescript/common/lib/lib.d.ts'; +import 'vs/text!vs/languages/typescript/common/lib/lib.es6.d.ts'; + + +function loadDefaultLib(modelService: IModelService, path: string): TPromise { + return new TPromise((resolve, reject) => { + require([path], lib => { + modelService.createModel(lib, null, URI.parse('ts:' + path)); + resolve(undefined); + }, reject); + }); +} + export function create(selector: string, modelService: IModelService) { const factory = new DefaultWorkerFactory(); let client: SimpleWorkerClient; let handle: number; + let defaultLibs = TPromise.join([ + // loadDefaultLib(modelService, 'vs/text!vs/languages/typescript/common/lib/lib.d.ts'), + loadDefaultLib(modelService, 'vs/text!vs/languages/typescript/common/lib/lib.es6.d.ts') + ]); + const worker = () => { if (!client) { @@ -54,7 +73,8 @@ export function create(selector: string, modelService: IModelService) { } })); }); - return TPromise.join(promises).then(() => result); + + return TPromise.join(promises).then(() => defaultLibs).then(() => result); }; // --- register features -- GitLab