Files
ry.kazcloud.dev/node_modules/yaml-language-server/lib/esm/languageservice/yamlLanguageService.js
Ryan Kazokas d181f77fb2
All checks were successful
Build and Push / build (push) Successful in 55s
Updates dockerfile
2026-02-16 15:09:37 -05:00

97 lines
5.2 KiB
JavaScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Red Hat, Inc. All rights reserved.
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { YAMLSchemaService, } from './services/yamlSchemaService';
import { YAMLDocumentSymbols } from './services/documentSymbols';
import { YAMLHover } from './services/yamlHover';
import { YAMLValidation } from './services/yamlValidation';
import { YAMLFormatter } from './services/yamlFormatter';
import { YamlLinks } from './services/yamlLinks';
import { getFoldingRanges } from './services/yamlFolding';
import { YamlCodeActions } from './services/yamlCodeActions';
import { doDocumentOnTypeFormatting } from './services/yamlOnTypeFormatting';
import { YamlCodeLens } from './services/yamlCodeLens';
import { YamlCompletion } from './services/yamlCompletion';
import { yamlDocumentsCache } from './parser/yaml-documents';
import { JSONSchemaSelection } from '../languageserver/handlers/schemaSelectionHandlers';
import { YamlDefinition } from './services/yamlDefinition';
import { getSelectionRanges } from './services/yamlSelectionRanges';
export var SchemaPriority;
(function (SchemaPriority) {
SchemaPriority[SchemaPriority["SchemaStore"] = 1] = "SchemaStore";
SchemaPriority[SchemaPriority["SchemaAssociation"] = 2] = "SchemaAssociation";
SchemaPriority[SchemaPriority["Settings"] = 3] = "Settings";
})(SchemaPriority || (SchemaPriority = {}));
export function getLanguageService(params) {
const schemaService = new YAMLSchemaService(params.schemaRequestService, params.workspaceContext);
const completer = new YamlCompletion(schemaService, params.clientCapabilities, yamlDocumentsCache, params.telemetry);
const hover = new YAMLHover(schemaService, params.telemetry);
const yamlDocumentSymbols = new YAMLDocumentSymbols(schemaService, params.telemetry);
const yamlValidation = new YAMLValidation(schemaService, params.telemetry);
const formatter = new YAMLFormatter();
const yamlCodeActions = new YamlCodeActions(params.clientCapabilities);
const yamlCodeLens = new YamlCodeLens(schemaService, params.telemetry);
const yamlLinks = new YamlLinks(params.telemetry);
const yamlDefinition = new YamlDefinition(params.telemetry);
new JSONSchemaSelection(schemaService, params.yamlSettings, params.connection);
return {
configure: (settings) => {
schemaService.clearExternalSchemas();
if (settings.schemas) {
schemaService.schemaPriorityMapping = new Map();
settings.schemas.forEach((settings) => {
const currPriority = settings.priority ? settings.priority : 0;
schemaService.addSchemaPriority(settings.uri, currPriority);
schemaService.registerExternalSchema(settings.uri, settings.fileMatch, settings.schema, settings.name, settings.description, settings.versions);
});
}
yamlValidation.configure(settings);
hover.configure(settings);
completer.configure(settings);
formatter.configure(settings);
yamlCodeActions.configure(settings);
},
registerCustomSchemaProvider: (schemaProvider) => {
schemaService.registerCustomSchemaProvider(schemaProvider);
},
findLinks: yamlLinks.findLinks.bind(yamlLinks),
doComplete: completer.doComplete.bind(completer),
doValidation: yamlValidation.doValidation.bind(yamlValidation),
doHover: hover.doHover.bind(hover),
findDocumentSymbols: yamlDocumentSymbols.findDocumentSymbols.bind(yamlDocumentSymbols),
findDocumentSymbols2: yamlDocumentSymbols.findHierarchicalDocumentSymbols.bind(yamlDocumentSymbols),
doDefinition: yamlDefinition.getDefinition.bind(yamlDefinition),
resetSchema: (uri) => {
return schemaService.onResourceChange(uri);
},
doFormat: formatter.format.bind(formatter),
doDocumentOnTypeFormatting,
addSchema: (schemaID, schema) => {
return schemaService.saveSchema(schemaID, schema);
},
deleteSchema: (schemaID) => {
return schemaService.deleteSchema(schemaID);
},
modifySchemaContent: (schemaAdditions) => {
return schemaService.addContent(schemaAdditions);
},
deleteSchemaContent: (schemaDeletions) => {
return schemaService.deleteContent(schemaDeletions);
},
deleteSchemasWhole: (schemaDeletions) => {
return schemaService.deleteSchemas(schemaDeletions);
},
getFoldingRanges,
getSelectionRanges,
getCodeAction: (document, params) => {
return yamlCodeActions.getCodeAction(document, params);
},
getCodeLens: (document) => {
return yamlCodeLens.getCodeLens(document);
},
resolveCodeLens: (param) => yamlCodeLens.resolveCodeLens(param),
};
}
//# sourceMappingURL=yamlLanguageService.js.map