yaml-language-server 1.20.1-8495b84.0 → 1.20.1-a38caf0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/eslint-result.sarif +101 -91
  2. package/lib/esm/languageserver/handlers/languageHandlers.d.ts +4 -2
  3. package/lib/esm/languageserver/handlers/languageHandlers.js +16 -0
  4. package/lib/esm/languageserver/handlers/languageHandlers.js.map +1 -1
  5. package/lib/esm/languageservice/services/yamlCompletion.d.ts +1 -0
  6. package/lib/esm/languageservice/services/yamlCompletion.js +59 -9
  7. package/lib/esm/languageservice/services/yamlCompletion.js.map +1 -1
  8. package/lib/esm/languageservice/services/yamlRename.d.ts +18 -0
  9. package/lib/esm/languageservice/services/yamlRename.js +184 -0
  10. package/lib/esm/languageservice/services/yamlRename.js.map +1 -0
  11. package/lib/esm/languageservice/yamlLanguageService.d.ts +4 -2
  12. package/lib/esm/languageservice/yamlLanguageService.js +4 -0
  13. package/lib/esm/languageservice/yamlLanguageService.js.map +1 -1
  14. package/lib/esm/yamlServerInit.js +1 -0
  15. package/lib/esm/yamlServerInit.js.map +1 -1
  16. package/lib/umd/languageserver/handlers/languageHandlers.d.ts +4 -2
  17. package/lib/umd/languageserver/handlers/languageHandlers.js +16 -0
  18. package/lib/umd/languageserver/handlers/languageHandlers.js.map +1 -1
  19. package/lib/umd/languageservice/services/yamlCompletion.d.ts +1 -0
  20. package/lib/umd/languageservice/services/yamlCompletion.js +59 -9
  21. package/lib/umd/languageservice/services/yamlCompletion.js.map +1 -1
  22. package/lib/umd/languageservice/services/yamlRename.d.ts +18 -0
  23. package/lib/umd/languageservice/services/yamlRename.js +198 -0
  24. package/lib/umd/languageservice/services/yamlRename.js.map +1 -0
  25. package/lib/umd/languageservice/yamlLanguageService.d.ts +4 -2
  26. package/lib/umd/languageservice/yamlLanguageService.js +5 -1
  27. package/lib/umd/languageservice/yamlLanguageService.js.map +1 -1
  28. package/lib/umd/yamlServerInit.js +1 -0
  29. package/lib/umd/yamlServerInit.js.map +1 -1
  30. package/out/server/src/languageserver/handlers/languageHandlers.d.ts +4 -2
  31. package/out/server/src/languageserver/handlers/languageHandlers.js +16 -0
  32. package/out/server/src/languageserver/handlers/languageHandlers.js.map +1 -1
  33. package/out/server/src/languageservice/services/yamlCompletion.d.ts +1 -0
  34. package/out/server/src/languageservice/services/yamlCompletion.js +59 -9
  35. package/out/server/src/languageservice/services/yamlCompletion.js.map +1 -1
  36. package/out/server/src/languageservice/services/yamlRename.d.ts +18 -0
  37. package/out/server/src/languageservice/services/yamlRename.js +188 -0
  38. package/out/server/src/languageservice/services/yamlRename.js.map +1 -0
  39. package/out/server/src/languageservice/yamlLanguageService.d.ts +4 -2
  40. package/out/server/src/languageservice/yamlLanguageService.js +4 -0
  41. package/out/server/src/languageservice/yamlLanguageService.js.map +1 -1
  42. package/out/server/src/yamlServerInit.js +1 -0
  43. package/out/server/src/yamlServerInit.js.map +1 -1
  44. package/out/server/test/autoCompletionFix.test.js +91 -1
  45. package/out/server/test/autoCompletionFix.test.js.map +1 -1
  46. package/out/server/test/yamlRename.test.d.ts +1 -0
  47. package/out/server/test/yamlRename.test.js +106 -0
  48. package/out/server/test/yamlRename.test.js.map +1 -0
  49. package/package.json +1 -1
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Red Hat, Inc. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.YamlRename = void 0;
8
+ const vscode_languageserver_types_1 = require("vscode-languageserver-types");
9
+ const yaml_documents_1 = require("../parser/yaml-documents");
10
+ const arrUtils_1 = require("../utils/arrUtils");
11
+ const textBuffer_1 = require("../utils/textBuffer");
12
+ const yaml_1 = require("yaml");
13
+ const astUtils_1 = require("../utils/astUtils");
14
+ const vscode_languageserver_protocol_1 = require("vscode-languageserver-protocol");
15
+ class YamlRename {
16
+ constructor(telemetry) {
17
+ this.telemetry = telemetry;
18
+ }
19
+ prepareRename(document, params) {
20
+ try {
21
+ const target = this.findTarget(document, params.position);
22
+ if (!target) {
23
+ return null;
24
+ }
25
+ if (!this.findAnchorToken(target.yamlDoc, target.anchorNode)) {
26
+ return null;
27
+ }
28
+ return this.getNameRange(document, target.token);
29
+ }
30
+ catch (err) {
31
+ this.telemetry?.sendError('yaml.prepareRename.error', err);
32
+ return null;
33
+ }
34
+ }
35
+ doRename(document, params) {
36
+ try {
37
+ const target = this.findTarget(document, params.position);
38
+ if (!target) {
39
+ return null;
40
+ }
41
+ const anchorToken = this.findAnchorToken(target.yamlDoc, target.anchorNode);
42
+ if (!anchorToken) {
43
+ return null;
44
+ }
45
+ const newName = params.newName;
46
+ const invalidChar = this.findInvalidAnchorChar(newName);
47
+ if (invalidChar !== null) {
48
+ throw new vscode_languageserver_protocol_1.ResponseError(vscode_languageserver_protocol_1.ErrorCodes.InvalidParams, `Anchor name cannot contain '${invalidChar}'`);
49
+ }
50
+ const edits = [];
51
+ edits.push(vscode_languageserver_types_1.TextEdit.replace(this.getNameRange(document, anchorToken), newName));
52
+ (0, yaml_1.visit)(target.yamlDoc.internalDocument, (key, node) => {
53
+ if ((0, yaml_1.isAlias)(node) && node.srcToken && node.resolve(target.yamlDoc.internalDocument) === target.anchorNode) {
54
+ edits.push(vscode_languageserver_types_1.TextEdit.replace(this.getNameRange(document, node.srcToken), newName));
55
+ }
56
+ });
57
+ return {
58
+ changes: {
59
+ [document.uri]: edits,
60
+ },
61
+ };
62
+ }
63
+ catch (err) {
64
+ if (err instanceof vscode_languageserver_protocol_1.ResponseError) {
65
+ throw err;
66
+ }
67
+ this.telemetry?.sendError('yaml.rename.error', err);
68
+ return null;
69
+ }
70
+ }
71
+ findTarget(document, position) {
72
+ const yamlDocuments = yaml_documents_1.yamlDocumentsCache.getYamlDocument(document);
73
+ const offset = document.offsetAt(position);
74
+ const yamlDoc = (0, arrUtils_1.matchOffsetToDocument)(offset, yamlDocuments);
75
+ if (!yamlDoc) {
76
+ return null;
77
+ }
78
+ const [node] = yamlDoc.getNodeFromPosition(offset, new textBuffer_1.TextBuffer(document));
79
+ if (!node) {
80
+ return this.findByToken(yamlDoc, offset);
81
+ }
82
+ if ((0, yaml_1.isAlias)(node) && node.srcToken && this.isOffsetInsideToken(node.srcToken, offset)) {
83
+ const anchorNode = node.resolve(yamlDoc.internalDocument);
84
+ if (!anchorNode) {
85
+ return null;
86
+ }
87
+ return { anchorNode, token: node.srcToken, yamlDoc };
88
+ }
89
+ if (((0, yaml_1.isCollection)(node) || (0, yaml_1.isScalar)(node)) && node.anchor) {
90
+ const anchorToken = this.findAnchorToken(yamlDoc, node);
91
+ if (anchorToken && this.isOffsetInsideToken(anchorToken, offset)) {
92
+ return { anchorNode: node, token: anchorToken, yamlDoc };
93
+ }
94
+ }
95
+ return this.findByToken(yamlDoc, offset);
96
+ }
97
+ findByToken(yamlDoc, offset) {
98
+ let target;
99
+ (0, yaml_1.visit)(yamlDoc.internalDocument, (key, node) => {
100
+ if ((0, yaml_1.isAlias)(node) && node.srcToken && this.isOffsetInsideToken(node.srcToken, offset)) {
101
+ const anchorNode = node.resolve(yamlDoc.internalDocument);
102
+ if (anchorNode) {
103
+ target = { anchorNode, token: node.srcToken, yamlDoc };
104
+ return yaml_1.visit.BREAK;
105
+ }
106
+ }
107
+ if (((0, yaml_1.isCollection)(node) || (0, yaml_1.isScalar)(node)) && node.anchor) {
108
+ const anchorToken = this.findAnchorToken(yamlDoc, node);
109
+ if (anchorToken && this.isOffsetInsideToken(anchorToken, offset)) {
110
+ target = { anchorNode: node, token: anchorToken, yamlDoc };
111
+ return yaml_1.visit.BREAK;
112
+ }
113
+ }
114
+ });
115
+ return target ?? null;
116
+ }
117
+ findAnchorToken(yamlDoc, node) {
118
+ const parent = yamlDoc.getParent(node);
119
+ const candidates = [];
120
+ if (parent && parent.srcToken) {
121
+ candidates.push(parent.srcToken);
122
+ }
123
+ if (node.srcToken) {
124
+ candidates.push(node.srcToken);
125
+ }
126
+ for (const token of candidates) {
127
+ const anchor = this.getAnchorFromToken(token, node);
128
+ if (anchor) {
129
+ return anchor;
130
+ }
131
+ }
132
+ return undefined;
133
+ }
134
+ getAnchorFromToken(token, node) {
135
+ if ((0, astUtils_1.isCollectionItem)(token)) {
136
+ return this.getAnchorFromCollectionItem(token);
137
+ }
138
+ else if (yaml_1.CST.isCollection(token)) {
139
+ const collection = token;
140
+ for (const item of collection.items ?? []) {
141
+ if (item.value !== node.srcToken) {
142
+ continue;
143
+ }
144
+ const anchor = this.getAnchorFromCollectionItem(item);
145
+ if (anchor) {
146
+ return anchor;
147
+ }
148
+ }
149
+ }
150
+ return undefined;
151
+ }
152
+ getAnchorFromCollectionItem(token) {
153
+ for (const t of token.start) {
154
+ if (t.type === 'anchor') {
155
+ return t;
156
+ }
157
+ }
158
+ if (token.sep && Array.isArray(token.sep)) {
159
+ for (const t of token.sep) {
160
+ if (t.type === 'anchor') {
161
+ return t;
162
+ }
163
+ }
164
+ }
165
+ return undefined;
166
+ }
167
+ getNameRange(document, token) {
168
+ const startOffset = token.offset + 1;
169
+ const endOffset = token.offset + token.source.length;
170
+ return vscode_languageserver_types_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset));
171
+ }
172
+ isOffsetInsideToken(token, offset) {
173
+ return offset >= token.offset && offset <= token.offset + token.source.length;
174
+ }
175
+ findInvalidAnchorChar(name) {
176
+ // YAML 1.2.2 spec: anchor names cannot contain flow indicators or whitespace
177
+ // https://yaml.org/spec/1.2.2/#rule-ns-anchor-char
178
+ const invalidChars = ['[', ']', '{', '}', ',', ' ', '\t'];
179
+ for (const char of invalidChars) {
180
+ if (name.includes(char)) {
181
+ return char === ' ' ? 'space' : char === '\t' ? 'tab' : char;
182
+ }
183
+ }
184
+ return null;
185
+ }
186
+ }
187
+ exports.YamlRename = YamlRename;
188
+ //# sourceMappingURL=yamlRename.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yamlRename.js","sourceRoot":"","sources":["../../../../../src/languageservice/services/yamlRename.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { CustomSchemaProvider, SchemaAdditions, SchemaDeletions, SchemaDeletionsAll } from './services/yamlSchemaService';
2
- import { Position, CodeAction, CompletionList, Diagnostic, Hover, SymbolInformation, DocumentSymbol, FoldingRange, TextEdit, DocumentLink, CodeLens, DefinitionLink, SelectionRange } from 'vscode-languageserver-types';
2
+ import { Position, CodeAction, CompletionList, Diagnostic, Hover, SymbolInformation, DocumentSymbol, FoldingRange, TextEdit, DocumentLink, CodeLens, DefinitionLink, SelectionRange, Range, WorkspaceEdit } from 'vscode-languageserver-types';
3
3
  import { JSONSchema } from './jsonSchema';
4
4
  import { DocumentSymbolsContext } from 'vscode-json-languageservice';
5
- import { ClientCapabilities, CodeActionParams, Connection, DocumentOnTypeFormattingParams, DefinitionParams } from 'vscode-languageserver';
5
+ import { ClientCapabilities, CodeActionParams, Connection, DocumentOnTypeFormattingParams, DefinitionParams, PrepareRenameParams, RenameParams } from 'vscode-languageserver';
6
6
  import { TextDocument } from 'vscode-languageserver-textdocument';
7
7
  import { FoldingRangesContext, SchemaVersions } from './yamlTypes';
8
8
  import { Telemetry } from './telemetry';
@@ -121,6 +121,8 @@ export interface LanguageService {
121
121
  getCodeAction: (document: TextDocument, params: CodeActionParams) => CodeAction[] | undefined;
122
122
  getCodeLens: (document: TextDocument) => PromiseLike<CodeLens[] | undefined> | CodeLens[] | undefined;
123
123
  resolveCodeLens: (param: CodeLens) => PromiseLike<CodeLens> | CodeLens;
124
+ prepareRename: (document: TextDocument, params: PrepareRenameParams) => Range | null;
125
+ doRename: (document: TextDocument, params: RenameParams) => WorkspaceEdit | null;
124
126
  }
125
127
  export declare function getLanguageService(params: {
126
128
  schemaRequestService: SchemaRequestService;
@@ -21,6 +21,7 @@ const yaml_documents_1 = require("./parser/yaml-documents");
21
21
  const schemaSelectionHandlers_1 = require("../languageserver/handlers/schemaSelectionHandlers");
22
22
  const yamlDefinition_1 = require("./services/yamlDefinition");
23
23
  const yamlSelectionRanges_1 = require("./services/yamlSelectionRanges");
24
+ const yamlRename_1 = require("./services/yamlRename");
24
25
  var SchemaPriority;
25
26
  (function (SchemaPriority) {
26
27
  SchemaPriority[SchemaPriority["SchemaStore"] = 1] = "SchemaStore";
@@ -38,6 +39,7 @@ function getLanguageService(params) {
38
39
  const yamlCodeLens = new yamlCodeLens_1.YamlCodeLens(schemaService, params.telemetry);
39
40
  const yamlLinks = new yamlLinks_1.YamlLinks(params.telemetry);
40
41
  const yamlDefinition = new yamlDefinition_1.YamlDefinition(params.telemetry);
42
+ const yamlRename = new yamlRename_1.YamlRename(params.telemetry);
41
43
  new schemaSelectionHandlers_1.JSONSchemaSelection(schemaService, params.yamlSettings, params.connection);
42
44
  return {
43
45
  configure: (settings) => {
@@ -95,6 +97,8 @@ function getLanguageService(params) {
95
97
  return yamlCodeLens.getCodeLens(document);
96
98
  },
97
99
  resolveCodeLens: (param) => yamlCodeLens.resolveCodeLens(param),
100
+ prepareRename: (document, params) => yamlRename.prepareRename(document, params),
101
+ doRename: (document, params) => yamlRename.doRename(document, params),
98
102
  };
99
103
  }
100
104
  exports.getLanguageService = getLanguageService;
@@ -1 +1 @@
1
- {"version":3,"file":"yamlLanguageService.js","sourceRoot":"","sources":["../../../../src/languageservice/yamlLanguageService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yamlLanguageService.js","sourceRoot":"","sources":["../../../../src/languageservice/yamlLanguageService.ts"],"names":[],"mappings":"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"}
@@ -108,6 +108,7 @@ class YAMLServerInit {
108
108
  },
109
109
  documentRangeFormattingProvider: false,
110
110
  definitionProvider: true,
111
+ renameProvider: { prepareProvider: true },
111
112
  documentLinkProvider: {},
112
113
  foldingRangeProvider: true,
113
114
  selectionRangeProvider: true,
@@ -1 +1 @@
1
- {"version":3,"file":"yamlServerInit.js","sourceRoot":"","sources":["../../../src/yamlServerInit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yamlServerInit.js","sourceRoot":"","sources":["../../../src/yamlServerInit.ts"],"names":[],"mappings":"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"}
@@ -1340,7 +1340,7 @@ test1:
1340
1340
  const completion = await parseSetup(content, 0, content.length);
1341
1341
  (0, chai_1.expect)(completion.items.length).equal(1);
1342
1342
  (0, chai_1.expect)(completion.items[0].insertText).to.be.equal('${1:property}: ');
1343
- (0, chai_1.expect)(completion.items[0].documentation).to.be.equal('Property Description');
1343
+ (0, chai_1.expect)(completion.items[0].documentation).to.be.deep.equal({ kind: 'markdown', value: 'Property Description' });
1344
1344
  });
1345
1345
  it('should not suggest propertyNames with doNotSuggest', async () => {
1346
1346
  const schema = {
@@ -1374,6 +1374,96 @@ test1:
1374
1374
  (0, chai_1.expect)(completion.items[0].insertText).to.be.equal('"YES"');
1375
1375
  (0, chai_1.expect)(completion.items[1].insertText).to.be.equal('"NO"');
1376
1376
  });
1377
+ it('should suggest propertyNames keys from definitions $ref', async () => {
1378
+ const schema = {
1379
+ definitions: {
1380
+ EventName: {
1381
+ type: 'string',
1382
+ title: 'EventName',
1383
+ enum: ['None', 'Event1', 'Event2'],
1384
+ },
1385
+ },
1386
+ type: 'object',
1387
+ properties: {
1388
+ events: {
1389
+ type: 'object',
1390
+ propertyNames: { $ref: '#/definitions/EventName' },
1391
+ },
1392
+ },
1393
+ required: ['events'],
1394
+ };
1395
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1396
+ const completion = await parseSetup('events:\n ', 1, 2);
1397
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['None', 'Event1', 'Event2']);
1398
+ });
1399
+ it('should suggest propertyNames candidates from const', async () => {
1400
+ const schema = {
1401
+ type: 'object',
1402
+ propertyNames: {
1403
+ const: 'Event0',
1404
+ },
1405
+ };
1406
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1407
+ const completion = await parseSetup('', 0, 0);
1408
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['Event0']);
1409
+ });
1410
+ it('should suggest propertyNames candidates from enum', async () => {
1411
+ const schema = {
1412
+ type: 'object',
1413
+ additionalProperties: true,
1414
+ propertyNames: {
1415
+ enum: ['Event1', 'Event2', 'Event3'],
1416
+ },
1417
+ };
1418
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1419
+ const completion = await parseSetup('', 0, 0);
1420
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['Event1', 'Event2', 'Event3']);
1421
+ });
1422
+ it('should suggest propertyNames candidates from oneOf', async () => {
1423
+ const schema = {
1424
+ type: 'object',
1425
+ propertyNames: {
1426
+ oneOf: [{ const: 'Event1' }, { const: 'Event2' }],
1427
+ },
1428
+ };
1429
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1430
+ const completion = await parseSetup('', 0, 0);
1431
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['Event1', 'Event2']);
1432
+ });
1433
+ it('should suggest propertyNames candidates from anyOf', async () => {
1434
+ const schema = {
1435
+ type: 'object',
1436
+ propertyNames: {
1437
+ anyOf: [{ const: 'Event1' }, { enum: ['Event2', 'Event3'] }],
1438
+ },
1439
+ };
1440
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1441
+ const completion = await parseSetup('', 0, 0);
1442
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['Event1', 'Event2', 'Event3']);
1443
+ });
1444
+ it('should suggest only the intersected propertyNames candidate from allOf (const + enum)', async () => {
1445
+ const schema = {
1446
+ type: 'object',
1447
+ propertyNames: {
1448
+ allOf: [{ const: 'One' }, { enum: ['One', 'Two'] }],
1449
+ },
1450
+ };
1451
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1452
+ const completion = await parseSetup('', 0, 0);
1453
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.have.members(['One']);
1454
+ (0, chai_1.expect)(completion.items.map((i) => i.label)).to.not.include('Two');
1455
+ });
1456
+ it('should not suggest any propertyNames when allOf makes keys impossible (const + const)', async () => {
1457
+ const schema = {
1458
+ type: 'object',
1459
+ propertyNames: {
1460
+ allOf: [{ const: 'One' }, { const: 'Two' }],
1461
+ },
1462
+ };
1463
+ schemaProvider.addSchema(testHelper_1.SCHEMA_ID, schema);
1464
+ const completion = await parseSetup('', 0, 0);
1465
+ (0, chai_1.expect)(completion.items).to.be.empty;
1466
+ });
1377
1467
  describe('String scalar completion comprehensive tests', () => {
1378
1468
  const STRING_CASES = [
1379
1469
  { value: '', expected: '""', description: 'empty string' },