lsp-ws-connection
Version:
Utility for adapting editors to language server protocol
27 lines • 1.16 kB
JavaScript
function registerServerCapability(serverCapabilities, registration) {
var serverCapabilitiesCopy = JSON.parse(JSON.stringify(serverCapabilities));
var method = registration.method, registerOptions = registration.registerOptions;
var providerName = method.substring(13) + 'Provider';
if (providerName) {
if (!registerOptions) {
serverCapabilitiesCopy[providerName] = true;
}
else {
serverCapabilitiesCopy[providerName] = JSON.parse(JSON.stringify(registerOptions));
}
}
else {
console.warn('Could not register server capability.', registration);
return null;
}
return serverCapabilitiesCopy;
}
function unregisterServerCapability(serverCapabilities, unregistration) {
var serverCapabilitiesCopy = JSON.parse(JSON.stringify(serverCapabilities));
var method = unregistration.method;
var providerName = method.substring(13) + 'Provider';
delete serverCapabilitiesCopy[providerName];
return serverCapabilitiesCopy;
}
export { registerServerCapability, unregisterServerCapability };
//# sourceMappingURL=server-capability-registration.js.map