Skip to content

Commit efff60f

Browse files
committed
Refactor annotation dialect determination
1 parent 7643405 commit efff60f

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

language-server/src/features/deprecated.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,20 @@ import * as JsonNode from "../json-node.js";
33
import { subscribe } from "../pubsub.js";
44

55

6+
const annotationDialectUri = "https://json-schema.org/draft/2020-12/schema";
7+
68
export default {
79
onInitialize() {
810
return {};
911
},
1012

1113
onInitialized() {
1214
subscribe("diagnostics", async (_message, { schemaDocument, diagnostics }) => {
13-
for (const deprecated of schemaDocument.annotatedWith("deprecated")) {
14-
if (JsonNode.annotation(deprecated, "deprecated").some((deprecated) => deprecated)) {
15+
for (const deprecated of schemaDocument.annotatedWith("deprecated", annotationDialectUri)) {
16+
if (JsonNode.annotation(deprecated, "deprecated", annotationDialectUri).some((deprecated) => deprecated)) {
1517
diagnostics.push({
1618
instance: deprecated.parent,
17-
message: JsonNode.annotation(deprecated, "x-deprecationMessage").join("\n") || "deprecated",
19+
message: JsonNode.annotation(deprecated, "x-deprecationMessage", annotationDialectUri).join("\n") || "deprecated",
1820
severity: DiagnosticSeverity.Warning,
1921
tags: [DiagnosticTag.Deprecated]
2022
});

language-server/src/features/hover.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import * as JsonNode from "../json-node.js";
33
import { getSchemaDocument } from "./schema-registry.js";
44

55

6+
const annotationDialectUri = "https://json-schema.org/draft/2020-12/schema";
7+
68
export default {
79
onInitialize() {
810
return {
@@ -23,7 +25,7 @@ export default {
2325
return {
2426
contents: {
2527
kind: MarkupKind.Markdown,
26-
value: JsonNode.annotation(keyword.parent.children[1], "description").join("\n")
28+
value: JsonNode.annotation(keyword.parent.children[1], "description", annotationDialectUri).join("\n")
2729
},
2830
range: {
2931
start: document.positionAt(keyword.offset),

language-server/src/json-node.js

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,5 @@ export const cons = (uri, pointer, value, type, children, parent, offset, textLe
4040
return node;
4141
};
4242

43-
// eslint-disable-next-line import/export
44-
export const annotation = (node, keyword, dialect = "https://json-schema.org/draft/2020-12/schema") => {
45-
return Instance.annotation(node, keyword, dialect);
46-
};
47-
4843
// eslint-disable-next-line import/export
4944
export * from "@hyperjump/json-schema/annotated-instance/experimental";

0 commit comments

Comments
 (0)