feat: add JSON schema validation for Vega and Vega-Lite in the editor

This commit is contained in:
2025-01-19 16:49:58 +02:00
parent 6905a473ce
commit c514e2ed8c

View File

@@ -17,6 +17,27 @@ require(['vs/editor/editor.main'], async function () {
formatOnType: true formatOnType: true
}); });
// Fetch JSON schemas
const vegaSchema = await fetch('https://vega.github.io/schema/vega/v5.json').then(response => response.json());
const vegaLiteSchema = await fetch('https://vega.github.io/schema/vega-lite/v5.json').then(response => response.json());
// Configure JSON schema
monaco.languages.json.jsonDefaults.setDiagnosticsOptions({
validate: true,
schemas: [
{
uri: "https://vega.github.io/schema/vega/v5.json",
fileMatch: ["*"],
schema: vegaSchema
},
{
uri: "https://vega.github.io/schema/vega-lite/v5.json",
fileMatch: ["*"],
schema: vegaLiteSchema
}
]
});
const resizer = new PanelResizer(snippetManager); const resizer = new PanelResizer(snippetManager);
window.editor = editor; window.editor = editor;