mirror of
https://github.com/supabase/supabase.git
synced 2026-10-10 20:05:06 +03:00
* Move all studio files from /studio to /apps/studio. * Move studio specific prettier ignores. * Fix the ui references from studio. * Fix the css imports. * Fix all package.json issues. * Fix the prettier setup for the studio app. * Add .turbo folder to prettierignore. * Fix the github workflows.
1864 lines
56 KiB
JavaScript
1864 lines
56 KiB
JavaScript
'use strict'
|
|
/*!-----------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Version: 0.37.0(14a92401d7aff24ad84578a4c8b9a701ff533a84)
|
|
* Released under the MIT license
|
|
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
|
|
*-----------------------------------------------------------------------------*/
|
|
define('vs/language/html/htmlMode', ['require', 'require'], (require) => {
|
|
var moduleExports = (() => {
|
|
var nn = Object.create
|
|
var Q = Object.defineProperty
|
|
var tn = Object.getOwnPropertyDescriptor
|
|
var rn = Object.getOwnPropertyNames
|
|
var on = Object.getPrototypeOf,
|
|
sn = Object.prototype.hasOwnProperty
|
|
var an = ((n) =>
|
|
typeof require != 'undefined'
|
|
? require
|
|
: typeof Proxy != 'undefined'
|
|
? new Proxy(n, { get: (t, i) => (typeof require != 'undefined' ? require : t)[i] })
|
|
: n)(function (n) {
|
|
if (typeof require != 'undefined') return require.apply(this, arguments)
|
|
throw new Error('Dynamic require of "' + n + '" is not supported')
|
|
})
|
|
var un = (n, t) => () => (t || n((t = { exports: {} }).exports, t), t.exports),
|
|
dn = (n, t) => {
|
|
for (var i in t) Q(n, i, { get: t[i], enumerable: !0 })
|
|
},
|
|
q = (n, t, i, r) => {
|
|
if ((t && typeof t == 'object') || typeof t == 'function')
|
|
for (let e of rn(t))
|
|
!sn.call(n, e) &&
|
|
e !== i &&
|
|
Q(n, e, { get: () => t[e], enumerable: !(r = tn(t, e)) || r.enumerable })
|
|
return n
|
|
},
|
|
he = (n, t, i) => (q(n, t, 'default'), i && q(i, t, 'default')),
|
|
me = (n, t, i) => (
|
|
(i = n != null ? nn(on(n)) : {}),
|
|
q(t || !n || !n.__esModule ? Q(i, 'default', { value: n, enumerable: !0 }) : i, n)
|
|
),
|
|
cn = (n) => q(Q({}, '__esModule', { value: !0 }), n)
|
|
var Te = un((Ln, ve) => {
|
|
var ln = me(an('vs/editor/editor.api'))
|
|
ve.exports = ln
|
|
})
|
|
var Rn = {}
|
|
dn(Rn, {
|
|
CompletionAdapter: () => B,
|
|
DefinitionAdapter: () => ce,
|
|
DiagnosticsAdapter: () => de,
|
|
DocumentColorAdapter: () => ge,
|
|
DocumentFormattingEditProvider: () => H,
|
|
DocumentHighlightAdapter: () => S,
|
|
DocumentLinkAdapter: () => A,
|
|
DocumentRangeFormattingEditProvider: () => K,
|
|
DocumentSymbolAdapter: () => M,
|
|
FoldingRangeAdapter: () => U,
|
|
HoverAdapter: () => D,
|
|
ReferenceAdapter: () => le,
|
|
RenameAdapter: () => F,
|
|
SelectionRangeAdapter: () => j,
|
|
WorkerManager: () => b,
|
|
fromPosition: () => C,
|
|
fromRange: () => fe,
|
|
setupMode: () => Pn,
|
|
setupMode1: () => En,
|
|
toRange: () => y,
|
|
toTextEdit: () => L,
|
|
})
|
|
var d = {}
|
|
he(d, me(Te()))
|
|
var gn = 2 * 60 * 1e3,
|
|
b = class {
|
|
_defaults
|
|
_idleCheckInterval
|
|
_lastUsedTime
|
|
_configChangeListener
|
|
_worker
|
|
_client
|
|
constructor(t) {
|
|
;(this._defaults = t),
|
|
(this._worker = null),
|
|
(this._client = null),
|
|
(this._idleCheckInterval = window.setInterval(() => this._checkIfIdle(), 30 * 1e3)),
|
|
(this._lastUsedTime = 0),
|
|
(this._configChangeListener = this._defaults.onDidChange(() => this._stopWorker()))
|
|
}
|
|
_stopWorker() {
|
|
this._worker && (this._worker.dispose(), (this._worker = null)), (this._client = null)
|
|
}
|
|
dispose() {
|
|
clearInterval(this._idleCheckInterval),
|
|
this._configChangeListener.dispose(),
|
|
this._stopWorker()
|
|
}
|
|
_checkIfIdle() {
|
|
if (!this._worker) return
|
|
Date.now() - this._lastUsedTime > gn && this._stopWorker()
|
|
}
|
|
_getClient() {
|
|
return (
|
|
(this._lastUsedTime = Date.now()),
|
|
this._client ||
|
|
((this._worker = d.editor.createWebWorker({
|
|
moduleId: 'vs/language/html/htmlWorker',
|
|
createData: {
|
|
languageSettings: this._defaults.options,
|
|
languageId: this._defaults.languageId,
|
|
},
|
|
label: this._defaults.languageId,
|
|
})),
|
|
(this._client = this._worker.getProxy())),
|
|
this._client
|
|
)
|
|
}
|
|
getLanguageServiceWorker(...t) {
|
|
let i
|
|
return this._getClient()
|
|
.then((r) => {
|
|
i = r
|
|
})
|
|
.then((r) => {
|
|
if (this._worker) return this._worker.withSyncedResources(t)
|
|
})
|
|
.then((r) => i)
|
|
}
|
|
}
|
|
var ye
|
|
;(function (n) {
|
|
;(n.MIN_VALUE = -2147483648), (n.MAX_VALUE = 2147483647)
|
|
})(ye || (ye = {}))
|
|
var J
|
|
;(function (n) {
|
|
;(n.MIN_VALUE = 0), (n.MAX_VALUE = 2147483647)
|
|
})(J || (J = {}))
|
|
var x
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return (
|
|
r === Number.MAX_VALUE && (r = J.MAX_VALUE),
|
|
e === Number.MAX_VALUE && (e = J.MAX_VALUE),
|
|
{ line: r, character: e }
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.objectLiteral(e) && a.uinteger(e.line) && a.uinteger(e.character)
|
|
}
|
|
n.is = i
|
|
})(x || (x = {}))
|
|
var v
|
|
;(function (n) {
|
|
function t(r, e, o, s) {
|
|
if (a.uinteger(r) && a.uinteger(e) && a.uinteger(o) && a.uinteger(s))
|
|
return { start: x.create(r, e), end: x.create(o, s) }
|
|
if (x.is(r) && x.is(e)) return { start: r, end: e }
|
|
throw new Error(
|
|
'Range#create called with invalid arguments[' + r + ', ' + e + ', ' + o + ', ' + s + ']'
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.objectLiteral(e) && x.is(e.start) && x.is(e.end)
|
|
}
|
|
n.is = i
|
|
})(v || (v = {}))
|
|
var ie
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { uri: r, range: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && v.is(e.range) && (a.string(e.uri) || a.undefined(e.uri))
|
|
}
|
|
n.is = i
|
|
})(ie || (ie = {}))
|
|
var xe
|
|
;(function (n) {
|
|
function t(r, e, o, s) {
|
|
return { targetUri: r, targetRange: e, targetSelectionRange: o, originSelectionRange: s }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.defined(e) &&
|
|
v.is(e.targetRange) &&
|
|
a.string(e.targetUri) &&
|
|
(v.is(e.targetSelectionRange) || a.undefined(e.targetSelectionRange)) &&
|
|
(v.is(e.originSelectionRange) || a.undefined(e.originSelectionRange))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(xe || (xe = {}))
|
|
var oe
|
|
;(function (n) {
|
|
function t(r, e, o, s) {
|
|
return { red: r, green: e, blue: o, alpha: s }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.numberRange(e.red, 0, 1) &&
|
|
a.numberRange(e.green, 0, 1) &&
|
|
a.numberRange(e.blue, 0, 1) &&
|
|
a.numberRange(e.alpha, 0, 1)
|
|
)
|
|
}
|
|
n.is = i
|
|
})(oe || (oe = {}))
|
|
var ke
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { range: r, color: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return v.is(e.range) && oe.is(e.color)
|
|
}
|
|
n.is = i
|
|
})(ke || (ke = {}))
|
|
var Ie
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
return { label: r, textEdit: e, additionalTextEdits: o }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.string(e.label) &&
|
|
(a.undefined(e.textEdit) || _.is(e)) &&
|
|
(a.undefined(e.additionalTextEdits) || a.typedArray(e.additionalTextEdits, _.is))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(Ie || (Ie = {}))
|
|
var R
|
|
;(function (n) {
|
|
;(n.Comment = 'comment'), (n.Imports = 'imports'), (n.Region = 'region')
|
|
})(R || (R = {}))
|
|
var _e
|
|
;(function (n) {
|
|
function t(r, e, o, s, u) {
|
|
var l = { startLine: r, endLine: e }
|
|
return (
|
|
a.defined(o) && (l.startCharacter = o),
|
|
a.defined(s) && (l.endCharacter = s),
|
|
a.defined(u) && (l.kind = u),
|
|
l
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.uinteger(e.startLine) &&
|
|
a.uinteger(e.startLine) &&
|
|
(a.undefined(e.startCharacter) || a.uinteger(e.startCharacter)) &&
|
|
(a.undefined(e.endCharacter) || a.uinteger(e.endCharacter)) &&
|
|
(a.undefined(e.kind) || a.string(e.kind))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(_e || (_e = {}))
|
|
var se
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { location: r, message: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && ie.is(e.location) && a.string(e.message)
|
|
}
|
|
n.is = i
|
|
})(se || (se = {}))
|
|
var w
|
|
;(function (n) {
|
|
;(n.Error = 1), (n.Warning = 2), (n.Information = 3), (n.Hint = 4)
|
|
})(w || (w = {}))
|
|
var Ce
|
|
;(function (n) {
|
|
;(n.Unnecessary = 1), (n.Deprecated = 2)
|
|
})(Ce || (Ce = {}))
|
|
var be
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return r != null && a.string(r.href)
|
|
}
|
|
n.is = t
|
|
})(be || (be = {}))
|
|
var Y
|
|
;(function (n) {
|
|
function t(r, e, o, s, u, l) {
|
|
var f = { range: r, message: e }
|
|
return (
|
|
a.defined(o) && (f.severity = o),
|
|
a.defined(s) && (f.code = s),
|
|
a.defined(u) && (f.source = u),
|
|
a.defined(l) && (f.relatedInformation = l),
|
|
f
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e,
|
|
o = r
|
|
return (
|
|
a.defined(o) &&
|
|
v.is(o.range) &&
|
|
a.string(o.message) &&
|
|
(a.number(o.severity) || a.undefined(o.severity)) &&
|
|
(a.integer(o.code) || a.string(o.code) || a.undefined(o.code)) &&
|
|
(a.undefined(o.codeDescription) ||
|
|
a.string((e = o.codeDescription) === null || e === void 0 ? void 0 : e.href)) &&
|
|
(a.string(o.source) || a.undefined(o.source)) &&
|
|
(a.undefined(o.relatedInformation) || a.typedArray(o.relatedInformation, se.is))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(Y || (Y = {}))
|
|
var O
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
for (var o = [], s = 2; s < arguments.length; s++) o[s - 2] = arguments[s]
|
|
var u = { title: r, command: e }
|
|
return a.defined(o) && o.length > 0 && (u.arguments = o), u
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && a.string(e.title) && a.string(e.command)
|
|
}
|
|
n.is = i
|
|
})(O || (O = {}))
|
|
var _
|
|
;(function (n) {
|
|
function t(o, s) {
|
|
return { range: o, newText: s }
|
|
}
|
|
n.replace = t
|
|
function i(o, s) {
|
|
return { range: { start: o, end: o }, newText: s }
|
|
}
|
|
n.insert = i
|
|
function r(o) {
|
|
return { range: o, newText: '' }
|
|
}
|
|
n.del = r
|
|
function e(o) {
|
|
var s = o
|
|
return a.objectLiteral(s) && a.string(s.newText) && v.is(s.range)
|
|
}
|
|
n.is = e
|
|
})(_ || (_ = {}))
|
|
var P
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
var s = { label: r }
|
|
return e !== void 0 && (s.needsConfirmation = e), o !== void 0 && (s.description = o), s
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e !== void 0 &&
|
|
a.objectLiteral(e) &&
|
|
a.string(e.label) &&
|
|
(a.boolean(e.needsConfirmation) || e.needsConfirmation === void 0) &&
|
|
(a.string(e.description) || e.description === void 0)
|
|
)
|
|
}
|
|
n.is = i
|
|
})(P || (P = {}))
|
|
var T
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return typeof r == 'string'
|
|
}
|
|
n.is = t
|
|
})(T || (T = {}))
|
|
var I
|
|
;(function (n) {
|
|
function t(o, s, u) {
|
|
return { range: o, newText: s, annotationId: u }
|
|
}
|
|
n.replace = t
|
|
function i(o, s, u) {
|
|
return { range: { start: o, end: o }, newText: s, annotationId: u }
|
|
}
|
|
n.insert = i
|
|
function r(o, s) {
|
|
return { range: o, newText: '', annotationId: s }
|
|
}
|
|
n.del = r
|
|
function e(o) {
|
|
var s = o
|
|
return _.is(s) && (P.is(s.annotationId) || T.is(s.annotationId))
|
|
}
|
|
n.is = e
|
|
})(I || (I = {}))
|
|
var Z
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { textDocument: r, edits: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && ee.is(e.textDocument) && Array.isArray(e.edits)
|
|
}
|
|
n.is = i
|
|
})(Z || (Z = {}))
|
|
var N
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
var s = { kind: 'create', uri: r }
|
|
return (
|
|
e !== void 0 &&
|
|
(e.overwrite !== void 0 || e.ignoreIfExists !== void 0) &&
|
|
(s.options = e),
|
|
o !== void 0 && (s.annotationId = o),
|
|
s
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e &&
|
|
e.kind === 'create' &&
|
|
a.string(e.uri) &&
|
|
(e.options === void 0 ||
|
|
((e.options.overwrite === void 0 || a.boolean(e.options.overwrite)) &&
|
|
(e.options.ignoreIfExists === void 0 || a.boolean(e.options.ignoreIfExists)))) &&
|
|
(e.annotationId === void 0 || T.is(e.annotationId))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(N || (N = {}))
|
|
var V
|
|
;(function (n) {
|
|
function t(r, e, o, s) {
|
|
var u = { kind: 'rename', oldUri: r, newUri: e }
|
|
return (
|
|
o !== void 0 &&
|
|
(o.overwrite !== void 0 || o.ignoreIfExists !== void 0) &&
|
|
(u.options = o),
|
|
s !== void 0 && (u.annotationId = s),
|
|
u
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e &&
|
|
e.kind === 'rename' &&
|
|
a.string(e.oldUri) &&
|
|
a.string(e.newUri) &&
|
|
(e.options === void 0 ||
|
|
((e.options.overwrite === void 0 || a.boolean(e.options.overwrite)) &&
|
|
(e.options.ignoreIfExists === void 0 || a.boolean(e.options.ignoreIfExists)))) &&
|
|
(e.annotationId === void 0 || T.is(e.annotationId))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(V || (V = {}))
|
|
var z
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
var s = { kind: 'delete', uri: r }
|
|
return (
|
|
e !== void 0 &&
|
|
(e.recursive !== void 0 || e.ignoreIfNotExists !== void 0) &&
|
|
(s.options = e),
|
|
o !== void 0 && (s.annotationId = o),
|
|
s
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e &&
|
|
e.kind === 'delete' &&
|
|
a.string(e.uri) &&
|
|
(e.options === void 0 ||
|
|
((e.options.recursive === void 0 || a.boolean(e.options.recursive)) &&
|
|
(e.options.ignoreIfNotExists === void 0 ||
|
|
a.boolean(e.options.ignoreIfNotExists)))) &&
|
|
(e.annotationId === void 0 || T.is(e.annotationId))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(z || (z = {}))
|
|
var ae
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return (
|
|
r &&
|
|
(r.changes !== void 0 || r.documentChanges !== void 0) &&
|
|
(r.documentChanges === void 0 ||
|
|
r.documentChanges.every(function (e) {
|
|
return a.string(e.kind) ? N.is(e) || V.is(e) || z.is(e) : Z.is(e)
|
|
}))
|
|
)
|
|
}
|
|
n.is = t
|
|
})(ae || (ae = {}))
|
|
var G = (function () {
|
|
function n(t, i) {
|
|
;(this.edits = t), (this.changeAnnotations = i)
|
|
}
|
|
return (
|
|
(n.prototype.insert = function (t, i, r) {
|
|
var e, o
|
|
if (
|
|
(r === void 0
|
|
? (e = _.insert(t, i))
|
|
: T.is(r)
|
|
? ((o = r), (e = I.insert(t, i, r)))
|
|
: (this.assertChangeAnnotations(this.changeAnnotations),
|
|
(o = this.changeAnnotations.manage(r)),
|
|
(e = I.insert(t, i, o))),
|
|
this.edits.push(e),
|
|
o !== void 0)
|
|
)
|
|
return o
|
|
}),
|
|
(n.prototype.replace = function (t, i, r) {
|
|
var e, o
|
|
if (
|
|
(r === void 0
|
|
? (e = _.replace(t, i))
|
|
: T.is(r)
|
|
? ((o = r), (e = I.replace(t, i, r)))
|
|
: (this.assertChangeAnnotations(this.changeAnnotations),
|
|
(o = this.changeAnnotations.manage(r)),
|
|
(e = I.replace(t, i, o))),
|
|
this.edits.push(e),
|
|
o !== void 0)
|
|
)
|
|
return o
|
|
}),
|
|
(n.prototype.delete = function (t, i) {
|
|
var r, e
|
|
if (
|
|
(i === void 0
|
|
? (r = _.del(t))
|
|
: T.is(i)
|
|
? ((e = i), (r = I.del(t, i)))
|
|
: (this.assertChangeAnnotations(this.changeAnnotations),
|
|
(e = this.changeAnnotations.manage(i)),
|
|
(r = I.del(t, e))),
|
|
this.edits.push(r),
|
|
e !== void 0)
|
|
)
|
|
return e
|
|
}),
|
|
(n.prototype.add = function (t) {
|
|
this.edits.push(t)
|
|
}),
|
|
(n.prototype.all = function () {
|
|
return this.edits
|
|
}),
|
|
(n.prototype.clear = function () {
|
|
this.edits.splice(0, this.edits.length)
|
|
}),
|
|
(n.prototype.assertChangeAnnotations = function (t) {
|
|
if (t === void 0)
|
|
throw new Error('Text edit change is not configured to manage change annotations.')
|
|
}),
|
|
n
|
|
)
|
|
})(),
|
|
we = (function () {
|
|
function n(t) {
|
|
;(this._annotations = t === void 0 ? Object.create(null) : t),
|
|
(this._counter = 0),
|
|
(this._size = 0)
|
|
}
|
|
return (
|
|
(n.prototype.all = function () {
|
|
return this._annotations
|
|
}),
|
|
Object.defineProperty(n.prototype, 'size', {
|
|
get: function () {
|
|
return this._size
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
(n.prototype.manage = function (t, i) {
|
|
var r
|
|
if (
|
|
(T.is(t) ? (r = t) : ((r = this.nextId()), (i = t)), this._annotations[r] !== void 0)
|
|
)
|
|
throw new Error('Id ' + r + ' is already in use.')
|
|
if (i === void 0) throw new Error('No annotation provided for id ' + r)
|
|
return (this._annotations[r] = i), this._size++, r
|
|
}),
|
|
(n.prototype.nextId = function () {
|
|
return this._counter++, this._counter.toString()
|
|
}),
|
|
n
|
|
)
|
|
})(),
|
|
Hn = (function () {
|
|
function n(t) {
|
|
var i = this
|
|
;(this._textEditChanges = Object.create(null)),
|
|
t !== void 0
|
|
? ((this._workspaceEdit = t),
|
|
t.documentChanges
|
|
? ((this._changeAnnotations = new we(t.changeAnnotations)),
|
|
(t.changeAnnotations = this._changeAnnotations.all()),
|
|
t.documentChanges.forEach(function (r) {
|
|
if (Z.is(r)) {
|
|
var e = new G(r.edits, i._changeAnnotations)
|
|
i._textEditChanges[r.textDocument.uri] = e
|
|
}
|
|
}))
|
|
: t.changes &&
|
|
Object.keys(t.changes).forEach(function (r) {
|
|
var e = new G(t.changes[r])
|
|
i._textEditChanges[r] = e
|
|
}))
|
|
: (this._workspaceEdit = {})
|
|
}
|
|
return (
|
|
Object.defineProperty(n.prototype, 'edit', {
|
|
get: function () {
|
|
return (
|
|
this.initDocumentChanges(),
|
|
this._changeAnnotations !== void 0 &&
|
|
(this._changeAnnotations.size === 0
|
|
? (this._workspaceEdit.changeAnnotations = void 0)
|
|
: (this._workspaceEdit.changeAnnotations = this._changeAnnotations.all())),
|
|
this._workspaceEdit
|
|
)
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
(n.prototype.getTextEditChange = function (t) {
|
|
if (ee.is(t)) {
|
|
if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0))
|
|
throw new Error('Workspace edit is not configured for document changes.')
|
|
var i = { uri: t.uri, version: t.version },
|
|
r = this._textEditChanges[i.uri]
|
|
if (!r) {
|
|
var e = [],
|
|
o = { textDocument: i, edits: e }
|
|
this._workspaceEdit.documentChanges.push(o),
|
|
(r = new G(e, this._changeAnnotations)),
|
|
(this._textEditChanges[i.uri] = r)
|
|
}
|
|
return r
|
|
} else {
|
|
if ((this.initChanges(), this._workspaceEdit.changes === void 0))
|
|
throw new Error('Workspace edit is not configured for normal text edit changes.')
|
|
var r = this._textEditChanges[t]
|
|
if (!r) {
|
|
var e = []
|
|
;(this._workspaceEdit.changes[t] = e),
|
|
(r = new G(e)),
|
|
(this._textEditChanges[t] = r)
|
|
}
|
|
return r
|
|
}
|
|
}),
|
|
(n.prototype.initDocumentChanges = function () {
|
|
this._workspaceEdit.documentChanges === void 0 &&
|
|
this._workspaceEdit.changes === void 0 &&
|
|
((this._changeAnnotations = new we()),
|
|
(this._workspaceEdit.documentChanges = []),
|
|
(this._workspaceEdit.changeAnnotations = this._changeAnnotations.all()))
|
|
}),
|
|
(n.prototype.initChanges = function () {
|
|
this._workspaceEdit.documentChanges === void 0 &&
|
|
this._workspaceEdit.changes === void 0 &&
|
|
(this._workspaceEdit.changes = Object.create(null))
|
|
}),
|
|
(n.prototype.createFile = function (t, i, r) {
|
|
if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0))
|
|
throw new Error('Workspace edit is not configured for document changes.')
|
|
var e
|
|
P.is(i) || T.is(i) ? (e = i) : (r = i)
|
|
var o, s
|
|
if (
|
|
(e === void 0
|
|
? (o = N.create(t, r))
|
|
: ((s = T.is(e) ? e : this._changeAnnotations.manage(e)), (o = N.create(t, r, s))),
|
|
this._workspaceEdit.documentChanges.push(o),
|
|
s !== void 0)
|
|
)
|
|
return s
|
|
}),
|
|
(n.prototype.renameFile = function (t, i, r, e) {
|
|
if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0))
|
|
throw new Error('Workspace edit is not configured for document changes.')
|
|
var o
|
|
P.is(r) || T.is(r) ? (o = r) : (e = r)
|
|
var s, u
|
|
if (
|
|
(o === void 0
|
|
? (s = V.create(t, i, e))
|
|
: ((u = T.is(o) ? o : this._changeAnnotations.manage(o)),
|
|
(s = V.create(t, i, e, u))),
|
|
this._workspaceEdit.documentChanges.push(s),
|
|
u !== void 0)
|
|
)
|
|
return u
|
|
}),
|
|
(n.prototype.deleteFile = function (t, i, r) {
|
|
if ((this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0))
|
|
throw new Error('Workspace edit is not configured for document changes.')
|
|
var e
|
|
P.is(i) || T.is(i) ? (e = i) : (r = i)
|
|
var o, s
|
|
if (
|
|
(e === void 0
|
|
? (o = z.create(t, r))
|
|
: ((s = T.is(e) ? e : this._changeAnnotations.manage(e)), (o = z.create(t, r, s))),
|
|
this._workspaceEdit.documentChanges.push(o),
|
|
s !== void 0)
|
|
)
|
|
return s
|
|
}),
|
|
n
|
|
)
|
|
})()
|
|
var Ee
|
|
;(function (n) {
|
|
function t(r) {
|
|
return { uri: r }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && a.string(e.uri)
|
|
}
|
|
n.is = i
|
|
})(Ee || (Ee = {}))
|
|
var Pe
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { uri: r, version: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && a.string(e.uri) && a.integer(e.version)
|
|
}
|
|
n.is = i
|
|
})(Pe || (Pe = {}))
|
|
var ee
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { uri: r, version: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && a.string(e.uri) && (e.version === null || a.integer(e.version))
|
|
}
|
|
n.is = i
|
|
})(ee || (ee = {}))
|
|
var Re
|
|
;(function (n) {
|
|
function t(r, e, o, s) {
|
|
return { uri: r, languageId: e, version: o, text: s }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.defined(e) &&
|
|
a.string(e.uri) &&
|
|
a.string(e.languageId) &&
|
|
a.integer(e.version) &&
|
|
a.string(e.text)
|
|
)
|
|
}
|
|
n.is = i
|
|
})(Re || (Re = {}))
|
|
var X
|
|
;(function (n) {
|
|
;(n.PlainText = 'plaintext'), (n.Markdown = 'markdown')
|
|
})(X || (X = {}))
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return r === n.PlainText || r === n.Markdown
|
|
}
|
|
n.is = t
|
|
})(X || (X = {}))
|
|
var ue
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return a.objectLiteral(i) && X.is(r.kind) && a.string(r.value)
|
|
}
|
|
n.is = t
|
|
})(ue || (ue = {}))
|
|
var p
|
|
;(function (n) {
|
|
;(n.Text = 1),
|
|
(n.Method = 2),
|
|
(n.Function = 3),
|
|
(n.Constructor = 4),
|
|
(n.Field = 5),
|
|
(n.Variable = 6),
|
|
(n.Class = 7),
|
|
(n.Interface = 8),
|
|
(n.Module = 9),
|
|
(n.Property = 10),
|
|
(n.Unit = 11),
|
|
(n.Value = 12),
|
|
(n.Enum = 13),
|
|
(n.Keyword = 14),
|
|
(n.Snippet = 15),
|
|
(n.Color = 16),
|
|
(n.File = 17),
|
|
(n.Reference = 18),
|
|
(n.Folder = 19),
|
|
(n.EnumMember = 20),
|
|
(n.Constant = 21),
|
|
(n.Struct = 22),
|
|
(n.Event = 23),
|
|
(n.Operator = 24),
|
|
(n.TypeParameter = 25)
|
|
})(p || (p = {}))
|
|
var ne
|
|
;(function (n) {
|
|
;(n.PlainText = 1), (n.Snippet = 2)
|
|
})(ne || (ne = {}))
|
|
var We
|
|
;(function (n) {
|
|
n.Deprecated = 1
|
|
})(We || (We = {}))
|
|
var Le
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
return { newText: r, insert: e, replace: o }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return e && a.string(e.newText) && v.is(e.insert) && v.is(e.replace)
|
|
}
|
|
n.is = i
|
|
})(Le || (Le = {}))
|
|
var De
|
|
;(function (n) {
|
|
;(n.asIs = 1), (n.adjustIndentation = 2)
|
|
})(De || (De = {}))
|
|
var Se
|
|
;(function (n) {
|
|
function t(i) {
|
|
return { label: i }
|
|
}
|
|
n.create = t
|
|
})(Se || (Se = {}))
|
|
var Fe
|
|
;(function (n) {
|
|
function t(i, r) {
|
|
return { items: i || [], isIncomplete: !!r }
|
|
}
|
|
n.create = t
|
|
})(Fe || (Fe = {}))
|
|
var te
|
|
;(function (n) {
|
|
function t(r) {
|
|
return r.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&')
|
|
}
|
|
n.fromPlainText = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.string(e) || (a.objectLiteral(e) && a.string(e.language) && a.string(e.value))
|
|
}
|
|
n.is = i
|
|
})(te || (te = {}))
|
|
var Me
|
|
;(function (n) {
|
|
function t(i) {
|
|
var r = i
|
|
return (
|
|
!!r &&
|
|
a.objectLiteral(r) &&
|
|
(ue.is(r.contents) || te.is(r.contents) || a.typedArray(r.contents, te.is)) &&
|
|
(i.range === void 0 || v.is(i.range))
|
|
)
|
|
}
|
|
n.is = t
|
|
})(Me || (Me = {}))
|
|
var Ae
|
|
;(function (n) {
|
|
function t(i, r) {
|
|
return r ? { label: i, documentation: r } : { label: i }
|
|
}
|
|
n.create = t
|
|
})(Ae || (Ae = {}))
|
|
var He
|
|
;(function (n) {
|
|
function t(i, r) {
|
|
for (var e = [], o = 2; o < arguments.length; o++) e[o - 2] = arguments[o]
|
|
var s = { label: i }
|
|
return (
|
|
a.defined(r) && (s.documentation = r),
|
|
a.defined(e) ? (s.parameters = e) : (s.parameters = []),
|
|
s
|
|
)
|
|
}
|
|
n.create = t
|
|
})(He || (He = {}))
|
|
var W
|
|
;(function (n) {
|
|
;(n.Text = 1), (n.Read = 2), (n.Write = 3)
|
|
})(W || (W = {}))
|
|
var Ke
|
|
;(function (n) {
|
|
function t(i, r) {
|
|
var e = { range: i }
|
|
return a.number(r) && (e.kind = r), e
|
|
}
|
|
n.create = t
|
|
})(Ke || (Ke = {}))
|
|
var h
|
|
;(function (n) {
|
|
;(n.File = 1),
|
|
(n.Module = 2),
|
|
(n.Namespace = 3),
|
|
(n.Package = 4),
|
|
(n.Class = 5),
|
|
(n.Method = 6),
|
|
(n.Property = 7),
|
|
(n.Field = 8),
|
|
(n.Constructor = 9),
|
|
(n.Enum = 10),
|
|
(n.Interface = 11),
|
|
(n.Function = 12),
|
|
(n.Variable = 13),
|
|
(n.Constant = 14),
|
|
(n.String = 15),
|
|
(n.Number = 16),
|
|
(n.Boolean = 17),
|
|
(n.Array = 18),
|
|
(n.Object = 19),
|
|
(n.Key = 20),
|
|
(n.Null = 21),
|
|
(n.EnumMember = 22),
|
|
(n.Struct = 23),
|
|
(n.Event = 24),
|
|
(n.Operator = 25),
|
|
(n.TypeParameter = 26)
|
|
})(h || (h = {}))
|
|
var Ue
|
|
;(function (n) {
|
|
n.Deprecated = 1
|
|
})(Ue || (Ue = {}))
|
|
var je
|
|
;(function (n) {
|
|
function t(i, r, e, o, s) {
|
|
var u = { name: i, kind: r, location: { uri: o, range: e } }
|
|
return s && (u.containerName = s), u
|
|
}
|
|
n.create = t
|
|
})(je || (je = {}))
|
|
var Oe
|
|
;(function (n) {
|
|
function t(r, e, o, s, u, l) {
|
|
var f = { name: r, detail: e, kind: o, range: s, selectionRange: u }
|
|
return l !== void 0 && (f.children = l), f
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e &&
|
|
a.string(e.name) &&
|
|
a.number(e.kind) &&
|
|
v.is(e.range) &&
|
|
v.is(e.selectionRange) &&
|
|
(e.detail === void 0 || a.string(e.detail)) &&
|
|
(e.deprecated === void 0 || a.boolean(e.deprecated)) &&
|
|
(e.children === void 0 || Array.isArray(e.children)) &&
|
|
(e.tags === void 0 || Array.isArray(e.tags))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(Oe || (Oe = {}))
|
|
var Ne
|
|
;(function (n) {
|
|
;(n.Empty = ''),
|
|
(n.QuickFix = 'quickfix'),
|
|
(n.Refactor = 'refactor'),
|
|
(n.RefactorExtract = 'refactor.extract'),
|
|
(n.RefactorInline = 'refactor.inline'),
|
|
(n.RefactorRewrite = 'refactor.rewrite'),
|
|
(n.Source = 'source'),
|
|
(n.SourceOrganizeImports = 'source.organizeImports'),
|
|
(n.SourceFixAll = 'source.fixAll')
|
|
})(Ne || (Ne = {}))
|
|
var Ve
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
var o = { diagnostics: r }
|
|
return e != null && (o.only = e), o
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
a.defined(e) &&
|
|
a.typedArray(e.diagnostics, Y.is) &&
|
|
(e.only === void 0 || a.typedArray(e.only, a.string))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(Ve || (Ve = {}))
|
|
var ze
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
var s = { title: r },
|
|
u = !0
|
|
return (
|
|
typeof e == 'string'
|
|
? ((u = !1), (s.kind = e))
|
|
: O.is(e)
|
|
? (s.command = e)
|
|
: (s.edit = e),
|
|
u && o !== void 0 && (s.kind = o),
|
|
s
|
|
)
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return (
|
|
e &&
|
|
a.string(e.title) &&
|
|
(e.diagnostics === void 0 || a.typedArray(e.diagnostics, Y.is)) &&
|
|
(e.kind === void 0 || a.string(e.kind)) &&
|
|
(e.edit !== void 0 || e.command !== void 0) &&
|
|
(e.command === void 0 || O.is(e.command)) &&
|
|
(e.isPreferred === void 0 || a.boolean(e.isPreferred)) &&
|
|
(e.edit === void 0 || ae.is(e.edit))
|
|
)
|
|
}
|
|
n.is = i
|
|
})(ze || (ze = {}))
|
|
var Xe
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
var o = { range: r }
|
|
return a.defined(e) && (o.data = e), o
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && v.is(e.range) && (a.undefined(e.command) || O.is(e.command))
|
|
}
|
|
n.is = i
|
|
})(Xe || (Xe = {}))
|
|
var Be
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { tabSize: r, insertSpaces: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && a.uinteger(e.tabSize) && a.boolean(e.insertSpaces)
|
|
}
|
|
n.is = i
|
|
})(Be || (Be = {}))
|
|
var $e
|
|
;(function (n) {
|
|
function t(r, e, o) {
|
|
return { range: r, target: e, data: o }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return a.defined(e) && v.is(e.range) && (a.undefined(e.target) || a.string(e.target))
|
|
}
|
|
n.is = i
|
|
})($e || ($e = {}))
|
|
var qe
|
|
;(function (n) {
|
|
function t(r, e) {
|
|
return { range: r, parent: e }
|
|
}
|
|
n.create = t
|
|
function i(r) {
|
|
var e = r
|
|
return e !== void 0 && v.is(e.range) && (e.parent === void 0 || n.is(e.parent))
|
|
}
|
|
n.is = i
|
|
})(qe || (qe = {}))
|
|
var Qe
|
|
;(function (n) {
|
|
function t(o, s, u, l) {
|
|
return new fn(o, s, u, l)
|
|
}
|
|
n.create = t
|
|
function i(o) {
|
|
var s = o
|
|
return !!(
|
|
a.defined(s) &&
|
|
a.string(s.uri) &&
|
|
(a.undefined(s.languageId) || a.string(s.languageId)) &&
|
|
a.uinteger(s.lineCount) &&
|
|
a.func(s.getText) &&
|
|
a.func(s.positionAt) &&
|
|
a.func(s.offsetAt)
|
|
)
|
|
}
|
|
n.is = i
|
|
function r(o, s) {
|
|
for (
|
|
var u = o.getText(),
|
|
l = e(s, function (E, $) {
|
|
var pe = E.range.start.line - $.range.start.line
|
|
return pe === 0 ? E.range.start.character - $.range.start.character : pe
|
|
}),
|
|
f = u.length,
|
|
g = l.length - 1;
|
|
g >= 0;
|
|
g--
|
|
) {
|
|
var m = l[g],
|
|
k = o.offsetAt(m.range.start),
|
|
c = o.offsetAt(m.range.end)
|
|
if (c <= f) u = u.substring(0, k) + m.newText + u.substring(c, u.length)
|
|
else throw new Error('Overlapping edit')
|
|
f = k
|
|
}
|
|
return u
|
|
}
|
|
n.applyEdits = r
|
|
function e(o, s) {
|
|
if (o.length <= 1) return o
|
|
var u = (o.length / 2) | 0,
|
|
l = o.slice(0, u),
|
|
f = o.slice(u)
|
|
e(l, s), e(f, s)
|
|
for (var g = 0, m = 0, k = 0; g < l.length && m < f.length; ) {
|
|
var c = s(l[g], f[m])
|
|
c <= 0 ? (o[k++] = l[g++]) : (o[k++] = f[m++])
|
|
}
|
|
for (; g < l.length; ) o[k++] = l[g++]
|
|
for (; m < f.length; ) o[k++] = f[m++]
|
|
return o
|
|
}
|
|
})(Qe || (Qe = {}))
|
|
var fn = (function () {
|
|
function n(t, i, r, e) {
|
|
;(this._uri = t),
|
|
(this._languageId = i),
|
|
(this._version = r),
|
|
(this._content = e),
|
|
(this._lineOffsets = void 0)
|
|
}
|
|
return (
|
|
Object.defineProperty(n.prototype, 'uri', {
|
|
get: function () {
|
|
return this._uri
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
Object.defineProperty(n.prototype, 'languageId', {
|
|
get: function () {
|
|
return this._languageId
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
Object.defineProperty(n.prototype, 'version', {
|
|
get: function () {
|
|
return this._version
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
(n.prototype.getText = function (t) {
|
|
if (t) {
|
|
var i = this.offsetAt(t.start),
|
|
r = this.offsetAt(t.end)
|
|
return this._content.substring(i, r)
|
|
}
|
|
return this._content
|
|
}),
|
|
(n.prototype.update = function (t, i) {
|
|
;(this._content = t.text), (this._version = i), (this._lineOffsets = void 0)
|
|
}),
|
|
(n.prototype.getLineOffsets = function () {
|
|
if (this._lineOffsets === void 0) {
|
|
for (var t = [], i = this._content, r = !0, e = 0; e < i.length; e++) {
|
|
r && (t.push(e), (r = !1))
|
|
var o = i.charAt(e)
|
|
;(r =
|
|
o === '\r' ||
|
|
o ===
|
|
`
|
|
`),
|
|
o === '\r' &&
|
|
e + 1 < i.length &&
|
|
i.charAt(e + 1) ===
|
|
`
|
|
` &&
|
|
e++
|
|
}
|
|
r && i.length > 0 && t.push(i.length), (this._lineOffsets = t)
|
|
}
|
|
return this._lineOffsets
|
|
}),
|
|
(n.prototype.positionAt = function (t) {
|
|
t = Math.max(Math.min(t, this._content.length), 0)
|
|
var i = this.getLineOffsets(),
|
|
r = 0,
|
|
e = i.length
|
|
if (e === 0) return x.create(0, t)
|
|
for (; r < e; ) {
|
|
var o = Math.floor((r + e) / 2)
|
|
i[o] > t ? (e = o) : (r = o + 1)
|
|
}
|
|
var s = r - 1
|
|
return x.create(s, t - i[s])
|
|
}),
|
|
(n.prototype.offsetAt = function (t) {
|
|
var i = this.getLineOffsets()
|
|
if (t.line >= i.length) return this._content.length
|
|
if (t.line < 0) return 0
|
|
var r = i[t.line],
|
|
e = t.line + 1 < i.length ? i[t.line + 1] : this._content.length
|
|
return Math.max(Math.min(r + t.character, e), r)
|
|
}),
|
|
Object.defineProperty(n.prototype, 'lineCount', {
|
|
get: function () {
|
|
return this.getLineOffsets().length
|
|
},
|
|
enumerable: !1,
|
|
configurable: !0,
|
|
}),
|
|
n
|
|
)
|
|
})(),
|
|
a
|
|
;(function (n) {
|
|
var t = Object.prototype.toString
|
|
function i(c) {
|
|
return typeof c < 'u'
|
|
}
|
|
n.defined = i
|
|
function r(c) {
|
|
return typeof c > 'u'
|
|
}
|
|
n.undefined = r
|
|
function e(c) {
|
|
return c === !0 || c === !1
|
|
}
|
|
n.boolean = e
|
|
function o(c) {
|
|
return t.call(c) === '[object String]'
|
|
}
|
|
n.string = o
|
|
function s(c) {
|
|
return t.call(c) === '[object Number]'
|
|
}
|
|
n.number = s
|
|
function u(c, E, $) {
|
|
return t.call(c) === '[object Number]' && E <= c && c <= $
|
|
}
|
|
n.numberRange = u
|
|
function l(c) {
|
|
return t.call(c) === '[object Number]' && -2147483648 <= c && c <= 2147483647
|
|
}
|
|
n.integer = l
|
|
function f(c) {
|
|
return t.call(c) === '[object Number]' && 0 <= c && c <= 2147483647
|
|
}
|
|
n.uinteger = f
|
|
function g(c) {
|
|
return t.call(c) === '[object Function]'
|
|
}
|
|
n.func = g
|
|
function m(c) {
|
|
return c !== null && typeof c == 'object'
|
|
}
|
|
n.objectLiteral = m
|
|
function k(c, E) {
|
|
return Array.isArray(c) && c.every(E)
|
|
}
|
|
n.typedArray = k
|
|
})(a || (a = {}))
|
|
var de = class {
|
|
constructor(t, i, r) {
|
|
this._languageId = t
|
|
this._worker = i
|
|
let e = (s) => {
|
|
let u = s.getLanguageId()
|
|
if (u !== this._languageId) return
|
|
let l
|
|
;(this._listener[s.uri.toString()] = s.onDidChangeContent(() => {
|
|
window.clearTimeout(l), (l = window.setTimeout(() => this._doValidate(s.uri, u), 500))
|
|
})),
|
|
this._doValidate(s.uri, u)
|
|
},
|
|
o = (s) => {
|
|
d.editor.setModelMarkers(s, this._languageId, [])
|
|
let u = s.uri.toString(),
|
|
l = this._listener[u]
|
|
l && (l.dispose(), delete this._listener[u])
|
|
}
|
|
this._disposables.push(d.editor.onDidCreateModel(e)),
|
|
this._disposables.push(d.editor.onWillDisposeModel(o)),
|
|
this._disposables.push(
|
|
d.editor.onDidChangeModelLanguage((s) => {
|
|
o(s.model), e(s.model)
|
|
})
|
|
),
|
|
this._disposables.push(
|
|
r((s) => {
|
|
d.editor.getModels().forEach((u) => {
|
|
u.getLanguageId() === this._languageId && (o(u), e(u))
|
|
})
|
|
})
|
|
),
|
|
this._disposables.push({
|
|
dispose: () => {
|
|
d.editor.getModels().forEach(o)
|
|
for (let s in this._listener) this._listener[s].dispose()
|
|
},
|
|
}),
|
|
d.editor.getModels().forEach(e)
|
|
}
|
|
_disposables = []
|
|
_listener = Object.create(null)
|
|
dispose() {
|
|
this._disposables.forEach((t) => t && t.dispose()), (this._disposables.length = 0)
|
|
}
|
|
_doValidate(t, i) {
|
|
this._worker(t)
|
|
.then((r) => r.doValidation(t.toString()))
|
|
.then((r) => {
|
|
let e = r.map((s) => mn(t, s)),
|
|
o = d.editor.getModel(t)
|
|
o && o.getLanguageId() === i && d.editor.setModelMarkers(o, i, e)
|
|
})
|
|
.then(void 0, (r) => {
|
|
console.error(r)
|
|
})
|
|
}
|
|
}
|
|
function hn(n) {
|
|
switch (n) {
|
|
case w.Error:
|
|
return d.MarkerSeverity.Error
|
|
case w.Warning:
|
|
return d.MarkerSeverity.Warning
|
|
case w.Information:
|
|
return d.MarkerSeverity.Info
|
|
case w.Hint:
|
|
return d.MarkerSeverity.Hint
|
|
default:
|
|
return d.MarkerSeverity.Info
|
|
}
|
|
}
|
|
function mn(n, t) {
|
|
let i = typeof t.code == 'number' ? String(t.code) : t.code
|
|
return {
|
|
severity: hn(t.severity),
|
|
startLineNumber: t.range.start.line + 1,
|
|
startColumn: t.range.start.character + 1,
|
|
endLineNumber: t.range.end.line + 1,
|
|
endColumn: t.range.end.character + 1,
|
|
message: t.message,
|
|
code: i,
|
|
source: t.source,
|
|
}
|
|
}
|
|
var B = class {
|
|
constructor(t, i) {
|
|
this._worker = t
|
|
this._triggerCharacters = i
|
|
}
|
|
get triggerCharacters() {
|
|
return this._triggerCharacters
|
|
}
|
|
provideCompletionItems(t, i, r, e) {
|
|
let o = t.uri
|
|
return this._worker(o)
|
|
.then((s) => s.doComplete(o.toString(), C(i)))
|
|
.then((s) => {
|
|
if (!s) return
|
|
let u = t.getWordUntilPosition(i),
|
|
l = new d.Range(i.lineNumber, u.startColumn, i.lineNumber, u.endColumn),
|
|
f = s.items.map((g) => {
|
|
let m = {
|
|
label: g.label,
|
|
insertText: g.insertText || g.label,
|
|
sortText: g.sortText,
|
|
filterText: g.filterText,
|
|
documentation: g.documentation,
|
|
detail: g.detail,
|
|
command: yn(g.command),
|
|
range: l,
|
|
kind: Tn(g.kind),
|
|
}
|
|
return (
|
|
g.textEdit &&
|
|
(vn(g.textEdit)
|
|
? (m.range = { insert: y(g.textEdit.insert), replace: y(g.textEdit.replace) })
|
|
: (m.range = y(g.textEdit.range)),
|
|
(m.insertText = g.textEdit.newText)),
|
|
g.additionalTextEdits && (m.additionalTextEdits = g.additionalTextEdits.map(L)),
|
|
g.insertTextFormat === ne.Snippet &&
|
|
(m.insertTextRules = d.languages.CompletionItemInsertTextRule.InsertAsSnippet),
|
|
m
|
|
)
|
|
})
|
|
return { isIncomplete: s.isIncomplete, suggestions: f }
|
|
})
|
|
}
|
|
}
|
|
function C(n) {
|
|
if (!!n) return { character: n.column - 1, line: n.lineNumber - 1 }
|
|
}
|
|
function fe(n) {
|
|
if (!!n)
|
|
return {
|
|
start: { line: n.startLineNumber - 1, character: n.startColumn - 1 },
|
|
end: { line: n.endLineNumber - 1, character: n.endColumn - 1 },
|
|
}
|
|
}
|
|
function y(n) {
|
|
if (!!n)
|
|
return new d.Range(
|
|
n.start.line + 1,
|
|
n.start.character + 1,
|
|
n.end.line + 1,
|
|
n.end.character + 1
|
|
)
|
|
}
|
|
function vn(n) {
|
|
return typeof n.insert < 'u' && typeof n.replace < 'u'
|
|
}
|
|
function Tn(n) {
|
|
let t = d.languages.CompletionItemKind
|
|
switch (n) {
|
|
case p.Text:
|
|
return t.Text
|
|
case p.Method:
|
|
return t.Method
|
|
case p.Function:
|
|
return t.Function
|
|
case p.Constructor:
|
|
return t.Constructor
|
|
case p.Field:
|
|
return t.Field
|
|
case p.Variable:
|
|
return t.Variable
|
|
case p.Class:
|
|
return t.Class
|
|
case p.Interface:
|
|
return t.Interface
|
|
case p.Module:
|
|
return t.Module
|
|
case p.Property:
|
|
return t.Property
|
|
case p.Unit:
|
|
return t.Unit
|
|
case p.Value:
|
|
return t.Value
|
|
case p.Enum:
|
|
return t.Enum
|
|
case p.Keyword:
|
|
return t.Keyword
|
|
case p.Snippet:
|
|
return t.Snippet
|
|
case p.Color:
|
|
return t.Color
|
|
case p.File:
|
|
return t.File
|
|
case p.Reference:
|
|
return t.Reference
|
|
}
|
|
return t.Property
|
|
}
|
|
function L(n) {
|
|
if (!!n) return { range: y(n.range), text: n.newText }
|
|
}
|
|
function yn(n) {
|
|
return n && n.command === 'editor.action.triggerSuggest'
|
|
? { id: n.command, title: n.title, arguments: n.arguments }
|
|
: void 0
|
|
}
|
|
var D = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideHover(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.doHover(e.toString(), C(i)))
|
|
.then((o) => {
|
|
if (!!o) return { range: y(o.range), contents: kn(o.contents) }
|
|
})
|
|
}
|
|
}
|
|
function xn(n) {
|
|
return n && typeof n == 'object' && typeof n.kind == 'string'
|
|
}
|
|
function Ge(n) {
|
|
return typeof n == 'string'
|
|
? { value: n }
|
|
: xn(n)
|
|
? n.kind === 'plaintext'
|
|
? { value: n.value.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&') }
|
|
: { value: n.value }
|
|
: {
|
|
value:
|
|
'```' +
|
|
n.language +
|
|
`
|
|
` +
|
|
n.value +
|
|
'\n```\n',
|
|
}
|
|
}
|
|
function kn(n) {
|
|
if (!!n) return Array.isArray(n) ? n.map(Ge) : [Ge(n)]
|
|
}
|
|
var S = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideDocumentHighlights(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.findDocumentHighlights(e.toString(), C(i)))
|
|
.then((o) => {
|
|
if (!!o) return o.map((s) => ({ range: y(s.range), kind: In(s.kind) }))
|
|
})
|
|
}
|
|
}
|
|
function In(n) {
|
|
switch (n) {
|
|
case W.Read:
|
|
return d.languages.DocumentHighlightKind.Read
|
|
case W.Write:
|
|
return d.languages.DocumentHighlightKind.Write
|
|
case W.Text:
|
|
return d.languages.DocumentHighlightKind.Text
|
|
}
|
|
return d.languages.DocumentHighlightKind.Text
|
|
}
|
|
var ce = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideDefinition(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.findDefinition(e.toString(), C(i)))
|
|
.then((o) => {
|
|
if (!!o) return [Je(o)]
|
|
})
|
|
}
|
|
}
|
|
function Je(n) {
|
|
return { uri: d.Uri.parse(n.uri), range: y(n.range) }
|
|
}
|
|
var le = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideReferences(t, i, r, e) {
|
|
let o = t.uri
|
|
return this._worker(o)
|
|
.then((s) => s.findReferences(o.toString(), C(i)))
|
|
.then((s) => {
|
|
if (!!s) return s.map(Je)
|
|
})
|
|
}
|
|
},
|
|
F = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideRenameEdits(t, i, r, e) {
|
|
let o = t.uri
|
|
return this._worker(o)
|
|
.then((s) => s.doRename(o.toString(), C(i), r))
|
|
.then((s) => _n(s))
|
|
}
|
|
}
|
|
function _n(n) {
|
|
if (!n || !n.changes) return
|
|
let t = []
|
|
for (let i in n.changes) {
|
|
let r = d.Uri.parse(i)
|
|
for (let e of n.changes[i])
|
|
t.push({
|
|
resource: r,
|
|
versionId: void 0,
|
|
textEdit: { range: y(e.range), text: e.newText },
|
|
})
|
|
}
|
|
return { edits: t }
|
|
}
|
|
var M = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideDocumentSymbols(t, i) {
|
|
let r = t.uri
|
|
return this._worker(r)
|
|
.then((e) => e.findDocumentSymbols(r.toString()))
|
|
.then((e) => {
|
|
if (!!e)
|
|
return e.map((o) => ({
|
|
name: o.name,
|
|
detail: '',
|
|
containerName: o.containerName,
|
|
kind: Cn(o.kind),
|
|
range: y(o.location.range),
|
|
selectionRange: y(o.location.range),
|
|
tags: [],
|
|
}))
|
|
})
|
|
}
|
|
}
|
|
function Cn(n) {
|
|
let t = d.languages.SymbolKind
|
|
switch (n) {
|
|
case h.File:
|
|
return t.Array
|
|
case h.Module:
|
|
return t.Module
|
|
case h.Namespace:
|
|
return t.Namespace
|
|
case h.Package:
|
|
return t.Package
|
|
case h.Class:
|
|
return t.Class
|
|
case h.Method:
|
|
return t.Method
|
|
case h.Property:
|
|
return t.Property
|
|
case h.Field:
|
|
return t.Field
|
|
case h.Constructor:
|
|
return t.Constructor
|
|
case h.Enum:
|
|
return t.Enum
|
|
case h.Interface:
|
|
return t.Interface
|
|
case h.Function:
|
|
return t.Function
|
|
case h.Variable:
|
|
return t.Variable
|
|
case h.Constant:
|
|
return t.Constant
|
|
case h.String:
|
|
return t.String
|
|
case h.Number:
|
|
return t.Number
|
|
case h.Boolean:
|
|
return t.Boolean
|
|
case h.Array:
|
|
return t.Array
|
|
}
|
|
return t.Function
|
|
}
|
|
var A = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideLinks(t, i) {
|
|
let r = t.uri
|
|
return this._worker(r)
|
|
.then((e) => e.findDocumentLinks(r.toString()))
|
|
.then((e) => {
|
|
if (!!e) return { links: e.map((o) => ({ range: y(o.range), url: o.target })) }
|
|
})
|
|
}
|
|
},
|
|
H = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideDocumentFormattingEdits(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e).then((o) =>
|
|
o.format(e.toString(), null, Ye(i)).then((s) => {
|
|
if (!(!s || s.length === 0)) return s.map(L)
|
|
})
|
|
)
|
|
}
|
|
},
|
|
K = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
canFormatMultipleRanges = !1
|
|
provideDocumentRangeFormattingEdits(t, i, r, e) {
|
|
let o = t.uri
|
|
return this._worker(o).then((s) =>
|
|
s.format(o.toString(), fe(i), Ye(r)).then((u) => {
|
|
if (!(!u || u.length === 0)) return u.map(L)
|
|
})
|
|
)
|
|
}
|
|
}
|
|
function Ye(n) {
|
|
return { tabSize: n.tabSize, insertSpaces: n.insertSpaces }
|
|
}
|
|
var ge = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideDocumentColors(t, i) {
|
|
let r = t.uri
|
|
return this._worker(r)
|
|
.then((e) => e.findDocumentColors(r.toString()))
|
|
.then((e) => {
|
|
if (!!e) return e.map((o) => ({ color: o.color, range: y(o.range) }))
|
|
})
|
|
}
|
|
provideColorPresentations(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.getColorPresentations(e.toString(), i.color, fe(i.range)))
|
|
.then((o) => {
|
|
if (!!o)
|
|
return o.map((s) => {
|
|
let u = { label: s.label }
|
|
return (
|
|
s.textEdit && (u.textEdit = L(s.textEdit)),
|
|
s.additionalTextEdits && (u.additionalTextEdits = s.additionalTextEdits.map(L)),
|
|
u
|
|
)
|
|
})
|
|
})
|
|
}
|
|
},
|
|
U = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideFoldingRanges(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.getFoldingRanges(e.toString(), i))
|
|
.then((o) => {
|
|
if (!!o)
|
|
return o.map((s) => {
|
|
let u = { start: s.startLine + 1, end: s.endLine + 1 }
|
|
return typeof s.kind < 'u' && (u.kind = bn(s.kind)), u
|
|
})
|
|
})
|
|
}
|
|
}
|
|
function bn(n) {
|
|
switch (n) {
|
|
case R.Comment:
|
|
return d.languages.FoldingRangeKind.Comment
|
|
case R.Imports:
|
|
return d.languages.FoldingRangeKind.Imports
|
|
case R.Region:
|
|
return d.languages.FoldingRangeKind.Region
|
|
}
|
|
}
|
|
var j = class {
|
|
constructor(t) {
|
|
this._worker = t
|
|
}
|
|
provideSelectionRanges(t, i, r) {
|
|
let e = t.uri
|
|
return this._worker(e)
|
|
.then((o) => o.getSelectionRanges(e.toString(), i.map(C)))
|
|
.then((o) => {
|
|
if (!!o)
|
|
return o.map((s) => {
|
|
let u = []
|
|
for (; s; ) u.push({ range: y(s.range) }), (s = s.parent)
|
|
return u
|
|
})
|
|
})
|
|
}
|
|
}
|
|
var re = class extends B {
|
|
constructor(t) {
|
|
super(t, ['.', ':', '<', '"', '=', '/'])
|
|
}
|
|
}
|
|
function En(n) {
|
|
let t = new b(n),
|
|
i = (...e) => t.getLanguageServiceWorker(...e),
|
|
r = n.languageId
|
|
d.languages.registerCompletionItemProvider(r, new re(i)),
|
|
d.languages.registerHoverProvider(r, new D(i)),
|
|
d.languages.registerDocumentHighlightProvider(r, new S(i)),
|
|
d.languages.registerLinkProvider(r, new A(i)),
|
|
d.languages.registerFoldingRangeProvider(r, new U(i)),
|
|
d.languages.registerDocumentSymbolProvider(r, new M(i)),
|
|
d.languages.registerSelectionRangeProvider(r, new j(i)),
|
|
d.languages.registerRenameProvider(r, new F(i)),
|
|
r === 'html' &&
|
|
(d.languages.registerDocumentFormattingEditProvider(r, new H(i)),
|
|
d.languages.registerDocumentRangeFormattingEditProvider(r, new K(i)))
|
|
}
|
|
function Pn(n) {
|
|
let t = [],
|
|
i = [],
|
|
r = new b(n)
|
|
t.push(r)
|
|
let e = (...s) => r.getLanguageServiceWorker(...s)
|
|
function o() {
|
|
let { languageId: s, modeConfiguration: u } = n
|
|
en(i),
|
|
u.completionItems && i.push(d.languages.registerCompletionItemProvider(s, new re(e))),
|
|
u.hovers && i.push(d.languages.registerHoverProvider(s, new D(e))),
|
|
u.documentHighlights &&
|
|
i.push(d.languages.registerDocumentHighlightProvider(s, new S(e))),
|
|
u.links && i.push(d.languages.registerLinkProvider(s, new A(e))),
|
|
u.documentSymbols && i.push(d.languages.registerDocumentSymbolProvider(s, new M(e))),
|
|
u.rename && i.push(d.languages.registerRenameProvider(s, new F(e))),
|
|
u.foldingRanges && i.push(d.languages.registerFoldingRangeProvider(s, new U(e))),
|
|
u.selectionRanges && i.push(d.languages.registerSelectionRangeProvider(s, new j(e))),
|
|
u.documentFormattingEdits &&
|
|
i.push(d.languages.registerDocumentFormattingEditProvider(s, new H(e))),
|
|
u.documentRangeFormattingEdits &&
|
|
i.push(d.languages.registerDocumentRangeFormattingEditProvider(s, new K(e)))
|
|
}
|
|
return o(), t.push(Ze(i)), Ze(t)
|
|
}
|
|
function Ze(n) {
|
|
return { dispose: () => en(n) }
|
|
}
|
|
function en(n) {
|
|
for (; n.length; ) n.pop().dispose()
|
|
}
|
|
return cn(Rn)
|
|
})()
|
|
return moduleExports
|
|
})
|