codemirror-json-schema
Version:
Codemirror 6 extensions that provide full JSONSchema support for `@codemirror/lang-json` and `codemirror-json5`
30 lines (29 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.json5Schema = json5Schema;
const codemirror_json5_1 = require("codemirror-json5");
const view_1 = require("@codemirror/view");
const completion_1 = require("./completion");
const validation_1 = require("./validation");
const hover_1 = require("./hover");
const lint_1 = require("@codemirror/lint");
const validation_2 = require("../features/validation");
const state_1 = require("../features/state");
/**
* Full featured cm6 extension for json5, including `codemirror-json5`
* @group Bundled Codemirror Extensions
*/
function json5Schema(schema) {
return [
(0, codemirror_json5_1.json5)(),
(0, lint_1.linter)((0, codemirror_json5_1.json5ParseLinter)()),
(0, lint_1.linter)((0, validation_1.json5SchemaLinter)(), {
needsRefresh: validation_2.handleRefresh,
}),
codemirror_json5_1.json5Language.data.of({
autocomplete: (0, completion_1.json5Completion)(),
}),
(0, view_1.hoverTooltip)((0, hover_1.json5SchemaHover)()),
(0, state_1.stateExtensions)(schema),
];
}