diff --git a/website/playground/new-samples/extending-language-services/configure-json-defaults/sample.js b/website/playground/new-samples/extending-language-services/configure-json-defaults/sample.js index 3a0d1b92..80d8e7c1 100644 --- a/website/playground/new-samples/extending-language-services/configure-json-defaults/sample.js +++ b/website/playground/new-samples/extending-language-services/configure-json-defaults/sample.js @@ -1,47 +1,44 @@ // Configures two JSON schemas, with references. -var id = "foo.json"; +var jsonCode = [ + '{', + ' "p1": "v3",', + ' "p2": false', + "}" +].join('\n'); +var modelUri = monaco.Uri.parse("a://b/foo.json"); // a made up unique URI for our model +var model = monaco.editor.createModel(jsonCode, "json", modelUri); +// configure the JSON language support with schemas and schema associations monaco.languages.json.jsonDefaults.setDiagnosticsOptions({ - validate: true, - schemas: [{ - uri: "http://myserver/foo-schema.json", - fileMatch: [id], + validate: true, + schemas: [{ + uri: "http://myserver/foo-schema.json", // id of the first schema + fileMatch: [modelUri.toString()], // associate with our model schema: { type: "object", properties: { p1: { - enum: [ "v1", "v2"] + enum: ["v1", "v2"] }, p2: { - $ref: "http://myserver/bar-schema.json" + $ref: "http://myserver/bar-schema.json" // reference the second schema } } } - },{ - uri: "http://myserver/bar-schema.json", - fileMatch: [id], + }, { + uri: "http://myserver/bar-schema.json", // id of the first schema schema: { type: "object", properties: { q1: { - enum: [ "x1", "x2"] + enum: ["x1", "x2"] } } } }] }); - -var jsonCode = [ - '{', - ' "p1": "v3",', - ' "p2": false', - "}" -].join('\n'); - -var model = monaco.editor.createModel(jsonCode, "json", id); - monaco.editor.create(document.getElementById("container"), { - model: model -}); + model: model +}); \ No newline at end of file