Update to monaco-editor-core@0.5.1

This commit is contained in:
Alex Dima 2016-06-24 20:39:54 +02:00
parent ef359fa044
commit 7fb0572779
3 changed files with 13 additions and 22 deletions

View file

@ -5,6 +5,7 @@
'use strict';
import Promise = monaco.Promise;
import IWorkerContext = monaco.worker.IWorkerContext;
import * as cssService from 'vscode-css-languageservice';
import * as ls from 'vscode-languageserver-types';
@ -13,11 +14,13 @@ export class CSSWorker {
// --- model sync -----------------------
private _ctx:IWorkerContext;
private _languageService: cssService.LanguageService;
private _languageSettings: cssService.LanguageSettings;
private _languageId: string;
constructor(createData: ICreateData) {
constructor(ctx:IWorkerContext, createData: ICreateData) {
this._ctx = ctx;
this._languageSettings = createData.languageSettings;
this._languageId = createData.languageId;
switch (this._languageId) {
@ -99,10 +102,10 @@ export class CSSWorker {
return Promise.as(renames);
}
private _getTextDocument(uri: string): ls.TextDocument {
let models = monaco.worker.getMirrorModels();
let models = this._ctx.getMirrorModels();
for (let model of models) {
if (model.uri.toString() === uri) {
return ls.TextDocument.create(uri, this._languageId, model.version, model.getText());
return ls.TextDocument.create(uri, this._languageId, model.version, model.getValue());
}
}
return null;
@ -114,6 +117,6 @@ export interface ICreateData {
languageSettings: cssService.LanguageSettings;
}
export function create(createData: ICreateData): CSSWorker {
return new CSSWorker(createData);
export function create(ctx:IWorkerContext, createData: ICreateData): CSSWorker {
return new CSSWorker(ctx, createData);
}

View file

@ -210,26 +210,14 @@ export class CompletionAdapter implements monaco.languages.CompletionItemProvide
}
}
function toHTMLContentElements(contents: ls.MarkedString | ls.MarkedString[]): monaco.IHTMLContentElement[] {
function toMarkedStringArray(contents: ls.MarkedString | ls.MarkedString[]): monaco.MarkedString[] {
if (!contents) {
return void 0;
}
let toHTMLContentElement = (ms: ls.MarkedString): monaco.IHTMLContentElement => {
if (typeof ms === 'string') {
return { text: ms };
}
return {
code: {
value: ms['value'],
language: ms['language']
}
};
};
if (Array.isArray(contents)) {
return (<ls.MarkedString[]>contents).map(toHTMLContentElement);
return (<ls.MarkedString[]>contents);
}
return [toHTMLContentElement(<ls.MarkedString>contents)];
return [<ls.MarkedString>contents];
}
@ -251,7 +239,7 @@ export class HoverAdapter implements monaco.languages.HoverProvider {
}
return <monaco.languages.Hover>{
range: toRange(info.range),
htmlContent: toHTMLContentElements(info.contents)
contents: toMarkedStringArray(info.contents)
};
}));
}