htmlMode.js1863 lines · main
| 1 | 'use strict' |
| 2 | /*!----------------------------------------------------------------------------- |
| 3 | * Copyright (c) Microsoft Corporation. All rights reserved. |
| 4 | * Version: 0.37.0(14a92401d7aff24ad84578a4c8b9a701ff533a84) |
| 5 | * Released under the MIT license |
| 6 | * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt |
| 7 | *-----------------------------------------------------------------------------*/ |
| 8 | define('vs/language/html/htmlMode', ['require', 'require'], (require) => { |
| 9 | var moduleExports = (() => { |
| 10 | var nn = Object.create |
| 11 | var Q = Object.defineProperty |
| 12 | var tn = Object.getOwnPropertyDescriptor |
| 13 | var rn = Object.getOwnPropertyNames |
| 14 | var on = Object.getPrototypeOf, |
| 15 | sn = Object.prototype.hasOwnProperty |
| 16 | var an = ((n) => |
| 17 | typeof require != 'undefined' |
| 18 | ? require |
| 19 | : typeof Proxy != 'undefined' |
| 20 | ? new Proxy(n, { get: (t, i) => (typeof require != 'undefined' ? require : t)[i] }) |
| 21 | : n)(function (n) { |
| 22 | if (typeof require != 'undefined') return require.apply(this, arguments) |
| 23 | throw new Error('Dynamic require of "' + n + '" is not supported') |
| 24 | }) |
| 25 | var un = (n, t) => () => (t || n((t = { exports: {} }).exports, t), t.exports), |
| 26 | dn = (n, t) => { |
| 27 | for (var i in t) Q(n, i, { get: t[i], enumerable: !0 }) |
| 28 | }, |
| 29 | q = (n, t, i, r) => { |
| 30 | if ((t && typeof t == 'object') || typeof t == 'function') |
| 31 | for (let e of rn(t)) |
| 32 | !sn.call(n, e) && |
| 33 | e !== i && |
| 34 | Q(n, e, { get: () => t[e], enumerable: !(r = tn(t, e)) || r.enumerable }) |
| 35 | return n |
| 36 | }, |
| 37 | he = (n, t, i) => (q(n, t, 'default'), i && q(i, t, 'default')), |
| 38 | me = (n, t, i) => ( |
| 39 | (i = n != null ? nn(on(n)) : {}), |
| 40 | q(t || !n || !n.__esModule ? Q(i, 'default', { value: n, enumerable: !0 }) : i, n) |
| 41 | ), |
| 42 | cn = (n) => q(Q({}, '__esModule', { value: !0 }), n) |
| 43 | var Te = un((Ln, ve) => { |
| 44 | var ln = me(an('vs/editor/editor.api')) |
| 45 | ve.exports = ln |
| 46 | }) |
| 47 | var Rn = {} |
| 48 | dn(Rn, { |
| 49 | CompletionAdapter: () => B, |
| 50 | DefinitionAdapter: () => ce, |
| 51 | DiagnosticsAdapter: () => de, |
| 52 | DocumentColorAdapter: () => ge, |
| 53 | DocumentFormattingEditProvider: () => H, |
| 54 | DocumentHighlightAdapter: () => S, |
| 55 | DocumentLinkAdapter: () => A, |
| 56 | DocumentRangeFormattingEditProvider: () => K, |
| 57 | DocumentSymbolAdapter: () => M, |
| 58 | FoldingRangeAdapter: () => U, |
| 59 | HoverAdapter: () => D, |
| 60 | ReferenceAdapter: () => le, |
| 61 | RenameAdapter: () => F, |
| 62 | SelectionRangeAdapter: () => j, |
| 63 | WorkerManager: () => b, |
| 64 | fromPosition: () => C, |
| 65 | fromRange: () => fe, |
| 66 | setupMode: () => Pn, |
| 67 | setupMode1: () => En, |
| 68 | toRange: () => y, |
| 69 | toTextEdit: () => L, |
| 70 | }) |
| 71 | var d = {} |
| 72 | he(d, me(Te())) |
| 73 | var gn = 2 * 60 * 1e3, |
| 74 | b = class { |
| 75 | _defaults |
| 76 | _idleCheckInterval |
| 77 | _lastUsedTime |
| 78 | _configChangeListener |
| 79 | _worker |
| 80 | _client |
| 81 | constructor(t) { |
| 82 | ;(this._defaults = t), |
| 83 | (this._worker = null), |
| 84 | (this._client = null), |
| 85 | (this._idleCheckInterval = window.setInterval(() => this._checkIfIdle(), 30 * 1e3)), |
| 86 | (this._lastUsedTime = 0), |
| 87 | (this._configChangeListener = this._defaults.onDidChange(() => this._stopWorker())) |
| 88 | } |
| 89 | _stopWorker() { |
| 90 | this._worker && (this._worker.dispose(), (this._worker = null)), (this._client = null) |
| 91 | } |
| 92 | dispose() { |
| 93 | clearInterval(this._idleCheckInterval), |
| 94 | this._configChangeListener.dispose(), |
| 95 | this._stopWorker() |
| 96 | } |
| 97 | _checkIfIdle() { |
| 98 | if (!this._worker) return |
| 99 | Date.now() - this._lastUsedTime > gn && this._stopWorker() |
| 100 | } |
| 101 | _getClient() { |
| 102 | return ( |
| 103 | (this._lastUsedTime = Date.now()), |
| 104 | this._client || |
| 105 | ((this._worker = d.editor.createWebWorker({ |
| 106 | moduleId: 'vs/language/html/htmlWorker', |
| 107 | createData: { |
| 108 | languageSettings: this._defaults.options, |
| 109 | languageId: this._defaults.languageId, |
| 110 | }, |
| 111 | label: this._defaults.languageId, |
| 112 | })), |
| 113 | (this._client = this._worker.getProxy())), |
| 114 | this._client |
| 115 | ) |
| 116 | } |
| 117 | getLanguageServiceWorker(...t) { |
| 118 | let i |
| 119 | return this._getClient() |
| 120 | .then((r) => { |
| 121 | i = r |
| 122 | }) |
| 123 | .then((r) => { |
| 124 | if (this._worker) return this._worker.withSyncedResources(t) |
| 125 | }) |
| 126 | .then((r) => i) |
| 127 | } |
| 128 | } |
| 129 | var ye |
| 130 | ;(function (n) { |
| 131 | ;(n.MIN_VALUE = -2147483648), (n.MAX_VALUE = 2147483647) |
| 132 | })(ye || (ye = {})) |
| 133 | var J |
| 134 | ;(function (n) { |
| 135 | ;(n.MIN_VALUE = 0), (n.MAX_VALUE = 2147483647) |
| 136 | })(J || (J = {})) |
| 137 | var x |
| 138 | ;(function (n) { |
| 139 | function t(r, e) { |
| 140 | return ( |
| 141 | r === Number.MAX_VALUE && (r = J.MAX_VALUE), |
| 142 | e === Number.MAX_VALUE && (e = J.MAX_VALUE), |
| 143 | { line: r, character: e } |
| 144 | ) |
| 145 | } |
| 146 | n.create = t |
| 147 | function i(r) { |
| 148 | var e = r |
| 149 | return a.objectLiteral(e) && a.uinteger(e.line) && a.uinteger(e.character) |
| 150 | } |
| 151 | n.is = i |
| 152 | })(x || (x = {})) |
| 153 | var v |
| 154 | ;(function (n) { |
| 155 | function t(r, e, o, s) { |
| 156 | if (a.uinteger(r) && a.uinteger(e) && a.uinteger(o) && a.uinteger(s)) |
| 157 | return { start: x.create(r, e), end: x.create(o, s) } |
| 158 | if (x.is(r) && x.is(e)) return { start: r, end: e } |
| 159 | throw new Error( |
| 160 | 'Range#create called with invalid arguments[' + r + ', ' + e + ', ' + o + ', ' + s + ']' |
| 161 | ) |
| 162 | } |
| 163 | n.create = t |
| 164 | function i(r) { |
| 165 | var e = r |
| 166 | return a.objectLiteral(e) && x.is(e.start) && x.is(e.end) |
| 167 | } |
| 168 | n.is = i |
| 169 | })(v || (v = {})) |
| 170 | var ie |
| 171 | ;(function (n) { |
| 172 | function t(r, e) { |
| 173 | return { uri: r, range: e } |
| 174 | } |
| 175 | n.create = t |
| 176 | function i(r) { |
| 177 | var e = r |
| 178 | return a.defined(e) && v.is(e.range) && (a.string(e.uri) || a.undefined(e.uri)) |
| 179 | } |
| 180 | n.is = i |
| 181 | })(ie || (ie = {})) |
| 182 | var xe |
| 183 | ;(function (n) { |
| 184 | function t(r, e, o, s) { |
| 185 | return { targetUri: r, targetRange: e, targetSelectionRange: o, originSelectionRange: s } |
| 186 | } |
| 187 | n.create = t |
| 188 | function i(r) { |
| 189 | var e = r |
| 190 | return ( |
| 191 | a.defined(e) && |
| 192 | v.is(e.targetRange) && |
| 193 | a.string(e.targetUri) && |
| 194 | (v.is(e.targetSelectionRange) || a.undefined(e.targetSelectionRange)) && |
| 195 | (v.is(e.originSelectionRange) || a.undefined(e.originSelectionRange)) |
| 196 | ) |
| 197 | } |
| 198 | n.is = i |
| 199 | })(xe || (xe = {})) |
| 200 | var oe |
| 201 | ;(function (n) { |
| 202 | function t(r, e, o, s) { |
| 203 | return { red: r, green: e, blue: o, alpha: s } |
| 204 | } |
| 205 | n.create = t |
| 206 | function i(r) { |
| 207 | var e = r |
| 208 | return ( |
| 209 | a.numberRange(e.red, 0, 1) && |
| 210 | a.numberRange(e.green, 0, 1) && |
| 211 | a.numberRange(e.blue, 0, 1) && |
| 212 | a.numberRange(e.alpha, 0, 1) |
| 213 | ) |
| 214 | } |
| 215 | n.is = i |
| 216 | })(oe || (oe = {})) |
| 217 | var ke |
| 218 | ;(function (n) { |
| 219 | function t(r, e) { |
| 220 | return { range: r, color: e } |
| 221 | } |
| 222 | n.create = t |
| 223 | function i(r) { |
| 224 | var e = r |
| 225 | return v.is(e.range) && oe.is(e.color) |
| 226 | } |
| 227 | n.is = i |
| 228 | })(ke || (ke = {})) |
| 229 | var Ie |
| 230 | ;(function (n) { |
| 231 | function t(r, e, o) { |
| 232 | return { label: r, textEdit: e, additionalTextEdits: o } |
| 233 | } |
| 234 | n.create = t |
| 235 | function i(r) { |
| 236 | var e = r |
| 237 | return ( |
| 238 | a.string(e.label) && |
| 239 | (a.undefined(e.textEdit) || _.is(e)) && |
| 240 | (a.undefined(e.additionalTextEdits) || a.typedArray(e.additionalTextEdits, _.is)) |
| 241 | ) |
| 242 | } |
| 243 | n.is = i |
| 244 | })(Ie || (Ie = {})) |
| 245 | var R |
| 246 | ;(function (n) { |
| 247 | ;(n.Comment = 'comment'), (n.Imports = 'imports'), (n.Region = 'region') |
| 248 | })(R || (R = {})) |
| 249 | var _e |
| 250 | ;(function (n) { |
| 251 | function t(r, e, o, s, u) { |
| 252 | var l = { startLine: r, endLine: e } |
| 253 | return ( |
| 254 | a.defined(o) && (l.startCharacter = o), |
| 255 | a.defined(s) && (l.endCharacter = s), |
| 256 | a.defined(u) && (l.kind = u), |
| 257 | l |
| 258 | ) |
| 259 | } |
| 260 | n.create = t |
| 261 | function i(r) { |
| 262 | var e = r |
| 263 | return ( |
| 264 | a.uinteger(e.startLine) && |
| 265 | a.uinteger(e.startLine) && |
| 266 | (a.undefined(e.startCharacter) || a.uinteger(e.startCharacter)) && |
| 267 | (a.undefined(e.endCharacter) || a.uinteger(e.endCharacter)) && |
| 268 | (a.undefined(e.kind) || a.string(e.kind)) |
| 269 | ) |
| 270 | } |
| 271 | n.is = i |
| 272 | })(_e || (_e = {})) |
| 273 | var se |
| 274 | ;(function (n) { |
| 275 | function t(r, e) { |
| 276 | return { location: r, message: e } |
| 277 | } |
| 278 | n.create = t |
| 279 | function i(r) { |
| 280 | var e = r |
| 281 | return a.defined(e) && ie.is(e.location) && a.string(e.message) |
| 282 | } |
| 283 | n.is = i |
| 284 | })(se || (se = {})) |
| 285 | var w |
| 286 | ;(function (n) { |
| 287 | ;(n.Error = 1), (n.Warning = 2), (n.Information = 3), (n.Hint = 4) |
| 288 | })(w || (w = {})) |
| 289 | var Ce |
| 290 | ;(function (n) { |
| 291 | ;(n.Unnecessary = 1), (n.Deprecated = 2) |
| 292 | })(Ce || (Ce = {})) |
| 293 | var be |
| 294 | ;(function (n) { |
| 295 | function t(i) { |
| 296 | var r = i |
| 297 | return r != null && a.string(r.href) |
| 298 | } |
| 299 | n.is = t |
| 300 | })(be || (be = {})) |
| 301 | var Y |
| 302 | ;(function (n) { |
| 303 | function t(r, e, o, s, u, l) { |
| 304 | var f = { range: r, message: e } |
| 305 | return ( |
| 306 | a.defined(o) && (f.severity = o), |
| 307 | a.defined(s) && (f.code = s), |
| 308 | a.defined(u) && (f.source = u), |
| 309 | a.defined(l) && (f.relatedInformation = l), |
| 310 | f |
| 311 | ) |
| 312 | } |
| 313 | n.create = t |
| 314 | function i(r) { |
| 315 | var e, |
| 316 | o = r |
| 317 | return ( |
| 318 | a.defined(o) && |
| 319 | v.is(o.range) && |
| 320 | a.string(o.message) && |
| 321 | (a.number(o.severity) || a.undefined(o.severity)) && |
| 322 | (a.integer(o.code) || a.string(o.code) || a.undefined(o.code)) && |
| 323 | (a.undefined(o.codeDescription) || |
| 324 | a.string((e = o.codeDescription) === null || e === void 0 ? void 0 : e.href)) && |
| 325 | (a.string(o.source) || a.undefined(o.source)) && |
| 326 | (a.undefined(o.relatedInformation) || a.typedArray(o.relatedInformation, se.is)) |
| 327 | ) |
| 328 | } |
| 329 | n.is = i |
| 330 | })(Y || (Y = {})) |
| 331 | var O |
| 332 | ;(function (n) { |
| 333 | function t(r, e) { |
| 334 | for (var o = [], s = 2; s < arguments.length; s++) o[s - 2] = arguments[s] |
| 335 | var u = { title: r, command: e } |
| 336 | return a.defined(o) && o.length > 0 && (u.arguments = o), u |
| 337 | } |
| 338 | n.create = t |
| 339 | function i(r) { |
| 340 | var e = r |
| 341 | return a.defined(e) && a.string(e.title) && a.string(e.command) |
| 342 | } |
| 343 | n.is = i |
| 344 | })(O || (O = {})) |
| 345 | var _ |
| 346 | ;(function (n) { |
| 347 | function t(o, s) { |
| 348 | return { range: o, newText: s } |
| 349 | } |
| 350 | n.replace = t |
| 351 | function i(o, s) { |
| 352 | return { range: { start: o, end: o }, newText: s } |
| 353 | } |
| 354 | n.insert = i |
| 355 | function r(o) { |
| 356 | return { range: o, newText: '' } |
| 357 | } |
| 358 | n.del = r |
| 359 | function e(o) { |
| 360 | var s = o |
| 361 | return a.objectLiteral(s) && a.string(s.newText) && v.is(s.range) |
| 362 | } |
| 363 | n.is = e |
| 364 | })(_ || (_ = {})) |
| 365 | var P |
| 366 | ;(function (n) { |
| 367 | function t(r, e, o) { |
| 368 | var s = { label: r } |
| 369 | return e !== void 0 && (s.needsConfirmation = e), o !== void 0 && (s.description = o), s |
| 370 | } |
| 371 | n.create = t |
| 372 | function i(r) { |
| 373 | var e = r |
| 374 | return ( |
| 375 | e !== void 0 && |
| 376 | a.objectLiteral(e) && |
| 377 | a.string(e.label) && |
| 378 | (a.boolean(e.needsConfirmation) || e.needsConfirmation === void 0) && |
| 379 | (a.string(e.description) || e.description === void 0) |
| 380 | ) |
| 381 | } |
| 382 | n.is = i |
| 383 | })(P || (P = {})) |
| 384 | var T |
| 385 | ;(function (n) { |
| 386 | function t(i) { |
| 387 | var r = i |
| 388 | return typeof r == 'string' |
| 389 | } |
| 390 | n.is = t |
| 391 | })(T || (T = {})) |
| 392 | var I |
| 393 | ;(function (n) { |
| 394 | function t(o, s, u) { |
| 395 | return { range: o, newText: s, annotationId: u } |
| 396 | } |
| 397 | n.replace = t |
| 398 | function i(o, s, u) { |
| 399 | return { range: { start: o, end: o }, newText: s, annotationId: u } |
| 400 | } |
| 401 | n.insert = i |
| 402 | function r(o, s) { |
| 403 | return { range: o, newText: '', annotationId: s } |
| 404 | } |
| 405 | n.del = r |
| 406 | function e(o) { |
| 407 | var s = o |
| 408 | return _.is(s) && (P.is(s.annotationId) || T.is(s.annotationId)) |
| 409 | } |
| 410 | n.is = e |
| 411 | })(I || (I = {})) |
| 412 | var Z |
| 413 | ;(function (n) { |
| 414 | function t(r, e) { |
| 415 | return { textDocument: r, edits: e } |
| 416 | } |
| 417 | n.create = t |
| 418 | function i(r) { |
| 419 | var e = r |
| 420 | return a.defined(e) && ee.is(e.textDocument) && Array.isArray(e.edits) |
| 421 | } |
| 422 | n.is = i |
| 423 | })(Z || (Z = {})) |
| 424 | var N |
| 425 | ;(function (n) { |
| 426 | function t(r, e, o) { |
| 427 | var s = { kind: 'create', uri: r } |
| 428 | return ( |
| 429 | e !== void 0 && |
| 430 | (e.overwrite !== void 0 || e.ignoreIfExists !== void 0) && |
| 431 | (s.options = e), |
| 432 | o !== void 0 && (s.annotationId = o), |
| 433 | s |
| 434 | ) |
| 435 | } |
| 436 | n.create = t |
| 437 | function i(r) { |
| 438 | var e = r |
| 439 | return ( |
| 440 | e && |
| 441 | e.kind === 'create' && |
| 442 | a.string(e.uri) && |
| 443 | (e.options === void 0 || |
| 444 | ((e.options.overwrite === void 0 || a.boolean(e.options.overwrite)) && |
| 445 | (e.options.ignoreIfExists === void 0 || a.boolean(e.options.ignoreIfExists)))) && |
| 446 | (e.annotationId === void 0 || T.is(e.annotationId)) |
| 447 | ) |
| 448 | } |
| 449 | n.is = i |
| 450 | })(N || (N = {})) |
| 451 | var V |
| 452 | ;(function (n) { |
| 453 | function t(r, e, o, s) { |
| 454 | var u = { kind: 'rename', oldUri: r, newUri: e } |
| 455 | return ( |
| 456 | o !== void 0 && |
| 457 | (o.overwrite !== void 0 || o.ignoreIfExists !== void 0) && |
| 458 | (u.options = o), |
| 459 | s !== void 0 && (u.annotationId = s), |
| 460 | u |
| 461 | ) |
| 462 | } |
| 463 | n.create = t |
| 464 | function i(r) { |
| 465 | var e = r |
| 466 | return ( |
| 467 | e && |
| 468 | e.kind === 'rename' && |
| 469 | a.string(e.oldUri) && |
| 470 | a.string(e.newUri) && |
| 471 | (e.options === void 0 || |
| 472 | ((e.options.overwrite === void 0 || a.boolean(e.options.overwrite)) && |
| 473 | (e.options.ignoreIfExists === void 0 || a.boolean(e.options.ignoreIfExists)))) && |
| 474 | (e.annotationId === void 0 || T.is(e.annotationId)) |
| 475 | ) |
| 476 | } |
| 477 | n.is = i |
| 478 | })(V || (V = {})) |
| 479 | var z |
| 480 | ;(function (n) { |
| 481 | function t(r, e, o) { |
| 482 | var s = { kind: 'delete', uri: r } |
| 483 | return ( |
| 484 | e !== void 0 && |
| 485 | (e.recursive !== void 0 || e.ignoreIfNotExists !== void 0) && |
| 486 | (s.options = e), |
| 487 | o !== void 0 && (s.annotationId = o), |
| 488 | s |
| 489 | ) |
| 490 | } |
| 491 | n.create = t |
| 492 | function i(r) { |
| 493 | var e = r |
| 494 | return ( |
| 495 | e && |
| 496 | e.kind === 'delete' && |
| 497 | a.string(e.uri) && |
| 498 | (e.options === void 0 || |
| 499 | ((e.options.recursive === void 0 || a.boolean(e.options.recursive)) && |
| 500 | (e.options.ignoreIfNotExists === void 0 || |
| 501 | a.boolean(e.options.ignoreIfNotExists)))) && |
| 502 | (e.annotationId === void 0 || T.is(e.annotationId)) |
| 503 | ) |
| 504 | } |
| 505 | n.is = i |
| 506 | })(z || (z = {})) |
| 507 | var ae |
| 508 | ;(function (n) { |
| 509 | function t(i) { |
| 510 | var r = i |
| 511 | return ( |
| 512 | r && |
| 513 | (r.changes !== void 0 || r.documentChanges !== void 0) && |
| 514 | (r.documentChanges === void 0 || |
| 515 | r.documentChanges.every(function (e) { |
| 516 | return a.string(e.kind) ? N.is(e) || V.is(e) || z.is(e) : Z.is(e) |
| 517 | })) |
| 518 | ) |
| 519 | } |
| 520 | n.is = t |
| 521 | })(ae || (ae = {})) |
| 522 | var G = (function () { |
| 523 | function n(t, i) { |
| 524 | ;(this.edits = t), (this.changeAnnotations = i) |
| 525 | } |
| 526 | return ( |
| 527 | (n.prototype.insert = function (t, i, r) { |
| 528 | var e, o |
| 529 | if ( |
| 530 | (r === void 0 |
| 531 | ? (e = _.insert(t, i)) |
| 532 | : T.is(r) |
| 533 | ? ((o = r), (e = I.insert(t, i, r))) |
| 534 | : (this.assertChangeAnnotations(this.changeAnnotations), |
| 535 | (o = this.changeAnnotations.manage(r)), |
| 536 | (e = I.insert(t, i, o))), |
| 537 | this.edits.push(e), |
| 538 | o !== void 0) |
| 539 | ) |
| 540 | return o |
| 541 | }), |
| 542 | (n.prototype.replace = function (t, i, r) { |
| 543 | var e, o |
| 544 | if ( |
| 545 | (r === void 0 |
| 546 | ? (e = _.replace(t, i)) |
| 547 | : T.is(r) |
| 548 | ? ((o = r), (e = I.replace(t, i, r))) |
| 549 | : (this.assertChangeAnnotations(this.changeAnnotations), |
| 550 | (o = this.changeAnnotations.manage(r)), |
| 551 | (e = I.replace(t, i, o))), |
| 552 | this.edits.push(e), |
| 553 | o !== void 0) |
| 554 | ) |
| 555 | return o |
| 556 | }), |
| 557 | (n.prototype.delete = function (t, i) { |
| 558 | var r, e |
| 559 | if ( |
| 560 | (i === void 0 |
| 561 | ? (r = _.del(t)) |
| 562 | : T.is(i) |
| 563 | ? ((e = i), (r = I.del(t, i))) |
| 564 | : (this.assertChangeAnnotations(this.changeAnnotations), |
| 565 | (e = this.changeAnnotations.manage(i)), |
| 566 | (r = I.del(t, e))), |
| 567 | this.edits.push(r), |
| 568 | e !== void 0) |
| 569 | ) |
| 570 | return e |
| 571 | }), |
| 572 | (n.prototype.add = function (t) { |
| 573 | this.edits.push(t) |
| 574 | }), |
| 575 | (n.prototype.all = function () { |
| 576 | return this.edits |
| 577 | }), |
| 578 | (n.prototype.clear = function () { |
| 579 | this.edits.splice(0, this.edits.length) |
| 580 | }), |
| 581 | (n.prototype.assertChangeAnnotations = function (t) { |
| 582 | if (t === void 0) |
| 583 | throw new Error('Text edit change is not configured to manage change annotations.') |
| 584 | }), |
| 585 | n |
| 586 | ) |
| 587 | })(), |
| 588 | we = (function () { |
| 589 | function n(t) { |
| 590 | ;(this._annotations = t === void 0 ? Object.create(null) : t), |
| 591 | (this._counter = 0), |
| 592 | (this._size = 0) |
| 593 | } |
| 594 | return ( |
| 595 | (n.prototype.all = function () { |
| 596 | return this._annotations |
| 597 | }), |
| 598 | Object.defineProperty(n.prototype, 'size', { |
| 599 | get: function () { |
| 600 | return this._size |
| 601 | }, |
| 602 | enumerable: !1, |
| 603 | configurable: !0, |
| 604 | }), |
| 605 | (n.prototype.manage = function (t, i) { |
| 606 | var r |
| 607 | if ( |
| 608 | (T.is(t) ? (r = t) : ((r = this.nextId()), (i = t)), this._annotations[r] !== void 0) |
| 609 | ) |
| 610 | throw new Error('Id ' + r + ' is already in use.') |
| 611 | if (i === void 0) throw new Error('No annotation provided for id ' + r) |
| 612 | return (this._annotations[r] = i), this._size++, r |
| 613 | }), |
| 614 | (n.prototype.nextId = function () { |
| 615 | return this._counter++, this._counter.toString() |
| 616 | }), |
| 617 | n |
| 618 | ) |
| 619 | })(), |
| 620 | Hn = (function () { |
| 621 | function n(t) { |
| 622 | var i = this |
| 623 | ;(this._textEditChanges = Object.create(null)), |
| 624 | t !== void 0 |
| 625 | ? ((this._workspaceEdit = t), |
| 626 | t.documentChanges |
| 627 | ? ((this._changeAnnotations = new we(t.changeAnnotations)), |
| 628 | (t.changeAnnotations = this._changeAnnotations.all()), |
| 629 | t.documentChanges.forEach(function (r) { |
| 630 | if (Z.is(r)) { |
| 631 | var e = new G(r.edits, i._changeAnnotations) |
| 632 | i._textEditChanges[r.textDocument.uri] = e |
| 633 | } |
| 634 | })) |
| 635 | : t.changes && |
| 636 | Object.keys(t.changes).forEach(function (r) { |
| 637 | var e = new G(t.changes[r]) |
| 638 | i._textEditChanges[r] = e |
| 639 | })) |
| 640 | : (this._workspaceEdit = {}) |
| 641 | } |
| 642 | return ( |
| 643 | Object.defineProperty(n.prototype, 'edit', { |
| 644 | get: function () { |
| 645 | return ( |
| 646 | this.initDocumentChanges(), |
| 647 | this._changeAnnotations !== void 0 && |
| 648 | (this._changeAnnotations.size === 0 |
| 649 | ? (this._workspaceEdit.changeAnnotations = void 0) |
| 650 | : (this._workspaceEdit.changeAnnotations = this._changeAnnotations.all())), |
| 651 | this._workspaceEdit |
| 652 | ) |
| 653 | }, |
| 654 | enumerable: !1, |
| 655 | configurable: !0, |
| 656 | }), |
| 657 | (n.prototype.getTextEditChange = function (t) { |
| 658 | if (ee.is(t)) { |
| 659 | if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0)) |
| 660 | throw new Error('Workspace edit is not configured for document changes.') |
| 661 | var i = { uri: t.uri, version: t.version }, |
| 662 | r = this._textEditChanges[i.uri] |
| 663 | if (!r) { |
| 664 | var e = [], |
| 665 | o = { textDocument: i, edits: e } |
| 666 | this._workspaceEdit.documentChanges.push(o), |
| 667 | (r = new G(e, this._changeAnnotations)), |
| 668 | (this._textEditChanges[i.uri] = r) |
| 669 | } |
| 670 | return r |
| 671 | } else { |
| 672 | if ((this.initChanges(), this._workspaceEdit.changes === void 0)) |
| 673 | throw new Error('Workspace edit is not configured for normal text edit changes.') |
| 674 | var r = this._textEditChanges[t] |
| 675 | if (!r) { |
| 676 | var e = [] |
| 677 | ;(this._workspaceEdit.changes[t] = e), |
| 678 | (r = new G(e)), |
| 679 | (this._textEditChanges[t] = r) |
| 680 | } |
| 681 | return r |
| 682 | } |
| 683 | }), |
| 684 | (n.prototype.initDocumentChanges = function () { |
| 685 | this._workspaceEdit.documentChanges === void 0 && |
| 686 | this._workspaceEdit.changes === void 0 && |
| 687 | ((this._changeAnnotations = new we()), |
| 688 | (this._workspaceEdit.documentChanges = []), |
| 689 | (this._workspaceEdit.changeAnnotations = this._changeAnnotations.all())) |
| 690 | }), |
| 691 | (n.prototype.initChanges = function () { |
| 692 | this._workspaceEdit.documentChanges === void 0 && |
| 693 | this._workspaceEdit.changes === void 0 && |
| 694 | (this._workspaceEdit.changes = Object.create(null)) |
| 695 | }), |
| 696 | (n.prototype.createFile = function (t, i, r) { |
| 697 | if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0)) |
| 698 | throw new Error('Workspace edit is not configured for document changes.') |
| 699 | var e |
| 700 | P.is(i) || T.is(i) ? (e = i) : (r = i) |
| 701 | var o, s |
| 702 | if ( |
| 703 | (e === void 0 |
| 704 | ? (o = N.create(t, r)) |
| 705 | : ((s = T.is(e) ? e : this._changeAnnotations.manage(e)), (o = N.create(t, r, s))), |
| 706 | this._workspaceEdit.documentChanges.push(o), |
| 707 | s !== void 0) |
| 708 | ) |
| 709 | return s |
| 710 | }), |
| 711 | (n.prototype.renameFile = function (t, i, r, e) { |
| 712 | if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0)) |
| 713 | throw new Error('Workspace edit is not configured for document changes.') |
| 714 | var o |
| 715 | P.is(r) || T.is(r) ? (o = r) : (e = r) |
| 716 | var s, u |
| 717 | if ( |
| 718 | (o === void 0 |
| 719 | ? (s = V.create(t, i, e)) |
| 720 | : ((u = T.is(o) ? o : this._changeAnnotations.manage(o)), |
| 721 | (s = V.create(t, i, e, u))), |
| 722 | this._workspaceEdit.documentChanges.push(s), |
| 723 | u !== void 0) |
| 724 | ) |
| 725 | return u |
| 726 | }), |
| 727 | (n.prototype.deleteFile = function (t, i, r) { |
| 728 | if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0)) |
| 729 | throw new Error('Workspace edit is not configured for document changes.') |
| 730 | var e |
| 731 | P.is(i) || T.is(i) ? (e = i) : (r = i) |
| 732 | var o, s |
| 733 | if ( |
| 734 | (e === void 0 |
| 735 | ? (o = z.create(t, r)) |
| 736 | : ((s = T.is(e) ? e : this._changeAnnotations.manage(e)), (o = z.create(t, r, s))), |
| 737 | this._workspaceEdit.documentChanges.push(o), |
| 738 | s !== void 0) |
| 739 | ) |
| 740 | return s |
| 741 | }), |
| 742 | n |
| 743 | ) |
| 744 | })() |
| 745 | var Ee |
| 746 | ;(function (n) { |
| 747 | function t(r) { |
| 748 | return { uri: r } |
| 749 | } |
| 750 | n.create = t |
| 751 | function i(r) { |
| 752 | var e = r |
| 753 | return a.defined(e) && a.string(e.uri) |
| 754 | } |
| 755 | n.is = i |
| 756 | })(Ee || (Ee = {})) |
| 757 | var Pe |
| 758 | ;(function (n) { |
| 759 | function t(r, e) { |
| 760 | return { uri: r, version: e } |
| 761 | } |
| 762 | n.create = t |
| 763 | function i(r) { |
| 764 | var e = r |
| 765 | return a.defined(e) && a.string(e.uri) && a.integer(e.version) |
| 766 | } |
| 767 | n.is = i |
| 768 | })(Pe || (Pe = {})) |
| 769 | var ee |
| 770 | ;(function (n) { |
| 771 | function t(r, e) { |
| 772 | return { uri: r, version: e } |
| 773 | } |
| 774 | n.create = t |
| 775 | function i(r) { |
| 776 | var e = r |
| 777 | return a.defined(e) && a.string(e.uri) && (e.version === null || a.integer(e.version)) |
| 778 | } |
| 779 | n.is = i |
| 780 | })(ee || (ee = {})) |
| 781 | var Re |
| 782 | ;(function (n) { |
| 783 | function t(r, e, o, s) { |
| 784 | return { uri: r, languageId: e, version: o, text: s } |
| 785 | } |
| 786 | n.create = t |
| 787 | function i(r) { |
| 788 | var e = r |
| 789 | return ( |
| 790 | a.defined(e) && |
| 791 | a.string(e.uri) && |
| 792 | a.string(e.languageId) && |
| 793 | a.integer(e.version) && |
| 794 | a.string(e.text) |
| 795 | ) |
| 796 | } |
| 797 | n.is = i |
| 798 | })(Re || (Re = {})) |
| 799 | var X |
| 800 | ;(function (n) { |
| 801 | ;(n.PlainText = 'plaintext'), (n.Markdown = 'markdown') |
| 802 | })(X || (X = {})) |
| 803 | ;(function (n) { |
| 804 | function t(i) { |
| 805 | var r = i |
| 806 | return r === n.PlainText || r === n.Markdown |
| 807 | } |
| 808 | n.is = t |
| 809 | })(X || (X = {})) |
| 810 | var ue |
| 811 | ;(function (n) { |
| 812 | function t(i) { |
| 813 | var r = i |
| 814 | return a.objectLiteral(i) && X.is(r.kind) && a.string(r.value) |
| 815 | } |
| 816 | n.is = t |
| 817 | })(ue || (ue = {})) |
| 818 | var p |
| 819 | ;(function (n) { |
| 820 | ;(n.Text = 1), |
| 821 | (n.Method = 2), |
| 822 | (n.Function = 3), |
| 823 | (n.Constructor = 4), |
| 824 | (n.Field = 5), |
| 825 | (n.Variable = 6), |
| 826 | (n.Class = 7), |
| 827 | (n.Interface = 8), |
| 828 | (n.Module = 9), |
| 829 | (n.Property = 10), |
| 830 | (n.Unit = 11), |
| 831 | (n.Value = 12), |
| 832 | (n.Enum = 13), |
| 833 | (n.Keyword = 14), |
| 834 | (n.Snippet = 15), |
| 835 | (n.Color = 16), |
| 836 | (n.File = 17), |
| 837 | (n.Reference = 18), |
| 838 | (n.Folder = 19), |
| 839 | (n.EnumMember = 20), |
| 840 | (n.Constant = 21), |
| 841 | (n.Struct = 22), |
| 842 | (n.Event = 23), |
| 843 | (n.Operator = 24), |
| 844 | (n.TypeParameter = 25) |
| 845 | })(p || (p = {})) |
| 846 | var ne |
| 847 | ;(function (n) { |
| 848 | ;(n.PlainText = 1), (n.Snippet = 2) |
| 849 | })(ne || (ne = {})) |
| 850 | var We |
| 851 | ;(function (n) { |
| 852 | n.Deprecated = 1 |
| 853 | })(We || (We = {})) |
| 854 | var Le |
| 855 | ;(function (n) { |
| 856 | function t(r, e, o) { |
| 857 | return { newText: r, insert: e, replace: o } |
| 858 | } |
| 859 | n.create = t |
| 860 | function i(r) { |
| 861 | var e = r |
| 862 | return e && a.string(e.newText) && v.is(e.insert) && v.is(e.replace) |
| 863 | } |
| 864 | n.is = i |
| 865 | })(Le || (Le = {})) |
| 866 | var De |
| 867 | ;(function (n) { |
| 868 | ;(n.asIs = 1), (n.adjustIndentation = 2) |
| 869 | })(De || (De = {})) |
| 870 | var Se |
| 871 | ;(function (n) { |
| 872 | function t(i) { |
| 873 | return { label: i } |
| 874 | } |
| 875 | n.create = t |
| 876 | })(Se || (Se = {})) |
| 877 | var Fe |
| 878 | ;(function (n) { |
| 879 | function t(i, r) { |
| 880 | return { items: i || [], isIncomplete: !!r } |
| 881 | } |
| 882 | n.create = t |
| 883 | })(Fe || (Fe = {})) |
| 884 | var te |
| 885 | ;(function (n) { |
| 886 | function t(r) { |
| 887 | return r.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&') |
| 888 | } |
| 889 | n.fromPlainText = t |
| 890 | function i(r) { |
| 891 | var e = r |
| 892 | return a.string(e) || (a.objectLiteral(e) && a.string(e.language) && a.string(e.value)) |
| 893 | } |
| 894 | n.is = i |
| 895 | })(te || (te = {})) |
| 896 | var Me |
| 897 | ;(function (n) { |
| 898 | function t(i) { |
| 899 | var r = i |
| 900 | return ( |
| 901 | !!r && |
| 902 | a.objectLiteral(r) && |
| 903 | (ue.is(r.contents) || te.is(r.contents) || a.typedArray(r.contents, te.is)) && |
| 904 | (i.range === void 0 || v.is(i.range)) |
| 905 | ) |
| 906 | } |
| 907 | n.is = t |
| 908 | })(Me || (Me = {})) |
| 909 | var Ae |
| 910 | ;(function (n) { |
| 911 | function t(i, r) { |
| 912 | return r ? { label: i, documentation: r } : { label: i } |
| 913 | } |
| 914 | n.create = t |
| 915 | })(Ae || (Ae = {})) |
| 916 | var He |
| 917 | ;(function (n) { |
| 918 | function t(i, r) { |
| 919 | for (var e = [], o = 2; o < arguments.length; o++) e[o - 2] = arguments[o] |
| 920 | var s = { label: i } |
| 921 | return ( |
| 922 | a.defined(r) && (s.documentation = r), |
| 923 | a.defined(e) ? (s.parameters = e) : (s.parameters = []), |
| 924 | s |
| 925 | ) |
| 926 | } |
| 927 | n.create = t |
| 928 | })(He || (He = {})) |
| 929 | var W |
| 930 | ;(function (n) { |
| 931 | ;(n.Text = 1), (n.Read = 2), (n.Write = 3) |
| 932 | })(W || (W = {})) |
| 933 | var Ke |
| 934 | ;(function (n) { |
| 935 | function t(i, r) { |
| 936 | var e = { range: i } |
| 937 | return a.number(r) && (e.kind = r), e |
| 938 | } |
| 939 | n.create = t |
| 940 | })(Ke || (Ke = {})) |
| 941 | var h |
| 942 | ;(function (n) { |
| 943 | ;(n.File = 1), |
| 944 | (n.Module = 2), |
| 945 | (n.Namespace = 3), |
| 946 | (n.Package = 4), |
| 947 | (n.Class = 5), |
| 948 | (n.Method = 6), |
| 949 | (n.Property = 7), |
| 950 | (n.Field = 8), |
| 951 | (n.Constructor = 9), |
| 952 | (n.Enum = 10), |
| 953 | (n.Interface = 11), |
| 954 | (n.Function = 12), |
| 955 | (n.Variable = 13), |
| 956 | (n.Constant = 14), |
| 957 | (n.String = 15), |
| 958 | (n.Number = 16), |
| 959 | (n.Boolean = 17), |
| 960 | (n.Array = 18), |
| 961 | (n.Object = 19), |
| 962 | (n.Key = 20), |
| 963 | (n.Null = 21), |
| 964 | (n.EnumMember = 22), |
| 965 | (n.Struct = 23), |
| 966 | (n.Event = 24), |
| 967 | (n.Operator = 25), |
| 968 | (n.TypeParameter = 26) |
| 969 | })(h || (h = {})) |
| 970 | var Ue |
| 971 | ;(function (n) { |
| 972 | n.Deprecated = 1 |
| 973 | })(Ue || (Ue = {})) |
| 974 | var je |
| 975 | ;(function (n) { |
| 976 | function t(i, r, e, o, s) { |
| 977 | var u = { name: i, kind: r, location: { uri: o, range: e } } |
| 978 | return s && (u.containerName = s), u |
| 979 | } |
| 980 | n.create = t |
| 981 | })(je || (je = {})) |
| 982 | var Oe |
| 983 | ;(function (n) { |
| 984 | function t(r, e, o, s, u, l) { |
| 985 | var f = { name: r, detail: e, kind: o, range: s, selectionRange: u } |
| 986 | return l !== void 0 && (f.children = l), f |
| 987 | } |
| 988 | n.create = t |
| 989 | function i(r) { |
| 990 | var e = r |
| 991 | return ( |
| 992 | e && |
| 993 | a.string(e.name) && |
| 994 | a.number(e.kind) && |
| 995 | v.is(e.range) && |
| 996 | v.is(e.selectionRange) && |
| 997 | (e.detail === void 0 || a.string(e.detail)) && |
| 998 | (e.deprecated === void 0 || a.boolean(e.deprecated)) && |
| 999 | (e.children === void 0 || Array.isArray(e.children)) && |
| 1000 | (e.tags === void 0 || Array.isArray(e.tags)) |
| 1001 | ) |
| 1002 | } |
| 1003 | n.is = i |
| 1004 | })(Oe || (Oe = {})) |
| 1005 | var Ne |
| 1006 | ;(function (n) { |
| 1007 | ;(n.Empty = ''), |
| 1008 | (n.QuickFix = 'quickfix'), |
| 1009 | (n.Refactor = 'refactor'), |
| 1010 | (n.RefactorExtract = 'refactor.extract'), |
| 1011 | (n.RefactorInline = 'refactor.inline'), |
| 1012 | (n.RefactorRewrite = 'refactor.rewrite'), |
| 1013 | (n.Source = 'source'), |
| 1014 | (n.SourceOrganizeImports = 'source.organizeImports'), |
| 1015 | (n.SourceFixAll = 'source.fixAll') |
| 1016 | })(Ne || (Ne = {})) |
| 1017 | var Ve |
| 1018 | ;(function (n) { |
| 1019 | function t(r, e) { |
| 1020 | var o = { diagnostics: r } |
| 1021 | return e != null && (o.only = e), o |
| 1022 | } |
| 1023 | n.create = t |
| 1024 | function i(r) { |
| 1025 | var e = r |
| 1026 | return ( |
| 1027 | a.defined(e) && |
| 1028 | a.typedArray(e.diagnostics, Y.is) && |
| 1029 | (e.only === void 0 || a.typedArray(e.only, a.string)) |
| 1030 | ) |
| 1031 | } |
| 1032 | n.is = i |
| 1033 | })(Ve || (Ve = {})) |
| 1034 | var ze |
| 1035 | ;(function (n) { |
| 1036 | function t(r, e, o) { |
| 1037 | var s = { title: r }, |
| 1038 | u = !0 |
| 1039 | return ( |
| 1040 | typeof e == 'string' |
| 1041 | ? ((u = !1), (s.kind = e)) |
| 1042 | : O.is(e) |
| 1043 | ? (s.command = e) |
| 1044 | : (s.edit = e), |
| 1045 | u && o !== void 0 && (s.kind = o), |
| 1046 | s |
| 1047 | ) |
| 1048 | } |
| 1049 | n.create = t |
| 1050 | function i(r) { |
| 1051 | var e = r |
| 1052 | return ( |
| 1053 | e && |
| 1054 | a.string(e.title) && |
| 1055 | (e.diagnostics === void 0 || a.typedArray(e.diagnostics, Y.is)) && |
| 1056 | (e.kind === void 0 || a.string(e.kind)) && |
| 1057 | (e.edit !== void 0 || e.command !== void 0) && |
| 1058 | (e.command === void 0 || O.is(e.command)) && |
| 1059 | (e.isPreferred === void 0 || a.boolean(e.isPreferred)) && |
| 1060 | (e.edit === void 0 || ae.is(e.edit)) |
| 1061 | ) |
| 1062 | } |
| 1063 | n.is = i |
| 1064 | })(ze || (ze = {})) |
| 1065 | var Xe |
| 1066 | ;(function (n) { |
| 1067 | function t(r, e) { |
| 1068 | var o = { range: r } |
| 1069 | return a.defined(e) && (o.data = e), o |
| 1070 | } |
| 1071 | n.create = t |
| 1072 | function i(r) { |
| 1073 | var e = r |
| 1074 | return a.defined(e) && v.is(e.range) && (a.undefined(e.command) || O.is(e.command)) |
| 1075 | } |
| 1076 | n.is = i |
| 1077 | })(Xe || (Xe = {})) |
| 1078 | var Be |
| 1079 | ;(function (n) { |
| 1080 | function t(r, e) { |
| 1081 | return { tabSize: r, insertSpaces: e } |
| 1082 | } |
| 1083 | n.create = t |
| 1084 | function i(r) { |
| 1085 | var e = r |
| 1086 | return a.defined(e) && a.uinteger(e.tabSize) && a.boolean(e.insertSpaces) |
| 1087 | } |
| 1088 | n.is = i |
| 1089 | })(Be || (Be = {})) |
| 1090 | var $e |
| 1091 | ;(function (n) { |
| 1092 | function t(r, e, o) { |
| 1093 | return { range: r, target: e, data: o } |
| 1094 | } |
| 1095 | n.create = t |
| 1096 | function i(r) { |
| 1097 | var e = r |
| 1098 | return a.defined(e) && v.is(e.range) && (a.undefined(e.target) || a.string(e.target)) |
| 1099 | } |
| 1100 | n.is = i |
| 1101 | })($e || ($e = {})) |
| 1102 | var qe |
| 1103 | ;(function (n) { |
| 1104 | function t(r, e) { |
| 1105 | return { range: r, parent: e } |
| 1106 | } |
| 1107 | n.create = t |
| 1108 | function i(r) { |
| 1109 | var e = r |
| 1110 | return e !== void 0 && v.is(e.range) && (e.parent === void 0 || n.is(e.parent)) |
| 1111 | } |
| 1112 | n.is = i |
| 1113 | })(qe || (qe = {})) |
| 1114 | var Qe |
| 1115 | ;(function (n) { |
| 1116 | function t(o, s, u, l) { |
| 1117 | return new fn(o, s, u, l) |
| 1118 | } |
| 1119 | n.create = t |
| 1120 | function i(o) { |
| 1121 | var s = o |
| 1122 | return !!( |
| 1123 | a.defined(s) && |
| 1124 | a.string(s.uri) && |
| 1125 | (a.undefined(s.languageId) || a.string(s.languageId)) && |
| 1126 | a.uinteger(s.lineCount) && |
| 1127 | a.func(s.getText) && |
| 1128 | a.func(s.positionAt) && |
| 1129 | a.func(s.offsetAt) |
| 1130 | ) |
| 1131 | } |
| 1132 | n.is = i |
| 1133 | function r(o, s) { |
| 1134 | for ( |
| 1135 | var u = o.getText(), |
| 1136 | l = e(s, function (E, $) { |
| 1137 | var pe = E.range.start.line - $.range.start.line |
| 1138 | return pe === 0 ? E.range.start.character - $.range.start.character : pe |
| 1139 | }), |
| 1140 | f = u.length, |
| 1141 | g = l.length - 1; |
| 1142 | g >= 0; |
| 1143 | g-- |
| 1144 | ) { |
| 1145 | var m = l[g], |
| 1146 | k = o.offsetAt(m.range.start), |
| 1147 | c = o.offsetAt(m.range.end) |
| 1148 | if (c <= f) u = u.substring(0, k) + m.newText + u.substring(c, u.length) |
| 1149 | else throw new Error('Overlapping edit') |
| 1150 | f = k |
| 1151 | } |
| 1152 | return u |
| 1153 | } |
| 1154 | n.applyEdits = r |
| 1155 | function e(o, s) { |
| 1156 | if (o.length <= 1) return o |
| 1157 | var u = (o.length / 2) | 0, |
| 1158 | l = o.slice(0, u), |
| 1159 | f = o.slice(u) |
| 1160 | e(l, s), e(f, s) |
| 1161 | for (var g = 0, m = 0, k = 0; g < l.length && m < f.length; ) { |
| 1162 | var c = s(l[g], f[m]) |
| 1163 | c <= 0 ? (o[k++] = l[g++]) : (o[k++] = f[m++]) |
| 1164 | } |
| 1165 | for (; g < l.length; ) o[k++] = l[g++] |
| 1166 | for (; m < f.length; ) o[k++] = f[m++] |
| 1167 | return o |
| 1168 | } |
| 1169 | })(Qe || (Qe = {})) |
| 1170 | var fn = (function () { |
| 1171 | function n(t, i, r, e) { |
| 1172 | ;(this._uri = t), |
| 1173 | (this._languageId = i), |
| 1174 | (this._version = r), |
| 1175 | (this._content = e), |
| 1176 | (this._lineOffsets = void 0) |
| 1177 | } |
| 1178 | return ( |
| 1179 | Object.defineProperty(n.prototype, 'uri', { |
| 1180 | get: function () { |
| 1181 | return this._uri |
| 1182 | }, |
| 1183 | enumerable: !1, |
| 1184 | configurable: !0, |
| 1185 | }), |
| 1186 | Object.defineProperty(n.prototype, 'languageId', { |
| 1187 | get: function () { |
| 1188 | return this._languageId |
| 1189 | }, |
| 1190 | enumerable: !1, |
| 1191 | configurable: !0, |
| 1192 | }), |
| 1193 | Object.defineProperty(n.prototype, 'version', { |
| 1194 | get: function () { |
| 1195 | return this._version |
| 1196 | }, |
| 1197 | enumerable: !1, |
| 1198 | configurable: !0, |
| 1199 | }), |
| 1200 | (n.prototype.getText = function (t) { |
| 1201 | if (t) { |
| 1202 | var i = this.offsetAt(t.start), |
| 1203 | r = this.offsetAt(t.end) |
| 1204 | return this._content.substring(i, r) |
| 1205 | } |
| 1206 | return this._content |
| 1207 | }), |
| 1208 | (n.prototype.update = function (t, i) { |
| 1209 | ;(this._content = t.text), (this._version = i), (this._lineOffsets = void 0) |
| 1210 | }), |
| 1211 | (n.prototype.getLineOffsets = function () { |
| 1212 | if (this._lineOffsets === void 0) { |
| 1213 | for (var t = [], i = this._content, r = !0, e = 0; e < i.length; e++) { |
| 1214 | r && (t.push(e), (r = !1)) |
| 1215 | var o = i.charAt(e) |
| 1216 | ;(r = |
| 1217 | o === '\r' || |
| 1218 | o === |
| 1219 | ` |
| 1220 | `), |
| 1221 | o === '\r' && |
| 1222 | e + 1 < i.length && |
| 1223 | i.charAt(e + 1) === |
| 1224 | ` |
| 1225 | ` && |
| 1226 | e++ |
| 1227 | } |
| 1228 | r && i.length > 0 && t.push(i.length), (this._lineOffsets = t) |
| 1229 | } |
| 1230 | return this._lineOffsets |
| 1231 | }), |
| 1232 | (n.prototype.positionAt = function (t) { |
| 1233 | t = Math.max(Math.min(t, this._content.length), 0) |
| 1234 | var i = this.getLineOffsets(), |
| 1235 | r = 0, |
| 1236 | e = i.length |
| 1237 | if (e === 0) return x.create(0, t) |
| 1238 | for (; r < e; ) { |
| 1239 | var o = Math.floor((r + e) / 2) |
| 1240 | i[o] > t ? (e = o) : (r = o + 1) |
| 1241 | } |
| 1242 | var s = r - 1 |
| 1243 | return x.create(s, t - i[s]) |
| 1244 | }), |
| 1245 | (n.prototype.offsetAt = function (t) { |
| 1246 | var i = this.getLineOffsets() |
| 1247 | if (t.line >= i.length) return this._content.length |
| 1248 | if (t.line < 0) return 0 |
| 1249 | var r = i[t.line], |
| 1250 | e = t.line + 1 < i.length ? i[t.line + 1] : this._content.length |
| 1251 | return Math.max(Math.min(r + t.character, e), r) |
| 1252 | }), |
| 1253 | Object.defineProperty(n.prototype, 'lineCount', { |
| 1254 | get: function () { |
| 1255 | return this.getLineOffsets().length |
| 1256 | }, |
| 1257 | enumerable: !1, |
| 1258 | configurable: !0, |
| 1259 | }), |
| 1260 | n |
| 1261 | ) |
| 1262 | })(), |
| 1263 | a |
| 1264 | ;(function (n) { |
| 1265 | var t = Object.prototype.toString |
| 1266 | function i(c) { |
| 1267 | return typeof c < 'u' |
| 1268 | } |
| 1269 | n.defined = i |
| 1270 | function r(c) { |
| 1271 | return typeof c > 'u' |
| 1272 | } |
| 1273 | n.undefined = r |
| 1274 | function e(c) { |
| 1275 | return c === !0 || c === !1 |
| 1276 | } |
| 1277 | n.boolean = e |
| 1278 | function o(c) { |
| 1279 | return t.call(c) === '[object String]' |
| 1280 | } |
| 1281 | n.string = o |
| 1282 | function s(c) { |
| 1283 | return t.call(c) === '[object Number]' |
| 1284 | } |
| 1285 | n.number = s |
| 1286 | function u(c, E, $) { |
| 1287 | return t.call(c) === '[object Number]' && E <= c && c <= $ |
| 1288 | } |
| 1289 | n.numberRange = u |
| 1290 | function l(c) { |
| 1291 | return t.call(c) === '[object Number]' && -2147483648 <= c && c <= 2147483647 |
| 1292 | } |
| 1293 | n.integer = l |
| 1294 | function f(c) { |
| 1295 | return t.call(c) === '[object Number]' && 0 <= c && c <= 2147483647 |
| 1296 | } |
| 1297 | n.uinteger = f |
| 1298 | function g(c) { |
| 1299 | return t.call(c) === '[object Function]' |
| 1300 | } |
| 1301 | n.func = g |
| 1302 | function m(c) { |
| 1303 | return c !== null && typeof c == 'object' |
| 1304 | } |
| 1305 | n.objectLiteral = m |
| 1306 | function k(c, E) { |
| 1307 | return Array.isArray(c) && c.every(E) |
| 1308 | } |
| 1309 | n.typedArray = k |
| 1310 | })(a || (a = {})) |
| 1311 | var de = class { |
| 1312 | constructor(t, i, r) { |
| 1313 | this._languageId = t |
| 1314 | this._worker = i |
| 1315 | let e = (s) => { |
| 1316 | let u = s.getLanguageId() |
| 1317 | if (u !== this._languageId) return |
| 1318 | let l |
| 1319 | ;(this._listener[s.uri.toString()] = s.onDidChangeContent(() => { |
| 1320 | window.clearTimeout(l), (l = window.setTimeout(() => this._doValidate(s.uri, u), 500)) |
| 1321 | })), |
| 1322 | this._doValidate(s.uri, u) |
| 1323 | }, |
| 1324 | o = (s) => { |
| 1325 | d.editor.setModelMarkers(s, this._languageId, []) |
| 1326 | let u = s.uri.toString(), |
| 1327 | l = this._listener[u] |
| 1328 | l && (l.dispose(), delete this._listener[u]) |
| 1329 | } |
| 1330 | this._disposables.push(d.editor.onDidCreateModel(e)), |
| 1331 | this._disposables.push(d.editor.onWillDisposeModel(o)), |
| 1332 | this._disposables.push( |
| 1333 | d.editor.onDidChangeModelLanguage((s) => { |
| 1334 | o(s.model), e(s.model) |
| 1335 | }) |
| 1336 | ), |
| 1337 | this._disposables.push( |
| 1338 | r((s) => { |
| 1339 | d.editor.getModels().forEach((u) => { |
| 1340 | u.getLanguageId() === this._languageId && (o(u), e(u)) |
| 1341 | }) |
| 1342 | }) |
| 1343 | ), |
| 1344 | this._disposables.push({ |
| 1345 | dispose: () => { |
| 1346 | d.editor.getModels().forEach(o) |
| 1347 | for (let s in this._listener) this._listener[s].dispose() |
| 1348 | }, |
| 1349 | }), |
| 1350 | d.editor.getModels().forEach(e) |
| 1351 | } |
| 1352 | _disposables = [] |
| 1353 | _listener = Object.create(null) |
| 1354 | dispose() { |
| 1355 | this._disposables.forEach((t) => t && t.dispose()), (this._disposables.length = 0) |
| 1356 | } |
| 1357 | _doValidate(t, i) { |
| 1358 | this._worker(t) |
| 1359 | .then((r) => r.doValidation(t.toString())) |
| 1360 | .then((r) => { |
| 1361 | let e = r.map((s) => mn(t, s)), |
| 1362 | o = d.editor.getModel(t) |
| 1363 | o && o.getLanguageId() === i && d.editor.setModelMarkers(o, i, e) |
| 1364 | }) |
| 1365 | .then(void 0, (r) => { |
| 1366 | console.error(r) |
| 1367 | }) |
| 1368 | } |
| 1369 | } |
| 1370 | function hn(n) { |
| 1371 | switch (n) { |
| 1372 | case w.Error: |
| 1373 | return d.MarkerSeverity.Error |
| 1374 | case w.Warning: |
| 1375 | return d.MarkerSeverity.Warning |
| 1376 | case w.Information: |
| 1377 | return d.MarkerSeverity.Info |
| 1378 | case w.Hint: |
| 1379 | return d.MarkerSeverity.Hint |
| 1380 | default: |
| 1381 | return d.MarkerSeverity.Info |
| 1382 | } |
| 1383 | } |
| 1384 | function mn(n, t) { |
| 1385 | let i = typeof t.code == 'number' ? String(t.code) : t.code |
| 1386 | return { |
| 1387 | severity: hn(t.severity), |
| 1388 | startLineNumber: t.range.start.line + 1, |
| 1389 | startColumn: t.range.start.character + 1, |
| 1390 | endLineNumber: t.range.end.line + 1, |
| 1391 | endColumn: t.range.end.character + 1, |
| 1392 | message: t.message, |
| 1393 | code: i, |
| 1394 | source: t.source, |
| 1395 | } |
| 1396 | } |
| 1397 | var B = class { |
| 1398 | constructor(t, i) { |
| 1399 | this._worker = t |
| 1400 | this._triggerCharacters = i |
| 1401 | } |
| 1402 | get triggerCharacters() { |
| 1403 | return this._triggerCharacters |
| 1404 | } |
| 1405 | provideCompletionItems(t, i, r, e) { |
| 1406 | let o = t.uri |
| 1407 | return this._worker(o) |
| 1408 | .then((s) => s.doComplete(o.toString(), C(i))) |
| 1409 | .then((s) => { |
| 1410 | if (!s) return |
| 1411 | let u = t.getWordUntilPosition(i), |
| 1412 | l = new d.Range(i.lineNumber, u.startColumn, i.lineNumber, u.endColumn), |
| 1413 | f = s.items.map((g) => { |
| 1414 | let m = { |
| 1415 | label: g.label, |
| 1416 | insertText: g.insertText || g.label, |
| 1417 | sortText: g.sortText, |
| 1418 | filterText: g.filterText, |
| 1419 | documentation: g.documentation, |
| 1420 | detail: g.detail, |
| 1421 | command: yn(g.command), |
| 1422 | range: l, |
| 1423 | kind: Tn(g.kind), |
| 1424 | } |
| 1425 | return ( |
| 1426 | g.textEdit && |
| 1427 | (vn(g.textEdit) |
| 1428 | ? (m.range = { insert: y(g.textEdit.insert), replace: y(g.textEdit.replace) }) |
| 1429 | : (m.range = y(g.textEdit.range)), |
| 1430 | (m.insertText = g.textEdit.newText)), |
| 1431 | g.additionalTextEdits && (m.additionalTextEdits = g.additionalTextEdits.map(L)), |
| 1432 | g.insertTextFormat === ne.Snippet && |
| 1433 | (m.insertTextRules = d.languages.CompletionItemInsertTextRule.InsertAsSnippet), |
| 1434 | m |
| 1435 | ) |
| 1436 | }) |
| 1437 | return { isIncomplete: s.isIncomplete, suggestions: f } |
| 1438 | }) |
| 1439 | } |
| 1440 | } |
| 1441 | function C(n) { |
| 1442 | if (!!n) return { character: n.column - 1, line: n.lineNumber - 1 } |
| 1443 | } |
| 1444 | function fe(n) { |
| 1445 | if (!!n) |
| 1446 | return { |
| 1447 | start: { line: n.startLineNumber - 1, character: n.startColumn - 1 }, |
| 1448 | end: { line: n.endLineNumber - 1, character: n.endColumn - 1 }, |
| 1449 | } |
| 1450 | } |
| 1451 | function y(n) { |
| 1452 | if (!!n) |
| 1453 | return new d.Range( |
| 1454 | n.start.line + 1, |
| 1455 | n.start.character + 1, |
| 1456 | n.end.line + 1, |
| 1457 | n.end.character + 1 |
| 1458 | ) |
| 1459 | } |
| 1460 | function vn(n) { |
| 1461 | return typeof n.insert < 'u' && typeof n.replace < 'u' |
| 1462 | } |
| 1463 | function Tn(n) { |
| 1464 | let t = d.languages.CompletionItemKind |
| 1465 | switch (n) { |
| 1466 | case p.Text: |
| 1467 | return t.Text |
| 1468 | case p.Method: |
| 1469 | return t.Method |
| 1470 | case p.Function: |
| 1471 | return t.Function |
| 1472 | case p.Constructor: |
| 1473 | return t.Constructor |
| 1474 | case p.Field: |
| 1475 | return t.Field |
| 1476 | case p.Variable: |
| 1477 | return t.Variable |
| 1478 | case p.Class: |
| 1479 | return t.Class |
| 1480 | case p.Interface: |
| 1481 | return t.Interface |
| 1482 | case p.Module: |
| 1483 | return t.Module |
| 1484 | case p.Property: |
| 1485 | return t.Property |
| 1486 | case p.Unit: |
| 1487 | return t.Unit |
| 1488 | case p.Value: |
| 1489 | return t.Value |
| 1490 | case p.Enum: |
| 1491 | return t.Enum |
| 1492 | case p.Keyword: |
| 1493 | return t.Keyword |
| 1494 | case p.Snippet: |
| 1495 | return t.Snippet |
| 1496 | case p.Color: |
| 1497 | return t.Color |
| 1498 | case p.File: |
| 1499 | return t.File |
| 1500 | case p.Reference: |
| 1501 | return t.Reference |
| 1502 | } |
| 1503 | return t.Property |
| 1504 | } |
| 1505 | function L(n) { |
| 1506 | if (!!n) return { range: y(n.range), text: n.newText } |
| 1507 | } |
| 1508 | function yn(n) { |
| 1509 | return n && n.command === 'editor.action.triggerSuggest' |
| 1510 | ? { id: n.command, title: n.title, arguments: n.arguments } |
| 1511 | : void 0 |
| 1512 | } |
| 1513 | var D = class { |
| 1514 | constructor(t) { |
| 1515 | this._worker = t |
| 1516 | } |
| 1517 | provideHover(t, i, r) { |
| 1518 | let e = t.uri |
| 1519 | return this._worker(e) |
| 1520 | .then((o) => o.doHover(e.toString(), C(i))) |
| 1521 | .then((o) => { |
| 1522 | if (!!o) return { range: y(o.range), contents: kn(o.contents) } |
| 1523 | }) |
| 1524 | } |
| 1525 | } |
| 1526 | function xn(n) { |
| 1527 | return n && typeof n == 'object' && typeof n.kind == 'string' |
| 1528 | } |
| 1529 | function Ge(n) { |
| 1530 | return typeof n == 'string' |
| 1531 | ? { value: n } |
| 1532 | : xn(n) |
| 1533 | ? n.kind === 'plaintext' |
| 1534 | ? { value: n.value.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&') } |
| 1535 | : { value: n.value } |
| 1536 | : { |
| 1537 | value: |
| 1538 | '```' + |
| 1539 | n.language + |
| 1540 | ` |
| 1541 | ` + |
| 1542 | n.value + |
| 1543 | '\n```\n', |
| 1544 | } |
| 1545 | } |
| 1546 | function kn(n) { |
| 1547 | if (!!n) return Array.isArray(n) ? n.map(Ge) : [Ge(n)] |
| 1548 | } |
| 1549 | var S = class { |
| 1550 | constructor(t) { |
| 1551 | this._worker = t |
| 1552 | } |
| 1553 | provideDocumentHighlights(t, i, r) { |
| 1554 | let e = t.uri |
| 1555 | return this._worker(e) |
| 1556 | .then((o) => o.findDocumentHighlights(e.toString(), C(i))) |
| 1557 | .then((o) => { |
| 1558 | if (!!o) return o.map((s) => ({ range: y(s.range), kind: In(s.kind) })) |
| 1559 | }) |
| 1560 | } |
| 1561 | } |
| 1562 | function In(n) { |
| 1563 | switch (n) { |
| 1564 | case W.Read: |
| 1565 | return d.languages.DocumentHighlightKind.Read |
| 1566 | case W.Write: |
| 1567 | return d.languages.DocumentHighlightKind.Write |
| 1568 | case W.Text: |
| 1569 | return d.languages.DocumentHighlightKind.Text |
| 1570 | } |
| 1571 | return d.languages.DocumentHighlightKind.Text |
| 1572 | } |
| 1573 | var ce = class { |
| 1574 | constructor(t) { |
| 1575 | this._worker = t |
| 1576 | } |
| 1577 | provideDefinition(t, i, r) { |
| 1578 | let e = t.uri |
| 1579 | return this._worker(e) |
| 1580 | .then((o) => o.findDefinition(e.toString(), C(i))) |
| 1581 | .then((o) => { |
| 1582 | if (!!o) return [Je(o)] |
| 1583 | }) |
| 1584 | } |
| 1585 | } |
| 1586 | function Je(n) { |
| 1587 | return { uri: d.Uri.parse(n.uri), range: y(n.range) } |
| 1588 | } |
| 1589 | var le = class { |
| 1590 | constructor(t) { |
| 1591 | this._worker = t |
| 1592 | } |
| 1593 | provideReferences(t, i, r, e) { |
| 1594 | let o = t.uri |
| 1595 | return this._worker(o) |
| 1596 | .then((s) => s.findReferences(o.toString(), C(i))) |
| 1597 | .then((s) => { |
| 1598 | if (!!s) return s.map(Je) |
| 1599 | }) |
| 1600 | } |
| 1601 | }, |
| 1602 | F = class { |
| 1603 | constructor(t) { |
| 1604 | this._worker = t |
| 1605 | } |
| 1606 | provideRenameEdits(t, i, r, e) { |
| 1607 | let o = t.uri |
| 1608 | return this._worker(o) |
| 1609 | .then((s) => s.doRename(o.toString(), C(i), r)) |
| 1610 | .then((s) => _n(s)) |
| 1611 | } |
| 1612 | } |
| 1613 | function _n(n) { |
| 1614 | if (!n || !n.changes) return |
| 1615 | let t = [] |
| 1616 | for (let i in n.changes) { |
| 1617 | let r = d.Uri.parse(i) |
| 1618 | for (let e of n.changes[i]) |
| 1619 | t.push({ |
| 1620 | resource: r, |
| 1621 | versionId: void 0, |
| 1622 | textEdit: { range: y(e.range), text: e.newText }, |
| 1623 | }) |
| 1624 | } |
| 1625 | return { edits: t } |
| 1626 | } |
| 1627 | var M = class { |
| 1628 | constructor(t) { |
| 1629 | this._worker = t |
| 1630 | } |
| 1631 | provideDocumentSymbols(t, i) { |
| 1632 | let r = t.uri |
| 1633 | return this._worker(r) |
| 1634 | .then((e) => e.findDocumentSymbols(r.toString())) |
| 1635 | .then((e) => { |
| 1636 | if (!!e) |
| 1637 | return e.map((o) => ({ |
| 1638 | name: o.name, |
| 1639 | detail: '', |
| 1640 | containerName: o.containerName, |
| 1641 | kind: Cn(o.kind), |
| 1642 | range: y(o.location.range), |
| 1643 | selectionRange: y(o.location.range), |
| 1644 | tags: [], |
| 1645 | })) |
| 1646 | }) |
| 1647 | } |
| 1648 | } |
| 1649 | function Cn(n) { |
| 1650 | let t = d.languages.SymbolKind |
| 1651 | switch (n) { |
| 1652 | case h.File: |
| 1653 | return t.Array |
| 1654 | case h.Module: |
| 1655 | return t.Module |
| 1656 | case h.Namespace: |
| 1657 | return t.Namespace |
| 1658 | case h.Package: |
| 1659 | return t.Package |
| 1660 | case h.Class: |
| 1661 | return t.Class |
| 1662 | case h.Method: |
| 1663 | return t.Method |
| 1664 | case h.Property: |
| 1665 | return t.Property |
| 1666 | case h.Field: |
| 1667 | return t.Field |
| 1668 | case h.Constructor: |
| 1669 | return t.Constructor |
| 1670 | case h.Enum: |
| 1671 | return t.Enum |
| 1672 | case h.Interface: |
| 1673 | return t.Interface |
| 1674 | case h.Function: |
| 1675 | return t.Function |
| 1676 | case h.Variable: |
| 1677 | return t.Variable |
| 1678 | case h.Constant: |
| 1679 | return t.Constant |
| 1680 | case h.String: |
| 1681 | return t.String |
| 1682 | case h.Number: |
| 1683 | return t.Number |
| 1684 | case h.Boolean: |
| 1685 | return t.Boolean |
| 1686 | case h.Array: |
| 1687 | return t.Array |
| 1688 | } |
| 1689 | return t.Function |
| 1690 | } |
| 1691 | var A = class { |
| 1692 | constructor(t) { |
| 1693 | this._worker = t |
| 1694 | } |
| 1695 | provideLinks(t, i) { |
| 1696 | let r = t.uri |
| 1697 | return this._worker(r) |
| 1698 | .then((e) => e.findDocumentLinks(r.toString())) |
| 1699 | .then((e) => { |
| 1700 | if (!!e) return { links: e.map((o) => ({ range: y(o.range), url: o.target })) } |
| 1701 | }) |
| 1702 | } |
| 1703 | }, |
| 1704 | H = class { |
| 1705 | constructor(t) { |
| 1706 | this._worker = t |
| 1707 | } |
| 1708 | provideDocumentFormattingEdits(t, i, r) { |
| 1709 | let e = t.uri |
| 1710 | return this._worker(e).then((o) => |
| 1711 | o.format(e.toString(), null, Ye(i)).then((s) => { |
| 1712 | if (!(!s || s.length === 0)) return s.map(L) |
| 1713 | }) |
| 1714 | ) |
| 1715 | } |
| 1716 | }, |
| 1717 | K = class { |
| 1718 | constructor(t) { |
| 1719 | this._worker = t |
| 1720 | } |
| 1721 | canFormatMultipleRanges = !1 |
| 1722 | provideDocumentRangeFormattingEdits(t, i, r, e) { |
| 1723 | let o = t.uri |
| 1724 | return this._worker(o).then((s) => |
| 1725 | s.format(o.toString(), fe(i), Ye(r)).then((u) => { |
| 1726 | if (!(!u || u.length === 0)) return u.map(L) |
| 1727 | }) |
| 1728 | ) |
| 1729 | } |
| 1730 | } |
| 1731 | function Ye(n) { |
| 1732 | return { tabSize: n.tabSize, insertSpaces: n.insertSpaces } |
| 1733 | } |
| 1734 | var ge = class { |
| 1735 | constructor(t) { |
| 1736 | this._worker = t |
| 1737 | } |
| 1738 | provideDocumentColors(t, i) { |
| 1739 | let r = t.uri |
| 1740 | return this._worker(r) |
| 1741 | .then((e) => e.findDocumentColors(r.toString())) |
| 1742 | .then((e) => { |
| 1743 | if (!!e) return e.map((o) => ({ color: o.color, range: y(o.range) })) |
| 1744 | }) |
| 1745 | } |
| 1746 | provideColorPresentations(t, i, r) { |
| 1747 | let e = t.uri |
| 1748 | return this._worker(e) |
| 1749 | .then((o) => o.getColorPresentations(e.toString(), i.color, fe(i.range))) |
| 1750 | .then((o) => { |
| 1751 | if (!!o) |
| 1752 | return o.map((s) => { |
| 1753 | let u = { label: s.label } |
| 1754 | return ( |
| 1755 | s.textEdit && (u.textEdit = L(s.textEdit)), |
| 1756 | s.additionalTextEdits && (u.additionalTextEdits = s.additionalTextEdits.map(L)), |
| 1757 | u |
| 1758 | ) |
| 1759 | }) |
| 1760 | }) |
| 1761 | } |
| 1762 | }, |
| 1763 | U = class { |
| 1764 | constructor(t) { |
| 1765 | this._worker = t |
| 1766 | } |
| 1767 | provideFoldingRanges(t, i, r) { |
| 1768 | let e = t.uri |
| 1769 | return this._worker(e) |
| 1770 | .then((o) => o.getFoldingRanges(e.toString(), i)) |
| 1771 | .then((o) => { |
| 1772 | if (!!o) |
| 1773 | return o.map((s) => { |
| 1774 | let u = { start: s.startLine + 1, end: s.endLine + 1 } |
| 1775 | return typeof s.kind < 'u' && (u.kind = bn(s.kind)), u |
| 1776 | }) |
| 1777 | }) |
| 1778 | } |
| 1779 | } |
| 1780 | function bn(n) { |
| 1781 | switch (n) { |
| 1782 | case R.Comment: |
| 1783 | return d.languages.FoldingRangeKind.Comment |
| 1784 | case R.Imports: |
| 1785 | return d.languages.FoldingRangeKind.Imports |
| 1786 | case R.Region: |
| 1787 | return d.languages.FoldingRangeKind.Region |
| 1788 | } |
| 1789 | } |
| 1790 | var j = class { |
| 1791 | constructor(t) { |
| 1792 | this._worker = t |
| 1793 | } |
| 1794 | provideSelectionRanges(t, i, r) { |
| 1795 | let e = t.uri |
| 1796 | return this._worker(e) |
| 1797 | .then((o) => o.getSelectionRanges(e.toString(), i.map(C))) |
| 1798 | .then((o) => { |
| 1799 | if (!!o) |
| 1800 | return o.map((s) => { |
| 1801 | let u = [] |
| 1802 | for (; s; ) u.push({ range: y(s.range) }), (s = s.parent) |
| 1803 | return u |
| 1804 | }) |
| 1805 | }) |
| 1806 | } |
| 1807 | } |
| 1808 | var re = class extends B { |
| 1809 | constructor(t) { |
| 1810 | super(t, ['.', ':', '<', '"', '=', '/']) |
| 1811 | } |
| 1812 | } |
| 1813 | function En(n) { |
| 1814 | let t = new b(n), |
| 1815 | i = (...e) => t.getLanguageServiceWorker(...e), |
| 1816 | r = n.languageId |
| 1817 | d.languages.registerCompletionItemProvider(r, new re(i)), |
| 1818 | d.languages.registerHoverProvider(r, new D(i)), |
| 1819 | d.languages.registerDocumentHighlightProvider(r, new S(i)), |
| 1820 | d.languages.registerLinkProvider(r, new A(i)), |
| 1821 | d.languages.registerFoldingRangeProvider(r, new U(i)), |
| 1822 | d.languages.registerDocumentSymbolProvider(r, new M(i)), |
| 1823 | d.languages.registerSelectionRangeProvider(r, new j(i)), |
| 1824 | d.languages.registerRenameProvider(r, new F(i)), |
| 1825 | r === 'html' && |
| 1826 | (d.languages.registerDocumentFormattingEditProvider(r, new H(i)), |
| 1827 | d.languages.registerDocumentRangeFormattingEditProvider(r, new K(i))) |
| 1828 | } |
| 1829 | function Pn(n) { |
| 1830 | let t = [], |
| 1831 | i = [], |
| 1832 | r = new b(n) |
| 1833 | t.push(r) |
| 1834 | let e = (...s) => r.getLanguageServiceWorker(...s) |
| 1835 | function o() { |
| 1836 | let { languageId: s, modeConfiguration: u } = n |
| 1837 | en(i), |
| 1838 | u.completionItems && i.push(d.languages.registerCompletionItemProvider(s, new re(e))), |
| 1839 | u.hovers && i.push(d.languages.registerHoverProvider(s, new D(e))), |
| 1840 | u.documentHighlights && |
| 1841 | i.push(d.languages.registerDocumentHighlightProvider(s, new S(e))), |
| 1842 | u.links && i.push(d.languages.registerLinkProvider(s, new A(e))), |
| 1843 | u.documentSymbols && i.push(d.languages.registerDocumentSymbolProvider(s, new M(e))), |
| 1844 | u.rename && i.push(d.languages.registerRenameProvider(s, new F(e))), |
| 1845 | u.foldingRanges && i.push(d.languages.registerFoldingRangeProvider(s, new U(e))), |
| 1846 | u.selectionRanges && i.push(d.languages.registerSelectionRangeProvider(s, new j(e))), |
| 1847 | u.documentFormattingEdits && |
| 1848 | i.push(d.languages.registerDocumentFormattingEditProvider(s, new H(e))), |
| 1849 | u.documentRangeFormattingEdits && |
| 1850 | i.push(d.languages.registerDocumentRangeFormattingEditProvider(s, new K(e))) |
| 1851 | } |
| 1852 | return o(), t.push(Ze(i)), Ze(t) |
| 1853 | } |
| 1854 | function Ze(n) { |
| 1855 | return { dispose: () => en(n) } |
| 1856 | } |
| 1857 | function en(n) { |
| 1858 | for (; n.length; ) n.pop().dispose() |
| 1859 | } |
| 1860 | return cn(Rn) |
| 1861 | })() |
| 1862 | return moduleExports |
| 1863 | }) |