UNPKG

flink-cdc-language-server

Version:

A LSP-based language server for Apache Flink CDC

43 lines 2.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.YamlLanguageService = void 0; const vscode_languageserver_types_1 = require("vscode-languageserver-types"); const yamlLanguageService_1 = require("yaml-language-server/lib/esm/languageservice/yamlLanguageService"); class YamlLanguageService { constructor(languageSettings, options) { this.languageSettings = languageSettings; this.options = options; this._server = null; this.hoverMarkdownSource = 'Source: [flink-cdc-docs-release-3.1](https://nightlies.apache.org/flink/flink-cdc-docs-release-3.1/)'; this._server = (0, yamlLanguageService_1.getLanguageService)(this.options); this._server.configure(this.languageSettings); } async doValidation(textDocument) { return this._server.doValidation(textDocument, false); } getFoldingRanges(textDocument) { return this._server.getFoldingRanges(textDocument, {}); } async doHover(textDocument, position) { return this._server.doHover(textDocument, position).then(hover => { if (hover && vscode_languageserver_types_1.MarkupContent.is(hover.contents)) { let value = hover.contents.value; value = value.replace(this.hoverMarkdownSource, 'Source: [Flink CDC Docs](https://nightlies.apache.org/flink/flink-cdc-docs-release-3.1/docs/core-concept/data-pipeline/)'); value = value.replace(/(\\\*){2,}/g, '**'); hover.contents.value = value; } return hover; }); } async doCompletion(textDocument, position) { return this._server.doComplete(textDocument, position, false); } doFormat(textDocument, options) { return this._server.doFormat(textDocument, options); } findDocumentSymbols(textDocument) { return this._server.findDocumentSymbols2(textDocument); } } exports.YamlLanguageService = YamlLanguageService; //# sourceMappingURL=lsp-server.js.map