{"version":3,"file":"2077.12b2df3682085a92a810.js","mappings":"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","sources":["webpack://grafana/./node_modules/monaco-editor/esm/vs/language/html/htmlMode.js"],"sourcesContent":["/*!-----------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.34.0(9d278685b078158491964f8fd7ac9628fffa0f30)\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/html/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/html/htmlWorker\",\n createData: {\n languageSettings: this._defaults.options,\n languageId: this._defaults.languageId\n },\n label: this._defaults.languageId\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 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// src/language/html/htmlMode.ts\nvar HTMLCompletionAdapter = class extends CompletionAdapter {\n constructor(worker) {\n super(worker, [\".\", \":\", \"<\", '\"', \"=\", \"/\"]);\n }\n};\nfunction setupMode1(defaults) {\n const client = new WorkerManager(defaults);\n const worker = (...uris) => {\n return client.getLanguageServiceWorker(...uris);\n };\n let languageId = defaults.languageId;\n monaco_editor_core_exports.languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker));\n monaco_editor_core_exports.languages.registerHoverProvider(languageId, new HoverAdapter(worker));\n monaco_editor_core_exports.languages.registerDocumentHighlightProvider(languageId, new DocumentHighlightAdapter(worker));\n monaco_editor_core_exports.languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker));\n monaco_editor_core_exports.languages.registerFoldingRangeProvider(languageId, new FoldingRangeAdapter(worker));\n monaco_editor_core_exports.languages.registerDocumentSymbolProvider(languageId, new DocumentSymbolAdapter(worker));\n monaco_editor_core_exports.languages.registerSelectionRangeProvider(languageId, new SelectionRangeAdapter(worker));\n monaco_editor_core_exports.languages.registerRenameProvider(languageId, new RenameAdapter(worker));\n if (languageId === \"html\") {\n monaco_editor_core_exports.languages.registerDocumentFormattingEditProvider(languageId, new DocumentFormattingEditProvider(worker));\n monaco_editor_core_exports.languages.registerDocumentRangeFormattingEditProvider(languageId, new DocumentRangeFormattingEditProvider(worker));\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 } = defaults;\n disposeAll(providers);\n if (modeConfiguration.completionItems) {\n providers.push(monaco_editor_core_exports.languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker)));\n }\n if (modeConfiguration.hovers) {\n providers.push(monaco_editor_core_exports.languages.registerHoverProvider(languageId, new HoverAdapter(worker)));\n }\n if (modeConfiguration.documentHighlights) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentHighlightProvider(languageId, new DocumentHighlightAdapter(worker)));\n }\n if (modeConfiguration.links) {\n providers.push(monaco_editor_core_exports.languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker)));\n }\n if (modeConfiguration.documentSymbols) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentSymbolProvider(languageId, new DocumentSymbolAdapter(worker)));\n }\n if (modeConfiguration.rename) {\n providers.push(monaco_editor_core_exports.languages.registerRenameProvider(languageId, new RenameAdapter(worker)));\n }\n if (modeConfiguration.foldingRanges) {\n providers.push(monaco_editor_core_exports.languages.registerFoldingRangeProvider(languageId, new FoldingRangeAdapter(worker)));\n }\n if (modeConfiguration.selectionRanges) {\n providers.push(monaco_editor_core_exports.languages.registerSelectionRangeProvider(languageId, new SelectionRangeAdapter(worker)));\n }\n if (modeConfiguration.documentFormattingEdits) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentFormattingEditProvider(languageId, new DocumentFormattingEditProvider(worker)));\n }\n if (modeConfiguration.documentRangeFormattingEdits) {\n providers.push(monaco_editor_core_exports.languages.registerDocumentRangeFormattingEditProvider(languageId, new DocumentRangeFormattingEditProvider(worker)));\n }\n }\n registerProviders();\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}\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 setupMode1,\n toRange,\n toTextEdit\n};\n"],"names":["__defProp","__getOwnPropDesc","__getOwnPropNames","__hasOwnProp","__copyProps","to","from","except","desc","key","__reExport","target","mod","secondTarget","monaco_editor_core_exports","STOP_WHEN_IDLE_FOR","WorkerManager","defaults","resources","_client","client","_","integer","integer2","uinteger","uinteger2","Position","Position3","create","line","character","is","value","candidate","Is","Range","Range3","one","two","three","four","Location","Location2","uri","range","LocationLink","LocationLink2","targetUri","targetRange","targetSelectionRange","originSelectionRange","Color","Color2","red","green","blue","alpha","ColorInformation","ColorInformation2","color","ColorPresentation","ColorPresentation2","label","textEdit","additionalTextEdits","TextEdit","FoldingRangeKind","FoldingRangeKind2","FoldingRange","FoldingRange2","startLine","endLine","startCharacter","endCharacter","kind","result","DiagnosticRelatedInformation","DiagnosticRelatedInformation2","location","message","DiagnosticSeverity","DiagnosticSeverity2","DiagnosticTag","DiagnosticTag2","CodeDescription","CodeDescription2","Diagnostic","Diagnostic2","severity","code","source","relatedInformation","_a","Command","Command2","title","command","args","_i","TextEdit2","replace","newText","insert","position","del","ChangeAnnotation","ChangeAnnotation2","needsConfirmation","description","ChangeAnnotationIdentifier","ChangeAnnotationIdentifier2","AnnotatedTextEdit","AnnotatedTextEdit2","annotation","TextDocumentEdit","TextDocumentEdit2","textDocument","edits","OptionalVersionedTextDocumentIdentifier","CreateFile","CreateFile2","options","RenameFile","RenameFile2","oldUri","newUri","DeleteFile","DeleteFile2","WorkspaceEdit","WorkspaceEdit2","change","TextEditChangeImpl","TextEditChangeImpl2","changeAnnotations","edit","id","ChangeAnnotations","ChangeAnnotations2","annotations","idOrAnnotation","WorkspaceChange","WorkspaceChange2","workspaceEdit","_this","textEditChange","textDocumentEdit","optionsOrAnnotation","operation","TextDocumentIdentifier","TextDocumentIdentifier2","VersionedTextDocumentIdentifier","VersionedTextDocumentIdentifier2","version","OptionalVersionedTextDocumentIdentifier2","TextDocumentItem","TextDocumentItem2","languageId","text","MarkupKind","MarkupKind2","MarkupContent","MarkupContent2","CompletionItemKind","CompletionItemKind2","InsertTextFormat","InsertTextFormat2","CompletionItemTag","CompletionItemTag2","InsertReplaceEdit","InsertReplaceEdit2","InsertTextMode","InsertTextMode2","CompletionItem","CompletionItem2","CompletionList","CompletionList2","items","isIncomplete","MarkedString","MarkedString2","fromPlainText","plainText","Hover","Hover2","ParameterInformation","ParameterInformation2","documentation","SignatureInformation","SignatureInformation2","parameters","DocumentHighlightKind","DocumentHighlightKind2","DocumentHighlight","DocumentHighlight2","SymbolKind","SymbolKind2","SymbolTag","SymbolTag2","SymbolInformation","SymbolInformation2","name","containerName","DocumentSymbol","DocumentSymbol2","detail","selectionRange","children","CodeActionKind","CodeActionKind2","CodeActionContext","CodeActionContext2","diagnostics","only","CodeAction","CodeAction2","kindOrCommandOrEdit","checkKind","CodeLens","CodeLens2","data","FormattingOptions","FormattingOptions2","tabSize","insertSpaces","DocumentLink","DocumentLink2","SelectionRange","SelectionRange2","parent","TextDocument","TextDocument2","content","FullTextDocument","applyEdits","document","sortedEdits","mergeSort","a","b","diff","lastModifiedOffset","i","e","startOffset","endOffset","compare","p","left","right","leftIdx","rightIdx","ret","FullTextDocument2","start","end","event","lineOffsets","isLineStart","ch","offset","low","high","mid","lineOffset","nextLineOffset","Is2","toString","defined","undefined2","boolean","string","number","numberRange","min","max","func","objectLiteral","typedArray","check","DiagnosticsAdapter","_languageId","_worker","configChangeEvent","onModelAdd","model","modeId","handle","onModelRemoved","uriStr","listener","d","resource","worker","markers","toDiagnostics","err","toSeverity","lsSeverity","diag","CompletionAdapter","_triggerCharacters","context","token","fromPosition","info","wordInfo","wordRange","entry","item","toCommand","toCompletionItemKind","isInsertReplaceEdit","toRange","toTextEdit","fromRange","mItemKind","c","HoverAdapter","toMarkedStringArray","isMarkupContent","thing","toMarkdownString","contents","DocumentHighlightAdapter","entries","toDocumentHighlightKind","DefinitionAdapter","definition","toLocation","ReferenceAdapter","RenameAdapter","newName","toWorkspaceEdit","resourceEdits","_uri","DocumentSymbolAdapter","toSymbolKind","mKind","DocumentLinkAdapter","DocumentFormattingEditProvider","fromFormattingOptions","DocumentRangeFormattingEditProvider","DocumentColorAdapter","infos","presentations","presentation","FoldingRangeAdapter","ranges","toFoldingRangeKind","SelectionRangeAdapter","positions","selectionRanges","HTMLCompletionAdapter","setupMode1","uris","setupMode","disposables","providers","registerProviders","modeConfiguration","disposeAll","asDisposable"],"sourceRoot":""}