From 8a2b406930aa2149e261480c9cf28f389f504ad8 Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Wed, 9 Jan 2019 16:13:29 +0100 Subject: [PATCH] Adopt native promises --- src/cssMode.ts | 5 ----- src/cssWorker.ts | 27 +++++++++++++-------------- src/languageFeatures.ts | 1 - src/monaco.contribution.ts | 4 ++-- src/workerManager.ts | 3 +-- 5 files changed, 16 insertions(+), 24 deletions(-) diff --git a/src/cssMode.ts b/src/cssMode.ts index 52777a9f..387f1cf6 100644 --- a/src/cssMode.ts +++ b/src/cssMode.ts @@ -9,7 +9,6 @@ import { CSSWorker } from './cssWorker'; import { LanguageServiceDefaultsImpl } from './monaco.contribution'; import * as languageFeatures from './languageFeatures'; -import Promise = monaco.Promise; import Uri = monaco.Uri; export function setupMode(defaults: LanguageServiceDefaultsImpl): void { @@ -33,7 +32,3 @@ export function setupMode(defaults: LanguageServiceDefaultsImpl): void { monaco.languages.registerFoldingRangeProvider(languageId, new languageFeatures.FoldingRangeAdapter(worker)); new languageFeatures.DiagnosticsAdapter(languageId, worker, defaults); } - - - - diff --git a/src/cssWorker.ts b/src/cssWorker.ts index f1d2a936..c7d94993 100644 --- a/src/cssWorker.ts +++ b/src/cssWorker.ts @@ -5,7 +5,6 @@ 'use strict'; import Thenable = monaco.Thenable; -import Promise = monaco.Promise; import IWorkerContext = monaco.worker.IWorkerContext; import * as cssService from 'vscode-css-languageservice'; @@ -47,74 +46,74 @@ export class CSSWorker { if (document) { let stylesheet = this._languageService.parseStylesheet(document); let diagnostics = this._languageService.doValidation(document, stylesheet); - return Promise.as(diagnostics) + return Promise.resolve(diagnostics) } - return Promise.as([]); + return Promise.resolve([]); } doComplete(uri: string, position: ls.Position): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let completions = this._languageService.doComplete(document, position, stylesheet); - return Promise.as(completions); + return Promise.resolve(completions); } doHover(uri: string, position: ls.Position): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let hover = this._languageService.doHover(document, position, stylesheet); - return Promise.as(hover); + return Promise.resolve(hover); } findDefinition(uri: string, position: ls.Position): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let definition = this._languageService.findDefinition(document, position, stylesheet); - return Promise.as(definition); + return Promise.resolve(definition); } findReferences(uri: string, position: ls.Position): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let references = this._languageService.findReferences(document, position, stylesheet); - return Promise.as(references); + return Promise.resolve(references); } findDocumentHighlights(uri: string, position: ls.Position): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let highlights = this._languageService.findDocumentHighlights(document, position, stylesheet); - return Promise.as(highlights); + return Promise.resolve(highlights); } findDocumentSymbols(uri: string): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let symbols = this._languageService.findDocumentSymbols(document, stylesheet); - return Promise.as(symbols); + return Promise.resolve(symbols); } doCodeActions(uri: string, range: ls.Range, context: ls.CodeActionContext): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let actions = this._languageService.doCodeActions(document, range, context, stylesheet); - return Promise.as(actions); + return Promise.resolve(actions); } findDocumentColors(uri: string): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let colorSymbols = this._languageService.findDocumentColors(document, stylesheet); - return Promise.as(colorSymbols); + return Promise.resolve(colorSymbols); } getColorPresentations(uri: string, color: ls.Color, range: ls.Range): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let colorPresentations = this._languageService.getColorPresentations(document, stylesheet, color, range); - return Promise.as(colorPresentations); + return Promise.resolve(colorPresentations); } provideFoldingRanges(uri: string, context?: { rangeLimit?: number; }): Thenable { let document = this._getTextDocument(uri); let ranges = this._languageService.getFoldingRanges(document, context); - return Promise.as(ranges); + return Promise.resolve(ranges); } doRename(uri: string, position: ls.Position, newName: string): Thenable { let document = this._getTextDocument(uri); let stylesheet = this._languageService.parseStylesheet(document); let renames = this._languageService.doRename(document, position, newName, stylesheet); - return Promise.as(renames); + return Promise.resolve(renames); } private _getTextDocument(uri: string): ls.TextDocument { let models = this._ctx.getMirrorModels(); diff --git a/src/languageFeatures.ts b/src/languageFeatures.ts index 3e746c59..87a6c486 100644 --- a/src/languageFeatures.ts +++ b/src/languageFeatures.ts @@ -14,7 +14,6 @@ import Position = monaco.Position; import IRange = monaco.IRange; import Range = monaco.Range; import Thenable = monaco.Thenable; -import Promise = monaco.Promise; import CancellationToken = monaco.CancellationToken; import IDisposable = monaco.IDisposable; diff --git a/src/monaco.contribution.ts b/src/monaco.contribution.ts index 70d6ba85..e69cf321 100644 --- a/src/monaco.contribution.ts +++ b/src/monaco.contribution.ts @@ -82,8 +82,8 @@ monaco.languages.css = createAPI(); // --- Registration to monaco editor --- -function getMode(): monaco.Promise { - return monaco.Promise.wrap(import('./cssMode')) +function getMode(): Promise { + return import('./cssMode'); } monaco.languages.onLanguage('less', () => { diff --git a/src/workerManager.ts b/src/workerManager.ts index 29541d8a..87fc0b1f 100644 --- a/src/workerManager.ts +++ b/src/workerManager.ts @@ -7,7 +7,6 @@ import { LanguageServiceDefaultsImpl } from './monaco.contribution'; import { CSSWorker } from './cssWorker'; -import Promise = monaco.Promise; import IDisposable = monaco.IDisposable; import Uri = monaco.Uri; @@ -73,7 +72,7 @@ export class WorkerManager { } }); - this._client = this._worker.getProxy(); + this._client = >this._worker.getProxy(); } return this._client;