monaco-editor
Version:
A browser based code editor
97 lines (96 loc) • 3.88 kB
JavaScript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { createDecorator } from '../../instantiation/common/instantiation.js';
import { localize } from '../../../nls.js';
import Severity from '../../../base/common/severity.js';
export var MarkerSeverity;
(function (MarkerSeverity) {
MarkerSeverity[MarkerSeverity["Hint"] = 1] = "Hint";
MarkerSeverity[MarkerSeverity["Info"] = 2] = "Info";
MarkerSeverity[MarkerSeverity["Warning"] = 4] = "Warning";
MarkerSeverity[MarkerSeverity["Error"] = 8] = "Error";
})(MarkerSeverity || (MarkerSeverity = {}));
(function (MarkerSeverity) {
function compare(a, b) {
return b - a;
}
MarkerSeverity.compare = compare;
var _displayStrings = Object.create(null);
_displayStrings[MarkerSeverity.Error] = localize('sev.error', "Error");
_displayStrings[MarkerSeverity.Warning] = localize('sev.warning', "Warning");
_displayStrings[MarkerSeverity.Info] = localize('sev.info', "Info");
function toString(a) {
return _displayStrings[a] || '';
}
MarkerSeverity.toString = toString;
function fromSeverity(severity) {
switch (severity) {
case Severity.Error: return MarkerSeverity.Error;
case Severity.Warning: return MarkerSeverity.Warning;
case Severity.Info: return MarkerSeverity.Info;
case Severity.Ignore: return MarkerSeverity.Hint;
}
}
MarkerSeverity.fromSeverity = fromSeverity;
})(MarkerSeverity || (MarkerSeverity = {}));
export var IMarkerData;
(function (IMarkerData) {
var emptyString = '';
function makeKey(markerData) {
var result = [emptyString];
if (markerData.source) {
result.push(markerData.source.replace('¦', '\¦'));
}
else {
result.push(emptyString);
}
if (markerData.code) {
result.push(markerData.code.replace('¦', '\¦'));
}
else {
result.push(emptyString);
}
if (markerData.severity !== void 0 && markerData.severity !== null) {
result.push(MarkerSeverity.toString(markerData.severity));
}
else {
result.push(emptyString);
}
if (markerData.message) {
result.push(markerData.message.replace('¦', '\¦'));
}
else {
result.push(emptyString);
}
if (markerData.startLineNumber !== void 0 && markerData.startLineNumber !== null) {
result.push(markerData.startLineNumber.toString());
}
else {
result.push(emptyString);
}
if (markerData.startColumn !== void 0 && markerData.startColumn !== null) {
result.push(markerData.startColumn.toString());
}
else {
result.push(emptyString);
}
if (markerData.endLineNumber !== void 0 && markerData.endLineNumber !== null) {
result.push(markerData.endLineNumber.toString());
}
else {
result.push(emptyString);
}
if (markerData.endColumn !== void 0 && markerData.endColumn !== null) {
result.push(markerData.endColumn.toString());
}
else {
result.push(emptyString);
}
result.push(emptyString);
return result.join('¦');
}
IMarkerData.makeKey = makeKey;
})(IMarkerData || (IMarkerData = {}));
export var IMarkerService = createDecorator('markerService');