-
Notifications
You must be signed in to change notification settings - Fork 180
/
2756.0.57.1.1731056394032.js.map
1 lines (1 loc) · 148 KB
/
2756.0.57.1.1731056394032.js.map
1
{"version":3,"file":"2756.0.57.1.1731056394032.js","mappings":"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","sources":["webpack:///../../node_modules/monaco-editor/esm/vs/language/json/jsonMode.js"],"sourcesContent":["/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166)\n * Released under the MIT license\n * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt\n *-----------------------------------------------------------------------------*/\n\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\n\n// src/fillers/monaco-editor-core.ts\nvar monaco_editor_core_exports = {};\n__reExport(monaco_editor_core_exports, monaco_editor_core_star);\nimport * as monaco_editor_core_star from \"../../editor/editor.api.js\";\n\n// src/language/json/workerManager.ts\nvar STOP_WHEN_IDLE_FOR = 2 * 60 * 1e3;\nvar WorkerManager = class {\n _defaults;\n _idleCheckInterval;\n _lastUsedTime;\n _configChangeListener;\n _worker;\n _client;\n constructor(defaults) {\n this._defaults = defaults;\n this._worker = null;\n this._client = null;\n this._idleCheckInterval = window.setInterval(() => this._checkIfIdle(), 30 * 1e3);\n this._lastUsedTime = 0;\n this._configChangeListener = this._defaults.onDidChange(() => this._stopWorker());\n }\n _stopWorker() {\n if (this._worker) {\n this._worker.dispose();\n this._worker = null;\n }\n this._client = null;\n }\n dispose() {\n clearInterval(this._idleCheckInterval);\n this._configChangeListener.dispose();\n this._stopWorker();\n }\n _checkIfIdle() {\n if (!this._worker) {\n return;\n }\n let timePassedSinceLastUsed = Date.now() - this._lastUsedTime;\n if (timePassedSinceLastUsed > STOP_WHEN_IDLE_FOR) {\n this._stopWorker();\n }\n }\n _getClient() {\n this._lastUsedTime = Date.now();\n if (!this._client) {\n this._worker = monaco_editor_core_exports.editor.createWebWorker({\n moduleId: \"vs/language/json/jsonWorker\",\n label: this._defaults.languageId,\n createData: {\n languageSettings: this._defaults.diagnosticsOptions,\n languageId: this._defaults.languageId,\n enableSchemaRequest: this._defaults.diagnosticsOptions.enableSchemaRequest\n }\n });\n this._client = this._worker.getProxy();\n }\n return this._client;\n }\n getLanguageServiceWorker(...resources) {\n let _client;\n return this._getClient().then((client) => {\n _client = client;\n }).then((_) => {\n if (this._worker) {\n return this._worker.withSyncedResources(resources);\n }\n }).then((_) => _client);\n }\n};\n\n// node_modules/vscode-languageserver-types/lib/esm/main.js\nvar integer;\n(function(integer2) {\n integer2.MIN_VALUE = -2147483648;\n integer2.MAX_VALUE = 2147483647;\n})(integer || (integer = {}));\nvar uinteger;\n(function(uinteger2) {\n uinteger2.MIN_VALUE = 0;\n uinteger2.MAX_VALUE = 2147483647;\n})(uinteger || (uinteger = {}));\nvar Position;\n(function(Position3) {\n function create(line, character) {\n if (line === Number.MAX_VALUE) {\n line = uinteger.MAX_VALUE;\n }\n if (character === Number.MAX_VALUE) {\n character = uinteger.MAX_VALUE;\n }\n return { line, character };\n }\n Position3.create = create;\n function is(value) {\n var candidate = value;\n return Is.objectLiteral(candidate) && Is.uinteger(candidate.line) && Is.uinteger(candidate.character);\n }\n Position3.is = is;\n})(Position || (Position = {}));\nvar Range;\n(function(Range3) {\n function create(one, two, three, four) {\n if (Is.uinteger(one) && Is.uinteger(two) && Is.uinteger(three) && Is.uinteger(four)) {\n return { start: Position.create(one, two), end: Position.create(three, four) };\n } else if (Position.is(one) && Position.is(two)) {\n return { start: one, end: two };\n } else {\n throw new Error(\"Range#create called with invalid arguments[\" + one + \", \" + two + \", \" + three + \", \" + four + \"]\");\n }\n }\n Range3.create = create;\n function is(value) {\n var candidate = value;\n return Is.objectLiteral(candidate) && Position.is(candidate.start) && Position.is(candidate.end);\n }\n Range3.is = is;\n})(Range || (Range = {}));\nvar Location;\n(function(Location2) {\n function create(uri, range) {\n return { uri, range };\n }\n Location2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Range.is(candidate.range) && (Is.string(candidate.uri) || Is.undefined(candidate.uri));\n }\n Location2.is = is;\n})(Location || (Location = {}));\nvar LocationLink;\n(function(LocationLink2) {\n function create(targetUri, targetRange, targetSelectionRange, originSelectionRange) {\n return { targetUri, targetRange, targetSelectionRange, originSelectionRange };\n }\n LocationLink2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Range.is(candidate.targetRange) && Is.string(candidate.targetUri) && (Range.is(candidate.targetSelectionRange) || Is.undefined(candidate.targetSelectionRange)) && (Range.is(candidate.originSelectionRange) || Is.undefined(candidate.originSelectionRange));\n }\n LocationLink2.is = is;\n})(LocationLink || (LocationLink = {}));\nvar Color;\n(function(Color2) {\n function create(red, green, blue, alpha) {\n return {\n red,\n green,\n blue,\n alpha\n };\n }\n Color2.create = create;\n function is(value) {\n var candidate = value;\n return Is.numberRange(candidate.red, 0, 1) && Is.numberRange(candidate.green, 0, 1) && Is.numberRange(candidate.blue, 0, 1) && Is.numberRange(candidate.alpha, 0, 1);\n }\n Color2.is = is;\n})(Color || (Color = {}));\nvar ColorInformation;\n(function(ColorInformation2) {\n function create(range, color) {\n return {\n range,\n color\n };\n }\n ColorInformation2.create = create;\n function is(value) {\n var candidate = value;\n return Range.is(candidate.range) && Color.is(candidate.color);\n }\n ColorInformation2.is = is;\n})(ColorInformation || (ColorInformation = {}));\nvar ColorPresentation;\n(function(ColorPresentation2) {\n function create(label, textEdit, additionalTextEdits) {\n return {\n label,\n textEdit,\n additionalTextEdits\n };\n }\n ColorPresentation2.create = create;\n function is(value) {\n var candidate = value;\n return Is.string(candidate.label) && (Is.undefined(candidate.textEdit) || TextEdit.is(candidate)) && (Is.undefined(candidate.additionalTextEdits) || Is.typedArray(candidate.additionalTextEdits, TextEdit.is));\n }\n ColorPresentation2.is = is;\n})(ColorPresentation || (ColorPresentation = {}));\nvar FoldingRangeKind;\n(function(FoldingRangeKind2) {\n FoldingRangeKind2[\"Comment\"] = \"comment\";\n FoldingRangeKind2[\"Imports\"] = \"imports\";\n FoldingRangeKind2[\"Region\"] = \"region\";\n})(FoldingRangeKind || (FoldingRangeKind = {}));\nvar FoldingRange;\n(function(FoldingRange2) {\n function create(startLine, endLine, startCharacter, endCharacter, kind) {\n var result = {\n startLine,\n endLine\n };\n if (Is.defined(startCharacter)) {\n result.startCharacter = startCharacter;\n }\n if (Is.defined(endCharacter)) {\n result.endCharacter = endCharacter;\n }\n if (Is.defined(kind)) {\n result.kind = kind;\n }\n return result;\n }\n FoldingRange2.create = create;\n function is(value) {\n var candidate = value;\n return Is.uinteger(candidate.startLine) && Is.uinteger(candidate.startLine) && (Is.undefined(candidate.startCharacter) || Is.uinteger(candidate.startCharacter)) && (Is.undefined(candidate.endCharacter) || Is.uinteger(candidate.endCharacter)) && (Is.undefined(candidate.kind) || Is.string(candidate.kind));\n }\n FoldingRange2.is = is;\n})(FoldingRange || (FoldingRange = {}));\nvar DiagnosticRelatedInformation;\n(function(DiagnosticRelatedInformation2) {\n function create(location, message) {\n return {\n location,\n message\n };\n }\n DiagnosticRelatedInformation2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Location.is(candidate.location) && Is.string(candidate.message);\n }\n DiagnosticRelatedInformation2.is = is;\n})(DiagnosticRelatedInformation || (DiagnosticRelatedInformation = {}));\nvar DiagnosticSeverity;\n(function(DiagnosticSeverity2) {\n DiagnosticSeverity2.Error = 1;\n DiagnosticSeverity2.Warning = 2;\n DiagnosticSeverity2.Information = 3;\n DiagnosticSeverity2.Hint = 4;\n})(DiagnosticSeverity || (DiagnosticSeverity = {}));\nvar DiagnosticTag;\n(function(DiagnosticTag2) {\n DiagnosticTag2.Unnecessary = 1;\n DiagnosticTag2.Deprecated = 2;\n})(DiagnosticTag || (DiagnosticTag = {}));\nvar CodeDescription;\n(function(CodeDescription2) {\n function is(value) {\n var candidate = value;\n return candidate !== void 0 && candidate !== null && Is.string(candidate.href);\n }\n CodeDescription2.is = is;\n})(CodeDescription || (CodeDescription = {}));\nvar Diagnostic;\n(function(Diagnostic2) {\n function create(range, message, severity, code, source, relatedInformation) {\n var result = { range, message };\n if (Is.defined(severity)) {\n result.severity = severity;\n }\n if (Is.defined(code)) {\n result.code = code;\n }\n if (Is.defined(source)) {\n result.source = source;\n }\n if (Is.defined(relatedInformation)) {\n result.relatedInformation = relatedInformation;\n }\n return result;\n }\n Diagnostic2.create = create;\n function is(value) {\n var _a;\n var candidate = value;\n return Is.defined(candidate) && Range.is(candidate.range) && Is.string(candidate.message) && (Is.number(candidate.severity) || Is.undefined(candidate.severity)) && (Is.integer(candidate.code) || Is.string(candidate.code) || Is.undefined(candidate.code)) && (Is.undefined(candidate.codeDescription) || Is.string((_a = candidate.codeDescription) === null || _a === void 0 ? void 0 : _a.href)) && (Is.string(candidate.source) || Is.undefined(candidate.source)) && (Is.undefined(candidate.relatedInformation) || Is.typedArray(candidate.relatedInformation, DiagnosticRelatedInformation.is));\n }\n Diagnostic2.is = is;\n})(Diagnostic || (Diagnostic = {}));\nvar Command;\n(function(Command2) {\n function create(title, command) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var result = { title, command };\n if (Is.defined(args) && args.length > 0) {\n result.arguments = args;\n }\n return result;\n }\n Command2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.title) && Is.string(candidate.command);\n }\n Command2.is = is;\n})(Command || (Command = {}));\nvar TextEdit;\n(function(TextEdit2) {\n function replace(range, newText) {\n return { range, newText };\n }\n TextEdit2.replace = replace;\n function insert(position, newText) {\n return { range: { start: position, end: position }, newText };\n }\n TextEdit2.insert = insert;\n function del(range) {\n return { range, newText: \"\" };\n }\n TextEdit2.del = del;\n function is(value) {\n var candidate = value;\n return Is.objectLiteral(candidate) && Is.string(candidate.newText) && Range.is(candidate.range);\n }\n TextEdit2.is = is;\n})(TextEdit || (TextEdit = {}));\nvar ChangeAnnotation;\n(function(ChangeAnnotation2) {\n function create(label, needsConfirmation, description) {\n var result = { label };\n if (needsConfirmation !== void 0) {\n result.needsConfirmation = needsConfirmation;\n }\n if (description !== void 0) {\n result.description = description;\n }\n return result;\n }\n ChangeAnnotation2.create = create;\n function is(value) {\n var candidate = value;\n return candidate !== void 0 && Is.objectLiteral(candidate) && Is.string(candidate.label) && (Is.boolean(candidate.needsConfirmation) || candidate.needsConfirmation === void 0) && (Is.string(candidate.description) || candidate.description === void 0);\n }\n ChangeAnnotation2.is = is;\n})(ChangeAnnotation || (ChangeAnnotation = {}));\nvar ChangeAnnotationIdentifier;\n(function(ChangeAnnotationIdentifier2) {\n function is(value) {\n var candidate = value;\n return typeof candidate === \"string\";\n }\n ChangeAnnotationIdentifier2.is = is;\n})(ChangeAnnotationIdentifier || (ChangeAnnotationIdentifier = {}));\nvar AnnotatedTextEdit;\n(function(AnnotatedTextEdit2) {\n function replace(range, newText, annotation) {\n return { range, newText, annotationId: annotation };\n }\n AnnotatedTextEdit2.replace = replace;\n function insert(position, newText, annotation) {\n return { range: { start: position, end: position }, newText, annotationId: annotation };\n }\n AnnotatedTextEdit2.insert = insert;\n function del(range, annotation) {\n return { range, newText: \"\", annotationId: annotation };\n }\n AnnotatedTextEdit2.del = del;\n function is(value) {\n var candidate = value;\n return TextEdit.is(candidate) && (ChangeAnnotation.is(candidate.annotationId) || ChangeAnnotationIdentifier.is(candidate.annotationId));\n }\n AnnotatedTextEdit2.is = is;\n})(AnnotatedTextEdit || (AnnotatedTextEdit = {}));\nvar TextDocumentEdit;\n(function(TextDocumentEdit2) {\n function create(textDocument, edits) {\n return { textDocument, edits };\n }\n TextDocumentEdit2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && OptionalVersionedTextDocumentIdentifier.is(candidate.textDocument) && Array.isArray(candidate.edits);\n }\n TextDocumentEdit2.is = is;\n})(TextDocumentEdit || (TextDocumentEdit = {}));\nvar CreateFile;\n(function(CreateFile2) {\n function create(uri, options, annotation) {\n var result = {\n kind: \"create\",\n uri\n };\n if (options !== void 0 && (options.overwrite !== void 0 || options.ignoreIfExists !== void 0)) {\n result.options = options;\n }\n if (annotation !== void 0) {\n result.annotationId = annotation;\n }\n return result;\n }\n CreateFile2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && candidate.kind === \"create\" && Is.string(candidate.uri) && (candidate.options === void 0 || (candidate.options.overwrite === void 0 || Is.boolean(candidate.options.overwrite)) && (candidate.options.ignoreIfExists === void 0 || Is.boolean(candidate.options.ignoreIfExists))) && (candidate.annotationId === void 0 || ChangeAnnotationIdentifier.is(candidate.annotationId));\n }\n CreateFile2.is = is;\n})(CreateFile || (CreateFile = {}));\nvar RenameFile;\n(function(RenameFile2) {\n function create(oldUri, newUri, options, annotation) {\n var result = {\n kind: \"rename\",\n oldUri,\n newUri\n };\n if (options !== void 0 && (options.overwrite !== void 0 || options.ignoreIfExists !== void 0)) {\n result.options = options;\n }\n if (annotation !== void 0) {\n result.annotationId = annotation;\n }\n return result;\n }\n RenameFile2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && candidate.kind === \"rename\" && Is.string(candidate.oldUri) && Is.string(candidate.newUri) && (candidate.options === void 0 || (candidate.options.overwrite === void 0 || Is.boolean(candidate.options.overwrite)) && (candidate.options.ignoreIfExists === void 0 || Is.boolean(candidate.options.ignoreIfExists))) && (candidate.annotationId === void 0 || ChangeAnnotationIdentifier.is(candidate.annotationId));\n }\n RenameFile2.is = is;\n})(RenameFile || (RenameFile = {}));\nvar DeleteFile;\n(function(DeleteFile2) {\n function create(uri, options, annotation) {\n var result = {\n kind: \"delete\",\n uri\n };\n if (options !== void 0 && (options.recursive !== void 0 || options.ignoreIfNotExists !== void 0)) {\n result.options = options;\n }\n if (annotation !== void 0) {\n result.annotationId = annotation;\n }\n return result;\n }\n DeleteFile2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && candidate.kind === \"delete\" && Is.string(candidate.uri) && (candidate.options === void 0 || (candidate.options.recursive === void 0 || Is.boolean(candidate.options.recursive)) && (candidate.options.ignoreIfNotExists === void 0 || Is.boolean(candidate.options.ignoreIfNotExists))) && (candidate.annotationId === void 0 || ChangeAnnotationIdentifier.is(candidate.annotationId));\n }\n DeleteFile2.is = is;\n})(DeleteFile || (DeleteFile = {}));\nvar WorkspaceEdit;\n(function(WorkspaceEdit2) {\n function is(value) {\n var candidate = value;\n return candidate && (candidate.changes !== void 0 || candidate.documentChanges !== void 0) && (candidate.documentChanges === void 0 || candidate.documentChanges.every(function(change) {\n if (Is.string(change.kind)) {\n return CreateFile.is(change) || RenameFile.is(change) || DeleteFile.is(change);\n } else {\n return TextDocumentEdit.is(change);\n }\n }));\n }\n WorkspaceEdit2.is = is;\n})(WorkspaceEdit || (WorkspaceEdit = {}));\nvar TextEditChangeImpl = function() {\n function TextEditChangeImpl2(edits, changeAnnotations) {\n this.edits = edits;\n this.changeAnnotations = changeAnnotations;\n }\n TextEditChangeImpl2.prototype.insert = function(position, newText, annotation) {\n var edit;\n var id;\n if (annotation === void 0) {\n edit = TextEdit.insert(position, newText);\n } else if (ChangeAnnotationIdentifier.is(annotation)) {\n id = annotation;\n edit = AnnotatedTextEdit.insert(position, newText, annotation);\n } else {\n this.assertChangeAnnotations(this.changeAnnotations);\n id = this.changeAnnotations.manage(annotation);\n edit = AnnotatedTextEdit.insert(position, newText, id);\n }\n this.edits.push(edit);\n if (id !== void 0) {\n return id;\n }\n };\n TextEditChangeImpl2.prototype.replace = function(range, newText, annotation) {\n var edit;\n var id;\n if (annotation === void 0) {\n edit = TextEdit.replace(range, newText);\n } else if (ChangeAnnotationIdentifier.is(annotation)) {\n id = annotation;\n edit = AnnotatedTextEdit.replace(range, newText, annotation);\n } else {\n this.assertChangeAnnotations(this.changeAnnotations);\n id = this.changeAnnotations.manage(annotation);\n edit = AnnotatedTextEdit.replace(range, newText, id);\n }\n this.edits.push(edit);\n if (id !== void 0) {\n return id;\n }\n };\n TextEditChangeImpl2.prototype.delete = function(range, annotation) {\n var edit;\n var id;\n if (annotation === void 0) {\n edit = TextEdit.del(range);\n } else if (ChangeAnnotationIdentifier.is(annotation)) {\n id = annotation;\n edit = AnnotatedTextEdit.del(range, annotation);\n } else {\n this.assertChangeAnnotations(this.changeAnnotations);\n id = this.changeAnnotations.manage(annotation);\n edit = AnnotatedTextEdit.del(range, id);\n }\n this.edits.push(edit);\n if (id !== void 0) {\n return id;\n }\n };\n TextEditChangeImpl2.prototype.add = function(edit) {\n this.edits.push(edit);\n };\n TextEditChangeImpl2.prototype.all = function() {\n return this.edits;\n };\n TextEditChangeImpl2.prototype.clear = function() {\n this.edits.splice(0, this.edits.length);\n };\n TextEditChangeImpl2.prototype.assertChangeAnnotations = function(value) {\n if (value === void 0) {\n throw new Error(\"Text edit change is not configured to manage change annotations.\");\n }\n };\n return TextEditChangeImpl2;\n}();\nvar ChangeAnnotations = function() {\n function ChangeAnnotations2(annotations) {\n this._annotations = annotations === void 0 ? /* @__PURE__ */ Object.create(null) : annotations;\n this._counter = 0;\n this._size = 0;\n }\n ChangeAnnotations2.prototype.all = function() {\n return this._annotations;\n };\n Object.defineProperty(ChangeAnnotations2.prototype, \"size\", {\n get: function() {\n return this._size;\n },\n enumerable: false,\n configurable: true\n });\n ChangeAnnotations2.prototype.manage = function(idOrAnnotation, annotation) {\n var id;\n if (ChangeAnnotationIdentifier.is(idOrAnnotation)) {\n id = idOrAnnotation;\n } else {\n id = this.nextId();\n annotation = idOrAnnotation;\n }\n if (this._annotations[id] !== void 0) {\n throw new Error(\"Id \" + id + \" is already in use.\");\n }\n if (annotation === void 0) {\n throw new Error(\"No annotation provided for id \" + id);\n }\n this._annotations[id] = annotation;\n this._size++;\n return id;\n };\n ChangeAnnotations2.prototype.nextId = function() {\n this._counter++;\n return this._counter.toString();\n };\n return ChangeAnnotations2;\n}();\nvar WorkspaceChange = function() {\n function WorkspaceChange2(workspaceEdit) {\n var _this = this;\n this._textEditChanges = /* @__PURE__ */ Object.create(null);\n if (workspaceEdit !== void 0) {\n this._workspaceEdit = workspaceEdit;\n if (workspaceEdit.documentChanges) {\n this._changeAnnotations = new ChangeAnnotations(workspaceEdit.changeAnnotations);\n workspaceEdit.changeAnnotations = this._changeAnnotations.all();\n workspaceEdit.documentChanges.forEach(function(change) {\n if (TextDocumentEdit.is(change)) {\n var textEditChange = new TextEditChangeImpl(change.edits, _this._changeAnnotations);\n _this._textEditChanges[change.textDocument.uri] = textEditChange;\n }\n });\n } else if (workspaceEdit.changes) {\n Object.keys(workspaceEdit.changes).forEach(function(key) {\n var textEditChange = new TextEditChangeImpl(workspaceEdit.changes[key]);\n _this._textEditChanges[key] = textEditChange;\n });\n }\n } else {\n this._workspaceEdit = {};\n }\n }\n Object.defineProperty(WorkspaceChange2.prototype, \"edit\", {\n get: function() {\n this.initDocumentChanges();\n if (this._changeAnnotations !== void 0) {\n if (this._changeAnnotations.size === 0) {\n this._workspaceEdit.changeAnnotations = void 0;\n } else {\n this._workspaceEdit.changeAnnotations = this._changeAnnotations.all();\n }\n }\n return this._workspaceEdit;\n },\n enumerable: false,\n configurable: true\n });\n WorkspaceChange2.prototype.getTextEditChange = function(key) {\n if (OptionalVersionedTextDocumentIdentifier.is(key)) {\n this.initDocumentChanges();\n if (this._workspaceEdit.documentChanges === void 0) {\n throw new Error(\"Workspace edit is not configured for document changes.\");\n }\n var textDocument = { uri: key.uri, version: key.version };\n var result = this._textEditChanges[textDocument.uri];\n if (!result) {\n var edits = [];\n var textDocumentEdit = {\n textDocument,\n edits\n };\n this._workspaceEdit.documentChanges.push(textDocumentEdit);\n result = new TextEditChangeImpl(edits, this._changeAnnotations);\n this._textEditChanges[textDocument.uri] = result;\n }\n return result;\n } else {\n this.initChanges();\n if (this._workspaceEdit.changes === void 0) {\n throw new Error(\"Workspace edit is not configured for normal text edit changes.\");\n }\n var result = this._textEditChanges[key];\n if (!result) {\n var edits = [];\n this._workspaceEdit.changes[key] = edits;\n result = new TextEditChangeImpl(edits);\n this._textEditChanges[key] = result;\n }\n return result;\n }\n };\n WorkspaceChange2.prototype.initDocumentChanges = function() {\n if (this._workspaceEdit.documentChanges === void 0 && this._workspaceEdit.changes === void 0) {\n this._changeAnnotations = new ChangeAnnotations();\n this._workspaceEdit.documentChanges = [];\n this._workspaceEdit.changeAnnotations = this._changeAnnotations.all();\n }\n };\n WorkspaceChange2.prototype.initChanges = function() {\n if (this._workspaceEdit.documentChanges === void 0 && this._workspaceEdit.changes === void 0) {\n this._workspaceEdit.changes = /* @__PURE__ */ Object.create(null);\n }\n };\n WorkspaceChange2.prototype.createFile = function(uri, optionsOrAnnotation, options) {\n this.initDocumentChanges();\n if (this._workspaceEdit.documentChanges === void 0) {\n throw new Error(\"Workspace edit is not configured for document changes.\");\n }\n var annotation;\n if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) {\n annotation = optionsOrAnnotation;\n } else {\n options = optionsOrAnnotation;\n }\n var operation;\n var id;\n if (annotation === void 0) {\n operation = CreateFile.create(uri, options);\n } else {\n id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation);\n operation = CreateFile.create(uri, options, id);\n }\n this._workspaceEdit.documentChanges.push(operation);\n if (id !== void 0) {\n return id;\n }\n };\n WorkspaceChange2.prototype.renameFile = function(oldUri, newUri, optionsOrAnnotation, options) {\n this.initDocumentChanges();\n if (this._workspaceEdit.documentChanges === void 0) {\n throw new Error(\"Workspace edit is not configured for document changes.\");\n }\n var annotation;\n if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) {\n annotation = optionsOrAnnotation;\n } else {\n options = optionsOrAnnotation;\n }\n var operation;\n var id;\n if (annotation === void 0) {\n operation = RenameFile.create(oldUri, newUri, options);\n } else {\n id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation);\n operation = RenameFile.create(oldUri, newUri, options, id);\n }\n this._workspaceEdit.documentChanges.push(operation);\n if (id !== void 0) {\n return id;\n }\n };\n WorkspaceChange2.prototype.deleteFile = function(uri, optionsOrAnnotation, options) {\n this.initDocumentChanges();\n if (this._workspaceEdit.documentChanges === void 0) {\n throw new Error(\"Workspace edit is not configured for document changes.\");\n }\n var annotation;\n if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) {\n annotation = optionsOrAnnotation;\n } else {\n options = optionsOrAnnotation;\n }\n var operation;\n var id;\n if (annotation === void 0) {\n operation = DeleteFile.create(uri, options);\n } else {\n id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation);\n operation = DeleteFile.create(uri, options, id);\n }\n this._workspaceEdit.documentChanges.push(operation);\n if (id !== void 0) {\n return id;\n }\n };\n return WorkspaceChange2;\n}();\nvar TextDocumentIdentifier;\n(function(TextDocumentIdentifier2) {\n function create(uri) {\n return { uri };\n }\n TextDocumentIdentifier2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.uri);\n }\n TextDocumentIdentifier2.is = is;\n})(TextDocumentIdentifier || (TextDocumentIdentifier = {}));\nvar VersionedTextDocumentIdentifier;\n(function(VersionedTextDocumentIdentifier2) {\n function create(uri, version) {\n return { uri, version };\n }\n VersionedTextDocumentIdentifier2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.uri) && Is.integer(candidate.version);\n }\n VersionedTextDocumentIdentifier2.is = is;\n})(VersionedTextDocumentIdentifier || (VersionedTextDocumentIdentifier = {}));\nvar OptionalVersionedTextDocumentIdentifier;\n(function(OptionalVersionedTextDocumentIdentifier2) {\n function create(uri, version) {\n return { uri, version };\n }\n OptionalVersionedTextDocumentIdentifier2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.uri) && (candidate.version === null || Is.integer(candidate.version));\n }\n OptionalVersionedTextDocumentIdentifier2.is = is;\n})(OptionalVersionedTextDocumentIdentifier || (OptionalVersionedTextDocumentIdentifier = {}));\nvar TextDocumentItem;\n(function(TextDocumentItem2) {\n function create(uri, languageId, version, text) {\n return { uri, languageId, version, text };\n }\n TextDocumentItem2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.uri) && Is.string(candidate.languageId) && Is.integer(candidate.version) && Is.string(candidate.text);\n }\n TextDocumentItem2.is = is;\n})(TextDocumentItem || (TextDocumentItem = {}));\nvar MarkupKind;\n(function(MarkupKind2) {\n MarkupKind2.PlainText = \"plaintext\";\n MarkupKind2.Markdown = \"markdown\";\n})(MarkupKind || (MarkupKind = {}));\n(function(MarkupKind2) {\n function is(value) {\n var candidate = value;\n return candidate === MarkupKind2.PlainText || candidate === MarkupKind2.Markdown;\n }\n MarkupKind2.is = is;\n})(MarkupKind || (MarkupKind = {}));\nvar MarkupContent;\n(function(MarkupContent2) {\n function is(value) {\n var candidate = value;\n return Is.objectLiteral(value) && MarkupKind.is(candidate.kind) && Is.string(candidate.value);\n }\n MarkupContent2.is = is;\n})(MarkupContent || (MarkupContent = {}));\nvar CompletionItemKind;\n(function(CompletionItemKind2) {\n CompletionItemKind2.Text = 1;\n CompletionItemKind2.Method = 2;\n CompletionItemKind2.Function = 3;\n CompletionItemKind2.Constructor = 4;\n CompletionItemKind2.Field = 5;\n CompletionItemKind2.Variable = 6;\n CompletionItemKind2.Class = 7;\n CompletionItemKind2.Interface = 8;\n CompletionItemKind2.Module = 9;\n CompletionItemKind2.Property = 10;\n CompletionItemKind2.Unit = 11;\n CompletionItemKind2.Value = 12;\n CompletionItemKind2.Enum = 13;\n CompletionItemKind2.Keyword = 14;\n CompletionItemKind2.Snippet = 15;\n CompletionItemKind2.Color = 16;\n CompletionItemKind2.File = 17;\n CompletionItemKind2.Reference = 18;\n CompletionItemKind2.Folder = 19;\n CompletionItemKind2.EnumMember = 20;\n CompletionItemKind2.Constant = 21;\n CompletionItemKind2.Struct = 22;\n CompletionItemKind2.Event = 23;\n CompletionItemKind2.Operator = 24;\n CompletionItemKind2.TypeParameter = 25;\n})(CompletionItemKind || (CompletionItemKind = {}));\nvar InsertTextFormat;\n(function(InsertTextFormat2) {\n InsertTextFormat2.PlainText = 1;\n InsertTextFormat2.Snippet = 2;\n})(InsertTextFormat || (InsertTextFormat = {}));\nvar CompletionItemTag;\n(function(CompletionItemTag2) {\n CompletionItemTag2.Deprecated = 1;\n})(CompletionItemTag || (CompletionItemTag = {}));\nvar InsertReplaceEdit;\n(function(InsertReplaceEdit2) {\n function create(newText, insert, replace) {\n return { newText, insert, replace };\n }\n InsertReplaceEdit2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && Is.string(candidate.newText) && Range.is(candidate.insert) && Range.is(candidate.replace);\n }\n InsertReplaceEdit2.is = is;\n})(InsertReplaceEdit || (InsertReplaceEdit = {}));\nvar InsertTextMode;\n(function(InsertTextMode2) {\n InsertTextMode2.asIs = 1;\n InsertTextMode2.adjustIndentation = 2;\n})(InsertTextMode || (InsertTextMode = {}));\nvar CompletionItem;\n(function(CompletionItem2) {\n function create(label) {\n return { label };\n }\n CompletionItem2.create = create;\n})(CompletionItem || (CompletionItem = {}));\nvar CompletionList;\n(function(CompletionList2) {\n function create(items, isIncomplete) {\n return { items: items ? items : [], isIncomplete: !!isIncomplete };\n }\n CompletionList2.create = create;\n})(CompletionList || (CompletionList = {}));\nvar MarkedString;\n(function(MarkedString2) {\n function fromPlainText(plainText) {\n return plainText.replace(/[\\\\`*_{}[\\]()#+\\-.!]/g, \"\\\\$&\");\n }\n MarkedString2.fromPlainText = fromPlainText;\n function is(value) {\n var candidate = value;\n return Is.string(candidate) || Is.objectLiteral(candidate) && Is.string(candidate.language) && Is.string(candidate.value);\n }\n MarkedString2.is = is;\n})(MarkedString || (MarkedString = {}));\nvar Hover;\n(function(Hover2) {\n function is(value) {\n var candidate = value;\n return !!candidate && Is.objectLiteral(candidate) && (MarkupContent.is(candidate.contents) || MarkedString.is(candidate.contents) || Is.typedArray(candidate.contents, MarkedString.is)) && (value.range === void 0 || Range.is(value.range));\n }\n Hover2.is = is;\n})(Hover || (Hover = {}));\nvar ParameterInformation;\n(function(ParameterInformation2) {\n function create(label, documentation) {\n return documentation ? { label, documentation } : { label };\n }\n ParameterInformation2.create = create;\n})(ParameterInformation || (ParameterInformation = {}));\nvar SignatureInformation;\n(function(SignatureInformation2) {\n function create(label, documentation) {\n var parameters = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n parameters[_i - 2] = arguments[_i];\n }\n var result = { label };\n if (Is.defined(documentation)) {\n result.documentation = documentation;\n }\n if (Is.defined(parameters)) {\n result.parameters = parameters;\n } else {\n result.parameters = [];\n }\n return result;\n }\n SignatureInformation2.create = create;\n})(SignatureInformation || (SignatureInformation = {}));\nvar DocumentHighlightKind;\n(function(DocumentHighlightKind2) {\n DocumentHighlightKind2.Text = 1;\n DocumentHighlightKind2.Read = 2;\n DocumentHighlightKind2.Write = 3;\n})(DocumentHighlightKind || (DocumentHighlightKind = {}));\nvar DocumentHighlight;\n(function(DocumentHighlight2) {\n function create(range, kind) {\n var result = { range };\n if (Is.number(kind)) {\n result.kind = kind;\n }\n return result;\n }\n DocumentHighlight2.create = create;\n})(DocumentHighlight || (DocumentHighlight = {}));\nvar SymbolKind;\n(function(SymbolKind2) {\n SymbolKind2.File = 1;\n SymbolKind2.Module = 2;\n SymbolKind2.Namespace = 3;\n SymbolKind2.Package = 4;\n SymbolKind2.Class = 5;\n SymbolKind2.Method = 6;\n SymbolKind2.Property = 7;\n SymbolKind2.Field = 8;\n SymbolKind2.Constructor = 9;\n SymbolKind2.Enum = 10;\n SymbolKind2.Interface = 11;\n SymbolKind2.Function = 12;\n SymbolKind2.Variable = 13;\n SymbolKind2.Constant = 14;\n SymbolKind2.String = 15;\n SymbolKind2.Number = 16;\n SymbolKind2.Boolean = 17;\n SymbolKind2.Array = 18;\n SymbolKind2.Object = 19;\n SymbolKind2.Key = 20;\n SymbolKind2.Null = 21;\n SymbolKind2.EnumMember = 22;\n SymbolKind2.Struct = 23;\n SymbolKind2.Event = 24;\n SymbolKind2.Operator = 25;\n SymbolKind2.TypeParameter = 26;\n})(SymbolKind || (SymbolKind = {}));\nvar SymbolTag;\n(function(SymbolTag2) {\n SymbolTag2.Deprecated = 1;\n})(SymbolTag || (SymbolTag = {}));\nvar SymbolInformation;\n(function(SymbolInformation2) {\n function create(name, kind, range, uri, containerName) {\n var result = {\n name,\n kind,\n location: { uri, range }\n };\n if (containerName) {\n result.containerName = containerName;\n }\n return result;\n }\n SymbolInformation2.create = create;\n})(SymbolInformation || (SymbolInformation = {}));\nvar DocumentSymbol;\n(function(DocumentSymbol2) {\n function create(name, detail, kind, range, selectionRange, children) {\n var result = {\n name,\n detail,\n kind,\n range,\n selectionRange\n };\n if (children !== void 0) {\n result.children = children;\n }\n return result;\n }\n DocumentSymbol2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && Is.string(candidate.name) && Is.number(candidate.kind) && Range.is(candidate.range) && Range.is(candidate.selectionRange) && (candidate.detail === void 0 || Is.string(candidate.detail)) && (candidate.deprecated === void 0 || Is.boolean(candidate.deprecated)) && (candidate.children === void 0 || Array.isArray(candidate.children)) && (candidate.tags === void 0 || Array.isArray(candidate.tags));\n }\n DocumentSymbol2.is = is;\n})(DocumentSymbol || (DocumentSymbol = {}));\nvar CodeActionKind;\n(function(CodeActionKind2) {\n CodeActionKind2.Empty = \"\";\n CodeActionKind2.QuickFix = \"quickfix\";\n CodeActionKind2.Refactor = \"refactor\";\n CodeActionKind2.RefactorExtract = \"refactor.extract\";\n CodeActionKind2.RefactorInline = \"refactor.inline\";\n CodeActionKind2.RefactorRewrite = \"refactor.rewrite\";\n CodeActionKind2.Source = \"source\";\n CodeActionKind2.SourceOrganizeImports = \"source.organizeImports\";\n CodeActionKind2.SourceFixAll = \"source.fixAll\";\n})(CodeActionKind || (CodeActionKind = {}));\nvar CodeActionContext;\n(function(CodeActionContext2) {\n function create(diagnostics, only) {\n var result = { diagnostics };\n if (only !== void 0 && only !== null) {\n result.only = only;\n }\n return result;\n }\n CodeActionContext2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.typedArray(candidate.diagnostics, Diagnostic.is) && (candidate.only === void 0 || Is.typedArray(candidate.only, Is.string));\n }\n CodeActionContext2.is = is;\n})(CodeActionContext || (CodeActionContext = {}));\nvar CodeAction;\n(function(CodeAction2) {\n function create(title, kindOrCommandOrEdit, kind) {\n var result = { title };\n var checkKind = true;\n if (typeof kindOrCommandOrEdit === \"string\") {\n checkKind = false;\n result.kind = kindOrCommandOrEdit;\n } else if (Command.is(kindOrCommandOrEdit)) {\n result.command = kindOrCommandOrEdit;\n } else {\n result.edit = kindOrCommandOrEdit;\n }\n if (checkKind && kind !== void 0) {\n result.kind = kind;\n }\n return result;\n }\n CodeAction2.create = create;\n function is(value) {\n var candidate = value;\n return candidate && Is.string(candidate.title) && (candidate.diagnostics === void 0 || Is.typedArray(candidate.diagnostics, Diagnostic.is)) && (candidate.kind === void 0 || Is.string(candidate.kind)) && (candidate.edit !== void 0 || candidate.command !== void 0) && (candidate.command === void 0 || Command.is(candidate.command)) && (candidate.isPreferred === void 0 || Is.boolean(candidate.isPreferred)) && (candidate.edit === void 0 || WorkspaceEdit.is(candidate.edit));\n }\n CodeAction2.is = is;\n})(CodeAction || (CodeAction = {}));\nvar CodeLens;\n(function(CodeLens2) {\n function create(range, data) {\n var result = { range };\n if (Is.defined(data)) {\n result.data = data;\n }\n return result;\n }\n CodeLens2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Range.is(candidate.range) && (Is.undefined(candidate.command) || Command.is(candidate.command));\n }\n CodeLens2.is = is;\n})(CodeLens || (CodeLens = {}));\nvar FormattingOptions;\n(function(FormattingOptions2) {\n function create(tabSize, insertSpaces) {\n return { tabSize, insertSpaces };\n }\n FormattingOptions2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.uinteger(candidate.tabSize) && Is.boolean(candidate.insertSpaces);\n }\n FormattingOptions2.is = is;\n})(FormattingOptions || (FormattingOptions = {}));\nvar DocumentLink;\n(function(DocumentLink2) {\n function create(range, target, data) {\n return { range, target, data };\n }\n DocumentLink2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Range.is(candidate.range) && (Is.undefined(candidate.target) || Is.string(candidate.target));\n }\n DocumentLink2.is = is;\n})(DocumentLink || (DocumentLink = {}));\nvar SelectionRange;\n(function(SelectionRange2) {\n function create(range, parent) {\n return { range, parent };\n }\n SelectionRange2.create = create;\n function is(value) {\n var candidate = value;\n return candidate !== void 0 && Range.is(candidate.range) && (candidate.parent === void 0 || SelectionRange2.is(candidate.parent));\n }\n SelectionRange2.is = is;\n})(SelectionRange || (SelectionRange = {}));\nvar TextDocument;\n(function(TextDocument2) {\n function create(uri, languageId, version, content) {\n return new FullTextDocument(uri, languageId, version, content);\n }\n TextDocument2.create = create;\n function is(value) {\n var candidate = value;\n return Is.defined(candidate) && Is.string(candidate.uri) && (Is.undefined(candidate.languageId) || Is.string(candidate.languageId)) && Is.uinteger(candidate.lineCount) && Is.func(candidate.getText) && Is.func(candidate.positionAt) && Is.func(candidate.offsetAt) ? true : false;\n }\n TextDocument2.is = is;\n function applyEdits(document, edits) {\n var text = document.getText();\n var sortedEdits = mergeSort(edits, function(a, b) {\n var diff = a.range.start.line - b.range.start.line;\n if (diff === 0) {\n return a.range.start.character - b.range.start.character;\n }\n return diff;\n });\n var lastModifiedOffset = text.length;\n for (var i = sortedEdits.length - 1; i >= 0; i--) {\n var e = sortedEdits[i];\n var startOffset = document.offsetAt(e.range.start);\n var endOffset = document.offsetAt(e.range.end);\n if (endOffset <= lastModifiedOffset) {\n text = text.substring(0, startOffset) + e.newText + text.substring(endOffset, text.length);\n } else {\n throw new Error(\"Overlapping edit\");\n }\n lastModifiedOffset = startOffset;\n }\n return text;\n }\n TextDocument2.applyEdits = applyEdits;\n function mergeSort(data, compare) {\n if (data.length <= 1) {\n return data;\n }\n var p = data.length / 2 | 0;\n var left = data.slice(0, p);\n var right = data.slice(p);\n mergeSort(left, compare);\n mergeSort(right, compare);\n var leftIdx = 0;\n var rightIdx = 0;\n var i = 0;\n while (leftIdx < left.length && rightIdx < right.length) {\n var ret = compare(left[leftIdx], right[rightIdx]);\n if (ret <= 0) {\n data[i++] = left[leftIdx++];\n } else {\n data[i++] = right[rightIdx++];\n }\n }\n while (leftIdx < left.length) {\n data[i++] = left[leftIdx++];\n }\n while (rightIdx < right.length) {\n data[i++] = right[rightIdx++];\n }\n return data;\n }\n})(TextDocument || (TextDocument = {}));\nvar FullTextDocument = function() {\n function FullTextDocument2(uri, languageId, version, content) {\n this._uri = uri;\n this._languageId = languageId;\n this._version = version;\n this._content = content;\n this._lineOffsets = void 0;\n }\n Object.defineProperty(FullTextDocument2.prototype, \"uri\", {\n get: function() {\n return this._uri;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FullTextDocument2.prototype, \"languageId\", {\n get: function() {\n return this._languageId;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(FullTextDocument2.prototype, \"version\", {\n get: function() {\n return this._version;\n },\n enumerable: false,\n configurable: true\n });\n FullTextDocument2.prototype.getText = function(range) {\n if (range) {\n var start = this.offsetAt(range.start);\n var end = this.offsetAt(range.end);\n return this._content.substring(start, end);\n }\n return this._content;\n };\n FullTextDocument2.prototype.update = function(event, version) {\n this._content = event.text;\n this._version = version;\n this._lineOffsets = void 0;\n };\n FullTextDocument2.prototype.getLineOffsets = function() {\n if (this._lineOffsets === void 0) {\n var lineOffsets = [];\n var text = this._content;\n var isLineStart = true;\n for (var i = 0; i < text.length; i++) {\n if (isLineStart) {\n lineOffsets.push(i);\n isLineStart = false;\n }\n var ch = text.charAt(i);\n isLineStart = ch === \"\\r\" || ch === \"\\n\";\n if (ch === \"\\r\" && i + 1 < text.length && text.charAt(i + 1) === \"\\n\") {\n i++;\n }\n }\n if (isLineStart && text.length > 0) {\n lineOffsets.push(text.length);\n }\n this._lineOffsets = lineOffsets;\n }\n return this._lineOffsets;\n };\n FullTextDocument2.prototype.positionAt = function(offset) {\n offset = Math.max(Math.min(offset, this._content.length), 0);\n var lineOffsets = this.getLineOffsets();\n var low = 0, high = lineOffsets.length;\n if (high === 0) {\n return Position.create(0, offset);\n }\n while (low < high) {\n var mid = Math.floor((low + high) / 2);\n if (lineOffsets[mid] > offset) {\n high = mid;\n } else {\n low = mid + 1;\n }\n }\n var line = low - 1;\n return Position.create(line, offset - lineOffsets[line]);\n };\n FullTextDocument2.prototype.offsetAt = function(position) {\n var lineOffsets = this.getLineOffsets();\n if (position.line >= lineOffsets.length) {\n return this._content.length;\n } else if (position.line < 0) {\n return 0;\n }\n var lineOffset = lineOffsets[position.line];\n var nextLineOffset = position.line + 1 < lineOffsets.length ? lineOffsets[position.line + 1] : this._content.length;\n return Math.max(Math.min(lineOffset + position.character, nextLineOffset), lineOffset);\n };\n Object.defineProperty(FullTextDocument2.prototype, \"lineCount\", {\n get: function() {\n return this.getLineOffsets().length;\n },\n enumerable: false,\n configurable: true\n });\n return FullTextDocument2;\n}();\nvar Is;\n(function(Is2) {\n var toString = Object.prototype.toString;\n function defined(value) {\n return typeof value !== \"undefined\";\n }\n Is2.defined = defined;\n function undefined2(value) {\n return typeof value === \"undefined\";\n }\n Is2.undefined = undefined2;\n function boolean(value) {\n return value === true || value === false;\n }\n Is2.boolean = boolean;\n function string(value) {\n return toString.call(value) === \"[object String]\";\n }\n Is2.string = string;\n function number(value) {\n return toString.call(value) === \"[object Number]\";\n }\n Is2.number = number;\n function numberRange(value, min, max) {\n return toString.call(value) === \"[object Number]\" && min <= value && value <= max;\n }\n Is2.numberRange = numberRange;\n function integer2(value) {\n return toString.call(value) === \"[object Number]\" && -2147483648 <= value && value <= 2147483647;\n }\n Is2.integer = integer2;\n function uinteger2(value) {\n return toString.call(value) === \"[object Number]\" && 0 <= value && value <= 2147483647;\n }\n Is2.uinteger = uinteger2;\n function func(value) {\n return toString.call(value) === \"[object Function]\";\n }\n Is2.func = func;\n function objectLiteral(value) {\n return value !== null && typeof value === \"object\";\n }\n Is2.objectLiteral = objectLiteral;\n function typedArray(value, check) {\n return Array.isArray(value) && value.every(check);\n }\n Is2.typedArray = typedArray;\n})(Is || (Is = {}));\n\n// src/language/common/lspLanguageFeatures.ts\nvar DiagnosticsAdapter = class {\n constructor(_languageId, _worker, configChangeEvent) {\n this._languageId = _languageId;\n this._worker = _worker;\n const onModelAdd = (model) => {\n let modeId = model.getLanguageId();\n if (modeId !== this._languageId) {\n return;\n }\n let handle;\n this._listener[model.uri.toString()] = model.onDidChangeContent(() => {\n window.clearTimeout(handle);\n handle = window.setTimeout(() => this._doValidate(model.uri, modeId), 500);\n });\n this._doValidate(model.uri, modeId);\n };\n const onModelRemoved = (model) => {\n monaco_editor_core_exports.editor.setModelMarkers(model, this._languageId, []);\n let uriStr = model.uri.toString();\n let listener = this._listener[uriStr];\n if (listener) {\n listener.dispose();\n delete this._listener[uriStr];\n }\n };\n this._disposables.push(monaco_editor_core_exports.editor.onDidCreateModel(onModelAdd));\n this._disposables.push(monaco_editor_core_exports.editor.onWillDisposeModel(onModelRemoved));\n this._disposables.push(monaco_editor_core_exports.editor.onDidChangeModelLanguage((event) => {\n onModelRemoved(event.model);\n onModelAdd(event.model);\n }));\n this._disposables.push(configChangeEvent((_) => {\n monaco_editor_core_exports.editor.getModels().forEach((model) => {\n if (model.getLanguageId() === this._languageId) {\n onModelRemoved(model);\n onModelAdd(model);\n }\n });\n }));\n this._disposables.push({\n dispose: () => {\n monaco_editor_core_exports.editor.getModels().forEach(onModelRemoved);\n for (let key in this._listener) {\n this._listener[key].dispose();\n }\n }\n });\n monaco_editor_core_exports.editor.getModels().forEach(onModelAdd);\n }\n _disposables = [];\n _listener = /* @__PURE__ */ Object.create(null);\n dispose() {\n this._disposables.forEach((d) => d && d.dispose());\n this._disposables.length = 0;\n }\n _doValidate(resource, languageId) {\n this._worker(resource).then((worker) => {\n return worker.doValidation(resource.toString());\n }).then((diagnostics) => {\n const markers = diagnostics.map((d) => toDiagnostics(resource, d));\n let model = monaco_editor_core_exports.editor.getModel(resource);\n if (model && model.getLanguageId() === languageId) {\n monaco_editor_core_exports.editor.setModelMarkers(model, languageId, markers);\n }\n }).then(void 0, (err) => {\n console.error(err);\n });\n }\n};\nfunction toSeverity(lsSeverity) {\n switch (lsSeverity) {\n case DiagnosticSeverity.Error:\n return monaco_editor_core_exports.MarkerSeverity.Error;\n case DiagnosticSeverity.Warning:\n return monaco_editor_core_exports.MarkerSeverity.Warning;\n case DiagnosticSeverity.Information:\n return monaco_editor_core_exports.MarkerSeverity.Info;\n case DiagnosticSeverity.Hint:\n return monaco_editor_core_exports.MarkerSeverity.Hint;\n default:\n return monaco_editor_core_exports.MarkerSeverity.Info;\n }\n}\nfunction toDiagnostics(resource, diag) {\n let code = typeof diag.code === \"number\" ? String(diag.code) : diag.code;\n return {\n severity: toSeverity(diag.severity),\n startLineNumber: diag.range.start.line + 1,\n startColumn: diag.range.start.character + 1,\n endLineNumber: diag.range.end.line + 1,\n endColumn: diag.range.end.character + 1,\n message: diag.message,\n code,\n source: diag.source\n };\n}\nvar CompletionAdapter = class {\n constructor(_worker, _triggerCharacters) {\n this._worker = _worker;\n this._triggerCharacters = _triggerCharacters;\n }\n get triggerCharacters() {\n return this._triggerCharacters;\n }\n provideCompletionItems(model, position, context, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.doComplete(resource.toString(), fromPosition(position));\n }).then((info) => {\n if (!info) {\n return;\n }\n const wordInfo = model.getWordUntilPosition(position);\n const wordRange = new monaco_editor_core_exports.Range(position.lineNumber, wordInfo.startColumn, position.lineNumber, wordInfo.endColumn);\n const items = info.items.map((entry) => {\n const item = {\n label: entry.label,\n insertText: entry.insertText || entry.label,\n sortText: entry.sortText,\n filterText: entry.filterText,\n documentation: entry.documentation,\n detail: entry.detail,\n command: toCommand(entry.command),\n range: wordRange,\n kind: toCompletionItemKind(entry.kind)\n };\n if (entry.textEdit) {\n if (isInsertReplaceEdit(entry.textEdit)) {\n item.range = {\n insert: toRange(entry.textEdit.insert),\n replace: toRange(entry.textEdit.replace)\n };\n } else {\n item.range = toRange(entry.textEdit.range);\n }\n item.insertText = entry.textEdit.newText;\n }\n if (entry.additionalTextEdits) {\n item.additionalTextEdits = entry.additionalTextEdits.map(toTextEdit);\n }\n if (entry.insertTextFormat === InsertTextFormat.Snippet) {\n item.insertTextRules = monaco_editor_core_exports.languages.CompletionItemInsertTextRule.InsertAsSnippet;\n }\n return item;\n });\n return {\n isIncomplete: info.isIncomplete,\n suggestions: items\n };\n });\n }\n};\nfunction fromPosition(position) {\n if (!position) {\n return void 0;\n }\n return { character: position.column - 1, line: position.lineNumber - 1 };\n}\nfunction fromRange(range) {\n if (!range) {\n return void 0;\n }\n return {\n start: {\n line: range.startLineNumber - 1,\n character: range.startColumn - 1\n },\n end: { line: range.endLineNumber - 1, character: range.endColumn - 1 }\n };\n}\nfunction toRange(range) {\n if (!range) {\n return void 0;\n }\n return new monaco_editor_core_exports.Range(range.start.line + 1, range.start.character + 1, range.end.line + 1, range.end.character + 1);\n}\nfunction isInsertReplaceEdit(edit) {\n return typeof edit.insert !== \"undefined\" && typeof edit.replace !== \"undefined\";\n}\nfunction toCompletionItemKind(kind) {\n const mItemKind = monaco_editor_core_exports.languages.CompletionItemKind;\n switch (kind) {\n case CompletionItemKind.Text:\n return mItemKind.Text;\n case CompletionItemKind.Method:\n return mItemKind.Method;\n case CompletionItemKind.Function:\n return mItemKind.Function;\n case CompletionItemKind.Constructor:\n return mItemKind.Constructor;\n case CompletionItemKind.Field:\n return mItemKind.Field;\n case CompletionItemKind.Variable:\n return mItemKind.Variable;\n case CompletionItemKind.Class:\n return mItemKind.Class;\n case CompletionItemKind.Interface:\n return mItemKind.Interface;\n case CompletionItemKind.Module:\n return mItemKind.Module;\n case CompletionItemKind.Property:\n return mItemKind.Property;\n case CompletionItemKind.Unit:\n return mItemKind.Unit;\n case CompletionItemKind.Value:\n return mItemKind.Value;\n case CompletionItemKind.Enum:\n return mItemKind.Enum;\n case CompletionItemKind.Keyword:\n return mItemKind.Keyword;\n case CompletionItemKind.Snippet:\n return mItemKind.Snippet;\n case CompletionItemKind.Color:\n return mItemKind.Color;\n case CompletionItemKind.File:\n return mItemKind.File;\n case CompletionItemKind.Reference:\n return mItemKind.Reference;\n }\n return mItemKind.Property;\n}\nfunction toTextEdit(textEdit) {\n if (!textEdit) {\n return void 0;\n }\n return {\n range: toRange(textEdit.range),\n text: textEdit.newText\n };\n}\nfunction toCommand(c) {\n return c && c.command === \"editor.action.triggerSuggest\" ? { id: c.command, title: c.title, arguments: c.arguments } : void 0;\n}\nvar HoverAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideHover(model, position, token) {\n let resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.doHover(resource.toString(), fromPosition(position));\n }).then((info) => {\n if (!info) {\n return;\n }\n return {\n range: toRange(info.range),\n contents: toMarkedStringArray(info.contents)\n };\n });\n }\n};\nfunction isMarkupContent(thing) {\n return thing && typeof thing === \"object\" && typeof thing.kind === \"string\";\n}\nfunction toMarkdownString(entry) {\n if (typeof entry === \"string\") {\n return {\n value: entry\n };\n }\n if (isMarkupContent(entry)) {\n if (entry.kind === \"plaintext\") {\n return {\n value: entry.value.replace(/[\\\\`*_{}[\\]()#+\\-.!]/g, \"\\\\$&\")\n };\n }\n return {\n value: entry.value\n };\n }\n return { value: \"```\" + entry.language + \"\\n\" + entry.value + \"\\n```\\n\" };\n}\nfunction toMarkedStringArray(contents) {\n if (!contents) {\n return void 0;\n }\n if (Array.isArray(contents)) {\n return contents.map(toMarkdownString);\n }\n return [toMarkdownString(contents)];\n}\nvar DocumentHighlightAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideDocumentHighlights(model, position, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.findDocumentHighlights(resource.toString(), fromPosition(position))).then((entries) => {\n if (!entries) {\n return;\n }\n return entries.map((entry) => {\n return {\n range: toRange(entry.range),\n kind: toDocumentHighlightKind(entry.kind)\n };\n });\n });\n }\n};\nfunction toDocumentHighlightKind(kind) {\n switch (kind) {\n case DocumentHighlightKind.Read:\n return monaco_editor_core_exports.languages.DocumentHighlightKind.Read;\n case DocumentHighlightKind.Write:\n return monaco_editor_core_exports.languages.DocumentHighlightKind.Write;\n case DocumentHighlightKind.Text:\n return monaco_editor_core_exports.languages.DocumentHighlightKind.Text;\n }\n return monaco_editor_core_exports.languages.DocumentHighlightKind.Text;\n}\nvar DefinitionAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideDefinition(model, position, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.findDefinition(resource.toString(), fromPosition(position));\n }).then((definition) => {\n if (!definition) {\n return;\n }\n return [toLocation(definition)];\n });\n }\n};\nfunction toLocation(location) {\n return {\n uri: monaco_editor_core_exports.Uri.parse(location.uri),\n range: toRange(location.range)\n };\n}\nvar ReferenceAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideReferences(model, position, context, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.findReferences(resource.toString(), fromPosition(position));\n }).then((entries) => {\n if (!entries) {\n return;\n }\n return entries.map(toLocation);\n });\n }\n};\nvar RenameAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideRenameEdits(model, position, newName, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.doRename(resource.toString(), fromPosition(position), newName);\n }).then((edit) => {\n return toWorkspaceEdit(edit);\n });\n }\n};\nfunction toWorkspaceEdit(edit) {\n if (!edit || !edit.changes) {\n return void 0;\n }\n let resourceEdits = [];\n for (let uri in edit.changes) {\n const _uri = monaco_editor_core_exports.Uri.parse(uri);\n for (let e of edit.changes[uri]) {\n resourceEdits.push({\n resource: _uri,\n versionId: void 0,\n textEdit: {\n range: toRange(e.range),\n text: e.newText\n }\n });\n }\n }\n return {\n edits: resourceEdits\n };\n}\nvar DocumentSymbolAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideDocumentSymbols(model, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.findDocumentSymbols(resource.toString())).then((items) => {\n if (!items) {\n return;\n }\n return items.map((item) => ({\n name: item.name,\n detail: \"\",\n containerName: item.containerName,\n kind: toSymbolKind(item.kind),\n range: toRange(item.location.range),\n selectionRange: toRange(item.location.range),\n tags: []\n }));\n });\n }\n};\nfunction toSymbolKind(kind) {\n let mKind = monaco_editor_core_exports.languages.SymbolKind;\n switch (kind) {\n case SymbolKind.File:\n return mKind.Array;\n case SymbolKind.Module:\n return mKind.Module;\n case SymbolKind.Namespace:\n return mKind.Namespace;\n case SymbolKind.Package:\n return mKind.Package;\n case SymbolKind.Class:\n return mKind.Class;\n case SymbolKind.Method:\n return mKind.Method;\n case SymbolKind.Property:\n return mKind.Property;\n case SymbolKind.Field:\n return mKind.Field;\n case SymbolKind.Constructor:\n return mKind.Constructor;\n case SymbolKind.Enum:\n return mKind.Enum;\n case SymbolKind.Interface:\n return mKind.Interface;\n case SymbolKind.Function:\n return mKind.Function;\n case SymbolKind.Variable:\n return mKind.Variable;\n case SymbolKind.Constant:\n return mKind.Constant;\n case SymbolKind.String:\n return mKind.String;\n case SymbolKind.Number:\n return mKind.Number;\n case SymbolKind.Boolean:\n return mKind.Boolean;\n case SymbolKind.Array:\n return mKind.Array;\n }\n return mKind.Function;\n}\nvar DocumentLinkAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideLinks(model, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.findDocumentLinks(resource.toString())).then((items) => {\n if (!items) {\n return;\n }\n return {\n links: items.map((item) => ({\n range: toRange(item.range),\n url: item.target\n }))\n };\n });\n }\n};\nvar DocumentFormattingEditProvider = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideDocumentFormattingEdits(model, options, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.format(resource.toString(), null, fromFormattingOptions(options)).then((edits) => {\n if (!edits || edits.length === 0) {\n return;\n }\n return edits.map(toTextEdit);\n });\n });\n }\n};\nvar DocumentRangeFormattingEditProvider = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n canFormatMultipleRanges = false;\n provideDocumentRangeFormattingEdits(model, range, options, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => {\n return worker.format(resource.toString(), fromRange(range), fromFormattingOptions(options)).then((edits) => {\n if (!edits || edits.length === 0) {\n return;\n }\n return edits.map(toTextEdit);\n });\n });\n }\n};\nfunction fromFormattingOptions(options) {\n return {\n tabSize: options.tabSize,\n insertSpaces: options.insertSpaces\n };\n}\nvar DocumentColorAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideDocumentColors(model, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.findDocumentColors(resource.toString())).then((infos) => {\n if (!infos) {\n return;\n }\n return infos.map((item) => ({\n color: item.color,\n range: toRange(item.range)\n }));\n });\n }\n provideColorPresentations(model, info, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.getColorPresentations(resource.toString(), info.color, fromRange(info.range))).then((presentations) => {\n if (!presentations) {\n return;\n }\n return presentations.map((presentation) => {\n let item = {\n label: presentation.label\n };\n if (presentation.textEdit) {\n item.textEdit = toTextEdit(presentation.textEdit);\n }\n if (presentation.additionalTextEdits) {\n item.additionalTextEdits = presentation.additionalTextEdits.map(toTextEdit);\n }\n return item;\n });\n });\n }\n};\nvar FoldingRangeAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideFoldingRanges(model, context, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.getFoldingRanges(resource.toString(), context)).then((ranges) => {\n if (!ranges) {\n return;\n }\n return ranges.map((range) => {\n const result = {\n start: range.startLine + 1,\n end: range.endLine + 1\n };\n if (typeof range.kind !== \"undefined\") {\n result.kind = toFoldingRangeKind(range.kind);\n }\n return result;\n });\n });\n }\n};\nfunction toFoldingRangeKind(kind) {\n switch (kind) {\n case FoldingRangeKind.Comment:\n return monaco_editor_core_exports.languages.FoldingRangeKind.Comment;\n case FoldingRangeKind.Imports:\n return monaco_editor_core_exports.languages.FoldingRangeKind.Imports;\n case FoldingRangeKind.Region:\n return monaco_editor_core_exports.languages.FoldingRangeKind.Region;\n }\n return void 0;\n}\nvar SelectionRangeAdapter = class {\n constructor(_worker) {\n this._worker = _worker;\n }\n provideSelectionRanges(model, positions, token) {\n const resource = model.uri;\n return this._worker(resource).then((worker) => worker.getSelectionRanges(resource.toString(), positions.map(fromPosition))).then((selectionRanges) => {\n if (!selectionRanges) {\n return;\n }\n return selectionRanges.map((selectionRange) => {\n const result = [];\n while (selectionRange) {\n result.push({ range: toRange(selectionRange.range) });\n selectionRange = selectionRange.parent;\n }\n return result;\n });\n });\n }\n};\n\n// node_modules/jsonc-parser/lib/esm/impl/scanner.js\nfunction createScanner(text, ignoreTrivia) {\n if (ignoreTrivia === void 0) {\n ignoreTrivia = false;\n }\n var len = text.length;\n var pos = 0, value = \"\", tokenOffset = 0, token = 16, lineNumber = 0, lineStartOffset = 0, tokenLineStartOffset = 0, prevTokenLineStartOffset = 0, scanError = 0;\n function scanHexDigits(count, exact) {\n var digits = 0;\n var value2 = 0;\n while (digits < count || !exact) {\n var ch = text.charCodeAt(pos);\n if (ch >= 48 && ch <= 57) {\n value2 = value2 * 16 + ch - 48;\n } else if (ch >= 65 && ch <= 70) {\n value2 = value2 * 16 + ch - 65 + 10;\n } else if (ch >= 97 && ch <= 102) {\n value2 = value2 * 16 + ch - 97 + 10;\n } else {\n break;\n }\n pos++;\n digits++;\n }\n if (digits < count) {\n value2 = -1;\n }\n return value2;\n }\n function setPosition(newPosition) {\n pos = newPosition;\n value = \"\";\n tokenOffset = 0;\n token = 16;\n scanError = 0;\n }\n function scanNumber() {\n var start = pos;\n if (text.charCodeAt(pos) === 48) {\n pos++;\n } else {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n }\n if (pos < text.length && text.charCodeAt(pos) === 46) {\n pos++;\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n } else {\n scanError = 3;\n return text.substring(start, pos);\n }\n }\n var end = pos;\n if (pos < text.length && (text.charCodeAt(pos) === 69 || text.charCodeAt(pos) === 101)) {\n pos++;\n if (pos < text.length && text.charCodeAt(pos) === 43 || text.charCodeAt(pos) === 45) {\n pos++;\n }\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n end = pos;\n } else {\n scanError = 3;\n }\n }\n return text.substring(start, end);\n }\n function scanString() {\n var result = \"\", start = pos;\n while (true) {\n if (pos >= len) {\n result += text.substring(start, pos);\n scanError = 2;\n break;\n }\n var ch = text.charCodeAt(pos);\n if (ch === 34) {\n result += text.substring(start, pos);\n pos++;\n break;\n }\n if (ch === 92) {\n result += text.substring(start, pos);\n pos++;\n if (pos >= len) {\n scanError = 2;\n break;\n }\n var ch2 = text.charCodeAt(pos++);\n switch (ch2) {\n case 34:\n result += '\"';\n break;\n case 92:\n result += \"\\\\\";\n break;\n case 47:\n result += \"/\";\n break;\n case 98:\n result += \"\\b\";\n break;\n case 102:\n result += \"\\f\";\n break;\n case 110:\n result += \"\\n\";\n break;\n case 114:\n result += \"\\r\";\n break;\n case 116:\n result += \"\t\";\n break;\n case 117:\n var ch3 = scanHexDigits(4, true);\n if (ch3 >= 0) {\n result += String.fromCharCode(ch3);\n } else {\n scanError = 4;\n }\n break;\n default:\n scanError = 5;\n }\n start = pos;\n continue;\n }\n if (ch >= 0 && ch <= 31) {\n if (isLineBreak(ch)) {\n result += text.substring(start, pos);\n scanError = 2;\n break;\n } else {\n scanError = 6;\n }\n }\n pos++;\n }\n return result;\n }\n function scanNext() {\n value = \"\";\n scanError = 0;\n tokenOffset = pos;\n lineStartOffset = lineNumber;\n prevTokenLineStartOffset = tokenLineStartOffset;\n if (pos >= len) {\n tokenOffset = len;\n return token = 17;\n }\n var code = text.charCodeAt(pos);\n if (isWhiteSpace(code)) {\n do {\n pos++;\n value += String.fromCharCode(code);\n code = text.charCodeAt(pos);\n } while (isWhiteSpace(code));\n return token = 15;\n }\n if (isLineBreak(code)) {\n pos++;\n value += String.fromCharCode(code);\n if (code === 13 && text.charCodeAt(pos) === 10) {\n pos++;\n value += \"\\n\";\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n return token = 14;\n }\n switch (code) {\n case 123:\n pos++;\n return token = 1;\n case 125:\n pos++;\n return token = 2;\n case 91:\n pos++;\n return token = 3;\n case 93:\n pos++;\n return token = 4;\n case 58:\n pos++;\n return token = 6;\n case 44:\n pos++;\n return token = 5;\n case 34:\n pos++;\n value = scanString();\n return token = 10;\n case 47:\n var start = pos - 1;\n if (text.charCodeAt(pos + 1) === 47) {\n pos += 2;\n while (pos < len) {\n if (isLineBreak(text.charCodeAt(pos))) {\n break;\n }\n pos++;\n }\n value = text.substring(start, pos);\n return token = 12;\n }\n if (text.charCodeAt(pos + 1) === 42) {\n pos += 2;\n var safeLength = len - 1;\n var commentClosed = false;\n while (pos < safeLength) {\n var ch = text.charCodeAt(pos);\n if (ch === 42 && text.charCodeAt(pos + 1) === 47) {\n pos += 2;\n commentClosed = true;\n break;\n }\n pos++;\n if (isLineBreak(ch)) {\n if (ch === 13 && text.charCodeAt(pos) === 10) {\n pos++;\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n }\n }\n if (!commentClosed) {\n pos++;\n scanError = 1;\n }\n value = text.substring(start, pos);\n return token = 13;\n }\n value += String.fromCharCode(code);\n pos++;\n return token = 16;\n case 45:\n value += String.fromCharCode(code);\n pos++;\n if (pos === len || !isDigit(text.charCodeAt(pos))) {\n return token = 16;\n }\n case 48:\n case 49:\n case 50:\n case 51:\n case 52:\n case 53:\n case 54:\n case 55:\n case 56:\n case 57:\n value += scanNumber();\n return token = 11;\n default:\n while (pos < len && isUnknownContentCharacter(code)) {\n pos++;\n code = text.charCodeAt(pos);\n }\n if (tokenOffset !== pos) {\n value = text.substring(tokenOffset, pos);\n switch (value) {\n case \"true\":\n return token = 8;\n case \"false\":\n return token = 9;\n case \"null\":\n return token = 7;\n }\n return token = 16;\n }\n value += String.fromCharCode(code);\n pos++;\n return token = 16;\n }\n }\n function isUnknownContentCharacter(code) {\n if (isWhiteSpace(code) || isLineBreak(code)) {\n return false;\n }\n switch (code) {\n case 125:\n case 93:\n case 123:\n case 91:\n case 34:\n case 58:\n case 44:\n case 47:\n return false;\n }\n return true;\n }\n function scanNextNonTrivia() {\n var result;\n do {\n result = scanNext();\n } while (result >= 12 && result <= 15);\n return result;\n }\n return {\n setPosition,\n getPosition: function() {\n return pos;\n },\n scan: ignoreTrivia ? scanNextNonTrivia : scanNext,\n getToken: function() {\n return token;\n },\n getTokenValue: function() {\n return value;\n },\n getTokenOffset: function() {\n return tokenOffset;\n },\n getTokenLength: function() {\n return pos - tokenOffset;\n },\n getTokenStartLine: function() {\n return lineStartOffset;\n },\n getTokenStartCharacter: function() {\n return tokenOffset - prevTokenLineStartOffset;\n },\n getTokenError: function() {\n return scanError;\n }\n };\n}\nfunction isWhiteSpace(ch) {\n return ch === 32 || ch === 9 || ch === 11 || ch === 12 || ch === 160 || ch === 5760 || ch >= 8192 && ch <= 8203 || ch === 8239 || ch === 8287 || ch === 12288 || ch === 65279;\n}\nfunction isLineBreak(ch) {\n return ch === 10 || ch === 13 || ch === 8232 || ch === 8233;\n}\nfunction isDigit(ch) {\n return ch >= 48 && ch <= 57;\n}\n\n// node_modules/jsonc-parser/lib/esm/impl/parser.js\nvar ParseOptions;\n(function(ParseOptions2) {\n ParseOptions2.DEFAULT = {\n allowTrailingComma: false\n };\n})(ParseOptions || (ParseOptions = {}));\n\n// node_modules/jsonc-parser/lib/esm/main.js\nvar createScanner2 = createScanner;\n\n// src/language/json/tokenization.ts\nfunction createTokenizationSupport(supportComments) {\n return {\n getInitialState: () => new JSONState(null, null, false, null),\n tokenize: (line, state) => tokenize(supportComments, line, state)\n };\n}\nvar TOKEN_DELIM_OBJECT = \"delimiter.bracket.json\";\nvar TOKEN_DELIM_ARRAY = \"delimiter.array.json\";\nvar TOKEN_DELIM_COLON = \"delimiter.colon.json\";\nvar TOKEN_DELIM_COMMA = \"delimiter.comma.json\";\nvar TOKEN_VALUE_BOOLEAN = \"keyword.json\";\nvar TOKEN_VALUE_NULL = \"keyword.json\";\nvar TOKEN_VALUE_STRING = \"string.value.json\";\nvar TOKEN_VALUE_NUMBER = \"number.json\";\nvar TOKEN_PROPERTY_NAME = \"string.key.json\";\nvar TOKEN_COMMENT_BLOCK = \"comment.block.json\";\nvar TOKEN_COMMENT_LINE = \"comment.line.json\";\nvar ParentsStack = class {\n constructor(parent, type) {\n this.parent = parent;\n this.type = type;\n }\n static pop(parents) {\n if (parents) {\n return parents.parent;\n }\n return null;\n }\n static push(parents, type) {\n return new ParentsStack(parents, type);\n }\n static equals(a, b) {\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n while (a && b) {\n if (a === b) {\n return true;\n }\n if (a.type !== b.type) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n }\n return true;\n }\n};\nvar JSONState = class {\n _state;\n scanError;\n lastWasColon;\n parents;\n constructor(state, scanError, lastWasColon, parents) {\n this._state = state;\n this.scanError = scanError;\n this.lastWasColon = lastWasColon;\n this.parents = parents;\n }\n clone() {\n return new JSONState(this._state, this.scanError, this.lastWasColon, this.parents);\n }\n equals(other) {\n if (other === this) {\n return true;\n }\n if (!other || !(other instanceof JSONState)) {\n return false;\n }\n return this.scanError === other.scanError && this.lastWasColon === other.lastWasColon && ParentsStack.equals(this.parents, other.parents);\n }\n getStateData() {\n return this._state;\n }\n setStateData(state) {\n this._state = state;\n }\n};\nfunction tokenize(comments, line, state, offsetDelta = 0) {\n let numberOfInsertedCharacters = 0;\n let adjustOffset = false;\n switch (state.scanError) {\n case 2 /* UnexpectedEndOfString */:\n line = '\"' + line;\n numberOfInsertedCharacters = 1;\n break;\n case 1 /* UnexpectedEndOfComment */:\n line = \"/*\" + line;\n numberOfInsertedCharacters = 2;\n break;\n }\n const scanner = createScanner2(line);\n let lastWasColon = state.lastWasColon;\n let parents = state.parents;\n const ret = {\n tokens: [],\n endState: state.clone()\n };\n while (true) {\n let offset = offsetDelta + scanner.getPosition();\n let type = \"\";\n const kind = scanner.scan();\n if (kind === 17 /* EOF */) {\n break;\n }\n if (offset === offsetDelta + scanner.getPosition()) {\n throw new Error(\"Scanner did not advance, next 3 characters are: \" + line.substr(scanner.getPosition(), 3));\n }\n if (adjustOffset) {\n offset -= numberOfInsertedCharacters;\n }\n adjustOffset = numberOfInsertedCharacters > 0;\n switch (kind) {\n case 1 /* OpenBraceToken */:\n parents = ParentsStack.push(parents, 0 /* Object */);\n type = TOKEN_DELIM_OBJECT;\n lastWasColon = false;\n break;\n case 2 /* CloseBraceToken */:\n parents = ParentsStack.pop(parents);\n type = TOKEN_DELIM_OBJECT;\n lastWasColon = false;\n break;\n case 3 /* OpenBracketToken */:\n parents = ParentsStack.push(parents, 1 /* Array */);\n type = TOKEN_DELIM_ARRAY;\n lastWasColon = false;\n break;\n case 4 /* CloseBracketToken */:\n parents = ParentsStack.pop(parents);\n type = TOKEN_DELIM_ARRAY;\n lastWasColon = false;\n break;\n case 6 /* ColonToken */:\n type = TOKEN_DELIM_COLON;\n lastWasColon = true;\n break;\n case 5 /* CommaToken */:\n type = TOKEN_DELIM_COMMA;\n lastWasColon = false;\n break;\n case 8 /* TrueKeyword */:\n case 9 /* FalseKeyword */:\n type = TOKEN_VALUE_BOOLEAN;\n lastWasColon = false;\n break;\n case 7 /* NullKeyword */:\n type = TOKEN_VALUE_NULL;\n lastWasColon = false;\n break;\n case 10 /* StringLiteral */:\n const currentParent = parents ? parents.type : 0 /* Object */;\n const inArray = currentParent === 1 /* Array */;\n type = lastWasColon || inArray ? TOKEN_VALUE_STRING : TOKEN_PROPERTY_NAME;\n lastWasColon = false;\n break;\n case 11 /* NumericLiteral */:\n type = TOKEN_VALUE_NUMBER;\n lastWasColon = false;\n break;\n }\n if (comments) {\n switch (kind) {\n case 12 /* LineCommentTrivia */:\n type = TOKEN_COMMENT_LINE;\n break;\n case 13 /* BlockCommentTrivia */:\n type = TOKEN_COMMENT_BLOCK;\n break;\n }\n }\n ret.endState = new JSONState(state.getStateData(), scanner.getTokenError(), lastWasColon, parents);\n ret.tokens.push({\n startIndex: offset,\n scopes: type\n });\n }\n return ret;\n}\n\n// src/language/json/jsonMode.ts\nvar JSONDiagnosticsAdapter = class extends DiagnosticsAdapter {\n constructor(languageId, worker, defaults) {\n super(languageId, worker, defaults.onDidChange);\n this._disposables.push(monaco_editor_core_exports.editor.onWillDisposeModel((model) => {\n this._resetSchema(model.uri);\n }));\n this._disposables.push(monaco_editor_core_exports.editor.onDidChangeModelLanguage((event) => {\n this._resetSchema(event.model.uri);\n }));\n }\n _resetSchema(resource) {\n this._worker().then((worker) => {\n worker.resetSchema(resource.toString());\n });\n }\n};\nfunction setupMode(defaults) {\n const disposables = [];\n const providers = [];\n const client = new WorkerManager(defaults);\n disposables.push(client);\n const worker = (...uris) => {\n return client.getLanguageServiceWorker(...uris);\n };\n function registerProviders() {\n const { languageId, modeConfiguration: modeConfiguration2 } = defaults;\n disposeAll(providers);\n if (modeConfiguration2.documentFormattingEdits) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentFormattingEditProvider(languageId, new DocumentFormattingEditProvider(worker)));\n }\n if (modeConfiguration2.documentRangeFormattingEdits) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentRangeFormattingEditProvider(languageId, new DocumentRangeFormattingEditProvider(worker)));\n }\n if (modeConfiguration2.completionItems) {\n providers.push(monaco_editor_core_exports.languages.registerCompletionItemProvider(languageId, new CompletionAdapter(worker, [\" \", \":\", '\"'])));\n }\n if (modeConfiguration2.hovers) {\n providers.push(monaco_editor_core_exports.languages.registerHoverProvider(languageId, new HoverAdapter(worker)));\n }\n if (modeConfiguration2.documentSymbols) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentSymbolProvider(languageId, new DocumentSymbolAdapter(worker)));\n }\n if (modeConfiguration2.tokens) {\n providers.push(monaco_editor_core_exports.languages.setTokensProvider(languageId, createTokenizationSupport(true)));\n }\n if (modeConfiguration2.colors) {\n providers.push(monaco_editor_core_exports.languages.registerColorProvider(languageId, new DocumentColorAdapter(worker)));\n }\n if (modeConfiguration2.foldingRanges) {\n providers.push(monaco_editor_core_exports.languages.registerFoldingRangeProvider(languageId, new FoldingRangeAdapter(worker)));\n }\n if (modeConfiguration2.diagnostics) {\n providers.push(new JSONDiagnosticsAdapter(languageId, worker, defaults));\n }\n if (modeConfiguration2.selectionRanges) {\n providers.push(monaco_editor_core_exports.languages.registerSelectionRangeProvider(languageId, new SelectionRangeAdapter(worker)));\n }\n }\n registerProviders();\n disposables.push(monaco_editor_core_exports.languages.setLanguageConfiguration(defaults.languageId, richEditConfiguration));\n let modeConfiguration = defaults.modeConfiguration;\n defaults.onDidChange((newDefaults) => {\n if (newDefaults.modeConfiguration !== modeConfiguration) {\n modeConfiguration = newDefaults.modeConfiguration;\n registerProviders();\n }\n });\n disposables.push(asDisposable(providers));\n return asDisposable(disposables);\n}\nfunction asDisposable(disposables) {\n return { dispose: () => disposeAll(disposables) };\n}\nfunction disposeAll(disposables) {\n while (disposables.length) {\n disposables.pop().dispose();\n }\n}\nvar richEditConfiguration = {\n wordPattern: /(-?\\d*\\.\\d\\w*)|([^\\[\\{\\]\\}\\:\\\"\\,\\s]+)/g,\n comments: {\n lineComment: \"//\",\n blockComment: [\"/*\", \"*/\"]\n },\n brackets: [\n [\"{\", \"}\"],\n [\"[\", \"]\"]\n ],\n autoClosingPairs: [\n { open: \"{\", close: \"}\", notIn: [\"string\"] },\n { open: \"[\", close: \"]\", notIn: [\"string\"] },\n { open: '\"', close: '\"', notIn: [\"string\"] }\n ]\n};\nexport {\n CompletionAdapter,\n DefinitionAdapter,\n DiagnosticsAdapter,\n DocumentColorAdapter,\n DocumentFormattingEditProvider,\n DocumentHighlightAdapter,\n DocumentLinkAdapter,\n DocumentRangeFormattingEditProvider,\n DocumentSymbolAdapter,\n FoldingRangeAdapter,\n HoverAdapter,\n ReferenceAdapter,\n RenameAdapter,\n SelectionRangeAdapter,\n WorkerManager,\n fromPosition,\n fromRange,\n setupMode,\n toRange,\n toTextEdit\n};\n"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__copyProps","to","from","except","desc","key","call","get","enumerable","__reExport","target","mod","secondTarget","monaco_editor_core_exports","STOP_WHEN_IDLE_FOR","WorkerManager","_defaults","_idleCheckInterval","_lastUsedTime","_configChangeListener","_worker","_client","constructor","defaults","this","window","setInterval","_checkIfIdle","onDidChange","_stopWorker","dispose","clearInterval","timePassedSinceLastUsed","Date","now","_getClient","editor","createWebWorker","moduleId","label","languageId","createData","languageSettings","diagnosticsOptions","enableSchemaRequest","getProxy","getLanguageServiceWorker","resources","then","client","_","withSyncedResources","integer","integer2","MIN_VALUE","MAX_VALUE","uinteger","uinteger2","Position","Position3","create","line","character","Number","is","value","candidate","Is","objectLiteral","Range","Range3","one","two","three","four","start","end","Error","Location","Location2","uri","range","defined","string","undefined","LocationLink","LocationLink2","targetUri","targetRange","targetSelectionRange","originSelectionRange","Color","Color2","red","green","blue","alpha","numberRange","ColorInformation","ColorInformation2","color","ColorPresentation","ColorPresentation2","textEdit","additionalTextEdits","TextEdit","typedArray","FoldingRangeKind","FoldingRangeKind2","FoldingRange","FoldingRange2","startLine","endLine","startCharacter","endCharacter","kind","result","DiagnosticRelatedInformation","DiagnosticRelatedInformation2","location","message","DiagnosticSeverity","DiagnosticSeverity2","Warning","Information","Hint","DiagnosticTag","DiagnosticTag2","Unnecessary","Deprecated","CodeDescription","CodeDescription2","href","Diagnostic","Diagnostic2","severity","code","source","relatedInformation","_a","number","codeDescription","Command","Command2","title","command","args","_i","arguments","length","TextEdit2","replace","newText","insert","position","del","ChangeAnnotation","ChangeAnnotation2","needsConfirmation","description","boolean","ChangeAnnotationIdentifier","ChangeAnnotationIdentifier2","AnnotatedTextEdit","AnnotatedTextEdit2","annotation","annotationId","TextDocumentEdit","TextDocumentEdit2","textDocument","edits","OptionalVersionedTextDocumentIdentifier","Array","isArray","CreateFile","CreateFile2","options","overwrite","ignoreIfExists","RenameFile","RenameFile2","oldUri","newUri","DeleteFile","DeleteFile2","recursive","ignoreIfNotExists","WorkspaceEdit","WorkspaceEdit2","changes","documentChanges","every","change","TextEditChangeImpl","TextEditChangeImpl2","changeAnnotations","edit","id","assertChangeAnnotations","manage","push","delete","add","all","clear","splice","ChangeAnnotations","ChangeAnnotations2","annotations","_annotations","_counter","_size","configurable","idOrAnnotation","nextId","toString","WorkspaceChange","WorkspaceChange2","workspaceEdit","_this","_textEditChanges","_workspaceEdit","_changeAnnotations","forEach","textEditChange","keys","initDocumentChanges","size","getTextEditChange","version","textDocumentEdit","initChanges","createFile","optionsOrAnnotation","operation","renameFile","deleteFile","TextDocumentIdentifier","TextDocumentIdentifier2","VersionedTextDocumentIdentifier","VersionedTextDocumentIdentifier2","OptionalVersionedTextDocumentIdentifier2","TextDocumentItem","TextDocumentItem2","text","MarkupKind","MarkupKind2","PlainText","Markdown","MarkupContent","MarkupContent2","CompletionItemKind","CompletionItemKind2","Text","Method","Function","Constructor","Field","Variable","Class","Interface","Module","Property","Unit","Value","Enum","Keyword","Snippet","File","Reference","Folder","EnumMember","Constant","Struct","Event","Operator","TypeParameter","InsertTextFormat","InsertTextFormat2","CompletionItemTag","CompletionItemTag2","InsertReplaceEdit","InsertReplaceEdit2","InsertTextMode","InsertTextMode2","asIs","adjustIndentation","CompletionItem","CompletionItem2","CompletionList","CompletionList2","items","isIncomplete","MarkedString","MarkedString2","fromPlainText","plainText","language","Hover","Hover2","contents","ParameterInformation","ParameterInformation2","documentation","SignatureInformation","SignatureInformation2","parameters","DocumentHighlightKind","DocumentHighlightKind2","Read","Write","DocumentHighlight","DocumentHighlight2","SymbolKind","SymbolKind2","Namespace","Package","String","Boolean","Key","Null","SymbolTag","SymbolTag2","SymbolInformation","SymbolInformation2","name","containerName","DocumentSymbol","DocumentSymbol2","detail","selectionRange","children","deprecated","tags","CodeActionKind","CodeActionKind2","Empty","QuickFix","Refactor","RefactorExtract","RefactorInline","RefactorRewrite","Source","SourceOrganizeImports","SourceFixAll","CodeActionContext","CodeActionContext2","diagnostics","only","CodeAction","CodeAction2","kindOrCommandOrEdit","checkKind","isPreferred","CodeLens","CodeLens2","data","FormattingOptions","FormattingOptions2","tabSize","insertSpaces","DocumentLink","DocumentLink2","SelectionRange","SelectionRange2","parent","TextDocument","TextDocument2","content","FullTextDocument","lineCount","func","getText","positionAt","offsetAt","applyEdits","document","sortedEdits","mergeSort","a","b","diff","lastModifiedOffset","i","e","startOffset","endOffset","substring","compare","p","left","slice","right","leftIdx","rightIdx","ret","FullTextDocument2","_uri","_languageId","_version","_content","_lineOffsets","update","event","getLineOffsets","lineOffsets","isLineStart","ch","charAt","offset","Math","max","min","low","high","mid","floor","lineOffset","nextLineOffset","Is2","undefined2","check","DiagnosticsAdapter","configChangeEvent","onModelAdd","model","modeId","getLanguageId","handle","_listener","onDidChangeContent","clearTimeout","setTimeout","_doValidate","onModelRemoved","setModelMarkers","uriStr","listener","_disposables","onDidCreateModel","onWillDisposeModel","onDidChangeModelLanguage","getModels","d","resource","worker","doValidation","markers","map","toDiagnostics","getModel","err","console","error","toSeverity","lsSeverity","MarkerSeverity","Info","diag","startLineNumber","startColumn","endLineNumber","endColumn","CompletionAdapter","_triggerCharacters","triggerCharacters","provideCompletionItems","context","token","doComplete","fromPosition","info","wordInfo","getWordUntilPosition","wordRange","lineNumber","entry","item","insertText","sortText","filterText","toCommand","toCompletionItemKind","isInsertReplaceEdit","toRange","toTextEdit","insertTextFormat","insertTextRules","languages","CompletionItemInsertTextRule","InsertAsSnippet","suggestions","column","fromRange","mItemKind","c","HoverAdapter","provideHover","doHover","toMarkedStringArray","isMarkupContent","thing","toMarkdownString","DocumentHighlightAdapter","provideDocumentHighlights","findDocumentHighlights","entries","toDocumentHighlightKind","DefinitionAdapter","provideDefinition","findDefinition","definition","toLocation","Uri","parse","ReferenceAdapter","provideReferences","findReferences","RenameAdapter","provideRenameEdits","newName","doRename","toWorkspaceEdit","resourceEdits","versionId","DocumentSymbolAdapter","provideDocumentSymbols","findDocumentSymbols","toSymbolKind","mKind","DocumentLinkAdapter","provideLinks","findDocumentLinks","links","url","DocumentFormattingEditProvider","provideDocumentFormattingEdits","format","fromFormattingOptions","DocumentRangeFormattingEditProvider","canFormatMultipleRanges","provideDocumentRangeFormattingEdits","DocumentColorAdapter","provideDocumentColors","findDocumentColors","infos","provideColorPresentations","getColorPresentations","presentations","presentation","FoldingRangeAdapter","provideFoldingRanges","getFoldingRanges","ranges","toFoldingRangeKind","Comment","Imports","Region","SelectionRangeAdapter","provideSelectionRanges","positions","getSelectionRanges","selectionRanges","createScanner","ignoreTrivia","len","pos","tokenOffset","lineStartOffset","tokenLineStartOffset","prevTokenLineStartOffset","scanError","scanHexDigits","count","exact","digits","value2","charCodeAt","setPosition","newPosition","scanNumber","isDigit","scanString","ch2","ch3","fromCharCode","isLineBreak","scanNext","isWhiteSpace","safeLength","commentClosed","isUnknownContentCharacter","scanNextNonTrivia","getPosition","scan","getToken","getTokenValue","getTokenOffset","getTokenLength","getTokenStartLine","getTokenStartCharacter","getTokenError","ParseOptions","ParseOptions2","DEFAULT","allowTrailingComma","createScanner2","createTokenizationSupport","supportComments","getInitialState","JSONState","tokenize","state","TOKEN_DELIM_OBJECT","TOKEN_DELIM_ARRAY","TOKEN_DELIM_COLON","TOKEN_DELIM_COMMA","TOKEN_VALUE_BOOLEAN","TOKEN_VALUE_NULL","TOKEN_VALUE_STRING","TOKEN_VALUE_NUMBER","TOKEN_PROPERTY_NAME","TOKEN_COMMENT_BLOCK","TOKEN_COMMENT_LINE","ParentsStack","type","pop","parents","equals","_state","lastWasColon","clone","other","getStateData","setStateData","comments","offsetDelta","numberOfInsertedCharacters","adjustOffset","scanner","tokens","endState","substr","currentParent","inArray","startIndex","scopes","JSONDiagnosticsAdapter","super","_resetSchema","resetSchema","setupMode","disposables","providers","uris","registerProviders","modeConfiguration","modeConfiguration2","disposeAll","documentFormattingEdits","registerDocumentFormattingEditProvider","documentRangeFormattingEdits","registerDocumentRangeFormattingEditProvider","completionItems","registerCompletionItemProvider","hovers","registerHoverProvider","documentSymbols","registerDocumentSymbolProvider","setTokensProvider","colors","registerColorProvider","foldingRanges","registerFoldingRangeProvider","registerSelectionRangeProvider","setLanguageConfiguration","richEditConfiguration","newDefaults","asDisposable","wordPattern","lineComment","blockComment","brackets","autoClosingPairs","open","close","notIn"],"sourceRoot":""}