|
@@ -7,69 +7,6 @@ import * as mode from './jsonMode';
|
|
|
import { Emitter, IEvent, languages, Uri } from 'monaco-editor-core';
|
|
|
|
|
|
// ---- JSON service types ----
|
|
|
-/**
|
|
|
- * Defines a decimal number. Since decimal numbers are very
|
|
|
- * rare in the language server specification we denote the
|
|
|
- * exact range with every decimal using the mathematics
|
|
|
- * interval notations (e.g. [0, 1] denotes all decimals d with
|
|
|
- * 0 <= d <= 1.
|
|
|
- */
|
|
|
-export type decimal = number;
|
|
|
-
|
|
|
-/**
|
|
|
- * Defines an unsigned integer in the range of 0 to 2^31 - 1.
|
|
|
- */
|
|
|
-export type uinteger = number;
|
|
|
-
|
|
|
-/**
|
|
|
- * Position in a text document expressed as zero-based line and character offset.
|
|
|
- * The offsets are based on a UTF-16 string representation. So a string of the form
|
|
|
- * `a𐐀b` the character offset of the character `a` is 0, the character offset of `𐐀`
|
|
|
- * is 1 and the character offset of b is 3 since `𐐀` is represented using two code
|
|
|
- * units in UTF-16.
|
|
|
- *
|
|
|
- * Positions are line end character agnostic. So you can not specify a position that
|
|
|
- * denotes `\r|\n` or `\n|` where `|` represents the character offset.
|
|
|
- */
|
|
|
-export interface Position {
|
|
|
- /**
|
|
|
- * Line position in a document (zero-based).
|
|
|
- */
|
|
|
- line: uinteger;
|
|
|
- /**
|
|
|
- * Character offset on a line in a document (zero-based). Assuming that the line is
|
|
|
- * represented as a string, the `character` value represents the gap between the
|
|
|
- * `character` and `character + 1`.
|
|
|
- *
|
|
|
- * If the character value is greater than the line length it defaults back to the
|
|
|
- * line length.
|
|
|
- */
|
|
|
- character: uinteger;
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- * A range in a text document expressed as (zero-based) start and end positions.
|
|
|
- *
|
|
|
- * If you want to specify a range that contains a line including the line ending
|
|
|
- * character(s) then use an end position denoting the start of the next line.
|
|
|
- * For example:
|
|
|
- * ```ts
|
|
|
- * {
|
|
|
- * start: { line: 5, character: 23 }
|
|
|
- * end : { line 6, character : 0 }
|
|
|
- * }
|
|
|
- * ```
|
|
|
- */
|
|
|
-export interface Range {
|
|
|
- /**
|
|
|
- * The range's start position
|
|
|
- */
|
|
|
- start: Position;
|
|
|
- /**
|
|
|
- * The range's end position.
|
|
|
- */
|
|
|
- end: Position;
|
|
|
-}
|
|
|
export interface BaseASTNode {
|
|
|
readonly type: 'object' | 'array' | 'property' | 'string' | 'number' | 'boolean' | 'null';
|
|
|
readonly parent?: ASTNode;
|
|
@@ -206,21 +143,8 @@ export interface MatchingSchema {
|
|
|
node: ASTNode;
|
|
|
schema: JSONSchema;
|
|
|
}
|
|
|
-/**
|
|
|
- * A tagging type for string properties that are actually document URIs.
|
|
|
- */
|
|
|
-export type DocumentUri = string;
|
|
|
-
|
|
|
-/**
|
|
|
- * Represents a location inside a resource, such as a line
|
|
|
- * inside a text file.
|
|
|
- */
|
|
|
-export interface Location {
|
|
|
- uri: DocumentUri;
|
|
|
- range: Range;
|
|
|
-}
|
|
|
-// --- JSON configuration and defaults ---------
|
|
|
|
|
|
+// --- JSON configuration and defaults ---------
|
|
|
export interface DiagnosticsOptions {
|
|
|
/**
|
|
|
* If set, the validator will be enabled and perform syntax and schema based validation,
|