var Po = Object.defineProperty; var Io = (e, t, n) => t in e ? Po(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n; var zt = (e, t, n) => (Io(e, typeof t != "symbol" ? t + "" : t, n), n); class Lo { constructor() { this.listeners = [], this.unexpectedErrorHandler = function(t) { setTimeout(() => { throw t.stack ? new Error(t.message + ` ` + t.stack) : t; }, 0); }; } emit(t) { this.listeners.forEach((n) => { n(t); }); } onUnexpectedError(t) { this.unexpectedErrorHandler(t), this.emit(t); } onUnexpectedExternalError(t) { this.unexpectedErrorHandler(t); } } const To = new Lo(); function Wo(e) { Oo(e) || To.onUnexpectedError(e); } function wi(e) { if (e instanceof Error) { let { name: t, message: n } = e; const r = e.stacktrace || e.stack; return { $isError: !0, name: t, message: n, stack: r }; } return e; } const or = "Canceled"; function Oo(e) { return e instanceof Vo ? !0 : e instanceof Error && e.name === or && e.message === or; } class Vo extends Error { constructor() { super(or), this.name = this.message; } } function Uo(e) { const t = this; let n = !1, r; return function() { return n || (n = !0, r = e.apply(t, arguments)), r; }; } var lr; (function(e) { function t(C) { return C && typeof C == "object" && typeof C[Symbol.iterator] == "function"; } e.is = t; const n = Object.freeze([]); function r() { return n; } e.empty = r; function* i(C) { yield C; } e.single = i; function a(C) { return C || n; } e.from = a; function o(C) { return !C || C[Symbol.iterator]().next().done === !0; } e.isEmpty = o; function l(C) { return C[Symbol.iterator]().next().value; } e.first = l; function h(C, R) { for (const k of C) if (R(k)) return !0; return !1; } e.some = h; function c(C, R) { for (const k of C) if (R(k)) return k; } e.find = c; function* d(C, R) { for (const k of C) R(k) && (yield k); } e.filter = d; function* p(C, R) { let k = 0; for (const F of C) yield R(F, k++); } e.map = p; function* f(...C) { for (const R of C) for (const k of R) yield k; } e.concat = f; function* g(C) { for (const R of C) for (const k of R) yield k; } e.concatNested = g; function w(C, R, k) { let F = k; for (const P of C) F = R(F, P); return F; } e.reduce = w; function* b(C, R, k = C.length) { for (R < 0 && (R += C.length), k < 0 ? k += C.length : k > C.length && (k = C.length); R < k; R++) yield C[R]; } e.slice = b; function y(C, R = Number.POSITIVE_INFINITY) { const k = []; if (R === 0) return [k, C]; const F = C[Symbol.iterator](); for (let P = 0; P < R; P++) { const N = F.next(); if (N.done) return [k, e.empty()]; k.push(N.value); } return [k, { [Symbol.iterator]() { return F; } }]; } e.consume = y; function A(C, R, k = (F, P) => F === P) { const F = C[Symbol.iterator](), P = R[Symbol.iterator](); for (; ; ) { const N = F.next(), z = P.next(); if (N.done !== z.done) return !1; if (N.done) return !0; if (!k(N.value, z.value)) return !1; } } e.equals = A; })(lr || (lr = {})); class Bo extends Error { constructor(t) { super(`Encountered errors while disposing of store. Errors: [${t.join(", ")}]`), this.errors = t; } } function js(e) { if (lr.is(e)) { let t = []; for (const n of e) if (n) try { n.dispose(); } catch (r) { t.push(r); } if (t.length === 1) throw t[0]; if (t.length > 1) throw new Bo(t); return Array.isArray(e) ? [] : e; } else if (e) return e.dispose(), e; } function jo(...e) { return wn(() => js(e)); } function wn(e) { return { dispose: Uo(() => { e(); }) }; } class At { constructor() { this._toDispose = /* @__PURE__ */ new Set(), this._isDisposed = !1; } dispose() { this._isDisposed || (this._isDisposed = !0, this.clear()); } get isDisposed() { return this._isDisposed; } clear() { try { js(this._toDispose.values()); } finally { this._toDispose.clear(); } } add(t) { if (!t) return t; if (t === this) throw new Error("Cannot register a disposable on itself!"); return this._isDisposed ? At.DISABLE_DISPOSED_WARNING || console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack) : this._toDispose.add(t), t; } } At.DISABLE_DISPOSED_WARNING = !1; class Xr { constructor() { this._store = new At(), this._store; } dispose() { this._store.dispose(); } _register(t) { if (t === this) throw new Error("Cannot register a disposable on itself!"); return this._store.add(t); } } Xr.None = Object.freeze({ dispose() { } }); class qo { constructor() { this.dispose = () => { }, this.unset = () => { }, this.isset = () => !1; } set(t) { let n = t; return this.unset = () => n = void 0, this.isset = () => n !== void 0, this.dispose = () => { n && (n(), n = void 0); }, this; } } class Z { constructor(t) { this.element = t, this.next = Z.Undefined, this.prev = Z.Undefined; } } Z.Undefined = new Z(void 0); class xi { constructor() { this._first = Z.Undefined, this._last = Z.Undefined, this._size = 0; } get size() { return this._size; } isEmpty() { return this._first === Z.Undefined; } clear() { let t = this._first; for (; t !== Z.Undefined; ) { const n = t.next; t.prev = Z.Undefined, t.next = Z.Undefined, t = n; } this._first = Z.Undefined, this._last = Z.Undefined, this._size = 0; } unshift(t) { return this._insert(t, !1); } push(t) { return this._insert(t, !0); } _insert(t, n) { const r = new Z(t); if (this._first === Z.Undefined) this._first = r, this._last = r; else if (n) { const a = this._last; this._last = r, r.prev = a, a.next = r; } else { const a = this._first; this._first = r, r.next = a, a.prev = r; } this._size += 1; let i = !1; return () => { i || (i = !0, this._remove(r)); }; } shift() { if (this._first !== Z.Undefined) { const t = this._first.element; return this._remove(this._first), t; } } pop() { if (this._last !== Z.Undefined) { const t = this._last.element; return this._remove(this._last), t; } } _remove(t) { if (t.prev !== Z.Undefined && t.next !== Z.Undefined) { const n = t.prev; n.next = t.next, t.next.prev = n; } else t.prev === Z.Undefined && t.next === Z.Undefined ? (this._first = Z.Undefined, this._last = Z.Undefined) : t.next === Z.Undefined ? (this._last = this._last.prev, this._last.next = Z.Undefined) : t.prev === Z.Undefined && (this._first = this._first.next, this._first.prev = Z.Undefined); this._size -= 1; } *[Symbol.iterator]() { let t = this._first; for (; t !== Z.Undefined; ) yield t.element, t = t.next; } } var Bn; const gn = "en"; let cr = !1, hr = !1, jn = !1, qs = !1, rn, qn = gn, $o, Ye; const fe = typeof self == "object" ? self : typeof global == "object" ? global : {}; let pe; typeof fe.vscode < "u" && typeof fe.vscode.process < "u" ? pe = fe.vscode.process : typeof process < "u" && (pe = process); const Ho = typeof ((Bn = pe == null ? void 0 : pe.versions) === null || Bn === void 0 ? void 0 : Bn.electron) == "string", Go = Ho && (pe == null ? void 0 : pe.type) === "renderer"; if (typeof navigator == "object" && !Go) Ye = navigator.userAgent, cr = Ye.indexOf("Windows") >= 0, hr = Ye.indexOf("Macintosh") >= 0, (Ye.indexOf("Macintosh") >= 0 || Ye.indexOf("iPad") >= 0 || Ye.indexOf("iPhone") >= 0) && !!navigator.maxTouchPoints && navigator.maxTouchPoints > 0, jn = Ye.indexOf("Linux") >= 0, qs = !0, rn = navigator.language, qn = rn; else if (typeof pe == "object") { cr = pe.platform === "win32", hr = pe.platform === "darwin", jn = pe.platform === "linux", jn && !!pe.env.SNAP && pe.env.SNAP_REVISION, pe.env.CI || pe.env.BUILD_ARTIFACTSTAGINGDIRECTORY, rn = gn, qn = gn; const e = pe.env.VSCODE_NLS_CONFIG; if (e) try { const t = JSON.parse(e), n = t.availableLanguages["*"]; rn = t.locale, qn = n || gn, $o = t._translationsConfigFile; } catch { } } else console.error("Unable to resolve platform."); const Bt = cr, Jo = hr; qs && fe.importScripts; const Oe = Ye; (() => { if (typeof fe.postMessage == "function" && !fe.importScripts) { let e = []; fe.addEventListener("message", (n) => { if (n.data && n.data.vscodeScheduleAsyncWork) for (let r = 0, i = e.length; r < i; r++) { const a = e[r]; if (a.id === n.data.vscodeScheduleAsyncWork) { e.splice(r, 1), a.callback(); return; } } }); let t = 0; return (n) => { const r = ++t; e.push({ id: r, callback: n }), fe.postMessage({ vscodeScheduleAsyncWork: r }, "*"); }; } return (e) => setTimeout(e); })(); const Xo = !!(Oe && Oe.indexOf("Chrome") >= 0); Oe && Oe.indexOf("Firefox") >= 0; !Xo && Oe && Oe.indexOf("Safari") >= 0; Oe && Oe.indexOf("Edg/") >= 0; Oe && Oe.indexOf("Android") >= 0; const Yo = fe.performance && typeof fe.performance.now == "function"; class Tn { constructor(t) { this._highResolution = Yo && t, this._startTime = this._now(), this._stopTime = -1; } static create(t = !0) { return new Tn(t); } stop() { this._stopTime = this._now(); } elapsed() { return this._stopTime !== -1 ? this._stopTime - this._startTime : this._now() - this._startTime; } _now() { return this._highResolution ? fe.performance.now() : Date.now(); } } var dr; (function(e) { e.None = () => Xr.None; function t(k) { return (F, P = null, N) => { let z = !1, T; return T = k((j) => { if (!z) return T ? T.dispose() : z = !0, F.call(P, j); }, null, N), z && T.dispose(), T; }; } e.once = t; function n(k, F, P) { return h((N, z = null, T) => k((j) => N.call(z, F(j)), null, T), P); } e.map = n; function r(k, F, P) { return h((N, z = null, T) => k((j) => { F(j), N.call(z, j); }, null, T), P); } e.forEach = r; function i(k, F, P) { return h((N, z = null, T) => k((j) => F(j) && N.call(z, j), null, T), P); } e.filter = i; function a(k) { return k; } e.signal = a; function o(...k) { return (F, P = null, N) => jo(...k.map((z) => z((T) => F.call(P, T), null, N))); } e.any = o; function l(k, F, P, N) { let z = P; return n(k, (T) => (z = F(z, T), z), N); } e.reduce = l; function h(k, F) { let P; const N = { onFirstListenerAdd() { P = k(z.fire, z); }, onLastListenerRemove() { P.dispose(); } }, z = new He(N); return F && F.add(z), z.event; } function c(k, F, P = 100, N = !1, z, T) { let j, U, O, re = 0; const de = { leakWarningThreshold: z, onFirstListenerAdd() { j = k((Ne) => { re++, U = F(U, Ne), N && !O && (Me.fire(U), U = void 0), clearTimeout(O), O = setTimeout(() => { const D = U; U = void 0, O = void 0, (!N || re > 1) && Me.fire(D), re = 0; }, P); }); }, onLastListenerRemove() { j.dispose(); } }, Me = new He(de); return T && T.add(Me), Me.event; } e.debounce = c; function d(k, F = (N, z) => N === z, P) { let N = !0, z; return i(k, (T) => { const j = N || !F(T, z); return N = !1, z = T, j; }, P); } e.latch = d; function p(k, F, P) { return [ e.filter(k, F, P), e.filter(k, (N) => !F(N), P) ]; } e.split = p; function f(k, F = !1, P = []) { let N = P.slice(), z = k((U) => { N ? N.push(U) : j.fire(U); }); const T = () => { N && N.forEach((U) => j.fire(U)), N = null; }, j = new He({ onFirstListenerAdd() { z || (z = k((U) => j.fire(U))); }, onFirstListenerDidAdd() { N && (F ? setTimeout(T) : T()); }, onLastListenerRemove() { z && z.dispose(), z = null; } }); return j.event; } e.buffer = f; class g { constructor(F) { this.event = F; } map(F) { return new g(n(this.event, F)); } forEach(F) { return new g(r(this.event, F)); } filter(F) { return new g(i(this.event, F)); } reduce(F, P) { return new g(l(this.event, F, P)); } latch() { return new g(d(this.event)); } debounce(F, P = 100, N = !1, z) { return new g(c(this.event, F, P, N, z)); } on(F, P, N) { return this.event(F, P, N); } once(F, P, N) { return t(this.event)(F, P, N); } } function w(k) { return new g(k); } e.chain = w; function b(k, F, P = (N) => N) { const N = (...U) => j.fire(P(...U)), z = () => k.on(F, N), T = () => k.removeListener(F, N), j = new He({ onFirstListenerAdd: z, onLastListenerRemove: T }); return j.event; } e.fromNodeEventEmitter = b; function y(k, F, P = (N) => N) { const N = (...U) => j.fire(P(...U)), z = () => k.addEventListener(F, N), T = () => k.removeEventListener(F, N), j = new He({ onFirstListenerAdd: z, onLastListenerRemove: T }); return j.event; } e.fromDOMEventEmitter = y; function A(k) { return new Promise((F) => t(k)(F)); } e.toPromise = A; function C(k, F) { return F(void 0), k((P) => F(P)); } e.runAndSubscribe = C; function R(k, F) { let P = null; function N(T) { P == null || P.dispose(), P = new At(), F(T, P); } N(void 0); const z = k((T) => N(T)); return wn(() => { z.dispose(), P == null || P.dispose(); }); } e.runAndSubscribeWithStore = R; })(dr || (dr = {})); class Wn { constructor(t) { this._listenerCount = 0, this._invocationCount = 0, this._elapsedOverall = 0, this._name = `${t}_${Wn._idPool++}`; } start(t) { this._stopWatch = new Tn(!0), this._listenerCount = t; } stop() { if (this._stopWatch) { const t = this._stopWatch.elapsed(); this._elapsedOverall += t, this._invocationCount += 1, console.info(`did FIRE ${this._name}: elapsed_ms: ${t.toFixed(5)}, listener: ${this._listenerCount} (elapsed_overall: ${this._elapsedOverall.toFixed(2)}, invocations: ${this._invocationCount})`), this._stopWatch = void 0; } } } Wn._idPool = 0; class Yr { constructor(t) { this.value = t; } static create() { var t; return new Yr((t = new Error().stack) !== null && t !== void 0 ? t : ""); } print() { console.warn(this.value.split(` `).slice(2).join(` `)); } } class Ko { constructor(t, n, r) { this.callback = t, this.callbackThis = n, this.stack = r, this.subscription = new qo(); } invoke(t) { this.callback.call(this.callbackThis, t); } } class He { constructor(t) { var n; this._disposed = !1, this._options = t, this._leakageMon = void 0, this._perfMon = !((n = this._options) === null || n === void 0) && n._profName ? new Wn(this._options._profName) : void 0; } dispose() { var t, n, r, i; this._disposed || (this._disposed = !0, this._listeners && this._listeners.clear(), (t = this._deliveryQueue) === null || t === void 0 || t.clear(), (r = (n = this._options) === null || n === void 0 ? void 0 : n.onLastListenerRemove) === null || r === void 0 || r.call(n), (i = this._leakageMon) === null || i === void 0 || i.dispose()); } get event() { return this._event || (this._event = (t, n, r) => { var i, a, o; this._listeners || (this._listeners = new xi()); const l = this._listeners.isEmpty(); l && ((i = this._options) === null || i === void 0 ? void 0 : i.onFirstListenerAdd) && this._options.onFirstListenerAdd(this); let h, c; this._leakageMon && this._listeners.size >= 30 && (c = Yr.create(), h = this._leakageMon.check(c, this._listeners.size + 1)); const d = new Ko(t, n, c), p = this._listeners.push(d); l && ((a = this._options) === null || a === void 0 ? void 0 : a.onFirstListenerDidAdd) && this._options.onFirstListenerDidAdd(this), !((o = this._options) === null || o === void 0) && o.onListenerDidAdd && this._options.onListenerDidAdd(this, t, n); const f = d.subscription.set(() => { h && h(), this._disposed || (p(), this._options && this._options.onLastListenerRemove && (this._listeners && !this._listeners.isEmpty() || this._options.onLastListenerRemove(this))); }); return r instanceof At ? r.add(f) : Array.isArray(r) && r.push(f), f; }), this._event; } fire(t) { var n, r; if (this._listeners) { this._deliveryQueue || (this._deliveryQueue = new xi()); for (let i of this._listeners) this._deliveryQueue.push([i, t]); for ((n = this._perfMon) === null || n === void 0 || n.start(this._deliveryQueue.size); this._deliveryQueue.size > 0; ) { const [i, a] = this._deliveryQueue.shift(); try { i.invoke(a); } catch (o) { Wo(o); } } (r = this._perfMon) === null || r === void 0 || r.stop(); } } } function Zo(e) { let t = [], n = Object.getPrototypeOf(e); for (; Object.prototype !== n; ) t = t.concat(Object.getOwnPropertyNames(n)), n = Object.getPrototypeOf(n); return t; } function ur(e) { const t = []; for (const n of Zo(e)) typeof e[n] == "function" && t.push(n); return t; } function Qo(e, t) { const n = (i) => function() { const a = Array.prototype.slice.call(arguments, 0); return t(i, a); }; let r = {}; for (const i of e) r[i] = n(i); return r; } function el(e, t = "Unreachable") { throw new Error(t); } class tl { constructor(t) { this.computeFn = t, this.lastCache = void 0, this.lastArgKey = void 0; } get(t) { const n = JSON.stringify(t); return this.lastArgKey !== n && (this.lastArgKey = n, this.lastCache = this.computeFn(t)), this.lastCache; } } class $s { constructor(t) { this.executor = t, this._didRun = !1; } getValue() { if (!this._didRun) try { this._value = this.executor(); } catch (t) { this._error = t; } finally { this._didRun = !0; } if (this._error) throw this._error; return this._value; } get rawValue() { return this._value; } } var Hs; function nl(e) { return e.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g, "\\$&"); } function rl(e) { return e.split(/\r\n|\r|\n/); } function il(e) { for (let t = 0, n = e.length; t < n; t++) { const r = e.charCodeAt(t); if (r !== 32 && r !== 9) return t; } return -1; } function al(e, t = e.length - 1) { for (let n = t; n >= 0; n--) { const r = e.charCodeAt(n); if (r !== 32 && r !== 9) return n; } return -1; } function Gs(e) { return e >= 65 && e <= 90; } function pr(e) { return 55296 <= e && e <= 56319; } function sl(e) { return 56320 <= e && e <= 57343; } function ol(e, t) { return (e - 55296 << 10) + (t - 56320) + 65536; } function ll(e, t, n) { const r = e.charCodeAt(n); if (pr(r) && n + 1 < t) { const i = e.charCodeAt(n + 1); if (sl(i)) return ol(r, i); } return r; } const cl = /^[\t\n\r\x20-\x7E]*$/; function hl(e) { return cl.test(e); } class ze { constructor(t) { this.confusableDictionary = t; } static getInstance(t) { return ze.cache.get(Array.from(t)); } static getLocales() { return ze._locales.getValue(); } isAmbiguous(t) { return this.confusableDictionary.has(t); } getPrimaryConfusable(t) { return this.confusableDictionary.get(t); } getConfusableCodePoints() { return new Set(this.confusableDictionary.keys()); } } Hs = ze; ze.ambiguousCharacterData = new $s(() => JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')); ze.cache = new tl((e) => { function t(c) { const d = /* @__PURE__ */ new Map(); for (let p = 0; p < c.length; p += 2) d.set(c[p], c[p + 1]); return d; } function n(c, d) { const p = new Map(c); for (const [f, g] of d) p.set(f, g); return p; } function r(c, d) { if (!c) return d; const p = /* @__PURE__ */ new Map(); for (const [f, g] of c) d.has(f) && p.set(f, g); return p; } const i = Hs.ambiguousCharacterData.getValue(); let a = e.filter((c) => !c.startsWith("_") && c in i); a.length === 0 && (a = ["_default"]); let o; for (const c of a) { const d = t(i[c]); o = r(o, d); } const l = t(i._common), h = n(l, o); return new ze(h); }); ze._locales = new $s(() => Object.keys(ze.ambiguousCharacterData.getValue()).filter((e) => !e.startsWith("_"))); class tt { static getRawData() { return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]"); } static getData() { return this._data || (this._data = new Set(tt.getRawData())), this._data; } static isInvisibleCharacter(t) { return tt.getData().has(t); } static get codePoints() { return tt.getData(); } } tt._data = void 0; const dl = "$initialize"; class ul { constructor(t, n, r, i) { this.vsWorker = t, this.req = n, this.method = r, this.args = i, this.type = 0; } } class Si { constructor(t, n, r, i) { this.vsWorker = t, this.seq = n, this.res = r, this.err = i, this.type = 1; } } class pl { constructor(t, n, r, i) { this.vsWorker = t, this.req = n, this.eventName = r, this.arg = i, this.type = 2; } } class fl { constructor(t, n, r) { this.vsWorker = t, this.req = n, this.event = r, this.type = 3; } } class ml { constructor(t, n) { this.vsWorker = t, this.req = n, this.type = 4; } } class gl { constructor(t) { this._workerId = -1, this._handler = t, this._lastSentReq = 0, this._pendingReplies = /* @__PURE__ */ Object.create(null), this._pendingEmitters = /* @__PURE__ */ new Map(), this._pendingEvents = /* @__PURE__ */ new Map(); } setWorkerId(t) { this._workerId = t; } sendMessage(t, n) { const r = String(++this._lastSentReq); return new Promise((i, a) => { this._pendingReplies[r] = { resolve: i, reject: a }, this._send(new ul(this._workerId, r, t, n)); }); } listen(t, n) { let r = null; const i = new He({ onFirstListenerAdd: () => { r = String(++this._lastSentReq), this._pendingEmitters.set(r, i), this._send(new pl(this._workerId, r, t, n)); }, onLastListenerRemove: () => { this._pendingEmitters.delete(r), this._send(new ml(this._workerId, r)), r = null; } }); return i.event; } handleMessage(t) { !t || !t.vsWorker || this._workerId !== -1 && t.vsWorker !== this._workerId || this._handleMessage(t); } _handleMessage(t) { switch (t.type) { case 1: return this._handleReplyMessage(t); case 0: return this._handleRequestMessage(t); case 2: return this._handleSubscribeEventMessage(t); case 3: return this._handleEventMessage(t); case 4: return this._handleUnsubscribeEventMessage(t); } } _handleReplyMessage(t) { if (!this._pendingReplies[t.seq]) { console.warn("Got reply to unknown seq"); return; } let n = this._pendingReplies[t.seq]; if (delete this._pendingReplies[t.seq], t.err) { let r = t.err; t.err.$isError && (r = new Error(), r.name = t.err.name, r.message = t.err.message, r.stack = t.err.stack), n.reject(r); return; } n.resolve(t.res); } _handleRequestMessage(t) { let n = t.req; this._handler.handleMessage(t.method, t.args).then((i) => { this._send(new Si(this._workerId, n, i, void 0)); }, (i) => { i.detail instanceof Error && (i.detail = wi(i.detail)), this._send(new Si(this._workerId, n, void 0, wi(i))); }); } _handleSubscribeEventMessage(t) { const n = t.req, r = this._handler.handleEvent(t.eventName, t.arg)((i) => { this._send(new fl(this._workerId, n, i)); }); this._pendingEvents.set(n, r); } _handleEventMessage(t) { if (!this._pendingEmitters.has(t.req)) { console.warn("Got event for unknown req"); return; } this._pendingEmitters.get(t.req).fire(t.event); } _handleUnsubscribeEventMessage(t) { if (!this._pendingEvents.has(t.req)) { console.warn("Got unsubscribe for unknown req"); return; } this._pendingEvents.get(t.req).dispose(), this._pendingEvents.delete(t.req); } _send(t) { let n = []; if (t.type === 0) for (let r = 0; r < t.args.length; r++) t.args[r] instanceof ArrayBuffer && n.push(t.args[r]); else t.type === 1 && t.res instanceof ArrayBuffer && n.push(t.res); this._handler.sendMessage(t, n); } } function Js(e) { return e[0] === "o" && e[1] === "n" && Gs(e.charCodeAt(2)); } function Xs(e) { return /^onDynamic/.test(e) && Gs(e.charCodeAt(9)); } function bl(e, t, n) { const r = (o) => function() { const l = Array.prototype.slice.call(arguments, 0); return t(o, l); }, i = (o) => function(l) { return n(o, l); }; let a = {}; for (const o of e) { if (Xs(o)) { a[o] = i(o); continue; } if (Js(o)) { a[o] = n(o, void 0); continue; } a[o] = r(o); } return a; } class vl { constructor(t, n) { this._requestHandlerFactory = n, this._requestHandler = null, this._protocol = new gl({ sendMessage: (r, i) => { t(r, i); }, handleMessage: (r, i) => this._handleMessage(r, i), handleEvent: (r, i) => this._handleEvent(r, i) }); } onmessage(t) { this._protocol.handleMessage(t); } _handleMessage(t, n) { if (t === dl) return this.initialize(n[0], n[1], n[2], n[3]); if (!this._requestHandler || typeof this._requestHandler[t] != "function") return Promise.reject(new Error("Missing requestHandler or method: " + t)); try { return Promise.resolve(this._requestHandler[t].apply(this._requestHandler, n)); } catch (r) { return Promise.reject(r); } } _handleEvent(t, n) { if (!this._requestHandler) throw new Error("Missing requestHandler"); if (Xs(t)) { const r = this._requestHandler[t].call(this._requestHandler, n); if (typeof r != "function") throw new Error(`Missing dynamic event ${t} on request handler.`); return r; } if (Js(t)) { const r = this._requestHandler[t]; if (typeof r != "function") throw new Error(`Missing event ${t} on request handler.`); return r; } throw new Error(`Malformed event name ${t}`); } initialize(t, n, r, i) { this._protocol.setWorkerId(t); const l = bl(i, (h, c) => this._protocol.sendMessage(h, c), (h, c) => this._protocol.listen(h, c)); return this._requestHandlerFactory ? (this._requestHandler = this._requestHandlerFactory(l), Promise.resolve(ur(this._requestHandler))) : (n && (typeof n.baseUrl < "u" && delete n.baseUrl, typeof n.paths < "u" && typeof n.paths.vs < "u" && delete n.paths.vs, typeof n.trustedTypesPolicy !== void 0 && delete n.trustedTypesPolicy, n.catchError = !0, fe.require.config(n)), new Promise((h, c) => { const d = fe.require; d([r], (p) => { if (this._requestHandler = p.create(l), !this._requestHandler) { c(new Error("No RequestHandler!")); return; } h(ur(this._requestHandler)); }, c); })); } } class Ke { constructor(t, n, r, i) { this.originalStart = t, this.originalLength = n, this.modifiedStart = r, this.modifiedLength = i; } getOriginalEnd() { return this.originalStart + this.originalLength; } getModifiedEnd() { return this.modifiedStart + this.modifiedLength; } } function Ci(e, t) { return (t << 5) - t + e | 0; } function yl(e, t) { t = Ci(149417, t); for (let n = 0, r = e.length; n < r; n++) t = Ci(e.charCodeAt(n), t); return t; } class ki { constructor(t) { this.source = t; } getElements() { const t = this.source, n = new Int32Array(t.length); for (let r = 0, i = t.length; r < i; r++) n[r] = t.charCodeAt(r); return n; } } function wl(e, t, n) { return new Qe(new ki(e), new ki(t)).ComputeDiff(n).changes; } class dt { static Assert(t, n) { if (!t) throw new Error(n); } } class ut { static Copy(t, n, r, i, a) { for (let o = 0; o < a; o++) r[i + o] = t[n + o]; } static Copy2(t, n, r, i, a) { for (let o = 0; o < a; o++) r[i + o] = t[n + o]; } } class Fi { constructor() { this.m_changes = [], this.m_originalStart = 1073741824, this.m_modifiedStart = 1073741824, this.m_originalCount = 0, this.m_modifiedCount = 0; } MarkNextChange() { (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.m_changes.push(new Ke(this.m_originalStart, this.m_originalCount, this.m_modifiedStart, this.m_modifiedCount)), this.m_originalCount = 0, this.m_modifiedCount = 0, this.m_originalStart = 1073741824, this.m_modifiedStart = 1073741824; } AddOriginalElement(t, n) { this.m_originalStart = Math.min(this.m_originalStart, t), this.m_modifiedStart = Math.min(this.m_modifiedStart, n), this.m_originalCount++; } AddModifiedElement(t, n) { this.m_originalStart = Math.min(this.m_originalStart, t), this.m_modifiedStart = Math.min(this.m_modifiedStart, n), this.m_modifiedCount++; } getChanges() { return (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.MarkNextChange(), this.m_changes; } getReverseChanges() { return (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.MarkNextChange(), this.m_changes.reverse(), this.m_changes; } } class Qe { constructor(t, n, r = null) { this.ContinueProcessingPredicate = r, this._originalSequence = t, this._modifiedSequence = n; const [i, a, o] = Qe._getElements(t), [l, h, c] = Qe._getElements(n); this._hasStrings = o && c, this._originalStringElements = i, this._originalElementsOrHash = a, this._modifiedStringElements = l, this._modifiedElementsOrHash = h, this.m_forwardHistory = [], this.m_reverseHistory = []; } static _isStringArray(t) { return t.length > 0 && typeof t[0] == "string"; } static _getElements(t) { const n = t.getElements(); if (Qe._isStringArray(n)) { const r = new Int32Array(n.length); for (let i = 0, a = n.length; i < a; i++) r[i] = yl(n[i], 0); return [n, r, !0]; } return n instanceof Int32Array ? [[], n, !1] : [[], new Int32Array(n), !1]; } ElementsAreEqual(t, n) { return this._originalElementsOrHash[t] !== this._modifiedElementsOrHash[n] ? !1 : this._hasStrings ? this._originalStringElements[t] === this._modifiedStringElements[n] : !0; } ElementsAreStrictEqual(t, n) { if (!this.ElementsAreEqual(t, n)) return !1; const r = Qe._getStrictElement(this._originalSequence, t), i = Qe._getStrictElement(this._modifiedSequence, n); return r === i; } static _getStrictElement(t, n) { return typeof t.getStrictElement == "function" ? t.getStrictElement(n) : null; } OriginalElementsAreEqual(t, n) { return this._originalElementsOrHash[t] !== this._originalElementsOrHash[n] ? !1 : this._hasStrings ? this._originalStringElements[t] === this._originalStringElements[n] : !0; } ModifiedElementsAreEqual(t, n) { return this._modifiedElementsOrHash[t] !== this._modifiedElementsOrHash[n] ? !1 : this._hasStrings ? this._modifiedStringElements[t] === this._modifiedStringElements[n] : !0; } ComputeDiff(t) { return this._ComputeDiff(0, this._originalElementsOrHash.length - 1, 0, this._modifiedElementsOrHash.length - 1, t); } _ComputeDiff(t, n, r, i, a) { const o = [!1]; let l = this.ComputeDiffRecursive(t, n, r, i, o); return a && (l = this.PrettifyChanges(l)), { quitEarly: o[0], changes: l }; } ComputeDiffRecursive(t, n, r, i, a) { for (a[0] = !1; t <= n && r <= i && this.ElementsAreEqual(t, r); ) t++, r++; for (; n >= t && i >= r && this.ElementsAreEqual(n, i); ) n--, i--; if (t > n || r > i) { let p; return r <= i ? (dt.Assert(t === n + 1, "originalStart should only be one more than originalEnd"), p = [ new Ke(t, 0, r, i - r + 1) ]) : t <= n ? (dt.Assert(r === i + 1, "modifiedStart should only be one more than modifiedEnd"), p = [ new Ke(t, n - t + 1, r, 0) ]) : (dt.Assert(t === n + 1, "originalStart should only be one more than originalEnd"), dt.Assert(r === i + 1, "modifiedStart should only be one more than modifiedEnd"), p = []), p; } const o = [0], l = [0], h = this.ComputeRecursionPoint(t, n, r, i, o, l, a), c = o[0], d = l[0]; if (h !== null) return h; if (!a[0]) { const p = this.ComputeDiffRecursive(t, c, r, d, a); let f = []; return a[0] ? f = [ new Ke(c + 1, n - (c + 1) + 1, d + 1, i - (d + 1) + 1) ] : f = this.ComputeDiffRecursive(c + 1, n, d + 1, i, a), this.ConcatenateChanges(p, f); } return [ new Ke(t, n - t + 1, r, i - r + 1) ]; } WALKTRACE(t, n, r, i, a, o, l, h, c, d, p, f, g, w, b, y, A, C) { let R = null, k = null, F = new Fi(), P = n, N = r, z = g[0] - y[0] - i, T = -1073741824, j = this.m_forwardHistory.length - 1; do { const U = z + t; U === P || U < N && c[U - 1] < c[U + 1] ? (p = c[U + 1], w = p - z - i, p < T && F.MarkNextChange(), T = p, F.AddModifiedElement(p + 1, w), z = U + 1 - t) : (p = c[U - 1] + 1, w = p - z - i, p < T && F.MarkNextChange(), T = p - 1, F.AddOriginalElement(p, w + 1), z = U - 1 - t), j >= 0 && (c = this.m_forwardHistory[j], t = c[0], P = 1, N = c.length - 1); } while (--j >= -1); if (R = F.getReverseChanges(), C[0]) { let U = g[0] + 1, O = y[0] + 1; if (R !== null && R.length > 0) { const re = R[R.length - 1]; U = Math.max(U, re.getOriginalEnd()), O = Math.max(O, re.getModifiedEnd()); } k = [ new Ke(U, f - U + 1, O, b - O + 1) ]; } else { F = new Fi(), P = o, N = l, z = g[0] - y[0] - h, T = 1073741824, j = A ? this.m_reverseHistory.length - 1 : this.m_reverseHistory.length - 2; do { const U = z + a; U === P || U < N && d[U - 1] >= d[U + 1] ? (p = d[U + 1] - 1, w = p - z - h, p > T && F.MarkNextChange(), T = p + 1, F.AddOriginalElement(p + 1, w + 1), z = U + 1 - a) : (p = d[U - 1], w = p - z - h, p > T && F.MarkNextChange(), T = p, F.AddModifiedElement(p + 1, w + 1), z = U - 1 - a), j >= 0 && (d = this.m_reverseHistory[j], a = d[0], P = 1, N = d.length - 1); } while (--j >= -1); k = F.getChanges(); } return this.ConcatenateChanges(R, k); } ComputeRecursionPoint(t, n, r, i, a, o, l) { let h = 0, c = 0, d = 0, p = 0, f = 0, g = 0; t--, r--, a[0] = 0, o[0] = 0, this.m_forwardHistory = [], this.m_reverseHistory = []; const w = n - t + (i - r), b = w + 1, y = new Int32Array(b), A = new Int32Array(b), C = i - r, R = n - t, k = t - r, F = n - i, N = (R - C) % 2 === 0; y[C] = t, A[R] = n, l[0] = !1; for (let z = 1; z <= w / 2 + 1; z++) { let T = 0, j = 0; d = this.ClipDiagonalBound(C - z, z, C, b), p = this.ClipDiagonalBound(C + z, z, C, b); for (let O = d; O <= p; O += 2) { O === d || O < p && y[O - 1] < y[O + 1] ? h = y[O + 1] : h = y[O - 1] + 1, c = h - (O - C) - k; const re = h; for (; h < n && c < i && this.ElementsAreEqual(h + 1, c + 1); ) h++, c++; if (y[O] = h, h + c > T + j && (T = h, j = c), !N && Math.abs(O - R) <= z - 1 && h >= A[O]) return a[0] = h, o[0] = c, re <= A[O] && 1447 > 0 && z <= 1447 + 1 ? this.WALKTRACE(C, d, p, k, R, f, g, F, y, A, h, n, a, c, i, o, N, l) : null; } const U = (T - t + (j - r) - z) / 2; if (this.ContinueProcessingPredicate !== null && !this.ContinueProcessingPredicate(T, U)) return l[0] = !0, a[0] = T, o[0] = j, U > 0 && 1447 > 0 && z <= 1447 + 1 ? this.WALKTRACE(C, d, p, k, R, f, g, F, y, A, h, n, a, c, i, o, N, l) : (t++, r++, [ new Ke(t, n - t + 1, r, i - r + 1) ]); f = this.ClipDiagonalBound(R - z, z, R, b), g = this.ClipDiagonalBound(R + z, z, R, b); for (let O = f; O <= g; O += 2) { O === f || O < g && A[O - 1] >= A[O + 1] ? h = A[O + 1] - 1 : h = A[O - 1], c = h - (O - R) - F; const re = h; for (; h > t && c > r && this.ElementsAreEqual(h, c); ) h--, c--; if (A[O] = h, N && Math.abs(O - C) <= z && h <= y[O]) return a[0] = h, o[0] = c, re >= y[O] && 1447 > 0 && z <= 1447 + 1 ? this.WALKTRACE(C, d, p, k, R, f, g, F, y, A, h, n, a, c, i, o, N, l) : null; } if (z <= 1447) { let O = new Int32Array(p - d + 2); O[0] = C - d + 1, ut.Copy2(y, d, O, 1, p - d + 1), this.m_forwardHistory.push(O), O = new Int32Array(g - f + 2), O[0] = R - f + 1, ut.Copy2(A, f, O, 1, g - f + 1), this.m_reverseHistory.push(O); } } return this.WALKTRACE(C, d, p, k, R, f, g, F, y, A, h, n, a, c, i, o, N, l); } PrettifyChanges(t) { for (let n = 0; n < t.length; n++) { const r = t[n], i = n < t.length - 1 ? t[n + 1].originalStart : this._originalElementsOrHash.length, a = n < t.length - 1 ? t[n + 1].modifiedStart : this._modifiedElementsOrHash.length, o = r.originalLength > 0, l = r.modifiedLength > 0; for (; r.originalStart + r.originalLength < i && r.modifiedStart + r.modifiedLength < a && (!o || this.OriginalElementsAreEqual(r.originalStart, r.originalStart + r.originalLength)) && (!l || this.ModifiedElementsAreEqual(r.modifiedStart, r.modifiedStart + r.modifiedLength)); ) { const c = this.ElementsAreStrictEqual(r.originalStart, r.modifiedStart); if (this.ElementsAreStrictEqual(r.originalStart + r.originalLength, r.modifiedStart + r.modifiedLength) && !c) break; r.originalStart++, r.modifiedStart++; } let h = [null]; if (n < t.length - 1 && this.ChangesOverlap(t[n], t[n + 1], h)) { t[n] = h[0], t.splice(n + 1, 1), n--; continue; } } for (let n = t.length - 1; n >= 0; n--) { const r = t[n]; let i = 0, a = 0; if (n > 0) { const p = t[n - 1]; i = p.originalStart + p.originalLength, a = p.modifiedStart + p.modifiedLength; } const o = r.originalLength > 0, l = r.modifiedLength > 0; let h = 0, c = this._boundaryScore(r.originalStart, r.originalLength, r.modifiedStart, r.modifiedLength); for (let p = 1; ; p++) { const f = r.originalStart - p, g = r.modifiedStart - p; if (f < i || g < a || o && !this.OriginalElementsAreEqual(f, f + r.originalLength) || l && !this.ModifiedElementsAreEqual(g, g + r.modifiedLength)) break; const b = (f === i && g === a ? 5 : 0) + this._boundaryScore(f, r.originalLength, g, r.modifiedLength); b > c && (c = b, h = p); } r.originalStart -= h, r.modifiedStart -= h; const d = [null]; if (n > 0 && this.ChangesOverlap(t[n - 1], t[n], d)) { t[n - 1] = d[0], t.splice(n, 1), n++; continue; } } if (this._hasStrings) for (let n = 1, r = t.length; n < r; n++) { const i = t[n - 1], a = t[n], o = a.originalStart - i.originalStart - i.originalLength, l = i.originalStart, h = a.originalStart + a.originalLength, c = h - l, d = i.modifiedStart, p = a.modifiedStart + a.modifiedLength, f = p - d; if (o < 5 && c < 20 && f < 20) { const g = this._findBetterContiguousSequence(l, c, d, f, o); if (g) { const [w, b] = g; (w !== i.originalStart + i.originalLength || b !== i.modifiedStart + i.modifiedLength) && (i.originalLength = w - i.originalStart, i.modifiedLength = b - i.modifiedStart, a.originalStart = w + o, a.modifiedStart = b + o, a.originalLength = h - a.originalStart, a.modifiedLength = p - a.modifiedStart); } } } return t; } _findBetterContiguousSequence(t, n, r, i, a) { if (n < a || i < a) return null; const o = t + n - a + 1, l = r + i - a + 1; let h = 0, c = 0, d = 0; for (let p = t; p < o; p++) for (let f = r; f < l; f++) { const g = this._contiguousSequenceScore(p, f, a); g > 0 && g > h && (h = g, c = p, d = f); } return h > 0 ? [c, d] : null; } _contiguousSequenceScore(t, n, r) { let i = 0; for (let a = 0; a < r; a++) { if (!this.ElementsAreEqual(t + a, n + a)) return 0; i += this._originalStringElements[t + a].length; } return i; } _OriginalIsBoundary(t) { return t <= 0 || t >= this._originalElementsOrHash.length - 1 ? !0 : this._hasStrings && /^\s*$/.test(this._originalStringElements[t]); } _OriginalRegionIsBoundary(t, n) { if (this._OriginalIsBoundary(t) || this._OriginalIsBoundary(t - 1)) return !0; if (n > 0) { const r = t + n; if (this._OriginalIsBoundary(r - 1) || this._OriginalIsBoundary(r)) return !0; } return !1; } _ModifiedIsBoundary(t) { return t <= 0 || t >= this._modifiedElementsOrHash.length - 1 ? !0 : this._hasStrings && /^\s*$/.test(this._modifiedStringElements[t]); } _ModifiedRegionIsBoundary(t, n) { if (this._ModifiedIsBoundary(t) || this._ModifiedIsBoundary(t - 1)) return !0; if (n > 0) { const r = t + n; if (this._ModifiedIsBoundary(r - 1) || this._ModifiedIsBoundary(r)) return !0; } return !1; } _boundaryScore(t, n, r, i) { const a = this._OriginalRegionIsBoundary(t, n) ? 1 : 0, o = this._ModifiedRegionIsBoundary(r, i) ? 1 : 0; return a + o; } ConcatenateChanges(t, n) { let r = []; if (t.length === 0 || n.length === 0) return n.length > 0 ? n : t; if (this.ChangesOverlap(t[t.length - 1], n[0], r)) { const i = new Array(t.length + n.length - 1); return ut.Copy(t, 0, i, 0, t.length - 1), i[t.length - 1] = r[0], ut.Copy(n, 1, i, t.length, n.length - 1), i; } else { const i = new Array(t.length + n.length); return ut.Copy(t, 0, i, 0, t.length), ut.Copy(n, 0, i, t.length, n.length), i; } } ChangesOverlap(t, n, r) { if (dt.Assert(t.originalStart <= n.originalStart, "Left change is not less than or equal to right change"), dt.Assert(t.modifiedStart <= n.modifiedStart, "Left change is not less than or equal to right change"), t.originalStart + t.originalLength >= n.originalStart || t.modifiedStart + t.modifiedLength >= n.modifiedStart) { const i = t.originalStart; let a = t.originalLength; const o = t.modifiedStart; let l = t.modifiedLength; return t.originalStart + t.originalLength >= n.originalStart && (a = n.originalStart + n.originalLength - t.originalStart), t.modifiedStart + t.modifiedLength >= n.modifiedStart && (l = n.modifiedStart + n.modifiedLength - t.modifiedStart), r[0] = new Ke(i, a, o, l), !0; } else return r[0] = null, !1; } ClipDiagonalBound(t, n, r, i) { if (t >= 0 && t < i) return t; const a = r, o = i - r - 1, l = n % 2 === 0; if (t < 0) { const h = a % 2 === 0; return l === h ? 0 : 1; } else { const h = o % 2 === 0; return l === h ? i - 1 : i - 2; } } } let St; if (typeof fe.vscode < "u" && typeof fe.vscode.process < "u") { const e = fe.vscode.process; St = { get platform() { return e.platform; }, get arch() { return e.arch; }, get env() { return e.env; }, cwd() { return e.cwd(); } }; } else typeof process < "u" ? St = { get platform() { return process.platform; }, get arch() { return process.arch; }, get env() { return process.env; }, cwd() { return process.env.VSCODE_CWD || process.cwd(); } } : St = { get platform() { return Bt ? "win32" : Jo ? "darwin" : "linux"; }, get arch() { }, get env() { return {}; }, cwd() { return "/"; } }; const fr = St.cwd, xl = St.env, ht = St.platform, Sl = 65, Cl = 97, kl = 90, Fl = 122, nt = 46, he = 47, ye = 92, Je = 58, _l = 63; class Ys extends Error { constructor(t, n, r) { let i; typeof n == "string" && n.indexOf("not ") === 0 ? (i = "must not be", n = n.replace(/^not /, "")) : i = "must be"; const a = t.indexOf(".") !== -1 ? "property" : "argument"; let o = `The "${t}" ${a} ${i} of type ${n}`; o += `. Received type ${typeof r}`, super(o), this.code = "ERR_INVALID_ARG_TYPE"; } } function ie(e, t) { if (typeof e != "string") throw new Ys(t, "string", e); } function q(e) { return e === he || e === ye; } function mr(e) { return e === he; } function Xe(e) { return e >= Sl && e <= kl || e >= Cl && e <= Fl; } function xn(e, t, n, r) { let i = "", a = 0, o = -1, l = 0, h = 0; for (let c = 0; c <= e.length; ++c) { if (c < e.length) h = e.charCodeAt(c); else { if (r(h)) break; h = he; } if (r(h)) { if (!(o === c - 1 || l === 1)) if (l === 2) { if (i.length < 2 || a !== 2 || i.charCodeAt(i.length - 1) !== nt || i.charCodeAt(i.length - 2) !== nt) { if (i.length > 2) { const d = i.lastIndexOf(n); d === -1 ? (i = "", a = 0) : (i = i.slice(0, d), a = i.length - 1 - i.lastIndexOf(n)), o = c, l = 0; continue; } else if (i.length !== 0) { i = "", a = 0, o = c, l = 0; continue; } } t && (i += i.length > 0 ? `${n}..` : "..", a = 2); } else i.length > 0 ? i += `${n}${e.slice(o + 1, c)}` : i = e.slice(o + 1, c), a = c - o - 1; o = c, l = 0; } else h === nt && l !== -1 ? ++l : l = -1; } return i; } function Ks(e, t) { if (t === null || typeof t != "object") throw new Ys("pathObject", "Object", t); const n = t.dir || t.root, r = t.base || `${t.name || ""}${t.ext || ""}`; return n ? n === t.root ? `${n}${r}` : `${n}${e}${r}` : r; } const ve = { resolve(...e) { let t = "", n = "", r = !1; for (let i = e.length - 1; i >= -1; i--) { let a; if (i >= 0) { if (a = e[i], ie(a, "path"), a.length === 0) continue; } else t.length === 0 ? a = fr() : (a = xl[`=${t}`] || fr(), (a === void 0 || a.slice(0, 2).toLowerCase() !== t.toLowerCase() && a.charCodeAt(2) === ye) && (a = `${t}\\`)); const o = a.length; let l = 0, h = "", c = !1; const d = a.charCodeAt(0); if (o === 1) q(d) && (l = 1, c = !0); else if (q(d)) if (c = !0, q(a.charCodeAt(1))) { let p = 2, f = p; for (; p < o && !q(a.charCodeAt(p)); ) p++; if (p < o && p !== f) { const g = a.slice(f, p); for (f = p; p < o && q(a.charCodeAt(p)); ) p++; if (p < o && p !== f) { for (f = p; p < o && !q(a.charCodeAt(p)); ) p++; (p === o || p !== f) && (h = `\\\\${g}\\${a.slice(f, p)}`, l = p); } } } else l = 1; else Xe(d) && a.charCodeAt(1) === Je && (h = a.slice(0, 2), l = 2, o > 2 && q(a.charCodeAt(2)) && (c = !0, l = 3)); if (h.length > 0) if (t.length > 0) { if (h.toLowerCase() !== t.toLowerCase()) continue; } else t = h; if (r) { if (t.length > 0) break; } else if (n = `${a.slice(l)}\\${n}`, r = c, c && t.length > 0) break; } return n = xn(n, !r, "\\", q), r ? `${t}\\${n}` : `${t}${n}` || "."; }, normalize(e) { ie(e, "path"); const t = e.length; if (t === 0) return "."; let n = 0, r, i = !1; const a = e.charCodeAt(0); if (t === 1) return mr(a) ? "\\" : e; if (q(a)) if (i = !0, q(e.charCodeAt(1))) { let l = 2, h = l; for (; l < t && !q(e.charCodeAt(l)); ) l++; if (l < t && l !== h) { const c = e.slice(h, l); for (h = l; l < t && q(e.charCodeAt(l)); ) l++; if (l < t && l !== h) { for (h = l; l < t && !q(e.charCodeAt(l)); ) l++; if (l === t) return `\\\\${c}\\${e.slice(h)}\\`; l !== h && (r = `\\\\${c}\\${e.slice(h, l)}`, n = l); } } } else n = 1; else Xe(a) && e.charCodeAt(1) === Je && (r = e.slice(0, 2), n = 2, t > 2 && q(e.charCodeAt(2)) && (i = !0, n = 3)); let o = n < t ? xn(e.slice(n), !i, "\\", q) : ""; return o.length === 0 && !i && (o = "."), o.length > 0 && q(e.charCodeAt(t - 1)) && (o += "\\"), r === void 0 ? i ? `\\${o}` : o : i ? `${r}\\${o}` : `${r}${o}`; }, isAbsolute(e) { ie(e, "path"); const t = e.length; if (t === 0) return !1; const n = e.charCodeAt(0); return q(n) || t > 2 && Xe(n) && e.charCodeAt(1) === Je && q(e.charCodeAt(2)); }, join(...e) { if (e.length === 0) return "."; let t, n; for (let a = 0; a < e.length; ++a) { const o = e[a]; ie(o, "path"), o.length > 0 && (t === void 0 ? t = n = o : t += `\\${o}`); } if (t === void 0) return "."; let r = !0, i = 0; if (typeof n == "string" && q(n.charCodeAt(0))) { ++i; const a = n.length; a > 1 && q(n.charCodeAt(1)) && (++i, a > 2 && (q(n.charCodeAt(2)) ? ++i : r = !1)); } if (r) { for (; i < t.length && q(t.charCodeAt(i)); ) i++; i >= 2 && (t = `\\${t.slice(i)}`); } return ve.normalize(t); }, relative(e, t) { if (ie(e, "from"), ie(t, "to"), e === t) return ""; const n = ve.resolve(e), r = ve.resolve(t); if (n === r || (e = n.toLowerCase(), t = r.toLowerCase(), e === t)) return ""; let i = 0; for (; i < e.length && e.charCodeAt(i) === ye; ) i++; let a = e.length; for (; a - 1 > i && e.charCodeAt(a - 1) === ye; ) a--; const o = a - i; let l = 0; for (; l < t.length && t.charCodeAt(l) === ye; ) l++; let h = t.length; for (; h - 1 > l && t.charCodeAt(h - 1) === ye; ) h--; const c = h - l, d = o < c ? o : c; let p = -1, f = 0; for (; f < d; f++) { const w = e.charCodeAt(i + f); if (w !== t.charCodeAt(l + f)) break; w === ye && (p = f); } if (f !== d) { if (p === -1) return r; } else { if (c > d) { if (t.charCodeAt(l + f) === ye) return r.slice(l + f + 1); if (f === 2) return r.slice(l + f); } o > d && (e.charCodeAt(i + f) === ye ? p = f : f === 2 && (p = 3)), p === -1 && (p = 0); } let g = ""; for (f = i + p + 1; f <= a; ++f) (f === a || e.charCodeAt(f) === ye) && (g += g.length === 0 ? ".." : "\\.."); return l += p, g.length > 0 ? `${g}${r.slice(l, h)}` : (r.charCodeAt(l) === ye && ++l, r.slice(l, h)); }, toNamespacedPath(e) { if (typeof e != "string") return e; if (e.length === 0) return ""; const t = ve.resolve(e); if (t.length <= 2) return e; if (t.charCodeAt(0) === ye) { if (t.charCodeAt(1) === ye) { const n = t.charCodeAt(2); if (n !== _l && n !== nt) return `\\\\?\\UNC\\${t.slice(2)}`; } } else if (Xe(t.charCodeAt(0)) && t.charCodeAt(1) === Je && t.charCodeAt(2) === ye) return `\\\\?\\${t}`; return e; }, dirname(e) { ie(e, "path"); const t = e.length; if (t === 0) return "."; let n = -1, r = 0; const i = e.charCodeAt(0); if (t === 1) return q(i) ? e : "."; if (q(i)) { if (n = r = 1, q(e.charCodeAt(1))) { let l = 2, h = l; for (; l < t && !q(e.charCodeAt(l)); ) l++; if (l < t && l !== h) { for (h = l; l < t && q(e.charCodeAt(l)); ) l++; if (l < t && l !== h) { for (h = l; l < t && !q(e.charCodeAt(l)); ) l++; if (l === t) return e; l !== h && (n = r = l + 1); } } } } else Xe(i) && e.charCodeAt(1) === Je && (n = t > 2 && q(e.charCodeAt(2)) ? 3 : 2, r = n); let a = -1, o = !0; for (let l = t - 1; l >= r; --l) if (q(e.charCodeAt(l))) { if (!o) { a = l; break; } } else o = !1; if (a === -1) { if (n === -1) return "."; a = n; } return e.slice(0, a); }, basename(e, t) { t !== void 0 && ie(t, "ext"), ie(e, "path"); let n = 0, r = -1, i = !0, a; if (e.length >= 2 && Xe(e.charCodeAt(0)) && e.charCodeAt(1) === Je && (n = 2), t !== void 0 && t.length > 0 && t.length <= e.length) { if (t === e) return ""; let o = t.length - 1, l = -1; for (a = e.length - 1; a >= n; --a) { const h = e.charCodeAt(a); if (q(h)) { if (!i) { n = a + 1; break; } } else l === -1 && (i = !1, l = a + 1), o >= 0 && (h === t.charCodeAt(o) ? --o === -1 && (r = a) : (o = -1, r = l)); } return n === r ? r = l : r === -1 && (r = e.length), e.slice(n, r); } for (a = e.length - 1; a >= n; --a) if (q(e.charCodeAt(a))) { if (!i) { n = a + 1; break; } } else r === -1 && (i = !1, r = a + 1); return r === -1 ? "" : e.slice(n, r); }, extname(e) { ie(e, "path"); let t = 0, n = -1, r = 0, i = -1, a = !0, o = 0; e.length >= 2 && e.charCodeAt(1) === Je && Xe(e.charCodeAt(0)) && (t = r = 2); for (let l = e.length - 1; l >= t; --l) { const h = e.charCodeAt(l); if (q(h)) { if (!a) { r = l + 1; break; } continue; } i === -1 && (a = !1, i = l + 1), h === nt ? n === -1 ? n = l : o !== 1 && (o = 1) : n !== -1 && (o = -1); } return n === -1 || i === -1 || o === 0 || o === 1 && n === i - 1 && n === r + 1 ? "" : e.slice(n, i); }, format: Ks.bind(null, "\\"), parse(e) { ie(e, "path"); const t = { root: "", dir: "", base: "", ext: "", name: "" }; if (e.length === 0) return t; const n = e.length; let r = 0, i = e.charCodeAt(0); if (n === 1) return q(i) ? (t.root = t.dir = e, t) : (t.base = t.name = e, t); if (q(i)) { if (r = 1, q(e.charCodeAt(1))) { let p = 2, f = p; for (; p < n && !q(e.charCodeAt(p)); ) p++; if (p < n && p !== f) { for (f = p; p < n && q(e.charCodeAt(p)); ) p++; if (p < n && p !== f) { for (f = p; p < n && !q(e.charCodeAt(p)); ) p++; p === n ? r = p : p !== f && (r = p + 1); } } } } else if (Xe(i) && e.charCodeAt(1) === Je) { if (n <= 2) return t.root = t.dir = e, t; if (r = 2, q(e.charCodeAt(2))) { if (n === 3) return t.root = t.dir = e, t; r = 3; } } r > 0 && (t.root = e.slice(0, r)); let a = -1, o = r, l = -1, h = !0, c = e.length - 1, d = 0; for (; c >= r; --c) { if (i = e.charCodeAt(c), q(i)) { if (!h) { o = c + 1; break; } continue; } l === -1 && (h = !1, l = c + 1), i === nt ? a === -1 ? a = c : d !== 1 && (d = 1) : a !== -1 && (d = -1); } return l !== -1 && (a === -1 || d === 0 || d === 1 && a === l - 1 && a === o + 1 ? t.base = t.name = e.slice(o, l) : (t.name = e.slice(o, a), t.base = e.slice(o, l), t.ext = e.slice(a, l))), o > 0 && o !== r ? t.dir = e.slice(0, o - 1) : t.dir = t.root, t; }, sep: "\\", delimiter: ";", win32: null, posix: null }, xe = { resolve(...e) { let t = "", n = !1; for (let r = e.length - 1; r >= -1 && !n; r--) { const i = r >= 0 ? e[r] : fr(); ie(i, "path"), i.length !== 0 && (t = `${i}/${t}`, n = i.charCodeAt(0) === he); } return t = xn(t, !n, "/", mr), n ? `/${t}` : t.length > 0 ? t : "."; }, normalize(e) { if (ie(e, "path"), e.length === 0) return "."; const t = e.charCodeAt(0) === he, n = e.charCodeAt(e.length - 1) === he; return e = xn(e, !t, "/", mr), e.length === 0 ? t ? "/" : n ? "./" : "." : (n && (e += "/"), t ? `/${e}` : e); }, isAbsolute(e) { return ie(e, "path"), e.length > 0 && e.charCodeAt(0) === he; }, join(...e) { if (e.length === 0) return "."; let t; for (let n = 0; n < e.length; ++n) { const r = e[n]; ie(r, "path"), r.length > 0 && (t === void 0 ? t = r : t += `/${r}`); } return t === void 0 ? "." : xe.normalize(t); }, relative(e, t) { if (ie(e, "from"), ie(t, "to"), e === t || (e = xe.resolve(e), t = xe.resolve(t), e === t)) return ""; const n = 1, r = e.length, i = r - n, a = 1, o = t.length - a, l = i < o ? i : o; let h = -1, c = 0; for (; c < l; c++) { const p = e.charCodeAt(n + c); if (p !== t.charCodeAt(a + c)) break; p === he && (h = c); } if (c === l) if (o > l) { if (t.charCodeAt(a + c) === he) return t.slice(a + c + 1); if (c === 0) return t.slice(a + c); } else i > l && (e.charCodeAt(n + c) === he ? h = c : c === 0 && (h = 0)); let d = ""; for (c = n + h + 1; c <= r; ++c) (c === r || e.charCodeAt(c) === he) && (d += d.length === 0 ? ".." : "/.."); return `${d}${t.slice(a + h)}`; }, toNamespacedPath(e) { return e; }, dirname(e) { if (ie(e, "path"), e.length === 0) return "."; const t = e.charCodeAt(0) === he; let n = -1, r = !0; for (let i = e.length - 1; i >= 1; --i) if (e.charCodeAt(i) === he) { if (!r) { n = i; break; } } else r = !1; return n === -1 ? t ? "/" : "." : t && n === 1 ? "//" : e.slice(0, n); }, basename(e, t) { t !== void 0 && ie(t, "ext"), ie(e, "path"); let n = 0, r = -1, i = !0, a; if (t !== void 0 && t.length > 0 && t.length <= e.length) { if (t === e) return ""; let o = t.length - 1, l = -1; for (a = e.length - 1; a >= 0; --a) { const h = e.charCodeAt(a); if (h === he) { if (!i) { n = a + 1; break; } } else l === -1 && (i = !1, l = a + 1), o >= 0 && (h === t.charCodeAt(o) ? --o === -1 && (r = a) : (o = -1, r = l)); } return n === r ? r = l : r === -1 && (r = e.length), e.slice(n, r); } for (a = e.length - 1; a >= 0; --a) if (e.charCodeAt(a) === he) { if (!i) { n = a + 1; break; } } else r === -1 && (i = !1, r = a + 1); return r === -1 ? "" : e.slice(n, r); }, extname(e) { ie(e, "path"); let t = -1, n = 0, r = -1, i = !0, a = 0; for (let o = e.length - 1; o >= 0; --o) { const l = e.charCodeAt(o); if (l === he) { if (!i) { n = o + 1; break; } continue; } r === -1 && (i = !1, r = o + 1), l === nt ? t === -1 ? t = o : a !== 1 && (a = 1) : t !== -1 && (a = -1); } return t === -1 || r === -1 || a === 0 || a === 1 && t === r - 1 && t === n + 1 ? "" : e.slice(t, r); }, format: Ks.bind(null, "/"), parse(e) { ie(e, "path"); const t = { root: "", dir: "", base: "", ext: "", name: "" }; if (e.length === 0) return t; const n = e.charCodeAt(0) === he; let r; n ? (t.root = "/", r = 1) : r = 0; let i = -1, a = 0, o = -1, l = !0, h = e.length - 1, c = 0; for (; h >= r; --h) { const d = e.charCodeAt(h); if (d === he) { if (!l) { a = h + 1; break; } continue; } o === -1 && (l = !1, o = h + 1), d === nt ? i === -1 ? i = h : c !== 1 && (c = 1) : i !== -1 && (c = -1); } if (o !== -1) { const d = a === 0 && n ? 1 : a; i === -1 || c === 0 || c === 1 && i === o - 1 && i === a + 1 ? t.base = t.name = e.slice(d, o) : (t.name = e.slice(d, i), t.base = e.slice(d, o), t.ext = e.slice(i, o)); } return a > 0 ? t.dir = e.slice(0, a - 1) : n && (t.dir = "/"), t; }, sep: "/", delimiter: ":", win32: null, posix: null }; xe.win32 = ve.win32 = ve; xe.posix = ve.posix = xe; ht === "win32" ? ve.normalize : xe.normalize; ht === "win32" ? ve.resolve : xe.resolve; ht === "win32" ? ve.relative : xe.relative; ht === "win32" ? ve.dirname : xe.dirname; ht === "win32" ? ve.basename : xe.basename; ht === "win32" ? ve.extname : xe.extname; ht === "win32" ? ve.sep : xe.sep; const Dl = /^\w[\w\d+.-]*$/, El = /^\//, Rl = /^\/\//; function _i(e, t) { if (!e.scheme && t) throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`); if (e.scheme && !Dl.test(e.scheme)) throw new Error("[UriError]: Scheme contains illegal characters."); if (e.path) { if (e.authority) { if (!El.test(e.path)) throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character'); } else if (Rl.test(e.path)) throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")'); } } function Al(e, t) { return !e && !t ? "file" : e; } function zl(e, t) { switch (e) { case "https": case "http": case "file": t ? t[0] !== Ie && (t = Ie + t) : t = Ie; break; } return t; } const ee = "", Ie = "/", Ml = /^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/; class ct { constructor(t, n, r, i, a, o = !1) { typeof t == "object" ? (this.scheme = t.scheme || ee, this.authority = t.authority || ee, this.path = t.path || ee, this.query = t.query || ee, this.fragment = t.fragment || ee) : (this.scheme = Al(t, o), this.authority = n || ee, this.path = zl(this.scheme, r || ee), this.query = i || ee, this.fragment = a || ee, _i(this, o)); } static isUri(t) { return t instanceof ct ? !0 : t ? typeof t.authority == "string" && typeof t.fragment == "string" && typeof t.path == "string" && typeof t.query == "string" && typeof t.scheme == "string" && typeof t.fsPath == "string" && typeof t.with == "function" && typeof t.toString == "function" : !1; } get fsPath() { return gr(this, !1); } with(t) { if (!t) return this; let { scheme: n, authority: r, path: i, query: a, fragment: o } = t; return n === void 0 ? n = this.scheme : n === null && (n = ee), r === void 0 ? r = this.authority : r === null && (r = ee), i === void 0 ? i = this.path : i === null && (i = ee), a === void 0 ? a = this.query : a === null && (a = ee), o === void 0 ? o = this.fragment : o === null && (o = ee), n === this.scheme && r === this.authority && i === this.path && a === this.query && o === this.fragment ? this : new pt(n, r, i, a, o); } static parse(t, n = !1) { const r = Ml.exec(t); return r ? new pt(r[2] || ee, an(r[4] || ee), an(r[5] || ee), an(r[7] || ee), an(r[9] || ee), n) : new pt(ee, ee, ee, ee, ee); } static file(t) { let n = ee; if (Bt && (t = t.replace(/\\/g, Ie)), t[0] === Ie && t[1] === Ie) { const r = t.indexOf(Ie, 2); r === -1 ? (n = t.substring(2), t = Ie) : (n = t.substring(2, r), t = t.substring(r) || Ie); } return new pt("file", n, t, ee, ee); } static from(t) { const n = new pt(t.scheme, t.authority, t.path, t.query, t.fragment); return _i(n, !0), n; } static joinPath(t, ...n) { if (!t.path) throw new Error("[UriError]: cannot call joinPath on URI without path"); let r; return Bt && t.scheme === "file" ? r = ct.file(ve.join(gr(t, !0), ...n)).path : r = xe.join(t.path, ...n), t.with({ path: r }); } toString(t = !1) { return br(this, t); } toJSON() { return this; } static revive(t) { if (t) { if (t instanceof ct) return t; { const n = new pt(t); return n._formatted = t.external, n._fsPath = t._sep === Zs ? t.fsPath : null, n; } } else return t; } } const Zs = Bt ? 1 : void 0; class pt extends ct { constructor() { super(...arguments), this._formatted = null, this._fsPath = null; } get fsPath() { return this._fsPath || (this._fsPath = gr(this, !1)), this._fsPath; } toString(t = !1) { return t ? br(this, !0) : (this._formatted || (this._formatted = br(this, !1)), this._formatted); } toJSON() { const t = { $mid: 1 }; return this._fsPath && (t.fsPath = this._fsPath, t._sep = Zs), this._formatted && (t.external = this._formatted), this.path && (t.path = this.path), this.scheme && (t.scheme = this.scheme), this.authority && (t.authority = this.authority), this.query && (t.query = this.query), this.fragment && (t.fragment = this.fragment), t; } } const Qs = { [58]: "%3A", [47]: "%2F", [63]: "%3F", [35]: "%23", [91]: "%5B", [93]: "%5D", [64]: "%40", [33]: "%21", [36]: "%24", [38]: "%26", [39]: "%27", [40]: "%28", [41]: "%29", [42]: "%2A", [43]: "%2B", [44]: "%2C", [59]: "%3B", [61]: "%3D", [32]: "%20" }; function Di(e, t) { let n, r = -1; for (let i = 0; i < e.length; i++) { const a = e.charCodeAt(i); if (a >= 97 && a <= 122 || a >= 65 && a <= 90 || a >= 48 && a <= 57 || a === 45 || a === 46 || a === 95 || a === 126 || t && a === 47) r !== -1 && (n += encodeURIComponent(e.substring(r, i)), r = -1), n !== void 0 && (n += e.charAt(i)); else { n === void 0 && (n = e.substr(0, i)); const o = Qs[a]; o !== void 0 ? (r !== -1 && (n += encodeURIComponent(e.substring(r, i)), r = -1), n += o) : r === -1 && (r = i); } } return r !== -1 && (n += encodeURIComponent(e.substring(r))), n !== void 0 ? n : e; } function Nl(e) { let t; for (let n = 0; n < e.length; n++) { const r = e.charCodeAt(n); r === 35 || r === 63 ? (t === void 0 && (t = e.substr(0, n)), t += Qs[r]) : t !== void 0 && (t += e[n]); } return t !== void 0 ? t : e; } function gr(e, t) { let n; return e.authority && e.path.length > 1 && e.scheme === "file" ? n = `//${e.authority}${e.path}` : e.path.charCodeAt(0) === 47 && (e.path.charCodeAt(1) >= 65 && e.path.charCodeAt(1) <= 90 || e.path.charCodeAt(1) >= 97 && e.path.charCodeAt(1) <= 122) && e.path.charCodeAt(2) === 58 ? t ? n = e.path.substr(1) : n = e.path[1].toLowerCase() + e.path.substr(2) : n = e.path, Bt && (n = n.replace(/\//g, "\\")), n; } function br(e, t) { const n = t ? Nl : Di; let r = "", { scheme: i, authority: a, path: o, query: l, fragment: h } = e; if (i && (r += i, r += ":"), (a || i === "file") && (r += Ie, r += Ie), a) { let c = a.indexOf("@"); if (c !== -1) { const d = a.substr(0, c); a = a.substr(c + 1), c = d.indexOf(":"), c === -1 ? r += n(d, !1) : (r += n(d.substr(0, c), !1), r += ":", r += n(d.substr(c + 1), !1)), r += "@"; } a = a.toLowerCase(), c = a.indexOf(":"), c === -1 ? r += n(a, !1) : (r += n(a.substr(0, c), !1), r += a.substr(c)); } if (o) { if (o.length >= 3 && o.charCodeAt(0) === 47 && o.charCodeAt(2) === 58) { const c = o.charCodeAt(1); c >= 65 && c <= 90 && (o = `/${String.fromCharCode(c + 32)}:${o.substr(3)}`); } else if (o.length >= 2 && o.charCodeAt(1) === 58) { const c = o.charCodeAt(0); c >= 65 && c <= 90 && (o = `${String.fromCharCode(c + 32)}:${o.substr(2)}`); } r += n(o, !0); } return l && (r += "?", r += n(l, !1)), h && (r += "#", r += t ? h : Di(h, !1)), r; } function eo(e) { try { return decodeURIComponent(e); } catch { return e.length > 3 ? e.substr(0, 3) + eo(e.substr(3)) : e; } } const Ei = /(%[0-9A-Za-z][0-9A-Za-z])+/g; function an(e) { return e.match(Ei) ? e.replace(Ei, (t) => eo(t)) : e; } class we { constructor(t, n) { this.lineNumber = t, this.column = n; } with(t = this.lineNumber, n = this.column) { return t === this.lineNumber && n === this.column ? this : new we(t, n); } delta(t = 0, n = 0) { return this.with(this.lineNumber + t, this.column + n); } equals(t) { return we.equals(this, t); } static equals(t, n) { return !t && !n ? !0 : !!t && !!n && t.lineNumber === n.lineNumber && t.column === n.column; } isBefore(t) { return we.isBefore(this, t); } static isBefore(t, n) { return t.lineNumber < n.lineNumber ? !0 : n.lineNumber < t.lineNumber ? !1 : t.column < n.column; } isBeforeOrEqual(t) { return we.isBeforeOrEqual(this, t); } static isBeforeOrEqual(t, n) { return t.lineNumber < n.lineNumber ? !0 : n.lineNumber < t.lineNumber ? !1 : t.column <= n.column; } static compare(t, n) { const r = t.lineNumber | 0, i = n.lineNumber | 0; if (r === i) { const a = t.column | 0, o = n.column | 0; return a - o; } return r - i; } clone() { return new we(this.lineNumber, this.column); } toString() { return "(" + this.lineNumber + "," + this.column + ")"; } static lift(t) { return new we(t.lineNumber, t.column); } static isIPosition(t) { return t && typeof t.lineNumber == "number" && typeof t.column == "number"; } } class te { constructor(t, n, r, i) { t > r || t === r && n > i ? (this.startLineNumber = r, this.startColumn = i, this.endLineNumber = t, this.endColumn = n) : (this.startLineNumber = t, this.startColumn = n, this.endLineNumber = r, this.endColumn = i); } isEmpty() { return te.isEmpty(this); } static isEmpty(t) { return t.startLineNumber === t.endLineNumber && t.startColumn === t.endColumn; } containsPosition(t) { return te.containsPosition(this, t); } static containsPosition(t, n) { return !(n.lineNumber < t.startLineNumber || n.lineNumber > t.endLineNumber || n.lineNumber === t.startLineNumber && n.column < t.startColumn || n.lineNumber === t.endLineNumber && n.column > t.endColumn); } static strictContainsPosition(t, n) { return !(n.lineNumber < t.startLineNumber || n.lineNumber > t.endLineNumber || n.lineNumber === t.startLineNumber && n.column <= t.startColumn || n.lineNumber === t.endLineNumber && n.column >= t.endColumn); } containsRange(t) { return te.containsRange(this, t); } static containsRange(t, n) { return !(n.startLineNumber < t.startLineNumber || n.endLineNumber < t.startLineNumber || n.startLineNumber > t.endLineNumber || n.endLineNumber > t.endLineNumber || n.startLineNumber === t.startLineNumber && n.startColumn < t.startColumn || n.endLineNumber === t.endLineNumber && n.endColumn > t.endColumn); } strictContainsRange(t) { return te.strictContainsRange(this, t); } static strictContainsRange(t, n) { return !(n.startLineNumber < t.startLineNumber || n.endLineNumber < t.startLineNumber || n.startLineNumber > t.endLineNumber || n.endLineNumber > t.endLineNumber || n.startLineNumber === t.startLineNumber && n.startColumn <= t.startColumn || n.endLineNumber === t.endLineNumber && n.endColumn >= t.endColumn); } plusRange(t) { return te.plusRange(this, t); } static plusRange(t, n) { let r, i, a, o; return n.startLineNumber < t.startLineNumber ? (r = n.startLineNumber, i = n.startColumn) : n.startLineNumber === t.startLineNumber ? (r = n.startLineNumber, i = Math.min(n.startColumn, t.startColumn)) : (r = t.startLineNumber, i = t.startColumn), n.endLineNumber > t.endLineNumber ? (a = n.endLineNumber, o = n.endColumn) : n.endLineNumber === t.endLineNumber ? (a = n.endLineNumber, o = Math.max(n.endColumn, t.endColumn)) : (a = t.endLineNumber, o = t.endColumn), new te(r, i, a, o); } intersectRanges(t) { return te.intersectRanges(this, t); } static intersectRanges(t, n) { let r = t.startLineNumber, i = t.startColumn, a = t.endLineNumber, o = t.endColumn, l = n.startLineNumber, h = n.startColumn, c = n.endLineNumber, d = n.endColumn; return r < l ? (r = l, i = h) : r === l && (i = Math.max(i, h)), a > c ? (a = c, o = d) : a === c && (o = Math.min(o, d)), r > a || r === a && i > o ? null : new te(r, i, a, o); } equalsRange(t) { return te.equalsRange(this, t); } static equalsRange(t, n) { return !!t && !!n && t.startLineNumber === n.startLineNumber && t.startColumn === n.startColumn && t.endLineNumber === n.endLineNumber && t.endColumn === n.endColumn; } getEndPosition() { return te.getEndPosition(this); } static getEndPosition(t) { return new we(t.endLineNumber, t.endColumn); } getStartPosition() { return te.getStartPosition(this); } static getStartPosition(t) { return new we(t.startLineNumber, t.startColumn); } toString() { return "[" + this.startLineNumber + "," + this.startColumn + " -> " + this.endLineNumber + "," + this.endColumn + "]"; } setEndPosition(t, n) { return new te(this.startLineNumber, this.startColumn, t, n); } setStartPosition(t, n) { return new te(t, n, this.endLineNumber, this.endColumn); } collapseToStart() { return te.collapseToStart(this); } static collapseToStart(t) { return new te(t.startLineNumber, t.startColumn, t.startLineNumber, t.startColumn); } static fromPositions(t, n = t) { return new te(t.lineNumber, t.column, n.lineNumber, n.column); } static lift(t) { return t ? new te(t.startLineNumber, t.startColumn, t.endLineNumber, t.endColumn) : null; } static isIRange(t) { return t && typeof t.startLineNumber == "number" && typeof t.startColumn == "number" && typeof t.endLineNumber == "number" && typeof t.endColumn == "number"; } static areIntersectingOrTouching(t, n) { return !(t.endLineNumber < n.startLineNumber || t.endLineNumber === n.startLineNumber && t.endColumn < n.startColumn || n.endLineNumber < t.startLineNumber || n.endLineNumber === t.startLineNumber && n.endColumn < t.startColumn); } static areIntersecting(t, n) { return !(t.endLineNumber < n.startLineNumber || t.endLineNumber === n.startLineNumber && t.endColumn <= n.startColumn || n.endLineNumber < t.startLineNumber || n.endLineNumber === t.startLineNumber && n.endColumn <= t.startColumn); } static compareRangesUsingStarts(t, n) { if (t && n) { const a = t.startLineNumber | 0, o = n.startLineNumber | 0; if (a === o) { const l = t.startColumn | 0, h = n.startColumn | 0; if (l === h) { const c = t.endLineNumber | 0, d = n.endLineNumber | 0; if (c === d) { const p = t.endColumn | 0, f = n.endColumn | 0; return p - f; } return c - d; } return l - h; } return a - o; } return (t ? 1 : 0) - (n ? 1 : 0); } static compareRangesUsingEnds(t, n) { return t.endLineNumber === n.endLineNumber ? t.endColumn === n.endColumn ? t.startLineNumber === n.startLineNumber ? t.startColumn - n.startColumn : t.startLineNumber - n.startLineNumber : t.endColumn - n.endColumn : t.endLineNumber - n.endLineNumber; } static spansMultipleLines(t) { return t.endLineNumber > t.startLineNumber; } toJSON() { return this; } } const Pl = 3; function to(e, t, n, r) { return new Qe(e, t, n).ComputeDiff(r); } class Ri { constructor(t) { const n = [], r = []; for (let i = 0, a = t.length; i < a; i++) n[i] = vr(t[i], 1), r[i] = yr(t[i], 1); this.lines = t, this._startColumns = n, this._endColumns = r; } getElements() { const t = []; for (let n = 0, r = this.lines.length; n < r; n++) t[n] = this.lines[n].substring(this._startColumns[n] - 1, this._endColumns[n] - 1); return t; } getStrictElement(t) { return this.lines[t]; } getStartLineNumber(t) { return t + 1; } getEndLineNumber(t) { return t + 1; } createCharSequence(t, n, r) { const i = [], a = [], o = []; let l = 0; for (let h = n; h <= r; h++) { const c = this.lines[h], d = t ? this._startColumns[h] : 1, p = t ? this._endColumns[h] : c.length + 1; for (let f = d; f < p; f++) i[l] = c.charCodeAt(f - 1), a[l] = h + 1, o[l] = f, l++; } return new Il(i, a, o); } } class Il { constructor(t, n, r) { this._charCodes = t, this._lineNumbers = n, this._columns = r; } getElements() { return this._charCodes; } getStartLineNumber(t) { return this._lineNumbers[t]; } getStartColumn(t) { return this._columns[t]; } getEndLineNumber(t) { return this._lineNumbers[t]; } getEndColumn(t) { return this._columns[t] + 1; } } class jt { constructor(t, n, r, i, a, o, l, h) { this.originalStartLineNumber = t, this.originalStartColumn = n, this.originalEndLineNumber = r, this.originalEndColumn = i, this.modifiedStartLineNumber = a, this.modifiedStartColumn = o, this.modifiedEndLineNumber = l, this.modifiedEndColumn = h; } static createFromDiffChange(t, n, r) { let i, a, o, l, h, c, d, p; return t.originalLength === 0 ? (i = 0, a = 0, o = 0, l = 0) : (i = n.getStartLineNumber(t.originalStart), a = n.getStartColumn(t.originalStart), o = n.getEndLineNumber(t.originalStart + t.originalLength - 1), l = n.getEndColumn(t.originalStart + t.originalLength - 1)), t.modifiedLength === 0 ? (h = 0, c = 0, d = 0, p = 0) : (h = r.getStartLineNumber(t.modifiedStart), c = r.getStartColumn(t.modifiedStart), d = r.getEndLineNumber(t.modifiedStart + t.modifiedLength - 1), p = r.getEndColumn(t.modifiedStart + t.modifiedLength - 1)), new jt(i, a, o, l, h, c, d, p); } } function Ll(e) { if (e.length <= 1) return e; const t = [e[0]]; let n = t[0]; for (let r = 1, i = e.length; r < i; r++) { const a = e[r], o = a.originalStart - (n.originalStart + n.originalLength), l = a.modifiedStart - (n.modifiedStart + n.modifiedLength); Math.min(o, l) < Pl ? (n.originalLength = a.originalStart + a.originalLength - n.originalStart, n.modifiedLength = a.modifiedStart + a.modifiedLength - n.modifiedStart) : (t.push(a), n = a); } return t; } class Vt { constructor(t, n, r, i, a) { this.originalStartLineNumber = t, this.originalEndLineNumber = n, this.modifiedStartLineNumber = r, this.modifiedEndLineNumber = i, this.charChanges = a; } static createFromDiffResult(t, n, r, i, a, o, l) { let h, c, d, p, f; if (n.originalLength === 0 ? (h = r.getStartLineNumber(n.originalStart) - 1, c = 0) : (h = r.getStartLineNumber(n.originalStart), c = r.getEndLineNumber(n.originalStart + n.originalLength - 1)), n.modifiedLength === 0 ? (d = i.getStartLineNumber(n.modifiedStart) - 1, p = 0) : (d = i.getStartLineNumber(n.modifiedStart), p = i.getEndLineNumber(n.modifiedStart + n.modifiedLength - 1)), o && n.originalLength > 0 && n.originalLength < 20 && n.modifiedLength > 0 && n.modifiedLength < 20 && a()) { const g = r.createCharSequence(t, n.originalStart, n.originalStart + n.originalLength - 1), w = i.createCharSequence(t, n.modifiedStart, n.modifiedStart + n.modifiedLength - 1); let b = to(g, w, a, !0).changes; l && (b = Ll(b)), f = []; for (let y = 0, A = b.length; y < A; y++) f.push(jt.createFromDiffChange(b[y], g, w)); } return new Vt(h, c, d, p, f); } } class Tl { constructor(t, n, r) { this.shouldComputeCharChanges = r.shouldComputeCharChanges, this.shouldPostProcessCharChanges = r.shouldPostProcessCharChanges, this.shouldIgnoreTrimWhitespace = r.shouldIgnoreTrimWhitespace, this.shouldMakePrettyDiff = r.shouldMakePrettyDiff, this.originalLines = t, this.modifiedLines = n, this.original = new Ri(t), this.modified = new Ri(n), this.continueLineDiff = Ai(r.maxComputationTime), this.continueCharDiff = Ai(r.maxComputationTime === 0 ? 0 : Math.min(r.maxComputationTime, 5e3)); } computeDiff() { if (this.original.lines.length === 1 && this.original.lines[0].length === 0) return this.modified.lines.length === 1 && this.modified.lines[0].length === 0 ? { quitEarly: !1, changes: [] } : { quitEarly: !1, changes: [{ originalStartLineNumber: 1, originalEndLineNumber: 1, modifiedStartLineNumber: 1, modifiedEndLineNumber: this.modified.lines.length, charChanges: [{ modifiedEndColumn: 0, modifiedEndLineNumber: 0, modifiedStartColumn: 0, modifiedStartLineNumber: 0, originalEndColumn: 0, originalEndLineNumber: 0, originalStartColumn: 0, originalStartLineNumber: 0 }] }] }; if (this.modified.lines.length === 1 && this.modified.lines[0].length === 0) return { quitEarly: !1, changes: [{ originalStartLineNumber: 1, originalEndLineNumber: this.original.lines.length, modifiedStartLineNumber: 1, modifiedEndLineNumber: 1, charChanges: [{ modifiedEndColumn: 0, modifiedEndLineNumber: 0, modifiedStartColumn: 0, modifiedStartLineNumber: 0, originalEndColumn: 0, originalEndLineNumber: 0, originalStartColumn: 0, originalStartLineNumber: 0 }] }] }; const t = to(this.original, this.modified, this.continueLineDiff, this.shouldMakePrettyDiff), n = t.changes, r = t.quitEarly; if (this.shouldIgnoreTrimWhitespace) { const l = []; for (let h = 0, c = n.length; h < c; h++) l.push(Vt.createFromDiffResult(this.shouldIgnoreTrimWhitespace, n[h], this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges)); return { quitEarly: r, changes: l }; } const i = []; let a = 0, o = 0; for (let l = -1, h = n.length; l < h; l++) { const c = l + 1 < h ? n[l + 1] : null, d = c ? c.originalStart : this.originalLines.length, p = c ? c.modifiedStart : this.modifiedLines.length; for (; a < d && o < p; ) { const f = this.originalLines[a], g = this.modifiedLines[o]; if (f !== g) { { let w = vr(f, 1), b = vr(g, 1); for (; w > 1 && b > 1; ) { const y = f.charCodeAt(w - 2), A = g.charCodeAt(b - 2); if (y !== A) break; w--, b--; } (w > 1 || b > 1) && this._pushTrimWhitespaceCharChange(i, a + 1, 1, w, o + 1, 1, b); } { let w = yr(f, 1), b = yr(g, 1); const y = f.length + 1, A = g.length + 1; for (; w < y && b < A; ) { const C = f.charCodeAt(w - 1), R = f.charCodeAt(b - 1); if (C !== R) break; w++, b++; } (w < y || b < A) && this._pushTrimWhitespaceCharChange(i, a + 1, w, y, o + 1, b, A); } } a++, o++; } c && (i.push(Vt.createFromDiffResult(this.shouldIgnoreTrimWhitespace, c, this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges)), a += c.originalLength, o += c.modifiedLength); } return { quitEarly: r, changes: i }; } _pushTrimWhitespaceCharChange(t, n, r, i, a, o, l) { if (this._mergeTrimWhitespaceCharChange(t, n, r, i, a, o, l)) return; let h; this.shouldComputeCharChanges && (h = [new jt(n, r, n, i, a, o, a, l)]), t.push(new Vt(n, n, a, a, h)); } _mergeTrimWhitespaceCharChange(t, n, r, i, a, o, l) { const h = t.length; if (h === 0) return !1; const c = t[h - 1]; return c.originalEndLineNumber === 0 || c.modifiedEndLineNumber === 0 ? !1 : c.originalEndLineNumber + 1 === n && c.modifiedEndLineNumber + 1 === a ? (c.originalEndLineNumber = n, c.modifiedEndLineNumber = a, this.shouldComputeCharChanges && c.charChanges && c.charChanges.push(new jt(n, r, n, i, a, o, a, l)), !0) : !1; } } function vr(e, t) { const n = il(e); return n === -1 ? t : n + 1; } function yr(e, t) { const n = al(e); return n === -1 ? t : n + 2; } function Ai(e) { if (e === 0) return () => !0; const t = Date.now(); return () => Date.now() - t < e; } function zi(e) { return e < 0 ? 0 : e > 255 ? 255 : e | 0; } function ft(e) { return e < 0 ? 0 : e > 4294967295 ? 4294967295 : e | 0; } class Wl { constructor(t) { this.values = t, this.prefixSum = new Uint32Array(t.length), this.prefixSumValidIndex = new Int32Array(1), this.prefixSumValidIndex[0] = -1; } insertValues(t, n) { t = ft(t); const r = this.values, i = this.prefixSum, a = n.length; return a === 0 ? !1 : (this.values = new Uint32Array(r.length + a), this.values.set(r.subarray(0, t), 0), this.values.set(r.subarray(t), t + a), this.values.set(n, t), t - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = t - 1), this.prefixSum = new Uint32Array(this.values.length), this.prefixSumValidIndex[0] >= 0 && this.prefixSum.set(i.subarray(0, this.prefixSumValidIndex[0] + 1)), !0); } setValue(t, n) { return t = ft(t), n = ft(n), this.values[t] === n ? !1 : (this.values[t] = n, t - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = t - 1), !0); } removeValues(t, n) { t = ft(t), n = ft(n); const r = this.values, i = this.prefixSum; if (t >= r.length) return !1; const a = r.length - t; return n >= a && (n = a), n === 0 ? !1 : (this.values = new Uint32Array(r.length - n), this.values.set(r.subarray(0, t), 0), this.values.set(r.subarray(t + n), t), this.prefixSum = new Uint32Array(this.values.length), t - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = t - 1), this.prefixSumValidIndex[0] >= 0 && this.prefixSum.set(i.subarray(0, this.prefixSumValidIndex[0] + 1)), !0); } getTotalSum() { return this.values.length === 0 ? 0 : this._getPrefixSum(this.values.length - 1); } getPrefixSum(t) { return t < 0 ? 0 : (t = ft(t), this._getPrefixSum(t)); } _getPrefixSum(t) { if (t <= this.prefixSumValidIndex[0]) return this.prefixSum[t]; let n = this.prefixSumValidIndex[0] + 1; n === 0 && (this.prefixSum[0] = this.values[0], n++), t >= this.values.length && (t = this.values.length - 1); for (let r = n; r <= t; r++) this.prefixSum[r] = this.prefixSum[r - 1] + this.values[r]; return this.prefixSumValidIndex[0] = Math.max(this.prefixSumValidIndex[0], t), this.prefixSum[t]; } getIndexOf(t) { t = Math.floor(t), this.getTotalSum(); let n = 0, r = this.values.length - 1, i = 0, a = 0, o = 0; for (; n <= r; ) if (i = n + (r - n) / 2 | 0, a = this.prefixSum[i], o = a - this.values[i], t < o) r = i - 1; else if (t >= a) n = i + 1; else break; return new Ol(i, t - o); } } class Ol { constructor(t, n) { this.index = t, this.remainder = n, this._prefixSumIndexOfResultBrand = void 0, this.index = t, this.remainder = n; } } class Vl { constructor(t, n, r, i) { this._uri = t, this._lines = n, this._eol = r, this._versionId = i, this._lineStarts = null, this._cachedTextValue = null; } dispose() { this._lines.length = 0; } get version() { return this._versionId; } getText() { return this._cachedTextValue === null && (this._cachedTextValue = this._lines.join(this._eol)), this._cachedTextValue; } onEvents(t) { t.eol && t.eol !== this._eol && (this._eol = t.eol, this._lineStarts = null); const n = t.changes; for (const r of n) this._acceptDeleteRange(r.range), this._acceptInsertText(new we(r.range.startLineNumber, r.range.startColumn), r.text); this._versionId = t.versionId, this._cachedTextValue = null; } _ensureLineStarts() { if (!this._lineStarts) { const t = this._eol.length, n = this._lines.length, r = new Uint32Array(n); for (let i = 0; i < n; i++) r[i] = this._lines[i].length + t; this._lineStarts = new Wl(r); } } _setLineText(t, n) { this._lines[t] = n, this._lineStarts && this._lineStarts.setValue(t, this._lines[t].length + this._eol.length); } _acceptDeleteRange(t) { if (t.startLineNumber === t.endLineNumber) { if (t.startColumn === t.endColumn) return; this._setLineText(t.startLineNumber - 1, this._lines[t.startLineNumber - 1].substring(0, t.startColumn - 1) + this._lines[t.startLineNumber - 1].substring(t.endColumn - 1)); return; } this._setLineText(t.startLineNumber - 1, this._lines[t.startLineNumber - 1].substring(0, t.startColumn - 1) + this._lines[t.endLineNumber - 1].substring(t.endColumn - 1)), this._lines.splice(t.startLineNumber, t.endLineNumber - t.startLineNumber), this._lineStarts && this._lineStarts.removeValues(t.startLineNumber, t.endLineNumber - t.startLineNumber); } _acceptInsertText(t, n) { if (n.length === 0) return; const r = rl(n); if (r.length === 1) { this._setLineText(t.lineNumber - 1, this._lines[t.lineNumber - 1].substring(0, t.column - 1) + r[0] + this._lines[t.lineNumber - 1].substring(t.column - 1)); return; } r[r.length - 1] += this._lines[t.lineNumber - 1].substring(t.column - 1), this._setLineText(t.lineNumber - 1, this._lines[t.lineNumber - 1].substring(0, t.column - 1) + r[0]); const i = new Uint32Array(r.length - 1); for (let a = 1; a < r.length; a++) this._lines.splice(t.lineNumber + a - 1, 0, r[a]), i[a - 1] = r[a].length + this._eol.length; this._lineStarts && this._lineStarts.insertValues(t.lineNumber, i); } } const Ul = "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?"; function Bl(e = "") { let t = "(-?\\d*\\.\\d\\w*)|([^"; for (const n of Ul) e.indexOf(n) >= 0 || (t += "\\" + n); return t += "\\s]+)", new RegExp(t, "g"); } const no = Bl(); function jl(e) { let t = no; if (e && e instanceof RegExp) if (e.global) t = e; else { let n = "g"; e.ignoreCase && (n += "i"), e.multiline && (n += "m"), e.unicode && (n += "u"), t = new RegExp(e.source, n); } return t.lastIndex = 0, t; } const ql = { maxLen: 1e3, windowSize: 15, timeBudget: 150 }; function Kr(e, t, n, r, i = ql) { if (n.length > i.maxLen) { let c = e - i.maxLen / 2; return c < 0 ? c = 0 : r += c, n = n.substring(c, e + i.maxLen / 2), Kr(e, t, n, r, i); } const a = Date.now(), o = e - 1 - r; let l = -1, h = null; for (let c = 1; !(Date.now() - a >= i.timeBudget); c++) { const d = o - i.windowSize * c; t.lastIndex = Math.max(0, d); const p = $l(t, n, o, l); if (!p && h || (h = p, d <= 0)) break; l = d; } if (h) { const c = { word: h[0], startColumn: r + 1 + h.index, endColumn: r + 1 + h.index + h[0].length }; return t.lastIndex = 0, c; } return null; } function $l(e, t, n, r) { let i; for (; i = e.exec(t); ) { const a = i.index || 0; if (a <= n && e.lastIndex >= n) return i; if (r > 0 && a > r) return null; } return null; } class Zr { constructor(t) { const n = zi(t); this._defaultValue = n, this._asciiMap = Zr._createAsciiMap(n), this._map = /* @__PURE__ */ new Map(); } static _createAsciiMap(t) { const n = new Uint8Array(256); for (let r = 0; r < 256; r++) n[r] = t; return n; } set(t, n) { const r = zi(n); t >= 0 && t < 256 ? this._asciiMap[t] = r : this._map.set(t, r); } get(t) { return t >= 0 && t < 256 ? this._asciiMap[t] : this._map.get(t) || this._defaultValue; } } class Hl { constructor(t, n, r) { const i = new Uint8Array(t * n); for (let a = 0, o = t * n; a < o; a++) i[a] = r; this._data = i, this.rows = t, this.cols = n; } get(t, n) { return this._data[t * this.cols + n]; } set(t, n, r) { this._data[t * this.cols + n] = r; } } class Gl { constructor(t) { let n = 0, r = 0; for (let a = 0, o = t.length; a < o; a++) { const [l, h, c] = t[a]; h > n && (n = h), l > r && (r = l), c > r && (r = c); } n++, r++; const i = new Hl(r, n, 0); for (let a = 0, o = t.length; a < o; a++) { const [l, h, c] = t[a]; i.set(l, h, c); } this._states = i, this._maxCharCode = n; } nextState(t, n) { return n < 0 || n >= this._maxCharCode ? 0 : this._states.get(t, n); } } let $n = null; function Jl() { return $n === null && ($n = new Gl([ [1, 104, 2], [1, 72, 2], [1, 102, 6], [1, 70, 6], [2, 116, 3], [2, 84, 3], [3, 116, 4], [3, 84, 4], [4, 112, 5], [4, 80, 5], [5, 115, 9], [5, 83, 9], [5, 58, 10], [6, 105, 7], [6, 73, 7], [7, 108, 8], [7, 76, 8], [8, 101, 9], [8, 69, 9], [9, 58, 10], [10, 47, 11], [11, 47, 12] ])), $n; } let Mt = null; function Xl() { if (Mt === null) { Mt = new Zr(0); const e = ` <>'"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u3008\u300C\u300E\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u300F\u300D\u3009\u2019\uFF40\uFF5E\u2026`; for (let n = 0; n < e.length; n++) Mt.set(e.charCodeAt(n), 1); const t = ".,;"; for (let n = 0; n < t.length; n++) Mt.set(t.charCodeAt(n), 2); } return Mt; } class Sn { static _createLink(t, n, r, i, a) { let o = a - 1; do { const l = n.charCodeAt(o); if (t.get(l) !== 2) break; o--; } while (o > i); if (i > 0) { const l = n.charCodeAt(i - 1), h = n.charCodeAt(o); (l === 40 && h === 41 || l === 91 && h === 93 || l === 123 && h === 125) && o--; } return { range: { startLineNumber: r, startColumn: i + 1, endLineNumber: r, endColumn: o + 2 }, url: n.substring(i, o + 1) }; } static computeLinks(t, n = Jl()) { const r = Xl(), i = []; for (let a = 1, o = t.getLineCount(); a <= o; a++) { const l = t.getLineContent(a), h = l.length; let c = 0, d = 0, p = 0, f = 1, g = !1, w = !1, b = !1, y = !1; for (; c < h; ) { let A = !1; const C = l.charCodeAt(c); if (f === 13) { let R; switch (C) { case 40: g = !0, R = 0; break; case 41: R = g ? 0 : 1; break; case 91: b = !0, w = !0, R = 0; break; case 93: b = !1, R = w ? 0 : 1; break; case 123: y = !0, R = 0; break; case 125: R = y ? 0 : 1; break; case 39: R = p === 34 || p === 96 ? 0 : 1; break; case 34: R = p === 39 || p === 96 ? 0 : 1; break; case 96: R = p === 39 || p === 34 ? 0 : 1; break; case 42: R = p === 42 ? 1 : 0; break; case 124: R = p === 124 ? 1 : 0; break; case 32: R = b ? 0 : 1; break; default: R = r.get(C); } R === 1 && (i.push(Sn._createLink(r, l, a, d, c)), A = !0); } else if (f === 12) { let R; C === 91 ? (w = !0, R = 0) : R = r.get(C), R === 1 ? A = !0 : f = 13; } else f = n.nextState(f, C), f === 0 && (A = !0); A && (f = 1, g = !1, w = !1, y = !1, d = c + 1, p = C), c++; } f === 13 && i.push(Sn._createLink(r, l, a, d, h)); } return i; } } function Yl(e) { return !e || typeof e.getLineCount != "function" || typeof e.getLineContent != "function" ? [] : Sn.computeLinks(e); } class wr { constructor() { this._defaultValueSet = [ ["true", "false"], ["True", "False"], ["Private", "Public", "Friend", "ReadOnly", "Partial", "Protected", "WriteOnly"], ["public", "protected", "private"] ]; } navigateValueSet(t, n, r, i, a) { if (t && n) { const o = this.doNavigateValueSet(n, a); if (o) return { range: t, value: o }; } if (r && i) { const o = this.doNavigateValueSet(i, a); if (o) return { range: r, value: o }; } return null; } doNavigateValueSet(t, n) { const r = this.numberReplace(t, n); return r !== null ? r : this.textReplace(t, n); } numberReplace(t, n) { const r = Math.pow(10, t.length - (t.lastIndexOf(".") + 1)); let i = Number(t), a = parseFloat(t); return !isNaN(i) && !isNaN(a) && i === a ? i === 0 && !n ? null : (i = Math.floor(i * r), i += n ? r : -r, String(i / r)) : null; } textReplace(t, n) { return this.valueSetsReplace(this._defaultValueSet, t, n); } valueSetsReplace(t, n, r) { let i = null; for (let a = 0, o = t.length; i === null && a < o; a++) i = this.valueSetReplace(t[a], n, r); return i; } valueSetReplace(t, n, r) { let i = t.indexOf(n); return i >= 0 ? (i += r ? 1 : -1, i < 0 ? i = t.length - 1 : i %= t.length, t[i]) : null; } } wr.INSTANCE = new wr(); const ro = Object.freeze(function(e, t) { const n = setTimeout(e.bind(t), 0); return { dispose() { clearTimeout(n); } }; }); var Cn; (function(e) { function t(n) { return n === e.None || n === e.Cancelled || n instanceof bn ? !0 : !n || typeof n != "object" ? !1 : typeof n.isCancellationRequested == "boolean" && typeof n.onCancellationRequested == "function"; } e.isCancellationToken = t, e.None = Object.freeze({ isCancellationRequested: !1, onCancellationRequested: dr.None }), e.Cancelled = Object.freeze({ isCancellationRequested: !0, onCancellationRequested: ro }); })(Cn || (Cn = {})); class bn { constructor() { this._isCancelled = !1, this._emitter = null; } cancel() { this._isCancelled || (this._isCancelled = !0, this._emitter && (this._emitter.fire(void 0), this.dispose())); } get isCancellationRequested() { return this._isCancelled; } get onCancellationRequested() { return this._isCancelled ? ro : (this._emitter || (this._emitter = new He()), this._emitter.event); } dispose() { this._emitter && (this._emitter.dispose(), this._emitter = null); } } class Kl { constructor(t) { this._token = void 0, this._parentListener = void 0, this._parentListener = t && t.onCancellationRequested(this.cancel, this); } get token() { return this._token || (this._token = new bn()), this._token; } cancel() { this._token ? this._token instanceof bn && this._token.cancel() : this._token = Cn.Cancelled; } dispose(t = !1) { t && this.cancel(), this._parentListener && this._parentListener.dispose(), this._token ? this._token instanceof bn && this._token.dispose() : this._token = Cn.None; } } class Qr { constructor() { this._keyCodeToStr = [], this._strToKeyCode = /* @__PURE__ */ Object.create(null); } define(t, n) { this._keyCodeToStr[t] = n, this._strToKeyCode[n.toLowerCase()] = t; } keyCodeToStr(t) { return this._keyCodeToStr[t]; } strToKeyCode(t) { return this._strToKeyCode[t.toLowerCase()] || 0; } } const vn = new Qr(), xr = new Qr(), Sr = new Qr(), Zl = new Array(230), Ql = /* @__PURE__ */ Object.create(null), ec = /* @__PURE__ */ Object.create(null); (function() { const e = "", t = [ [0, 1, 0, "None", 0, "unknown", 0, "VK_UNKNOWN", e, e], [0, 1, 1, "Hyper", 0, e, 0, e, e, e], [0, 1, 2, "Super", 0, e, 0, e, e, e], [0, 1, 3, "Fn", 0, e, 0, e, e, e], [0, 1, 4, "FnLock", 0, e, 0, e, e, e], [0, 1, 5, "Suspend", 0, e, 0, e, e, e], [0, 1, 6, "Resume", 0, e, 0, e, e, e], [0, 1, 7, "Turbo", 0, e, 0, e, e, e], [0, 1, 8, "Sleep", 0, e, 0, "VK_SLEEP", e, e], [0, 1, 9, "WakeUp", 0, e, 0, e, e, e], [31, 0, 10, "KeyA", 31, "A", 65, "VK_A", e, e], [32, 0, 11, "KeyB", 32, "B", 66, "VK_B", e, e], [33, 0, 12, "KeyC", 33, "C", 67, "VK_C", e, e], [34, 0, 13, "KeyD", 34, "D", 68, "VK_D", e, e], [35, 0, 14, "KeyE", 35, "E", 69, "VK_E", e, e], [36, 0, 15, "KeyF", 36, "F", 70, "VK_F", e, e], [37, 0, 16, "KeyG", 37, "G", 71, "VK_G", e, e], [38, 0, 17, "KeyH", 38, "H", 72, "VK_H", e, e], [39, 0, 18, "KeyI", 39, "I", 73, "VK_I", e, e], [40, 0, 19, "KeyJ", 40, "J", 74, "VK_J", e, e], [41, 0, 20, "KeyK", 41, "K", 75, "VK_K", e, e], [42, 0, 21, "KeyL", 42, "L", 76, "VK_L", e, e], [43, 0, 22, "KeyM", 43, "M", 77, "VK_M", e, e], [44, 0, 23, "KeyN", 44, "N", 78, "VK_N", e, e], [45, 0, 24, "KeyO", 45, "O", 79, "VK_O", e, e], [46, 0, 25, "KeyP", 46, "P", 80, "VK_P", e, e], [47, 0, 26, "KeyQ", 47, "Q", 81, "VK_Q", e, e], [48, 0, 27, "KeyR", 48, "R", 82, "VK_R", e, e], [49, 0, 28, "KeyS", 49, "S", 83, "VK_S", e, e], [50, 0, 29, "KeyT", 50, "T", 84, "VK_T", e, e], [51, 0, 30, "KeyU", 51, "U", 85, "VK_U", e, e], [52, 0, 31, "KeyV", 52, "V", 86, "VK_V", e, e], [53, 0, 32, "KeyW", 53, "W", 87, "VK_W", e, e], [54, 0, 33, "KeyX", 54, "X", 88, "VK_X", e, e], [55, 0, 34, "KeyY", 55, "Y", 89, "VK_Y", e, e], [56, 0, 35, "KeyZ", 56, "Z", 90, "VK_Z", e, e], [22, 0, 36, "Digit1", 22, "1", 49, "VK_1", e, e], [23, 0, 37, "Digit2", 23, "2", 50, "VK_2", e, e], [24, 0, 38, "Digit3", 24, "3", 51, "VK_3", e, e], [25, 0, 39, "Digit4", 25, "4", 52, "VK_4", e, e], [26, 0, 40, "Digit5", 26, "5", 53, "VK_5", e, e], [27, 0, 41, "Digit6", 27, "6", 54, "VK_6", e, e], [28, 0, 42, "Digit7", 28, "7", 55, "VK_7", e, e], [29, 0, 43, "Digit8", 29, "8", 56, "VK_8", e, e], [30, 0, 44, "Digit9", 30, "9", 57, "VK_9", e, e], [21, 0, 45, "Digit0", 21, "0", 48, "VK_0", e, e], [3, 1, 46, "Enter", 3, "Enter", 13, "VK_RETURN", e, e], [9, 1, 47, "Escape", 9, "Escape", 27, "VK_ESCAPE", e, e], [1, 1, 48, "Backspace", 1, "Backspace", 8, "VK_BACK", e, e], [2, 1, 49, "Tab", 2, "Tab", 9, "VK_TAB", e, e], [10, 1, 50, "Space", 10, "Space", 32, "VK_SPACE", e, e], [83, 0, 51, "Minus", 83, "-", 189, "VK_OEM_MINUS", "-", "OEM_MINUS"], [81, 0, 52, "Equal", 81, "=", 187, "VK_OEM_PLUS", "=", "OEM_PLUS"], [87, 0, 53, "BracketLeft", 87, "[", 219, "VK_OEM_4", "[", "OEM_4"], [89, 0, 54, "BracketRight", 89, "]", 221, "VK_OEM_6", "]", "OEM_6"], [88, 0, 55, "Backslash", 88, "\\", 220, "VK_OEM_5", "\\", "OEM_5"], [0, 0, 56, "IntlHash", 0, e, 0, e, e, e], [80, 0, 57, "Semicolon", 80, ";", 186, "VK_OEM_1", ";", "OEM_1"], [90, 0, 58, "Quote", 90, "'", 222, "VK_OEM_7", "'", "OEM_7"], [86, 0, 59, "Backquote", 86, "`", 192, "VK_OEM_3", "`", "OEM_3"], [82, 0, 60, "Comma", 82, ",", 188, "VK_OEM_COMMA", ",", "OEM_COMMA"], [84, 0, 61, "Period", 84, ".", 190, "VK_OEM_PERIOD", ".", "OEM_PERIOD"], [85, 0, 62, "Slash", 85, "/", 191, "VK_OEM_2", "/", "OEM_2"], [8, 1, 63, "CapsLock", 8, "CapsLock", 20, "VK_CAPITAL", e, e], [59, 1, 64, "F1", 59, "F1", 112, "VK_F1", e, e], [60, 1, 65, "F2", 60, "F2", 113, "VK_F2", e, e], [61, 1, 66, "F3", 61, "F3", 114, "VK_F3", e, e], [62, 1, 67, "F4", 62, "F4", 115, "VK_F4", e, e], [63, 1, 68, "F5", 63, "F5", 116, "VK_F5", e, e], [64, 1, 69, "F6", 64, "F6", 117, "VK_F6", e, e], [65, 1, 70, "F7", 65, "F7", 118, "VK_F7", e, e], [66, 1, 71, "F8", 66, "F8", 119, "VK_F8", e, e], [67, 1, 72, "F9", 67, "F9", 120, "VK_F9", e, e], [68, 1, 73, "F10", 68, "F10", 121, "VK_F10", e, e], [69, 1, 74, "F11", 69, "F11", 122, "VK_F11", e, e], [70, 1, 75, "F12", 70, "F12", 123, "VK_F12", e, e], [0, 1, 76, "PrintScreen", 0, e, 0, e, e, e], [79, 1, 77, "ScrollLock", 79, "ScrollLock", 145, "VK_SCROLL", e, e], [7, 1, 78, "Pause", 7, "PauseBreak", 19, "VK_PAUSE", e, e], [19, 1, 79, "Insert", 19, "Insert", 45, "VK_INSERT", e, e], [14, 1, 80, "Home", 14, "Home", 36, "VK_HOME", e, e], [11, 1, 81, "PageUp", 11, "PageUp", 33, "VK_PRIOR", e, e], [20, 1, 82, "Delete", 20, "Delete", 46, "VK_DELETE", e, e], [13, 1, 83, "End", 13, "End", 35, "VK_END", e, e], [12, 1, 84, "PageDown", 12, "PageDown", 34, "VK_NEXT", e, e], [17, 1, 85, "ArrowRight", 17, "RightArrow", 39, "VK_RIGHT", "Right", e], [15, 1, 86, "ArrowLeft", 15, "LeftArrow", 37, "VK_LEFT", "Left", e], [18, 1, 87, "ArrowDown", 18, "DownArrow", 40, "VK_DOWN", "Down", e], [16, 1, 88, "ArrowUp", 16, "UpArrow", 38, "VK_UP", "Up", e], [78, 1, 89, "NumLock", 78, "NumLock", 144, "VK_NUMLOCK", e, e], [108, 1, 90, "NumpadDivide", 108, "NumPad_Divide", 111, "VK_DIVIDE", e, e], [103, 1, 91, "NumpadMultiply", 103, "NumPad_Multiply", 106, "VK_MULTIPLY", e, e], [106, 1, 92, "NumpadSubtract", 106, "NumPad_Subtract", 109, "VK_SUBTRACT", e, e], [104, 1, 93, "NumpadAdd", 104, "NumPad_Add", 107, "VK_ADD", e, e], [3, 1, 94, "NumpadEnter", 3, e, 0, e, e, e], [94, 1, 95, "Numpad1", 94, "NumPad1", 97, "VK_NUMPAD1", e, e], [95, 1, 96, "Numpad2", 95, "NumPad2", 98, "VK_NUMPAD2", e, e], [96, 1, 97, "Numpad3", 96, "NumPad3", 99, "VK_NUMPAD3", e, e], [97, 1, 98, "Numpad4", 97, "NumPad4", 100, "VK_NUMPAD4", e, e], [98, 1, 99, "Numpad5", 98, "NumPad5", 101, "VK_NUMPAD5", e, e], [99, 1, 100, "Numpad6", 99, "NumPad6", 102, "VK_NUMPAD6", e, e], [100, 1, 101, "Numpad7", 100, "NumPad7", 103, "VK_NUMPAD7", e, e], [101, 1, 102, "Numpad8", 101, "NumPad8", 104, "VK_NUMPAD8", e, e], [102, 1, 103, "Numpad9", 102, "NumPad9", 105, "VK_NUMPAD9", e, e], [93, 1, 104, "Numpad0", 93, "NumPad0", 96, "VK_NUMPAD0", e, e], [107, 1, 105, "NumpadDecimal", 107, "NumPad_Decimal", 110, "VK_DECIMAL", e, e], [92, 0, 106, "IntlBackslash", 92, "OEM_102", 226, "VK_OEM_102", e, e], [58, 1, 107, "ContextMenu", 58, "ContextMenu", 93, e, e, e], [0, 1, 108, "Power", 0, e, 0, e, e, e], [0, 1, 109, "NumpadEqual", 0, e, 0, e, e, e], [71, 1, 110, "F13", 71, "F13", 124, "VK_F13", e, e], [72, 1, 111, "F14", 72, "F14", 125, "VK_F14", e, e], [73, 1, 112, "F15", 73, "F15", 126, "VK_F15", e, e], [74, 1, 113, "F16", 74, "F16", 127, "VK_F16", e, e], [75, 1, 114, "F17", 75, "F17", 128, "VK_F17", e, e], [76, 1, 115, "F18", 76, "F18", 129, "VK_F18", e, e], [77, 1, 116, "F19", 77, "F19", 130, "VK_F19", e, e], [0, 1, 117, "F20", 0, e, 0, "VK_F20", e, e], [0, 1, 118, "F21", 0, e, 0, "VK_F21", e, e], [0, 1, 119, "F22", 0, e, 0, "VK_F22", e, e], [0, 1, 120, "F23", 0, e, 0, "VK_F23", e, e], [0, 1, 121, "F24", 0, e, 0, "VK_F24", e, e], [0, 1, 122, "Open", 0, e, 0, e, e, e], [0, 1, 123, "Help", 0, e, 0, e, e, e], [0, 1, 124, "Select", 0, e, 0, e, e, e], [0, 1, 125, "Again", 0, e, 0, e, e, e], [0, 1, 126, "Undo", 0, e, 0, e, e, e], [0, 1, 127, "Cut", 0, e, 0, e, e, e], [0, 1, 128, "Copy", 0, e, 0, e, e, e], [0, 1, 129, "Paste", 0, e, 0, e, e, e], [0, 1, 130, "Find", 0, e, 0, e, e, e], [0, 1, 131, "AudioVolumeMute", 112, "AudioVolumeMute", 173, "VK_VOLUME_MUTE", e, e], [0, 1, 132, "AudioVolumeUp", 113, "AudioVolumeUp", 175, "VK_VOLUME_UP", e, e], [0, 1, 133, "AudioVolumeDown", 114, "AudioVolumeDown", 174, "VK_VOLUME_DOWN", e, e], [105, 1, 134, "NumpadComma", 105, "NumPad_Separator", 108, "VK_SEPARATOR", e, e], [110, 0, 135, "IntlRo", 110, "ABNT_C1", 193, "VK_ABNT_C1", e, e], [0, 1, 136, "KanaMode", 0, e, 0, e, e, e], [0, 0, 137, "IntlYen", 0, e, 0, e, e, e], [0, 1, 138, "Convert", 0, e, 0, e, e, e], [0, 1, 139, "NonConvert", 0, e, 0, e, e, e], [0, 1, 140, "Lang1", 0, e, 0, e, e, e], [0, 1, 141, "Lang2", 0, e, 0, e, e, e], [0, 1, 142, "Lang3", 0, e, 0, e, e, e], [0, 1, 143, "Lang4", 0, e, 0, e, e, e], [0, 1, 144, "Lang5", 0, e, 0, e, e, e], [0, 1, 145, "Abort", 0, e, 0, e, e, e], [0, 1, 146, "Props", 0, e, 0, e, e, e], [0, 1, 147, "NumpadParenLeft", 0, e, 0, e, e, e], [0, 1, 148, "NumpadParenRight", 0, e, 0, e, e, e], [0, 1, 149, "NumpadBackspace", 0, e, 0, e, e, e], [0, 1, 150, "NumpadMemoryStore", 0, e, 0, e, e, e], [0, 1, 151, "NumpadMemoryRecall", 0, e, 0, e, e, e], [0, 1, 152, "NumpadMemoryClear", 0, e, 0, e, e, e], [0, 1, 153, "NumpadMemoryAdd", 0, e, 0, e, e, e], [0, 1, 154, "NumpadMemorySubtract", 0, e, 0, e, e, e], [0, 1, 155, "NumpadClear", 126, "Clear", 12, "VK_CLEAR", e, e], [0, 1, 156, "NumpadClearEntry", 0, e, 0, e, e, e], [5, 1, 0, e, 5, "Ctrl", 17, "VK_CONTROL", e, e], [4, 1, 0, e, 4, "Shift", 16, "VK_SHIFT", e, e], [6, 1, 0, e, 6, "Alt", 18, "VK_MENU", e, e], [57, 1, 0, e, 57, "Meta", 0, "VK_COMMAND", e, e], [5, 1, 157, "ControlLeft", 5, e, 0, "VK_LCONTROL", e, e], [4, 1, 158, "ShiftLeft", 4, e, 0, "VK_LSHIFT", e, e], [6, 1, 159, "AltLeft", 6, e, 0, "VK_LMENU", e, e], [57, 1, 160, "MetaLeft", 57, e, 0, "VK_LWIN", e, e], [5, 1, 161, "ControlRight", 5, e, 0, "VK_RCONTROL", e, e], [4, 1, 162, "ShiftRight", 4, e, 0, "VK_RSHIFT", e, e], [6, 1, 163, "AltRight", 6, e, 0, "VK_RMENU", e, e], [57, 1, 164, "MetaRight", 57, e, 0, "VK_RWIN", e, e], [0, 1, 165, "BrightnessUp", 0, e, 0, e, e, e], [0, 1, 166, "BrightnessDown", 0, e, 0, e, e, e], [0, 1, 167, "MediaPlay", 0, e, 0, e, e, e], [0, 1, 168, "MediaRecord", 0, e, 0, e, e, e], [0, 1, 169, "MediaFastForward", 0, e, 0, e, e, e], [0, 1, 170, "MediaRewind", 0, e, 0, e, e, e], [114, 1, 171, "MediaTrackNext", 119, "MediaTrackNext", 176, "VK_MEDIA_NEXT_TRACK", e, e], [115, 1, 172, "MediaTrackPrevious", 120, "MediaTrackPrevious", 177, "VK_MEDIA_PREV_TRACK", e, e], [116, 1, 173, "MediaStop", 121, "MediaStop", 178, "VK_MEDIA_STOP", e, e], [0, 1, 174, "Eject", 0, e, 0, e, e, e], [117, 1, 175, "MediaPlayPause", 122, "MediaPlayPause", 179, "VK_MEDIA_PLAY_PAUSE", e, e], [0, 1, 176, "MediaSelect", 123, "LaunchMediaPlayer", 181, "VK_MEDIA_LAUNCH_MEDIA_SELECT", e, e], [0, 1, 177, "LaunchMail", 124, "LaunchMail", 180, "VK_MEDIA_LAUNCH_MAIL", e, e], [0, 1, 178, "LaunchApp2", 125, "LaunchApp2", 183, "VK_MEDIA_LAUNCH_APP2", e, e], [0, 1, 179, "LaunchApp1", 0, e, 0, "VK_MEDIA_LAUNCH_APP1", e, e], [0, 1, 180, "SelectTask", 0, e, 0, e, e, e], [0, 1, 181, "LaunchScreenSaver", 0, e, 0, e, e, e], [0, 1, 182, "BrowserSearch", 115, "BrowserSearch", 170, "VK_BROWSER_SEARCH", e, e], [0, 1, 183, "BrowserHome", 116, "BrowserHome", 172, "VK_BROWSER_HOME", e, e], [112, 1, 184, "BrowserBack", 117, "BrowserBack", 166, "VK_BROWSER_BACK", e, e], [113, 1, 185, "BrowserForward", 118, "BrowserForward", 167, "VK_BROWSER_FORWARD", e, e], [0, 1, 186, "BrowserStop", 0, e, 0, "VK_BROWSER_STOP", e, e], [0, 1, 187, "BrowserRefresh", 0, e, 0, "VK_BROWSER_REFRESH", e, e], [0, 1, 188, "BrowserFavorites", 0, e, 0, "VK_BROWSER_FAVORITES", e, e], [0, 1, 189, "ZoomToggle", 0, e, 0, e, e, e], [0, 1, 190, "MailReply", 0, e, 0, e, e, e], [0, 1, 191, "MailForward", 0, e, 0, e, e, e], [0, 1, 192, "MailSend", 0, e, 0, e, e, e], [109, 1, 0, e, 109, "KeyInComposition", 229, e, e, e], [111, 1, 0, e, 111, "ABNT_C2", 194, "VK_ABNT_C2", e, e], [91, 1, 0, e, 91, "OEM_8", 223, "VK_OEM_8", e, e], [0, 1, 0, e, 0, e, 0, "VK_KANA", e, e], [0, 1, 0, e, 0, e, 0, "VK_HANGUL", e, e], [0, 1, 0, e, 0, e, 0, "VK_JUNJA", e, e], [0, 1, 0, e, 0, e, 0, "VK_FINAL", e, e], [0, 1, 0, e, 0, e, 0, "VK_HANJA", e, e], [0, 1, 0, e, 0, e, 0, "VK_KANJI", e, e], [0, 1, 0, e, 0, e, 0, "VK_CONVERT", e, e], [0, 1, 0, e, 0, e, 0, "VK_NONCONVERT", e, e], [0, 1, 0, e, 0, e, 0, "VK_ACCEPT", e, e], [0, 1, 0, e, 0, e, 0, "VK_MODECHANGE", e, e], [0, 1, 0, e, 0, e, 0, "VK_SELECT", e, e], [0, 1, 0, e, 0, e, 0, "VK_PRINT", e, e], [0, 1, 0, e, 0, e, 0, "VK_EXECUTE", e, e], [0, 1, 0, e, 0, e, 0, "VK_SNAPSHOT", e, e], [0, 1, 0, e, 0, e, 0, "VK_HELP", e, e], [0, 1, 0, e, 0, e, 0, "VK_APPS", e, e], [0, 1, 0, e, 0, e, 0, "VK_PROCESSKEY", e, e], [0, 1, 0, e, 0, e, 0, "VK_PACKET", e, e], [0, 1, 0, e, 0, e, 0, "VK_DBE_SBCSCHAR", e, e], [0, 1, 0, e, 0, e, 0, "VK_DBE_DBCSCHAR", e, e], [0, 1, 0, e, 0, e, 0, "VK_ATTN", e, e], [0, 1, 0, e, 0, e, 0, "VK_CRSEL", e, e], [0, 1, 0, e, 0, e, 0, "VK_EXSEL", e, e], [0, 1, 0, e, 0, e, 0, "VK_EREOF", e, e], [0, 1, 0, e, 0, e, 0, "VK_PLAY", e, e], [0, 1, 0, e, 0, e, 0, "VK_ZOOM", e, e], [0, 1, 0, e, 0, e, 0, "VK_NONAME", e, e], [0, 1, 0, e, 0, e, 0, "VK_PA1", e, e], [0, 1, 0, e, 0, e, 0, "VK_OEM_CLEAR", e, e] ]; let n = [], r = []; for (const i of t) { const [a, o, l, h, c, d, p, f, g, w] = i; if (r[l] || (r[l] = !0, Ql[h] = l, ec[h.toLowerCase()] = l), !n[c]) { if (n[c] = !0, !d) throw new Error(`String representation missing for key code ${c} around scan code ${h}`); vn.define(c, d), xr.define(c, g || d), Sr.define(c, w || g || d); } p && (Zl[p] = c); } })(); var Mi; (function(e) { function t(l) { return vn.keyCodeToStr(l); } e.toString = t; function n(l) { return vn.strToKeyCode(l); } e.fromString = n; function r(l) { return xr.keyCodeToStr(l); } e.toUserSettingsUS = r; function i(l) { return Sr.keyCodeToStr(l); } e.toUserSettingsGeneral = i; function a(l) { return xr.strToKeyCode(l) || Sr.strToKeyCode(l); } e.fromUserSettings = a; function o(l) { if (l >= 93 && l <= 108) return null; switch (l) { case 16: return "Up"; case 18: return "Down"; case 15: return "Left"; case 17: return "Right"; } return vn.keyCodeToStr(l); } e.toElectronAccelerator = o; })(Mi || (Mi = {})); function tc(e, t) { const n = (t & 65535) << 16 >>> 0; return (e | n) >>> 0; } class Ce extends te { constructor(t, n, r, i) { super(t, n, r, i), this.selectionStartLineNumber = t, this.selectionStartColumn = n, this.positionLineNumber = r, this.positionColumn = i; } toString() { return "[" + this.selectionStartLineNumber + "," + this.selectionStartColumn + " -> " + this.positionLineNumber + "," + this.positionColumn + "]"; } equalsSelection(t) { return Ce.selectionsEqual(this, t); } static selectionsEqual(t, n) { return t.selectionStartLineNumber === n.selectionStartLineNumber && t.selectionStartColumn === n.selectionStartColumn && t.positionLineNumber === n.positionLineNumber && t.positionColumn === n.positionColumn; } getDirection() { return this.selectionStartLineNumber === this.startLineNumber && this.selectionStartColumn === this.startColumn ? 0 : 1; } setEndPosition(t, n) { return this.getDirection() === 0 ? new Ce(this.startLineNumber, this.startColumn, t, n) : new Ce(t, n, this.startLineNumber, this.startColumn); } getPosition() { return new we(this.positionLineNumber, this.positionColumn); } getSelectionStart() { return new we(this.selectionStartLineNumber, this.selectionStartColumn); } setStartPosition(t, n) { return this.getDirection() === 0 ? new Ce(t, n, this.endLineNumber, this.endColumn) : new Ce(this.endLineNumber, this.endColumn, t, n); } static fromPositions(t, n = t) { return new Ce(t.lineNumber, t.column, n.lineNumber, n.column); } static fromRange(t, n) { return n === 0 ? new Ce(t.startLineNumber, t.startColumn, t.endLineNumber, t.endColumn) : new Ce(t.endLineNumber, t.endColumn, t.startLineNumber, t.startColumn); } static liftSelection(t) { return new Ce(t.selectionStartLineNumber, t.selectionStartColumn, t.positionLineNumber, t.positionColumn); } static selectionsArrEqual(t, n) { if (t && !n || !t && n) return !1; if (!t && !n) return !0; if (t.length !== n.length) return !1; for (let r = 0, i = t.length; r < i; r++) if (!this.selectionsEqual(t[r], n[r])) return !1; return !0; } static isISelection(t) { return t && typeof t.selectionStartLineNumber == "number" && typeof t.selectionStartColumn == "number" && typeof t.positionLineNumber == "number" && typeof t.positionColumn == "number"; } static createWithDirection(t, n, r, i, a) { return a === 0 ? new Ce(t, n, r, i) : new Ce(r, i, t, n); } } var Cr = globalThis && globalThis.__awaiter || function(e, t, n, r) { function i(a) { return a instanceof n ? a : new n(function(o) { o(a); }); } return new (n || (n = Promise))(function(a, o) { function l(d) { try { c(r.next(d)); } catch (p) { o(p); } } function h(d) { try { c(r.throw(d)); } catch (p) { o(p); } } function c(d) { d.done ? a(d.value) : i(d.value).then(l, h); } c((r = r.apply(e, t || [])).next()); }); }; class nc { constructor() { this._map = /* @__PURE__ */ new Map(), this._factories = /* @__PURE__ */ new Map(), this._onDidChange = new He(), this.onDidChange = this._onDidChange.event, this._colorMap = null; } fire(t) { this._onDidChange.fire({ changedLanguages: t, changedColorMap: !1 }); } register(t, n) { return this._map.set(t, n), this.fire([t]), wn(() => { this._map.get(t) === n && (this._map.delete(t), this.fire([t])); }); } registerFactory(t, n) { var r; (r = this._factories.get(t)) === null || r === void 0 || r.dispose(); const i = new rc(this, t, n); return this._factories.set(t, i), wn(() => { const a = this._factories.get(t); !a || a !== i || (this._factories.delete(t), a.dispose()); }); } getOrCreate(t) { return Cr(this, void 0, void 0, function* () { const n = this.get(t); if (n) return n; const r = this._factories.get(t); return !r || r.isResolved ? null : (yield r.resolve(), this.get(t)); }); } get(t) { return this._map.get(t) || null; } isResolved(t) { if (this.get(t)) return !0; const r = this._factories.get(t); return !!(!r || r.isResolved); } setColorMap(t) { this._colorMap = t, this._onDidChange.fire({ changedLanguages: Array.from(this._map.keys()), changedColorMap: !0 }); } getColorMap() { return this._colorMap; } getDefaultBackground() { return this._colorMap && this._colorMap.length > 2 ? this._colorMap[2] : null; } } class rc extends Xr { constructor(t, n, r) { super(), this._registry = t, this._languageId = n, this._factory = r, this._isDisposed = !1, this._resolvePromise = null, this._isResolved = !1; } get isResolved() { return this._isResolved; } dispose() { this._isDisposed = !0, super.dispose(); } resolve() { return Cr(this, void 0, void 0, function* () { return this._resolvePromise || (this._resolvePromise = this._create()), this._resolvePromise; }); } _create() { return Cr(this, void 0, void 0, function* () { const t = yield Promise.resolve(this._factory.createTokenizationSupport()); this._isResolved = !0, t && !this._isDisposed && this._register(this._registry.register(this._languageId, t)); }); } } class s { constructor(t, n, r) { this.id = t, this.definition = n, this.description = r, s._allCodicons.push(this); } get classNames() { return "codicon codicon-" + this.id; } get classNamesArray() { return ["codicon", "codicon-" + this.id]; } get cssSelector() { return ".codicon.codicon-" + this.id; } static getAll() { return s._allCodicons; } } s._allCodicons = []; s.add = new s("add", { fontCharacter: "\\ea60" }); s.plus = new s("plus", s.add.definition); s.gistNew = new s("gist-new", s.add.definition); s.repoCreate = new s("repo-create", s.add.definition); s.lightbulb = new s("lightbulb", { fontCharacter: "\\ea61" }); s.lightBulb = new s("light-bulb", { fontCharacter: "\\ea61" }); s.repo = new s("repo", { fontCharacter: "\\ea62" }); s.repoDelete = new s("repo-delete", { fontCharacter: "\\ea62" }); s.gistFork = new s("gist-fork", { fontCharacter: "\\ea63" }); s.repoForked = new s("repo-forked", { fontCharacter: "\\ea63" }); s.gitPullRequest = new s("git-pull-request", { fontCharacter: "\\ea64" }); s.gitPullRequestAbandoned = new s("git-pull-request-abandoned", { fontCharacter: "\\ea64" }); s.recordKeys = new s("record-keys", { fontCharacter: "\\ea65" }); s.keyboard = new s("keyboard", { fontCharacter: "\\ea65" }); s.tag = new s("tag", { fontCharacter: "\\ea66" }); s.tagAdd = new s("tag-add", { fontCharacter: "\\ea66" }); s.tagRemove = new s("tag-remove", { fontCharacter: "\\ea66" }); s.person = new s("person", { fontCharacter: "\\ea67" }); s.personFollow = new s("person-follow", { fontCharacter: "\\ea67" }); s.personOutline = new s("person-outline", { fontCharacter: "\\ea67" }); s.personFilled = new s("person-filled", { fontCharacter: "\\ea67" }); s.gitBranch = new s("git-branch", { fontCharacter: "\\ea68" }); s.gitBranchCreate = new s("git-branch-create", { fontCharacter: "\\ea68" }); s.gitBranchDelete = new s("git-branch-delete", { fontCharacter: "\\ea68" }); s.sourceControl = new s("source-control", { fontCharacter: "\\ea68" }); s.mirror = new s("mirror", { fontCharacter: "\\ea69" }); s.mirrorPublic = new s("mirror-public", { fontCharacter: "\\ea69" }); s.star = new s("star", { fontCharacter: "\\ea6a" }); s.starAdd = new s("star-add", { fontCharacter: "\\ea6a" }); s.starDelete = new s("star-delete", { fontCharacter: "\\ea6a" }); s.starEmpty = new s("star-empty", { fontCharacter: "\\ea6a" }); s.comment = new s("comment", { fontCharacter: "\\ea6b" }); s.commentAdd = new s("comment-add", { fontCharacter: "\\ea6b" }); s.alert = new s("alert", { fontCharacter: "\\ea6c" }); s.warning = new s("warning", { fontCharacter: "\\ea6c" }); s.search = new s("search", { fontCharacter: "\\ea6d" }); s.searchSave = new s("search-save", { fontCharacter: "\\ea6d" }); s.logOut = new s("log-out", { fontCharacter: "\\ea6e" }); s.signOut = new s("sign-out", { fontCharacter: "\\ea6e" }); s.logIn = new s("log-in", { fontCharacter: "\\ea6f" }); s.signIn = new s("sign-in", { fontCharacter: "\\ea6f" }); s.eye = new s("eye", { fontCharacter: "\\ea70" }); s.eyeUnwatch = new s("eye-unwatch", { fontCharacter: "\\ea70" }); s.eyeWatch = new s("eye-watch", { fontCharacter: "\\ea70" }); s.circleFilled = new s("circle-filled", { fontCharacter: "\\ea71" }); s.primitiveDot = new s("primitive-dot", { fontCharacter: "\\ea71" }); s.closeDirty = new s("close-dirty", { fontCharacter: "\\ea71" }); s.debugBreakpoint = new s("debug-breakpoint", { fontCharacter: "\\ea71" }); s.debugBreakpointDisabled = new s("debug-breakpoint-disabled", { fontCharacter: "\\ea71" }); s.debugHint = new s("debug-hint", { fontCharacter: "\\ea71" }); s.primitiveSquare = new s("primitive-square", { fontCharacter: "\\ea72" }); s.edit = new s("edit", { fontCharacter: "\\ea73" }); s.pencil = new s("pencil", { fontCharacter: "\\ea73" }); s.info = new s("info", { fontCharacter: "\\ea74" }); s.issueOpened = new s("issue-opened", { fontCharacter: "\\ea74" }); s.gistPrivate = new s("gist-private", { fontCharacter: "\\ea75" }); s.gitForkPrivate = new s("git-fork-private", { fontCharacter: "\\ea75" }); s.lock = new s("lock", { fontCharacter: "\\ea75" }); s.mirrorPrivate = new s("mirror-private", { fontCharacter: "\\ea75" }); s.close = new s("close", { fontCharacter: "\\ea76" }); s.removeClose = new s("remove-close", { fontCharacter: "\\ea76" }); s.x = new s("x", { fontCharacter: "\\ea76" }); s.repoSync = new s("repo-sync", { fontCharacter: "\\ea77" }); s.sync = new s("sync", { fontCharacter: "\\ea77" }); s.clone = new s("clone", { fontCharacter: "\\ea78" }); s.desktopDownload = new s("desktop-download", { fontCharacter: "\\ea78" }); s.beaker = new s("beaker", { fontCharacter: "\\ea79" }); s.microscope = new s("microscope", { fontCharacter: "\\ea79" }); s.vm = new s("vm", { fontCharacter: "\\ea7a" }); s.deviceDesktop = new s("device-desktop", { fontCharacter: "\\ea7a" }); s.file = new s("file", { fontCharacter: "\\ea7b" }); s.fileText = new s("file-text", { fontCharacter: "\\ea7b" }); s.more = new s("more", { fontCharacter: "\\ea7c" }); s.ellipsis = new s("ellipsis", { fontCharacter: "\\ea7c" }); s.kebabHorizontal = new s("kebab-horizontal", { fontCharacter: "\\ea7c" }); s.mailReply = new s("mail-reply", { fontCharacter: "\\ea7d" }); s.reply = new s("reply", { fontCharacter: "\\ea7d" }); s.organization = new s("organization", { fontCharacter: "\\ea7e" }); s.organizationFilled = new s("organization-filled", { fontCharacter: "\\ea7e" }); s.organizationOutline = new s("organization-outline", { fontCharacter: "\\ea7e" }); s.newFile = new s("new-file", { fontCharacter: "\\ea7f" }); s.fileAdd = new s("file-add", { fontCharacter: "\\ea7f" }); s.newFolder = new s("new-folder", { fontCharacter: "\\ea80" }); s.fileDirectoryCreate = new s("file-directory-create", { fontCharacter: "\\ea80" }); s.trash = new s("trash", { fontCharacter: "\\ea81" }); s.trashcan = new s("trashcan", { fontCharacter: "\\ea81" }); s.history = new s("history", { fontCharacter: "\\ea82" }); s.clock = new s("clock", { fontCharacter: "\\ea82" }); s.folder = new s("folder", { fontCharacter: "\\ea83" }); s.fileDirectory = new s("file-directory", { fontCharacter: "\\ea83" }); s.symbolFolder = new s("symbol-folder", { fontCharacter: "\\ea83" }); s.logoGithub = new s("logo-github", { fontCharacter: "\\ea84" }); s.markGithub = new s("mark-github", { fontCharacter: "\\ea84" }); s.github = new s("github", { fontCharacter: "\\ea84" }); s.terminal = new s("terminal", { fontCharacter: "\\ea85" }); s.console = new s("console", { fontCharacter: "\\ea85" }); s.repl = new s("repl", { fontCharacter: "\\ea85" }); s.zap = new s("zap", { fontCharacter: "\\ea86" }); s.symbolEvent = new s("symbol-event", { fontCharacter: "\\ea86" }); s.error = new s("error", { fontCharacter: "\\ea87" }); s.stop = new s("stop", { fontCharacter: "\\ea87" }); s.variable = new s("variable", { fontCharacter: "\\ea88" }); s.symbolVariable = new s("symbol-variable", { fontCharacter: "\\ea88" }); s.array = new s("array", { fontCharacter: "\\ea8a" }); s.symbolArray = new s("symbol-array", { fontCharacter: "\\ea8a" }); s.symbolModule = new s("symbol-module", { fontCharacter: "\\ea8b" }); s.symbolPackage = new s("symbol-package", { fontCharacter: "\\ea8b" }); s.symbolNamespace = new s("symbol-namespace", { fontCharacter: "\\ea8b" }); s.symbolObject = new s("symbol-object", { fontCharacter: "\\ea8b" }); s.symbolMethod = new s("symbol-method", { fontCharacter: "\\ea8c" }); s.symbolFunction = new s("symbol-function", { fontCharacter: "\\ea8c" }); s.symbolConstructor = new s("symbol-constructor", { fontCharacter: "\\ea8c" }); s.symbolBoolean = new s("symbol-boolean", { fontCharacter: "\\ea8f" }); s.symbolNull = new s("symbol-null", { fontCharacter: "\\ea8f" }); s.symbolNumeric = new s("symbol-numeric", { fontCharacter: "\\ea90" }); s.symbolNumber = new s("symbol-number", { fontCharacter: "\\ea90" }); s.symbolStructure = new s("symbol-structure", { fontCharacter: "\\ea91" }); s.symbolStruct = new s("symbol-struct", { fontCharacter: "\\ea91" }); s.symbolParameter = new s("symbol-parameter", { fontCharacter: "\\ea92" }); s.symbolTypeParameter = new s("symbol-type-parameter", { fontCharacter: "\\ea92" }); s.symbolKey = new s("symbol-key", { fontCharacter: "\\ea93" }); s.symbolText = new s("symbol-text", { fontCharacter: "\\ea93" }); s.symbolReference = new s("symbol-reference", { fontCharacter: "\\ea94" }); s.goToFile = new s("go-to-file", { fontCharacter: "\\ea94" }); s.symbolEnum = new s("symbol-enum", { fontCharacter: "\\ea95" }); s.symbolValue = new s("symbol-value", { fontCharacter: "\\ea95" }); s.symbolRuler = new s("symbol-ruler", { fontCharacter: "\\ea96" }); s.symbolUnit = new s("symbol-unit", { fontCharacter: "\\ea96" }); s.activateBreakpoints = new s("activate-breakpoints", { fontCharacter: "\\ea97" }); s.archive = new s("archive", { fontCharacter: "\\ea98" }); s.arrowBoth = new s("arrow-both", { fontCharacter: "\\ea99" }); s.arrowDown = new s("arrow-down", { fontCharacter: "\\ea9a" }); s.arrowLeft = new s("arrow-left", { fontCharacter: "\\ea9b" }); s.arrowRight = new s("arrow-right", { fontCharacter: "\\ea9c" }); s.arrowSmallDown = new s("arrow-small-down", { fontCharacter: "\\ea9d" }); s.arrowSmallLeft = new s("arrow-small-left", { fontCharacter: "\\ea9e" }); s.arrowSmallRight = new s("arrow-small-right", { fontCharacter: "\\ea9f" }); s.arrowSmallUp = new s("arrow-small-up", { fontCharacter: "\\eaa0" }); s.arrowUp = new s("arrow-up", { fontCharacter: "\\eaa1" }); s.bell = new s("bell", { fontCharacter: "\\eaa2" }); s.bold = new s("bold", { fontCharacter: "\\eaa3" }); s.book = new s("book", { fontCharacter: "\\eaa4" }); s.bookmark = new s("bookmark", { fontCharacter: "\\eaa5" }); s.debugBreakpointConditionalUnverified = new s("debug-breakpoint-conditional-unverified", { fontCharacter: "\\eaa6" }); s.debugBreakpointConditional = new s("debug-breakpoint-conditional", { fontCharacter: "\\eaa7" }); s.debugBreakpointConditionalDisabled = new s("debug-breakpoint-conditional-disabled", { fontCharacter: "\\eaa7" }); s.debugBreakpointDataUnverified = new s("debug-breakpoint-data-unverified", { fontCharacter: "\\eaa8" }); s.debugBreakpointData = new s("debug-breakpoint-data", { fontCharacter: "\\eaa9" }); s.debugBreakpointDataDisabled = new s("debug-breakpoint-data-disabled", { fontCharacter: "\\eaa9" }); s.debugBreakpointLogUnverified = new s("debug-breakpoint-log-unverified", { fontCharacter: "\\eaaa" }); s.debugBreakpointLog = new s("debug-breakpoint-log", { fontCharacter: "\\eaab" }); s.debugBreakpointLogDisabled = new s("debug-breakpoint-log-disabled", { fontCharacter: "\\eaab" }); s.briefcase = new s("briefcase", { fontCharacter: "\\eaac" }); s.broadcast = new s("broadcast", { fontCharacter: "\\eaad" }); s.browser = new s("browser", { fontCharacter: "\\eaae" }); s.bug = new s("bug", { fontCharacter: "\\eaaf" }); s.calendar = new s("calendar", { fontCharacter: "\\eab0" }); s.caseSensitive = new s("case-sensitive", { fontCharacter: "\\eab1" }); s.check = new s("check", { fontCharacter: "\\eab2" }); s.checklist = new s("checklist", { fontCharacter: "\\eab3" }); s.chevronDown = new s("chevron-down", { fontCharacter: "\\eab4" }); s.dropDownButton = new s("drop-down-button", s.chevronDown.definition); s.chevronLeft = new s("chevron-left", { fontCharacter: "\\eab5" }); s.chevronRight = new s("chevron-right", { fontCharacter: "\\eab6" }); s.chevronUp = new s("chevron-up", { fontCharacter: "\\eab7" }); s.chromeClose = new s("chrome-close", { fontCharacter: "\\eab8" }); s.chromeMaximize = new s("chrome-maximize", { fontCharacter: "\\eab9" }); s.chromeMinimize = new s("chrome-minimize", { fontCharacter: "\\eaba" }); s.chromeRestore = new s("chrome-restore", { fontCharacter: "\\eabb" }); s.circleOutline = new s("circle-outline", { fontCharacter: "\\eabc" }); s.debugBreakpointUnverified = new s("debug-breakpoint-unverified", { fontCharacter: "\\eabc" }); s.circleSlash = new s("circle-slash", { fontCharacter: "\\eabd" }); s.circuitBoard = new s("circuit-board", { fontCharacter: "\\eabe" }); s.clearAll = new s("clear-all", { fontCharacter: "\\eabf" }); s.clippy = new s("clippy", { fontCharacter: "\\eac0" }); s.closeAll = new s("close-all", { fontCharacter: "\\eac1" }); s.cloudDownload = new s("cloud-download", { fontCharacter: "\\eac2" }); s.cloudUpload = new s("cloud-upload", { fontCharacter: "\\eac3" }); s.code = new s("code", { fontCharacter: "\\eac4" }); s.collapseAll = new s("collapse-all", { fontCharacter: "\\eac5" }); s.colorMode = new s("color-mode", { fontCharacter: "\\eac6" }); s.commentDiscussion = new s("comment-discussion", { fontCharacter: "\\eac7" }); s.compareChanges = new s("compare-changes", { fontCharacter: "\\eafd" }); s.creditCard = new s("credit-card", { fontCharacter: "\\eac9" }); s.dash = new s("dash", { fontCharacter: "\\eacc" }); s.dashboard = new s("dashboard", { fontCharacter: "\\eacd" }); s.database = new s("database", { fontCharacter: "\\eace" }); s.debugContinue = new s("debug-continue", { fontCharacter: "\\eacf" }); s.debugDisconnect = new s("debug-disconnect", { fontCharacter: "\\ead0" }); s.debugPause = new s("debug-pause", { fontCharacter: "\\ead1" }); s.debugRestart = new s("debug-restart", { fontCharacter: "\\ead2" }); s.debugStart = new s("debug-start", { fontCharacter: "\\ead3" }); s.debugStepInto = new s("debug-step-into", { fontCharacter: "\\ead4" }); s.debugStepOut = new s("debug-step-out", { fontCharacter: "\\ead5" }); s.debugStepOver = new s("debug-step-over", { fontCharacter: "\\ead6" }); s.debugStop = new s("debug-stop", { fontCharacter: "\\ead7" }); s.debug = new s("debug", { fontCharacter: "\\ead8" }); s.deviceCameraVideo = new s("device-camera-video", { fontCharacter: "\\ead9" }); s.deviceCamera = new s("device-camera", { fontCharacter: "\\eada" }); s.deviceMobile = new s("device-mobile", { fontCharacter: "\\eadb" }); s.diffAdded = new s("diff-added", { fontCharacter: "\\eadc" }); s.diffIgnored = new s("diff-ignored", { fontCharacter: "\\eadd" }); s.diffModified = new s("diff-modified", { fontCharacter: "\\eade" }); s.diffRemoved = new s("diff-removed", { fontCharacter: "\\eadf" }); s.diffRenamed = new s("diff-renamed", { fontCharacter: "\\eae0" }); s.diff = new s("diff", { fontCharacter: "\\eae1" }); s.discard = new s("discard", { fontCharacter: "\\eae2" }); s.editorLayout = new s("editor-layout", { fontCharacter: "\\eae3" }); s.emptyWindow = new s("empty-window", { fontCharacter: "\\eae4" }); s.exclude = new s("exclude", { fontCharacter: "\\eae5" }); s.extensions = new s("extensions", { fontCharacter: "\\eae6" }); s.eyeClosed = new s("eye-closed", { fontCharacter: "\\eae7" }); s.fileBinary = new s("file-binary", { fontCharacter: "\\eae8" }); s.fileCode = new s("file-code", { fontCharacter: "\\eae9" }); s.fileMedia = new s("file-media", { fontCharacter: "\\eaea" }); s.filePdf = new s("file-pdf", { fontCharacter: "\\eaeb" }); s.fileSubmodule = new s("file-submodule", { fontCharacter: "\\eaec" }); s.fileSymlinkDirectory = new s("file-symlink-directory", { fontCharacter: "\\eaed" }); s.fileSymlinkFile = new s("file-symlink-file", { fontCharacter: "\\eaee" }); s.fileZip = new s("file-zip", { fontCharacter: "\\eaef" }); s.files = new s("files", { fontCharacter: "\\eaf0" }); s.filter = new s("filter", { fontCharacter: "\\eaf1" }); s.flame = new s("flame", { fontCharacter: "\\eaf2" }); s.foldDown = new s("fold-down", { fontCharacter: "\\eaf3" }); s.foldUp = new s("fold-up", { fontCharacter: "\\eaf4" }); s.fold = new s("fold", { fontCharacter: "\\eaf5" }); s.folderActive = new s("folder-active", { fontCharacter: "\\eaf6" }); s.folderOpened = new s("folder-opened", { fontCharacter: "\\eaf7" }); s.gear = new s("gear", { fontCharacter: "\\eaf8" }); s.gift = new s("gift", { fontCharacter: "\\eaf9" }); s.gistSecret = new s("gist-secret", { fontCharacter: "\\eafa" }); s.gist = new s("gist", { fontCharacter: "\\eafb" }); s.gitCommit = new s("git-commit", { fontCharacter: "\\eafc" }); s.gitCompare = new s("git-compare", { fontCharacter: "\\eafd" }); s.gitMerge = new s("git-merge", { fontCharacter: "\\eafe" }); s.githubAction = new s("github-action", { fontCharacter: "\\eaff" }); s.githubAlt = new s("github-alt", { fontCharacter: "\\eb00" }); s.globe = new s("globe", { fontCharacter: "\\eb01" }); s.grabber = new s("grabber", { fontCharacter: "\\eb02" }); s.graph = new s("graph", { fontCharacter: "\\eb03" }); s.gripper = new s("gripper", { fontCharacter: "\\eb04" }); s.heart = new s("heart", { fontCharacter: "\\eb05" }); s.home = new s("home", { fontCharacter: "\\eb06" }); s.horizontalRule = new s("horizontal-rule", { fontCharacter: "\\eb07" }); s.hubot = new s("hubot", { fontCharacter: "\\eb08" }); s.inbox = new s("inbox", { fontCharacter: "\\eb09" }); s.issueClosed = new s("issue-closed", { fontCharacter: "\\eba4" }); s.issueReopened = new s("issue-reopened", { fontCharacter: "\\eb0b" }); s.issues = new s("issues", { fontCharacter: "\\eb0c" }); s.italic = new s("italic", { fontCharacter: "\\eb0d" }); s.jersey = new s("jersey", { fontCharacter: "\\eb0e" }); s.json = new s("json", { fontCharacter: "\\eb0f" }); s.kebabVertical = new s("kebab-vertical", { fontCharacter: "\\eb10" }); s.key = new s("key", { fontCharacter: "\\eb11" }); s.law = new s("law", { fontCharacter: "\\eb12" }); s.lightbulbAutofix = new s("lightbulb-autofix", { fontCharacter: "\\eb13" }); s.linkExternal = new s("link-external", { fontCharacter: "\\eb14" }); s.link = new s("link", { fontCharacter: "\\eb15" }); s.listOrdered = new s("list-ordered", { fontCharacter: "\\eb16" }); s.listUnordered = new s("list-unordered", { fontCharacter: "\\eb17" }); s.liveShare = new s("live-share", { fontCharacter: "\\eb18" }); s.loading = new s("loading", { fontCharacter: "\\eb19" }); s.location = new s("location", { fontCharacter: "\\eb1a" }); s.mailRead = new s("mail-read", { fontCharacter: "\\eb1b" }); s.mail = new s("mail", { fontCharacter: "\\eb1c" }); s.markdown = new s("markdown", { fontCharacter: "\\eb1d" }); s.megaphone = new s("megaphone", { fontCharacter: "\\eb1e" }); s.mention = new s("mention", { fontCharacter: "\\eb1f" }); s.milestone = new s("milestone", { fontCharacter: "\\eb20" }); s.mortarBoard = new s("mortar-board", { fontCharacter: "\\eb21" }); s.move = new s("move", { fontCharacter: "\\eb22" }); s.multipleWindows = new s("multiple-windows", { fontCharacter: "\\eb23" }); s.mute = new s("mute", { fontCharacter: "\\eb24" }); s.noNewline = new s("no-newline", { fontCharacter: "\\eb25" }); s.note = new s("note", { fontCharacter: "\\eb26" }); s.octoface = new s("octoface", { fontCharacter: "\\eb27" }); s.openPreview = new s("open-preview", { fontCharacter: "\\eb28" }); s.package_ = new s("package", { fontCharacter: "\\eb29" }); s.paintcan = new s("paintcan", { fontCharacter: "\\eb2a" }); s.pin = new s("pin", { fontCharacter: "\\eb2b" }); s.play = new s("play", { fontCharacter: "\\eb2c" }); s.run = new s("run", { fontCharacter: "\\eb2c" }); s.plug = new s("plug", { fontCharacter: "\\eb2d" }); s.preserveCase = new s("preserve-case", { fontCharacter: "\\eb2e" }); s.preview = new s("preview", { fontCharacter: "\\eb2f" }); s.project = new s("project", { fontCharacter: "\\eb30" }); s.pulse = new s("pulse", { fontCharacter: "\\eb31" }); s.question = new s("question", { fontCharacter: "\\eb32" }); s.quote = new s("quote", { fontCharacter: "\\eb33" }); s.radioTower = new s("radio-tower", { fontCharacter: "\\eb34" }); s.reactions = new s("reactions", { fontCharacter: "\\eb35" }); s.references = new s("references", { fontCharacter: "\\eb36" }); s.refresh = new s("refresh", { fontCharacter: "\\eb37" }); s.regex = new s("regex", { fontCharacter: "\\eb38" }); s.remoteExplorer = new s("remote-explorer", { fontCharacter: "\\eb39" }); s.remote = new s("remote", { fontCharacter: "\\eb3a" }); s.remove = new s("remove", { fontCharacter: "\\eb3b" }); s.replaceAll = new s("replace-all", { fontCharacter: "\\eb3c" }); s.replace = new s("replace", { fontCharacter: "\\eb3d" }); s.repoClone = new s("repo-clone", { fontCharacter: "\\eb3e" }); s.repoForcePush = new s("repo-force-push", { fontCharacter: "\\eb3f" }); s.repoPull = new s("repo-pull", { fontCharacter: "\\eb40" }); s.repoPush = new s("repo-push", { fontCharacter: "\\eb41" }); s.report = new s("report", { fontCharacter: "\\eb42" }); s.requestChanges = new s("request-changes", { fontCharacter: "\\eb43" }); s.rocket = new s("rocket", { fontCharacter: "\\eb44" }); s.rootFolderOpened = new s("root-folder-opened", { fontCharacter: "\\eb45" }); s.rootFolder = new s("root-folder", { fontCharacter: "\\eb46" }); s.rss = new s("rss", { fontCharacter: "\\eb47" }); s.ruby = new s("ruby", { fontCharacter: "\\eb48" }); s.saveAll = new s("save-all", { fontCharacter: "\\eb49" }); s.saveAs = new s("save-as", { fontCharacter: "\\eb4a" }); s.save = new s("save", { fontCharacter: "\\eb4b" }); s.screenFull = new s("screen-full", { fontCharacter: "\\eb4c" }); s.screenNormal = new s("screen-normal", { fontCharacter: "\\eb4d" }); s.searchStop = new s("search-stop", { fontCharacter: "\\eb4e" }); s.server = new s("server", { fontCharacter: "\\eb50" }); s.settingsGear = new s("settings-gear", { fontCharacter: "\\eb51" }); s.settings = new s("settings", { fontCharacter: "\\eb52" }); s.shield = new s("shield", { fontCharacter: "\\eb53" }); s.smiley = new s("smiley", { fontCharacter: "\\eb54" }); s.sortPrecedence = new s("sort-precedence", { fontCharacter: "\\eb55" }); s.splitHorizontal = new s("split-horizontal", { fontCharacter: "\\eb56" }); s.splitVertical = new s("split-vertical", { fontCharacter: "\\eb57" }); s.squirrel = new s("squirrel", { fontCharacter: "\\eb58" }); s.starFull = new s("star-full", { fontCharacter: "\\eb59" }); s.starHalf = new s("star-half", { fontCharacter: "\\eb5a" }); s.symbolClass = new s("symbol-class", { fontCharacter: "\\eb5b" }); s.symbolColor = new s("symbol-color", { fontCharacter: "\\eb5c" }); s.symbolCustomColor = new s("symbol-customcolor", { fontCharacter: "\\eb5c" }); s.symbolConstant = new s("symbol-constant", { fontCharacter: "\\eb5d" }); s.symbolEnumMember = new s("symbol-enum-member", { fontCharacter: "\\eb5e" }); s.symbolField = new s("symbol-field", { fontCharacter: "\\eb5f" }); s.symbolFile = new s("symbol-file", { fontCharacter: "\\eb60" }); s.symbolInterface = new s("symbol-interface", { fontCharacter: "\\eb61" }); s.symbolKeyword = new s("symbol-keyword", { fontCharacter: "\\eb62" }); s.symbolMisc = new s("symbol-misc", { fontCharacter: "\\eb63" }); s.symbolOperator = new s("symbol-operator", { fontCharacter: "\\eb64" }); s.symbolProperty = new s("symbol-property", { fontCharacter: "\\eb65" }); s.wrench = new s("wrench", { fontCharacter: "\\eb65" }); s.wrenchSubaction = new s("wrench-subaction", { fontCharacter: "\\eb65" }); s.symbolSnippet = new s("symbol-snippet", { fontCharacter: "\\eb66" }); s.tasklist = new s("tasklist", { fontCharacter: "\\eb67" }); s.telescope = new s("telescope", { fontCharacter: "\\eb68" }); s.textSize = new s("text-size", { fontCharacter: "\\eb69" }); s.threeBars = new s("three-bars", { fontCharacter: "\\eb6a" }); s.thumbsdown = new s("thumbsdown", { fontCharacter: "\\eb6b" }); s.thumbsup = new s("thumbsup", { fontCharacter: "\\eb6c" }); s.tools = new s("tools", { fontCharacter: "\\eb6d" }); s.triangleDown = new s("triangle-down", { fontCharacter: "\\eb6e" }); s.triangleLeft = new s("triangle-left", { fontCharacter: "\\eb6f" }); s.triangleRight = new s("triangle-right", { fontCharacter: "\\eb70" }); s.triangleUp = new s("triangle-up", { fontCharacter: "\\eb71" }); s.twitter = new s("twitter", { fontCharacter: "\\eb72" }); s.unfold = new s("unfold", { fontCharacter: "\\eb73" }); s.unlock = new s("unlock", { fontCharacter: "\\eb74" }); s.unmute = new s("unmute", { fontCharacter: "\\eb75" }); s.unverified = new s("unverified", { fontCharacter: "\\eb76" }); s.verified = new s("verified", { fontCharacter: "\\eb77" }); s.versions = new s("versions", { fontCharacter: "\\eb78" }); s.vmActive = new s("vm-active", { fontCharacter: "\\eb79" }); s.vmOutline = new s("vm-outline", { fontCharacter: "\\eb7a" }); s.vmRunning = new s("vm-running", { fontCharacter: "\\eb7b" }); s.watch = new s("watch", { fontCharacter: "\\eb7c" }); s.whitespace = new s("whitespace", { fontCharacter: "\\eb7d" }); s.wholeWord = new s("whole-word", { fontCharacter: "\\eb7e" }); s.window = new s("window", { fontCharacter: "\\eb7f" }); s.wordWrap = new s("word-wrap", { fontCharacter: "\\eb80" }); s.zoomIn = new s("zoom-in", { fontCharacter: "\\eb81" }); s.zoomOut = new s("zoom-out", { fontCharacter: "\\eb82" }); s.listFilter = new s("list-filter", { fontCharacter: "\\eb83" }); s.listFlat = new s("list-flat", { fontCharacter: "\\eb84" }); s.listSelection = new s("list-selection", { fontCharacter: "\\eb85" }); s.selection = new s("selection", { fontCharacter: "\\eb85" }); s.listTree = new s("list-tree", { fontCharacter: "\\eb86" }); s.debugBreakpointFunctionUnverified = new s("debug-breakpoint-function-unverified", { fontCharacter: "\\eb87" }); s.debugBreakpointFunction = new s("debug-breakpoint-function", { fontCharacter: "\\eb88" }); s.debugBreakpointFunctionDisabled = new s("debug-breakpoint-function-disabled", { fontCharacter: "\\eb88" }); s.debugStackframeActive = new s("debug-stackframe-active", { fontCharacter: "\\eb89" }); s.debugStackframeDot = new s("debug-stackframe-dot", { fontCharacter: "\\eb8a" }); s.debugStackframe = new s("debug-stackframe", { fontCharacter: "\\eb8b" }); s.debugStackframeFocused = new s("debug-stackframe-focused", { fontCharacter: "\\eb8b" }); s.debugBreakpointUnsupported = new s("debug-breakpoint-unsupported", { fontCharacter: "\\eb8c" }); s.symbolString = new s("symbol-string", { fontCharacter: "\\eb8d" }); s.debugReverseContinue = new s("debug-reverse-continue", { fontCharacter: "\\eb8e" }); s.debugStepBack = new s("debug-step-back", { fontCharacter: "\\eb8f" }); s.debugRestartFrame = new s("debug-restart-frame", { fontCharacter: "\\eb90" }); s.callIncoming = new s("call-incoming", { fontCharacter: "\\eb92" }); s.callOutgoing = new s("call-outgoing", { fontCharacter: "\\eb93" }); s.menu = new s("menu", { fontCharacter: "\\eb94" }); s.expandAll = new s("expand-all", { fontCharacter: "\\eb95" }); s.feedback = new s("feedback", { fontCharacter: "\\eb96" }); s.groupByRefType = new s("group-by-ref-type", { fontCharacter: "\\eb97" }); s.ungroupByRefType = new s("ungroup-by-ref-type", { fontCharacter: "\\eb98" }); s.account = new s("account", { fontCharacter: "\\eb99" }); s.bellDot = new s("bell-dot", { fontCharacter: "\\eb9a" }); s.debugConsole = new s("debug-console", { fontCharacter: "\\eb9b" }); s.library = new s("library", { fontCharacter: "\\eb9c" }); s.output = new s("output", { fontCharacter: "\\eb9d" }); s.runAll = new s("run-all", { fontCharacter: "\\eb9e" }); s.syncIgnored = new s("sync-ignored", { fontCharacter: "\\eb9f" }); s.pinned = new s("pinned", { fontCharacter: "\\eba0" }); s.githubInverted = new s("github-inverted", { fontCharacter: "\\eba1" }); s.debugAlt = new s("debug-alt", { fontCharacter: "\\eb91" }); s.serverProcess = new s("server-process", { fontCharacter: "\\eba2" }); s.serverEnvironment = new s("server-environment", { fontCharacter: "\\eba3" }); s.pass = new s("pass", { fontCharacter: "\\eba4" }); s.stopCircle = new s("stop-circle", { fontCharacter: "\\eba5" }); s.playCircle = new s("play-circle", { fontCharacter: "\\eba6" }); s.record = new s("record", { fontCharacter: "\\eba7" }); s.debugAltSmall = new s("debug-alt-small", { fontCharacter: "\\eba8" }); s.vmConnect = new s("vm-connect", { fontCharacter: "\\eba9" }); s.cloud = new s("cloud", { fontCharacter: "\\ebaa" }); s.merge = new s("merge", { fontCharacter: "\\ebab" }); s.exportIcon = new s("export", { fontCharacter: "\\ebac" }); s.graphLeft = new s("graph-left", { fontCharacter: "\\ebad" }); s.magnet = new s("magnet", { fontCharacter: "\\ebae" }); s.notebook = new s("notebook", { fontCharacter: "\\ebaf" }); s.redo = new s("redo", { fontCharacter: "\\ebb0" }); s.checkAll = new s("check-all", { fontCharacter: "\\ebb1" }); s.pinnedDirty = new s("pinned-dirty", { fontCharacter: "\\ebb2" }); s.passFilled = new s("pass-filled", { fontCharacter: "\\ebb3" }); s.circleLargeFilled = new s("circle-large-filled", { fontCharacter: "\\ebb4" }); s.circleLargeOutline = new s("circle-large-outline", { fontCharacter: "\\ebb5" }); s.combine = new s("combine", { fontCharacter: "\\ebb6" }); s.gather = new s("gather", { fontCharacter: "\\ebb6" }); s.table = new s("table", { fontCharacter: "\\ebb7" }); s.variableGroup = new s("variable-group", { fontCharacter: "\\ebb8" }); s.typeHierarchy = new s("type-hierarchy", { fontCharacter: "\\ebb9" }); s.typeHierarchySub = new s("type-hierarchy-sub", { fontCharacter: "\\ebba" }); s.typeHierarchySuper = new s("type-hierarchy-super", { fontCharacter: "\\ebbb" }); s.gitPullRequestCreate = new s("git-pull-request-create", { fontCharacter: "\\ebbc" }); s.runAbove = new s("run-above", { fontCharacter: "\\ebbd" }); s.runBelow = new s("run-below", { fontCharacter: "\\ebbe" }); s.notebookTemplate = new s("notebook-template", { fontCharacter: "\\ebbf" }); s.debugRerun = new s("debug-rerun", { fontCharacter: "\\ebc0" }); s.workspaceTrusted = new s("workspace-trusted", { fontCharacter: "\\ebc1" }); s.workspaceUntrusted = new s("workspace-untrusted", { fontCharacter: "\\ebc2" }); s.workspaceUnspecified = new s("workspace-unspecified", { fontCharacter: "\\ebc3" }); s.terminalCmd = new s("terminal-cmd", { fontCharacter: "\\ebc4" }); s.terminalDebian = new s("terminal-debian", { fontCharacter: "\\ebc5" }); s.terminalLinux = new s("terminal-linux", { fontCharacter: "\\ebc6" }); s.terminalPowershell = new s("terminal-powershell", { fontCharacter: "\\ebc7" }); s.terminalTmux = new s("terminal-tmux", { fontCharacter: "\\ebc8" }); s.terminalUbuntu = new s("terminal-ubuntu", { fontCharacter: "\\ebc9" }); s.terminalBash = new s("terminal-bash", { fontCharacter: "\\ebca" }); s.arrowSwap = new s("arrow-swap", { fontCharacter: "\\ebcb" }); s.copy = new s("copy", { fontCharacter: "\\ebcc" }); s.personAdd = new s("person-add", { fontCharacter: "\\ebcd" }); s.filterFilled = new s("filter-filled", { fontCharacter: "\\ebce" }); s.wand = new s("wand", { fontCharacter: "\\ebcf" }); s.debugLineByLine = new s("debug-line-by-line", { fontCharacter: "\\ebd0" }); s.inspect = new s("inspect", { fontCharacter: "\\ebd1" }); s.layers = new s("layers", { fontCharacter: "\\ebd2" }); s.layersDot = new s("layers-dot", { fontCharacter: "\\ebd3" }); s.layersActive = new s("layers-active", { fontCharacter: "\\ebd4" }); s.compass = new s("compass", { fontCharacter: "\\ebd5" }); s.compassDot = new s("compass-dot", { fontCharacter: "\\ebd6" }); s.compassActive = new s("compass-active", { fontCharacter: "\\ebd7" }); s.azure = new s("azure", { fontCharacter: "\\ebd8" }); s.issueDraft = new s("issue-draft", { fontCharacter: "\\ebd9" }); s.gitPullRequestClosed = new s("git-pull-request-closed", { fontCharacter: "\\ebda" }); s.gitPullRequestDraft = new s("git-pull-request-draft", { fontCharacter: "\\ebdb" }); s.debugAll = new s("debug-all", { fontCharacter: "\\ebdc" }); s.debugCoverage = new s("debug-coverage", { fontCharacter: "\\ebdd" }); s.runErrors = new s("run-errors", { fontCharacter: "\\ebde" }); s.folderLibrary = new s("folder-library", { fontCharacter: "\\ebdf" }); s.debugContinueSmall = new s("debug-continue-small", { fontCharacter: "\\ebe0" }); s.beakerStop = new s("beaker-stop", { fontCharacter: "\\ebe1" }); s.graphLine = new s("graph-line", { fontCharacter: "\\ebe2" }); s.graphScatter = new s("graph-scatter", { fontCharacter: "\\ebe3" }); s.pieChart = new s("pie-chart", { fontCharacter: "\\ebe4" }); s.bracket = new s("bracket", s.json.definition); s.bracketDot = new s("bracket-dot", { fontCharacter: "\\ebe5" }); s.bracketError = new s("bracket-error", { fontCharacter: "\\ebe6" }); s.lockSmall = new s("lock-small", { fontCharacter: "\\ebe7" }); s.azureDevops = new s("azure-devops", { fontCharacter: "\\ebe8" }); s.verifiedFilled = new s("verified-filled", { fontCharacter: "\\ebe9" }); s.newLine = new s("newline", { fontCharacter: "\\ebea" }); s.layout = new s("layout", { fontCharacter: "\\ebeb" }); s.layoutActivitybarLeft = new s("layout-activitybar-left", { fontCharacter: "\\ebec" }); s.layoutActivitybarRight = new s("layout-activitybar-right", { fontCharacter: "\\ebed" }); s.layoutPanelLeft = new s("layout-panel-left", { fontCharacter: "\\ebee" }); s.layoutPanelCenter = new s("layout-panel-center", { fontCharacter: "\\ebef" }); s.layoutPanelJustify = new s("layout-panel-justify", { fontCharacter: "\\ebf0" }); s.layoutPanelRight = new s("layout-panel-right", { fontCharacter: "\\ebf1" }); s.layoutPanel = new s("layout-panel", { fontCharacter: "\\ebf2" }); s.layoutSidebarLeft = new s("layout-sidebar-left", { fontCharacter: "\\ebf3" }); s.layoutSidebarRight = new s("layout-sidebar-right", { fontCharacter: "\\ebf4" }); s.layoutStatusbar = new s("layout-statusbar", { fontCharacter: "\\ebf5" }); s.layoutMenubar = new s("layout-menubar", { fontCharacter: "\\ebf6" }); s.layoutCentered = new s("layout-centered", { fontCharacter: "\\ebf7" }); s.target = new s("target", { fontCharacter: "\\ebf8" }); s.indent = new s("indent", { fontCharacter: "\\ebf9" }); s.recordSmall = new s("record-small", { fontCharacter: "\\ebfa" }); s.errorSmall = new s("error-small", { fontCharacter: "\\ebfb" }); s.arrowCircleDown = new s("arrow-circle-down", { fontCharacter: "\\ebfc" }); s.arrowCircleLeft = new s("arrow-circle-left", { fontCharacter: "\\ebfd" }); s.arrowCircleRight = new s("arrow-circle-right", { fontCharacter: "\\ebfe" }); s.arrowCircleUp = new s("arrow-circle-up", { fontCharacter: "\\ebff" }); s.dialogError = new s("dialog-error", s.error.definition); s.dialogWarning = new s("dialog-warning", s.warning.definition); s.dialogInfo = new s("dialog-info", s.info.definition); s.dialogClose = new s("dialog-close", s.close.definition); s.treeItemExpanded = new s("tree-item-expanded", s.chevronDown.definition); s.treeFilterOnTypeOn = new s("tree-filter-on-type-on", s.listFilter.definition); s.treeFilterOnTypeOff = new s("tree-filter-on-type-off", s.listSelection.definition); s.treeFilterClear = new s("tree-filter-clear", s.close.definition); s.treeItemLoading = new s("tree-item-loading", s.loading.definition); s.menuSelection = new s("menu-selection", s.check.definition); s.menuSubmenu = new s("menu-submenu", s.chevronRight.definition); s.menuBarMore = new s("menubar-more", s.more.definition); s.scrollbarButtonLeft = new s("scrollbar-button-left", s.triangleLeft.definition); s.scrollbarButtonRight = new s("scrollbar-button-right", s.triangleRight.definition); s.scrollbarButtonUp = new s("scrollbar-button-up", s.triangleUp.definition); s.scrollbarButtonDown = new s("scrollbar-button-down", s.triangleDown.definition); s.toolBarMore = new s("toolbar-more", s.more.definition); s.quickInputBack = new s("quick-input-back", s.arrowLeft.definition); var Ni; (function(e) { e.iconNameSegment = "[A-Za-z0-9]+", e.iconNameExpression = "[A-Za-z0-9-]+", e.iconModifierExpression = "~[A-Za-z]+", e.iconNameCharacter = "[A-Za-z0-9~-]"; const t = new RegExp(`^(${e.iconNameExpression})(${e.iconModifierExpression})?$`); function n(a) { if (a instanceof s) return ["codicon", "codicon-" + a.id]; const o = t.exec(a.id); if (!o) return n(s.error); let [, l, h] = o; const c = ["codicon", "codicon-" + l]; return h && c.push("codicon-modifier-" + h.substr(1)), c; } e.asClassNameArray = n; function r(a) { return n(a).join(" "); } e.asClassName = r; function i(a) { return "." + n(a).join("."); } e.asCSSSelector = i; })(Ni || (Ni = {})); class ic { constructor(t, n, r) { this._tokenBrand = void 0, this.offset = t, this.type = n, this.language = r; } toString() { return "(" + this.offset + ", " + this.type + ")"; } } var Pi; (function(e) { const t = /* @__PURE__ */ new Map(); t.set(0, s.symbolMethod), t.set(1, s.symbolFunction), t.set(2, s.symbolConstructor), t.set(3, s.symbolField), t.set(4, s.symbolVariable), t.set(5, s.symbolClass), t.set(6, s.symbolStruct), t.set(7, s.symbolInterface), t.set(8, s.symbolModule), t.set(9, s.symbolProperty), t.set(10, s.symbolEvent), t.set(11, s.symbolOperator), t.set(12, s.symbolUnit), t.set(13, s.symbolValue), t.set(15, s.symbolEnum), t.set(14, s.symbolConstant), t.set(15, s.symbolEnum), t.set(16, s.symbolEnumMember), t.set(17, s.symbolKeyword), t.set(27, s.symbolSnippet), t.set(18, s.symbolText), t.set(19, s.symbolColor), t.set(20, s.symbolFile), t.set(21, s.symbolReference), t.set(22, s.symbolCustomColor), t.set(23, s.symbolFolder), t.set(24, s.symbolTypeParameter), t.set(25, s.account), t.set(26, s.issues); function n(a) { let o = t.get(a); return o || (console.info("No codicon found for CompletionItemKind " + a), o = s.symbolProperty), o; } e.toIcon = n; const r = /* @__PURE__ */ new Map(); r.set("method", 0), r.set("function", 1), r.set("constructor", 2), r.set("field", 3), r.set("variable", 4), r.set("class", 5), r.set("struct", 6), r.set("interface", 7), r.set("module", 8), r.set("property", 9), r.set("event", 10), r.set("operator", 11), r.set("unit", 12), r.set("value", 13), r.set("constant", 14), r.set("enum", 15), r.set("enum-member", 16), r.set("enumMember", 16), r.set("keyword", 17), r.set("snippet", 27), r.set("text", 18), r.set("color", 19), r.set("file", 20), r.set("reference", 21), r.set("customcolor", 22), r.set("folder", 23), r.set("type-parameter", 24), r.set("typeParameter", 24), r.set("account", 25), r.set("issue", 26); function i(a, o) { let l = r.get(a); return typeof l > "u" && !o && (l = 9), l; } e.fromString = i; })(Pi || (Pi = {})); var Ii; (function(e) { e[e.Automatic = 0] = "Automatic", e[e.Explicit = 1] = "Explicit"; })(Ii || (Ii = {})); var Li; (function(e) { e[e.Invoke = 1] = "Invoke", e[e.TriggerCharacter = 2] = "TriggerCharacter", e[e.ContentChange = 3] = "ContentChange"; })(Li || (Li = {})); var Ti; (function(e) { e[e.Text = 0] = "Text", e[e.Read = 1] = "Read", e[e.Write = 2] = "Write"; })(Ti || (Ti = {})); var Wi; (function(e) { const t = /* @__PURE__ */ new Map(); t.set(0, s.symbolFile), t.set(1, s.symbolModule), t.set(2, s.symbolNamespace), t.set(3, s.symbolPackage), t.set(4, s.symbolClass), t.set(5, s.symbolMethod), t.set(6, s.symbolProperty), t.set(7, s.symbolField), t.set(8, s.symbolConstructor), t.set(9, s.symbolEnum), t.set(10, s.symbolInterface), t.set(11, s.symbolFunction), t.set(12, s.symbolVariable), t.set(13, s.symbolConstant), t.set(14, s.symbolString), t.set(15, s.symbolNumber), t.set(16, s.symbolBoolean), t.set(17, s.symbolArray), t.set(18, s.symbolObject), t.set(19, s.symbolKey), t.set(20, s.symbolNull), t.set(21, s.symbolEnumMember), t.set(22, s.symbolStruct), t.set(23, s.symbolEvent), t.set(24, s.symbolOperator), t.set(25, s.symbolTypeParameter); function n(r) { let i = t.get(r); return i || (console.info("No codicon found for SymbolKind " + r), i = s.symbolProperty), i; } e.toIcon = n; })(Wi || (Wi = {})); var Oi; (function(e) { function t(n) { return !n || typeof n != "object" ? !1 : typeof n.id == "string" && typeof n.title == "string"; } e.is = t; })(Oi || (Oi = {})); var Vi; (function(e) { e[e.Type = 1] = "Type", e[e.Parameter = 2] = "Parameter"; })(Vi || (Vi = {})); new nc(); var Ui; (function(e) { e[e.Unknown = 0] = "Unknown", e[e.Disabled = 1] = "Disabled", e[e.Enabled = 2] = "Enabled"; })(Ui || (Ui = {})); var Bi; (function(e) { e[e.KeepWhitespace = 1] = "KeepWhitespace", e[e.InsertAsSnippet = 4] = "InsertAsSnippet"; })(Bi || (Bi = {})); var ji; (function(e) { e[e.Method = 0] = "Method", e[e.Function = 1] = "Function", e[e.Constructor = 2] = "Constructor", e[e.Field = 3] = "Field", e[e.Variable = 4] = "Variable", e[e.Class = 5] = "Class", e[e.Struct = 6] = "Struct", e[e.Interface = 7] = "Interface", e[e.Module = 8] = "Module", e[e.Property = 9] = "Property", e[e.Event = 10] = "Event", e[e.Operator = 11] = "Operator", e[e.Unit = 12] = "Unit", e[e.Value = 13] = "Value", e[e.Constant = 14] = "Constant", e[e.Enum = 15] = "Enum", e[e.EnumMember = 16] = "EnumMember", e[e.Keyword = 17] = "Keyword", e[e.Text = 18] = "Text", e[e.Color = 19] = "Color", e[e.File = 20] = "File", e[e.Reference = 21] = "Reference", e[e.Customcolor = 22] = "Customcolor", e[e.Folder = 23] = "Folder", e[e.TypeParameter = 24] = "TypeParameter", e[e.User = 25] = "User", e[e.Issue = 26] = "Issue", e[e.Snippet = 27] = "Snippet"; })(ji || (ji = {})); var qi; (function(e) { e[e.Deprecated = 1] = "Deprecated"; })(qi || (qi = {})); var $i; (function(e) { e[e.Invoke = 0] = "Invoke", e[e.TriggerCharacter = 1] = "TriggerCharacter", e[e.TriggerForIncompleteCompletions = 2] = "TriggerForIncompleteCompletions"; })($i || ($i = {})); var Hi; (function(e) { e[e.EXACT = 0] = "EXACT", e[e.ABOVE = 1] = "ABOVE", e[e.BELOW = 2] = "BELOW"; })(Hi || (Hi = {})); var Gi; (function(e) { e[e.NotSet = 0] = "NotSet", e[e.ContentFlush = 1] = "ContentFlush", e[e.RecoverFromMarkers = 2] = "RecoverFromMarkers", e[e.Explicit = 3] = "Explicit", e[e.Paste = 4] = "Paste", e[e.Undo = 5] = "Undo", e[e.Redo = 6] = "Redo"; })(Gi || (Gi = {})); var Ji; (function(e) { e[e.LF = 1] = "LF", e[e.CRLF = 2] = "CRLF"; })(Ji || (Ji = {})); var Xi; (function(e) { e[e.Text = 0] = "Text", e[e.Read = 1] = "Read", e[e.Write = 2] = "Write"; })(Xi || (Xi = {})); var Yi; (function(e) { e[e.None = 0] = "None", e[e.Keep = 1] = "Keep", e[e.Brackets = 2] = "Brackets", e[e.Advanced = 3] = "Advanced", e[e.Full = 4] = "Full"; })(Yi || (Yi = {})); var Ki; (function(e) { e[e.acceptSuggestionOnCommitCharacter = 0] = "acceptSuggestionOnCommitCharacter", e[e.acceptSuggestionOnEnter = 1] = "acceptSuggestionOnEnter", e[e.accessibilitySupport = 2] = "accessibilitySupport", e[e.accessibilityPageSize = 3] = "accessibilityPageSize", e[e.ariaLabel = 4] = "ariaLabel", e[e.autoClosingBrackets = 5] = "autoClosingBrackets", e[e.autoClosingDelete = 6] = "autoClosingDelete", e[e.autoClosingOvertype = 7] = "autoClosingOvertype", e[e.autoClosingQuotes = 8] = "autoClosingQuotes", e[e.autoIndent = 9] = "autoIndent", e[e.automaticLayout = 10] = "automaticLayout", e[e.autoSurround = 11] = "autoSurround", e[e.bracketPairColorization = 12] = "bracketPairColorization", e[e.guides = 13] = "guides", e[e.codeLens = 14] = "codeLens", e[e.codeLensFontFamily = 15] = "codeLensFontFamily", e[e.codeLensFontSize = 16] = "codeLensFontSize", e[e.colorDecorators = 17] = "colorDecorators", e[e.columnSelection = 18] = "columnSelection", e[e.comments = 19] = "comments", e[e.contextmenu = 20] = "contextmenu", e[e.copyWithSyntaxHighlighting = 21] = "copyWithSyntaxHighlighting", e[e.cursorBlinking = 22] = "cursorBlinking", e[e.cursorSmoothCaretAnimation = 23] = "cursorSmoothCaretAnimation", e[e.cursorStyle = 24] = "cursorStyle", e[e.cursorSurroundingLines = 25] = "cursorSurroundingLines", e[e.cursorSurroundingLinesStyle = 26] = "cursorSurroundingLinesStyle", e[e.cursorWidth = 27] = "cursorWidth", e[e.disableLayerHinting = 28] = "disableLayerHinting", e[e.disableMonospaceOptimizations = 29] = "disableMonospaceOptimizations", e[e.domReadOnly = 30] = "domReadOnly", e[e.dragAndDrop = 31] = "dragAndDrop", e[e.emptySelectionClipboard = 32] = "emptySelectionClipboard", e[e.extraEditorClassName = 33] = "extraEditorClassName", e[e.fastScrollSensitivity = 34] = "fastScrollSensitivity", e[e.find = 35] = "find", e[e.fixedOverflowWidgets = 36] = "fixedOverflowWidgets", e[e.folding = 37] = "folding", e[e.foldingStrategy = 38] = "foldingStrategy", e[e.foldingHighlight = 39] = "foldingHighlight", e[e.foldingImportsByDefault = 40] = "foldingImportsByDefault", e[e.foldingMaximumRegions = 41] = "foldingMaximumRegions", e[e.unfoldOnClickAfterEndOfLine = 42] = "unfoldOnClickAfterEndOfLine", e[e.fontFamily = 43] = "fontFamily", e[e.fontInfo = 44] = "fontInfo", e[e.fontLigatures = 45] = "fontLigatures", e[e.fontSize = 46] = "fontSize", e[e.fontWeight = 47] = "fontWeight", e[e.formatOnPaste = 48] = "formatOnPaste", e[e.formatOnType = 49] = "formatOnType", e[e.glyphMargin = 50] = "glyphMargin", e[e.gotoLocation = 51] = "gotoLocation", e[e.hideCursorInOverviewRuler = 52] = "hideCursorInOverviewRuler", e[e.hover = 53] = "hover", e[e.inDiffEditor = 54] = "inDiffEditor", e[e.inlineSuggest = 55] = "inlineSuggest", e[e.letterSpacing = 56] = "letterSpacing", e[e.lightbulb = 57] = "lightbulb", e[e.lineDecorationsWidth = 58] = "lineDecorationsWidth", e[e.lineHeight = 59] = "lineHeight", e[e.lineNumbers = 60] = "lineNumbers", e[e.lineNumbersMinChars = 61] = "lineNumbersMinChars", e[e.linkedEditing = 62] = "linkedEditing", e[e.links = 63] = "links", e[e.matchBrackets = 64] = "matchBrackets", e[e.minimap = 65] = "minimap", e[e.mouseStyle = 66] = "mouseStyle", e[e.mouseWheelScrollSensitivity = 67] = "mouseWheelScrollSensitivity", e[e.mouseWheelZoom = 68] = "mouseWheelZoom", e[e.multiCursorMergeOverlapping = 69] = "multiCursorMergeOverlapping", e[e.multiCursorModifier = 70] = "multiCursorModifier", e[e.multiCursorPaste = 71] = "multiCursorPaste", e[e.occurrencesHighlight = 72] = "occurrencesHighlight", e[e.overviewRulerBorder = 73] = "overviewRulerBorder", e[e.overviewRulerLanes = 74] = "overviewRulerLanes", e[e.padding = 75] = "padding", e[e.parameterHints = 76] = "parameterHints", e[e.peekWidgetDefaultFocus = 77] = "peekWidgetDefaultFocus", e[e.definitionLinkOpensInPeek = 78] = "definitionLinkOpensInPeek", e[e.quickSuggestions = 79] = "quickSuggestions", e[e.quickSuggestionsDelay = 80] = "quickSuggestionsDelay", e[e.readOnly = 81] = "readOnly", e[e.renameOnType = 82] = "renameOnType", e[e.renderControlCharacters = 83] = "renderControlCharacters", e[e.renderFinalNewline = 84] = "renderFinalNewline", e[e.renderLineHighlight = 85] = "renderLineHighlight", e[e.renderLineHighlightOnlyWhenFocus = 86] = "renderLineHighlightOnlyWhenFocus", e[e.renderValidationDecorations = 87] = "renderValidationDecorations", e[e.renderWhitespace = 88] = "renderWhitespace", e[e.revealHorizontalRightPadding = 89] = "revealHorizontalRightPadding", e[e.roundedSelection = 90] = "roundedSelection", e[e.rulers = 91] = "rulers", e[e.scrollbar = 92] = "scrollbar", e[e.scrollBeyondLastColumn = 93] = "scrollBeyondLastColumn", e[e.scrollBeyondLastLine = 94] = "scrollBeyondLastLine", e[e.scrollPredominantAxis = 95] = "scrollPredominantAxis", e[e.selectionClipboard = 96] = "selectionClipboard", e[e.selectionHighlight = 97] = "selectionHighlight", e[e.selectOnLineNumbers = 98] = "selectOnLineNumbers", e[e.showFoldingControls = 99] = "showFoldingControls", e[e.showUnused = 100] = "showUnused", e[e.snippetSuggestions = 101] = "snippetSuggestions", e[e.smartSelect = 102] = "smartSelect", e[e.smoothScrolling = 103] = "smoothScrolling", e[e.stickyTabStops = 104] = "stickyTabStops", e[e.stopRenderingLineAfter = 105] = "stopRenderingLineAfter", e[e.suggest = 106] = "suggest", e[e.suggestFontSize = 107] = "suggestFontSize", e[e.suggestLineHeight = 108] = "suggestLineHeight", e[e.suggestOnTriggerCharacters = 109] = "suggestOnTriggerCharacters", e[e.suggestSelection = 110] = "suggestSelection", e[e.tabCompletion = 111] = "tabCompletion", e[e.tabIndex = 112] = "tabIndex", e[e.unicodeHighlighting = 113] = "unicodeHighlighting", e[e.unusualLineTerminators = 114] = "unusualLineTerminators", e[e.useShadowDOM = 115] = "useShadowDOM", e[e.useTabStops = 116] = "useTabStops", e[e.wordSeparators = 117] = "wordSeparators", e[e.wordWrap = 118] = "wordWrap", e[e.wordWrapBreakAfterCharacters = 119] = "wordWrapBreakAfterCharacters", e[e.wordWrapBreakBeforeCharacters = 120] = "wordWrapBreakBeforeCharacters", e[e.wordWrapColumn = 121] = "wordWrapColumn", e[e.wordWrapOverride1 = 122] = "wordWrapOverride1", e[e.wordWrapOverride2 = 123] = "wordWrapOverride2", e[e.wrappingIndent = 124] = "wrappingIndent", e[e.wrappingStrategy = 125] = "wrappingStrategy", e[e.showDeprecated = 126] = "showDeprecated", e[e.inlayHints = 127] = "inlayHints", e[e.editorClassName = 128] = "editorClassName", e[e.pixelRatio = 129] = "pixelRatio", e[e.tabFocusMode = 130] = "tabFocusMode", e[e.layoutInfo = 131] = "layoutInfo", e[e.wrappingInfo = 132] = "wrappingInfo"; })(Ki || (Ki = {})); var Zi; (function(e) { e[e.TextDefined = 0] = "TextDefined", e[e.LF = 1] = "LF", e[e.CRLF = 2] = "CRLF"; })(Zi || (Zi = {})); var Qi; (function(e) { e[e.LF = 0] = "LF", e[e.CRLF = 1] = "CRLF"; })(Qi || (Qi = {})); var ea; (function(e) { e[e.None = 0] = "None", e[e.Indent = 1] = "Indent", e[e.IndentOutdent = 2] = "IndentOutdent", e[e.Outdent = 3] = "Outdent"; })(ea || (ea = {})); var ta; (function(e) { e[e.Both = 0] = "Both", e[e.Right = 1] = "Right", e[e.Left = 2] = "Left", e[e.None = 3] = "None"; })(ta || (ta = {})); var na; (function(e) { e[e.Type = 1] = "Type", e[e.Parameter = 2] = "Parameter"; })(na || (na = {})); var ra; (function(e) { e[e.Automatic = 0] = "Automatic", e[e.Explicit = 1] = "Explicit"; })(ra || (ra = {})); var kr; (function(e) { e[e.DependsOnKbLayout = -1] = "DependsOnKbLayout", e[e.Unknown = 0] = "Unknown", e[e.Backspace = 1] = "Backspace", e[e.Tab = 2] = "Tab", e[e.Enter = 3] = "Enter", e[e.Shift = 4] = "Shift", e[e.Ctrl = 5] = "Ctrl", e[e.Alt = 6] = "Alt", e[e.PauseBreak = 7] = "PauseBreak", e[e.CapsLock = 8] = "CapsLock", e[e.Escape = 9] = "Escape", e[e.Space = 10] = "Space", e[e.PageUp = 11] = "PageUp", e[e.PageDown = 12] = "PageDown", e[e.End = 13] = "End", e[e.Home = 14] = "Home", e[e.LeftArrow = 15] = "LeftArrow", e[e.UpArrow = 16] = "UpArrow", e[e.RightArrow = 17] = "RightArrow", e[e.DownArrow = 18] = "DownArrow", e[e.Insert = 19] = "Insert", e[e.Delete = 20] = "Delete", e[e.Digit0 = 21] = "Digit0", e[e.Digit1 = 22] = "Digit1", e[e.Digit2 = 23] = "Digit2", e[e.Digit3 = 24] = "Digit3", e[e.Digit4 = 25] = "Digit4", e[e.Digit5 = 26] = "Digit5", e[e.Digit6 = 27] = "Digit6", e[e.Digit7 = 28] = "Digit7", e[e.Digit8 = 29] = "Digit8", e[e.Digit9 = 30] = "Digit9", e[e.KeyA = 31] = "KeyA", e[e.KeyB = 32] = "KeyB", e[e.KeyC = 33] = "KeyC", e[e.KeyD = 34] = "KeyD", e[e.KeyE = 35] = "KeyE", e[e.KeyF = 36] = "KeyF", e[e.KeyG = 37] = "KeyG", e[e.KeyH = 38] = "KeyH", e[e.KeyI = 39] = "KeyI", e[e.KeyJ = 40] = "KeyJ", e[e.KeyK = 41] = "KeyK", e[e.KeyL = 42] = "KeyL", e[e.KeyM = 43] = "KeyM", e[e.KeyN = 44] = "KeyN", e[e.KeyO = 45] = "KeyO", e[e.KeyP = 46] = "KeyP", e[e.KeyQ = 47] = "KeyQ", e[e.KeyR = 48] = "KeyR", e[e.KeyS = 49] = "KeyS", e[e.KeyT = 50] = "KeyT", e[e.KeyU = 51] = "KeyU", e[e.KeyV = 52] = "KeyV", e[e.KeyW = 53] = "KeyW", e[e.KeyX = 54] = "KeyX", e[e.KeyY = 55] = "KeyY", e[e.KeyZ = 56] = "KeyZ", e[e.Meta = 57] = "Meta", e[e.ContextMenu = 58] = "ContextMenu", e[e.F1 = 59] = "F1", e[e.F2 = 60] = "F2", e[e.F3 = 61] = "F3", e[e.F4 = 62] = "F4", e[e.F5 = 63] = "F5", e[e.F6 = 64] = "F6", e[e.F7 = 65] = "F7", e[e.F8 = 66] = "F8", e[e.F9 = 67] = "F9", e[e.F10 = 68] = "F10", e[e.F11 = 69] = "F11", e[e.F12 = 70] = "F12", e[e.F13 = 71] = "F13", e[e.F14 = 72] = "F14", e[e.F15 = 73] = "F15", e[e.F16 = 74] = "F16", e[e.F17 = 75] = "F17", e[e.F18 = 76] = "F18", e[e.F19 = 77] = "F19", e[e.NumLock = 78] = "NumLock", e[e.ScrollLock = 79] = "ScrollLock", e[e.Semicolon = 80] = "Semicolon", e[e.Equal = 81] = "Equal", e[e.Comma = 82] = "Comma", e[e.Minus = 83] = "Minus", e[e.Period = 84] = "Period", e[e.Slash = 85] = "Slash", e[e.Backquote = 86] = "Backquote", e[e.BracketLeft = 87] = "BracketLeft", e[e.Backslash = 88] = "Backslash", e[e.BracketRight = 89] = "BracketRight", e[e.Quote = 90] = "Quote", e[e.OEM_8 = 91] = "OEM_8", e[e.IntlBackslash = 92] = "IntlBackslash", e[e.Numpad0 = 93] = "Numpad0", e[e.Numpad1 = 94] = "Numpad1", e[e.Numpad2 = 95] = "Numpad2", e[e.Numpad3 = 96] = "Numpad3", e[e.Numpad4 = 97] = "Numpad4", e[e.Numpad5 = 98] = "Numpad5", e[e.Numpad6 = 99] = "Numpad6", e[e.Numpad7 = 100] = "Numpad7", e[e.Numpad8 = 101] = "Numpad8", e[e.Numpad9 = 102] = "Numpad9", e[e.NumpadMultiply = 103] = "NumpadMultiply", e[e.NumpadAdd = 104] = "NumpadAdd", e[e.NUMPAD_SEPARATOR = 105] = "NUMPAD_SEPARATOR", e[e.NumpadSubtract = 106] = "NumpadSubtract", e[e.NumpadDecimal = 107] = "NumpadDecimal", e[e.NumpadDivide = 108] = "NumpadDivide", e[e.KEY_IN_COMPOSITION = 109] = "KEY_IN_COMPOSITION", e[e.ABNT_C1 = 110] = "ABNT_C1", e[e.ABNT_C2 = 111] = "ABNT_C2", e[e.AudioVolumeMute = 112] = "AudioVolumeMute", e[e.AudioVolumeUp = 113] = "AudioVolumeUp", e[e.AudioVolumeDown = 114] = "AudioVolumeDown", e[e.BrowserSearch = 115] = "BrowserSearch", e[e.BrowserHome = 116] = "BrowserHome", e[e.BrowserBack = 117] = "BrowserBack", e[e.BrowserForward = 118] = "BrowserForward", e[e.MediaTrackNext = 119] = "MediaTrackNext", e[e.MediaTrackPrevious = 120] = "MediaTrackPrevious", e[e.MediaStop = 121] = "MediaStop", e[e.MediaPlayPause = 122] = "MediaPlayPause", e[e.LaunchMediaPlayer = 123] = "LaunchMediaPlayer", e[e.LaunchMail = 124] = "LaunchMail", e[e.LaunchApp2 = 125] = "LaunchApp2", e[e.Clear = 126] = "Clear", e[e.MAX_VALUE = 127] = "MAX_VALUE"; })(kr || (kr = {})); var Fr; (function(e) { e[e.Hint = 1] = "Hint", e[e.Info = 2] = "Info", e[e.Warning = 4] = "Warning", e[e.Error = 8] = "Error"; })(Fr || (Fr = {})); var _r; (function(e) { e[e.Unnecessary = 1] = "Unnecessary", e[e.Deprecated = 2] = "Deprecated"; })(_r || (_r = {})); var ia; (function(e) { e[e.Inline = 1] = "Inline", e[e.Gutter = 2] = "Gutter"; })(ia || (ia = {})); var aa; (function(e) { e[e.UNKNOWN = 0] = "UNKNOWN", e[e.TEXTAREA = 1] = "TEXTAREA", e[e.GUTTER_GLYPH_MARGIN = 2] = "GUTTER_GLYPH_MARGIN", e[e.GUTTER_LINE_NUMBERS = 3] = "GUTTER_LINE_NUMBERS", e[e.GUTTER_LINE_DECORATIONS = 4] = "GUTTER_LINE_DECORATIONS", e[e.GUTTER_VIEW_ZONE = 5] = "GUTTER_VIEW_ZONE", e[e.CONTENT_TEXT = 6] = "CONTENT_TEXT", e[e.CONTENT_EMPTY = 7] = "CONTENT_EMPTY", e[e.CONTENT_VIEW_ZONE = 8] = "CONTENT_VIEW_ZONE", e[e.CONTENT_WIDGET = 9] = "CONTENT_WIDGET", e[e.OVERVIEW_RULER = 10] = "OVERVIEW_RULER", e[e.SCROLLBAR = 11] = "SCROLLBAR", e[e.OVERLAY_WIDGET = 12] = "OVERLAY_WIDGET", e[e.OUTSIDE_EDITOR = 13] = "OUTSIDE_EDITOR"; })(aa || (aa = {})); var sa; (function(e) { e[e.TOP_RIGHT_CORNER = 0] = "TOP_RIGHT_CORNER", e[e.BOTTOM_RIGHT_CORNER = 1] = "BOTTOM_RIGHT_CORNER", e[e.TOP_CENTER = 2] = "TOP_CENTER"; })(sa || (sa = {})); var oa; (function(e) { e[e.Left = 1] = "Left", e[e.Center = 2] = "Center", e[e.Right = 4] = "Right", e[e.Full = 7] = "Full"; })(oa || (oa = {})); var la; (function(e) { e[e.Left = 0] = "Left", e[e.Right = 1] = "Right", e[e.None = 2] = "None"; })(la || (la = {})); var ca; (function(e) { e[e.Off = 0] = "Off", e[e.On = 1] = "On", e[e.Relative = 2] = "Relative", e[e.Interval = 3] = "Interval", e[e.Custom = 4] = "Custom"; })(ca || (ca = {})); var ha; (function(e) { e[e.None = 0] = "None", e[e.Text = 1] = "Text", e[e.Blocks = 2] = "Blocks"; })(ha || (ha = {})); var da; (function(e) { e[e.Smooth = 0] = "Smooth", e[e.Immediate = 1] = "Immediate"; })(da || (da = {})); var ua; (function(e) { e[e.Auto = 1] = "Auto", e[e.Hidden = 2] = "Hidden", e[e.Visible = 3] = "Visible"; })(ua || (ua = {})); var Dr; (function(e) { e[e.LTR = 0] = "LTR", e[e.RTL = 1] = "RTL"; })(Dr || (Dr = {})); var pa; (function(e) { e[e.Invoke = 1] = "Invoke", e[e.TriggerCharacter = 2] = "TriggerCharacter", e[e.ContentChange = 3] = "ContentChange"; })(pa || (pa = {})); var fa; (function(e) { e[e.File = 0] = "File", e[e.Module = 1] = "Module", e[e.Namespace = 2] = "Namespace", e[e.Package = 3] = "Package", e[e.Class = 4] = "Class", e[e.Method = 5] = "Method", e[e.Property = 6] = "Property", e[e.Field = 7] = "Field", e[e.Constructor = 8] = "Constructor", e[e.Enum = 9] = "Enum", e[e.Interface = 10] = "Interface", e[e.Function = 11] = "Function", e[e.Variable = 12] = "Variable", e[e.Constant = 13] = "Constant", e[e.String = 14] = "String", e[e.Number = 15] = "Number", e[e.Boolean = 16] = "Boolean", e[e.Array = 17] = "Array", e[e.Object = 18] = "Object", e[e.Key = 19] = "Key", e[e.Null = 20] = "Null", e[e.EnumMember = 21] = "EnumMember", e[e.Struct = 22] = "Struct", e[e.Event = 23] = "Event", e[e.Operator = 24] = "Operator", e[e.TypeParameter = 25] = "TypeParameter"; })(fa || (fa = {})); var ma; (function(e) { e[e.Deprecated = 1] = "Deprecated"; })(ma || (ma = {})); var ga; (function(e) { e[e.Hidden = 0] = "Hidden", e[e.Blink = 1] = "Blink", e[e.Smooth = 2] = "Smooth", e[e.Phase = 3] = "Phase", e[e.Expand = 4] = "Expand", e[e.Solid = 5] = "Solid"; })(ga || (ga = {})); var ba; (function(e) { e[e.Line = 1] = "Line", e[e.Block = 2] = "Block", e[e.Underline = 3] = "Underline", e[e.LineThin = 4] = "LineThin", e[e.BlockOutline = 5] = "BlockOutline", e[e.UnderlineThin = 6] = "UnderlineThin"; })(ba || (ba = {})); var va; (function(e) { e[e.AlwaysGrowsWhenTypingAtEdges = 0] = "AlwaysGrowsWhenTypingAtEdges", e[e.NeverGrowsWhenTypingAtEdges = 1] = "NeverGrowsWhenTypingAtEdges", e[e.GrowsOnlyWhenTypingBefore = 2] = "GrowsOnlyWhenTypingBefore", e[e.GrowsOnlyWhenTypingAfter = 3] = "GrowsOnlyWhenTypingAfter"; })(va || (va = {})); var ya; (function(e) { e[e.None = 0] = "None", e[e.Same = 1] = "Same", e[e.Indent = 2] = "Indent", e[e.DeepIndent = 3] = "DeepIndent"; })(ya || (ya = {})); class Qt { static chord(t, n) { return tc(t, n); } } Qt.CtrlCmd = 2048; Qt.Shift = 1024; Qt.Alt = 512; Qt.WinCtrl = 256; function ac() { return { editor: void 0, languages: void 0, CancellationTokenSource: Kl, Emitter: He, KeyCode: kr, KeyMod: Qt, Position: we, Range: te, Selection: Ce, SelectionDirection: Dr, MarkerSeverity: Fr, MarkerTag: _r, Uri: ct, Token: ic }; } var wa; (function(e) { e[e.Left = 1] = "Left", e[e.Center = 2] = "Center", e[e.Right = 4] = "Right", e[e.Full = 7] = "Full"; })(wa || (wa = {})); var xa; (function(e) { e[e.Inline = 1] = "Inline", e[e.Gutter = 2] = "Gutter"; })(xa || (xa = {})); var Sa; (function(e) { e[e.Both = 0] = "Both", e[e.Right = 1] = "Right", e[e.Left = 2] = "Left", e[e.None = 3] = "None"; })(Sa || (Sa = {})); function sc(e, t, n, r, i) { if (r === 0) return !0; const a = t.charCodeAt(r - 1); if (e.get(a) !== 0 || a === 13 || a === 10) return !0; if (i > 0) { const o = t.charCodeAt(r); if (e.get(o) !== 0) return !0; } return !1; } function oc(e, t, n, r, i) { if (r + i === n) return !0; const a = t.charCodeAt(r + i); if (e.get(a) !== 0 || a === 13 || a === 10) return !0; if (i > 0) { const o = t.charCodeAt(r + i - 1); if (e.get(o) !== 0) return !0; } return !1; } function lc(e, t, n, r, i) { return sc(e, t, n, r, i) && oc(e, t, n, r, i); } class cc { constructor(t, n) { this._wordSeparators = t, this._searchRegex = n, this._prevMatchStartIndex = -1, this._prevMatchLength = 0; } reset(t) { this._searchRegex.lastIndex = t, this._prevMatchStartIndex = -1, this._prevMatchLength = 0; } next(t) { const n = t.length; let r; do { if (this._prevMatchStartIndex + this._prevMatchLength === n || (r = this._searchRegex.exec(t), !r)) return null; const i = r.index, a = r[0].length; if (i === this._prevMatchStartIndex && a === this._prevMatchLength) { if (a === 0) { ll(t, n, this._searchRegex.lastIndex) > 65535 ? this._searchRegex.lastIndex += 2 : this._searchRegex.lastIndex += 1; continue; } return null; } if (this._prevMatchStartIndex = i, this._prevMatchLength = a, !this._wordSeparators || lc(this._wordSeparators, t, n, i, a)) return r; } while (r); return null; } } class hc { static computeUnicodeHighlights(t, n, r) { const i = r ? r.startLineNumber : 1, a = r ? r.endLineNumber : t.getLineCount(), o = new Ca(n), l = o.getCandidateCodePoints(); let h; l === "allNonBasicAscii" ? h = new RegExp("[^\\t\\n\\r\\x20-\\x7E]", "g") : h = new RegExp(`${dc(Array.from(l))}`, "g"); const c = new cc(null, h), d = []; let p = !1, f, g = 0, w = 0, b = 0; e: for (let y = i, A = a; y <= A; y++) { const C = t.getLineContent(y), R = C.length; c.reset(0); do if (f = c.next(C), f) { let k = f.index, F = f.index + f[0].length; if (k > 0) { const T = C.charCodeAt(k - 1); pr(T) && k--; } if (F + 1 < R) { const T = C.charCodeAt(F - 1); pr(T) && F++; } const P = C.substring(k, F), N = Kr(k + 1, no, C, 0), z = o.shouldHighlightNonBasicASCII(P, N ? N.word : null); if (z !== 0) { z === 3 ? g++ : z === 2 ? w++ : z === 1 ? b++ : el(); const T = 1e3; if (d.length >= T) { p = !0; break e; } d.push(new te(y, k + 1, y, F + 1)); } } while (f); } return { ranges: d, hasMore: p, ambiguousCharacterCount: g, invisibleCharacterCount: w, nonBasicAsciiCharacterCount: b }; } static computeUnicodeHighlightReason(t, n) { const r = new Ca(n); switch (r.shouldHighlightNonBasicASCII(t, null)) { case 0: return null; case 2: return { kind: 1 }; case 3: { const a = t.codePointAt(0), o = r.ambiguousCharacters.getPrimaryConfusable(a), l = ze.getLocales().filter((h) => !ze.getInstance(/* @__PURE__ */ new Set([...n.allowedLocales, h])).isAmbiguous(a)); return { kind: 0, confusableWith: String.fromCodePoint(o), notAmbiguousInLocales: l }; } case 1: return { kind: 2 }; } } } function dc(e, t) { return `[${nl(e.map((r) => String.fromCodePoint(r)).join(""))}]`; } class Ca { constructor(t) { this.options = t, this.allowedCodePoints = new Set(t.allowedCodePoints), this.ambiguousCharacters = ze.getInstance(new Set(t.allowedLocales)); } getCandidateCodePoints() { if (this.options.nonBasicASCII) return "allNonBasicAscii"; const t = /* @__PURE__ */ new Set(); if (this.options.invisibleCharacters) for (const n of tt.codePoints) ka(String.fromCodePoint(n)) || t.add(n); if (this.options.ambiguousCharacters) for (const n of this.ambiguousCharacters.getConfusableCodePoints()) t.add(n); for (const n of this.allowedCodePoints) t.delete(n); return t; } shouldHighlightNonBasicASCII(t, n) { const r = t.codePointAt(0); if (this.allowedCodePoints.has(r)) return 0; if (this.options.nonBasicASCII) return 1; let i = !1, a = !1; if (n) for (let o of n) { const l = o.codePointAt(0), h = hl(o); i = i || h, !h && !this.ambiguousCharacters.isAmbiguous(l) && !tt.isInvisibleCharacter(l) && (a = !0); } return !i && a ? 0 : this.options.invisibleCharacters && !ka(t) && tt.isInvisibleCharacter(r) ? 2 : this.options.ambiguousCharacters && this.ambiguousCharacters.isAmbiguous(r) ? 3 : 0; } } function ka(e) { return e === " " || e === ` ` || e === " "; } var it = globalThis && globalThis.__awaiter || function(e, t, n, r) { function i(a) { return a instanceof n ? a : new n(function(o) { o(a); }); } return new (n || (n = Promise))(function(a, o) { function l(d) { try { c(r.next(d)); } catch (p) { o(p); } } function h(d) { try { c(r.throw(d)); } catch (p) { o(p); } } function c(d) { d.done ? a(d.value) : i(d.value).then(l, h); } c((r = r.apply(e, t || [])).next()); }); }; class uc extends Vl { get uri() { return this._uri; } get eol() { return this._eol; } getValue() { return this.getText(); } getLinesContent() { return this._lines.slice(0); } getLineCount() { return this._lines.length; } getLineContent(t) { return this._lines[t - 1]; } getWordAtPosition(t, n) { const r = Kr(t.column, jl(n), this._lines[t.lineNumber - 1], 0); return r ? new te(t.lineNumber, r.startColumn, t.lineNumber, r.endColumn) : null; } words(t) { const n = this._lines, r = this._wordenize.bind(this); let i = 0, a = "", o = 0, l = []; return { *[Symbol.iterator]() { for (; ; ) if (o < l.length) { const h = a.substring(l[o].start, l[o].end); o += 1, yield h; } else if (i < n.length) a = n[i], l = r(a, t), o = 0, i += 1; else break; } }; } getLineWords(t, n) { const r = this._lines[t - 1], i = this._wordenize(r, n), a = []; for (const o of i) a.push({ word: r.substring(o.start, o.end), startColumn: o.start + 1, endColumn: o.end + 1 }); return a; } _wordenize(t, n) { const r = []; let i; for (n.lastIndex = 0; (i = n.exec(t)) && i[0].length !== 0; ) r.push({ start: i.index, end: i.index + i[0].length }); return r; } getValueInRange(t) { if (t = this._validateRange(t), t.startLineNumber === t.endLineNumber) return this._lines[t.startLineNumber - 1].substring(t.startColumn - 1, t.endColumn - 1); const n = this._eol, r = t.startLineNumber - 1, i = t.endLineNumber - 1, a = []; a.push(this._lines[r].substring(t.startColumn - 1)); for (let o = r + 1; o < i; o++) a.push(this._lines[o]); return a.push(this._lines[i].substring(0, t.endColumn - 1)), a.join(n); } offsetAt(t) { return t = this._validatePosition(t), this._ensureLineStarts(), this._lineStarts.getPrefixSum(t.lineNumber - 2) + (t.column - 1); } positionAt(t) { t = Math.floor(t), t = Math.max(0, t), this._ensureLineStarts(); const n = this._lineStarts.getIndexOf(t), r = this._lines[n.index].length; return { lineNumber: 1 + n.index, column: 1 + Math.min(n.remainder, r) }; } _validateRange(t) { const n = this._validatePosition({ lineNumber: t.startLineNumber, column: t.startColumn }), r = this._validatePosition({ lineNumber: t.endLineNumber, column: t.endColumn }); return n.lineNumber !== t.startLineNumber || n.column !== t.startColumn || r.lineNumber !== t.endLineNumber || r.column !== t.endColumn ? { startLineNumber: n.lineNumber, startColumn: n.column, endLineNumber: r.lineNumber, endColumn: r.column } : t; } _validatePosition(t) { if (!we.isIPosition(t)) throw new Error("bad position"); let { lineNumber: n, column: r } = t, i = !1; if (n < 1) n = 1, r = 1, i = !0; else if (n > this._lines.length) n = this._lines.length, r = this._lines[n - 1].length + 1, i = !0; else { const a = this._lines[n - 1].length + 1; r < 1 ? (r = 1, i = !0) : r > a && (r = a, i = !0); } return i ? { lineNumber: n, column: r } : t; } } class _t { constructor(t, n) { this._host = t, this._models = /* @__PURE__ */ Object.create(null), this._foreignModuleFactory = n, this._foreignModule = null; } dispose() { this._models = /* @__PURE__ */ Object.create(null); } _getModel(t) { return this._models[t]; } _getModels() { const t = []; return Object.keys(this._models).forEach((n) => t.push(this._models[n])), t; } acceptNewModel(t) { this._models[t.url] = new uc(ct.parse(t.url), t.lines, t.EOL, t.versionId); } acceptModelChanged(t, n) { if (!this._models[t]) return; this._models[t].onEvents(n); } acceptRemovedModel(t) { !this._models[t] || delete this._models[t]; } computeUnicodeHighlights(t, n, r) { return it(this, void 0, void 0, function* () { const i = this._getModel(t); return i ? hc.computeUnicodeHighlights(i, n, r) : { ranges: [], hasMore: !1, ambiguousCharacterCount: 0, invisibleCharacterCount: 0, nonBasicAsciiCharacterCount: 0 }; }); } computeDiff(t, n, r, i) { return it(this, void 0, void 0, function* () { const a = this._getModel(t), o = this._getModel(n); if (!a || !o) return null; const l = a.getLinesContent(), h = o.getLinesContent(), d = new Tl(l, h, { shouldComputeCharChanges: !0, shouldPostProcessCharChanges: !0, shouldIgnoreTrimWhitespace: r, shouldMakePrettyDiff: !0, maxComputationTime: i }).computeDiff(), p = d.changes.length > 0 ? !1 : this._modelsAreIdentical(a, o); return { quitEarly: d.quitEarly, identical: p, changes: d.changes }; }); } _modelsAreIdentical(t, n) { const r = t.getLineCount(), i = n.getLineCount(); if (r !== i) return !1; for (let a = 1; a <= r; a++) { const o = t.getLineContent(a), l = n.getLineContent(a); if (o !== l) return !1; } return !0; } computeMoreMinimalEdits(t, n) { return it(this, void 0, void 0, function* () { const r = this._getModel(t); if (!r) return n; const i = []; let a; n = n.slice(0).sort((o, l) => { if (o.range && l.range) return te.compareRangesUsingStarts(o.range, l.range); const h = o.range ? 0 : 1, c = l.range ? 0 : 1; return h - c; }); for (let { range: o, text: l, eol: h } of n) { if (typeof h == "number" && (a = h), te.isEmpty(o) && !l) continue; const c = r.getValueInRange(o); if (l = l.replace(/\r\n|\n|\r/g, r.eol), c === l) continue; if (Math.max(l.length, c.length) > _t._diffLimit) { i.push({ range: o, text: l }); continue; } const d = wl(c, l, !1), p = r.offsetAt(te.lift(o).getStartPosition()); for (const f of d) { const g = r.positionAt(p + f.originalStart), w = r.positionAt(p + f.originalStart + f.originalLength), b = { text: l.substr(f.modifiedStart, f.modifiedLength), range: { startLineNumber: g.lineNumber, startColumn: g.column, endLineNumber: w.lineNumber, endColumn: w.column } }; r.getValueInRange(b.range) !== b.text && i.push(b); } } return typeof a == "number" && i.push({ eol: a, text: "", range: { startLineNumber: 0, startColumn: 0, endLineNumber: 0, endColumn: 0 } }), i; }); } computeLinks(t) { return it(this, void 0, void 0, function* () { const n = this._getModel(t); return n ? Yl(n) : null; }); } textualSuggest(t, n, r, i) { return it(this, void 0, void 0, function* () { const a = new Tn(!0), o = new RegExp(r, i), l = /* @__PURE__ */ new Set(); e: for (let h of t) { const c = this._getModel(h); if (!!c) { for (let d of c.words(o)) if (!(d === n || !isNaN(Number(d))) && (l.add(d), l.size > _t._suggestionsLimit)) break e; } } return { words: Array.from(l), duration: a.elapsed() }; }); } computeWordRanges(t, n, r, i) { return it(this, void 0, void 0, function* () { const a = this._getModel(t); if (!a) return /* @__PURE__ */ Object.create(null); const o = new RegExp(r, i), l = /* @__PURE__ */ Object.create(null); for (let h = n.startLineNumber; h < n.endLineNumber; h++) { const c = a.getLineWords(h, o); for (const d of c) { if (!isNaN(Number(d.word))) continue; let p = l[d.word]; p || (p = [], l[d.word] = p), p.push({ startLineNumber: h, startColumn: d.startColumn, endLineNumber: h, endColumn: d.endColumn }); } } return l; }); } navigateValueSet(t, n, r, i, a) { return it(this, void 0, void 0, function* () { const o = this._getModel(t); if (!o) return null; const l = new RegExp(i, a); n.startColumn === n.endColumn && (n = { startLineNumber: n.startLineNumber, startColumn: n.startColumn, endLineNumber: n.endLineNumber, endColumn: n.endColumn + 1 }); const h = o.getValueInRange(n), c = o.getWordAtPosition({ lineNumber: n.startLineNumber, column: n.startColumn }, l); if (!c) return null; const d = o.getValueInRange(c); return wr.INSTANCE.navigateValueSet(n, h, c, d, r); }); } loadForeignModule(t, n, r) { const o = { host: Qo(r, (l, h) => this._host.fhr(l, h)), getMirrorModels: () => this._getModels() }; return this._foreignModuleFactory ? (this._foreignModule = this._foreignModuleFactory(o, n), Promise.resolve(ur(this._foreignModule))) : Promise.reject(new Error("Unexpected usage")); } fmr(t, n) { if (!this._foreignModule || typeof this._foreignModule[t] != "function") return Promise.reject(new Error("Missing requestHandler or method: " + t)); try { return Promise.resolve(this._foreignModule[t].apply(this._foreignModule, n)); } catch (r) { return Promise.reject(r); } } } _t._diffLimit = 1e5; _t._suggestionsLimit = 1e4; typeof importScripts == "function" && (fe.monaco = ac()); let Er = !1; function io(e) { if (Er) return; Er = !0; const t = new vl((n) => { self.postMessage(n); }, (n) => new _t(n, e)); self.onmessage = (n) => { t.onmessage(n.data); }; } self.onmessage = (e) => { Er || io(null); }; /*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.33.0(4b1abad427e58dbedc1215d99a0902ffc885fcd4) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/ var u; (function(e) { e[e.Ident = 0] = "Ident", e[e.AtKeyword = 1] = "AtKeyword", e[e.String = 2] = "String", e[e.BadString = 3] = "BadString", e[e.UnquotedString = 4] = "UnquotedString", e[e.Hash = 5] = "Hash", e[e.Num = 6] = "Num", e[e.Percentage = 7] = "Percentage", e[e.Dimension = 8] = "Dimension", e[e.UnicodeRange = 9] = "UnicodeRange", e[e.CDO = 10] = "CDO", e[e.CDC = 11] = "CDC", e[e.Colon = 12] = "Colon", e[e.SemiColon = 13] = "SemiColon", e[e.CurlyL = 14] = "CurlyL", e[e.CurlyR = 15] = "CurlyR", e[e.ParenthesisL = 16] = "ParenthesisL", e[e.ParenthesisR = 17] = "ParenthesisR", e[e.BracketL = 18] = "BracketL", e[e.BracketR = 19] = "BracketR", e[e.Whitespace = 20] = "Whitespace", e[e.Includes = 21] = "Includes", e[e.Dashmatch = 22] = "Dashmatch", e[e.SubstringOperator = 23] = "SubstringOperator", e[e.PrefixOperator = 24] = "PrefixOperator", e[e.SuffixOperator = 25] = "SuffixOperator", e[e.Delim = 26] = "Delim", e[e.EMS = 27] = "EMS", e[e.EXS = 28] = "EXS", e[e.Length = 29] = "Length", e[e.Angle = 30] = "Angle", e[e.Time = 31] = "Time", e[e.Freq = 32] = "Freq", e[e.Exclamation = 33] = "Exclamation", e[e.Resolution = 34] = "Resolution", e[e.Comma = 35] = "Comma", e[e.Charset = 36] = "Charset", e[e.EscapedJavaScript = 37] = "EscapedJavaScript", e[e.BadEscapedJavaScript = 38] = "BadEscapedJavaScript", e[e.Comment = 39] = "Comment", e[e.SingleLineComment = 40] = "SingleLineComment", e[e.EOF = 41] = "EOF", e[e.CustomToken = 42] = "CustomToken"; })(u || (u = {})); var Fa = function() { function e(t) { this.source = t, this.len = t.length, this.position = 0; } return e.prototype.substring = function(t, n) { return n === void 0 && (n = this.position), this.source.substring(t, n); }, e.prototype.eos = function() { return this.len <= this.position; }, e.prototype.pos = function() { return this.position; }, e.prototype.goBackTo = function(t) { this.position = t; }, e.prototype.goBack = function(t) { this.position -= t; }, e.prototype.advance = function(t) { this.position += t; }, e.prototype.nextChar = function() { return this.source.charCodeAt(this.position++) || 0; }, e.prototype.peekChar = function(t) { return t === void 0 && (t = 0), this.source.charCodeAt(this.position + t) || 0; }, e.prototype.lookbackChar = function(t) { return t === void 0 && (t = 0), this.source.charCodeAt(this.position - t) || 0; }, e.prototype.advanceIfChar = function(t) { return t === this.source.charCodeAt(this.position) ? (this.position++, !0) : !1; }, e.prototype.advanceIfChars = function(t) { if (this.position + t.length > this.source.length) return !1; for (var n = 0; n < t.length; n++) if (this.source.charCodeAt(this.position + n) !== t[n]) return !1; return this.advance(n), !0; }, e.prototype.advanceWhileChar = function(t) { for (var n = this.position; this.position < this.len && t(this.source.charCodeAt(this.position)); ) this.position++; return this.position - n; }, e; }(), Hn = "a".charCodeAt(0), pc = "f".charCodeAt(0), _a = "z".charCodeAt(0), Gn = "A".charCodeAt(0), fc = "F".charCodeAt(0), Da = "Z".charCodeAt(0), sn = "0".charCodeAt(0), on = "9".charCodeAt(0), mc = "~".charCodeAt(0), gc = "^".charCodeAt(0), Nt = "=".charCodeAt(0), bc = "|".charCodeAt(0), mt = "-".charCodeAt(0), Ea = "_".charCodeAt(0), vc = "%".charCodeAt(0), Jn = "*".charCodeAt(0), ao = "(".charCodeAt(0), so = ")".charCodeAt(0), yc = "<".charCodeAt(0), wc = ">".charCodeAt(0), xc = "@".charCodeAt(0), Sc = "#".charCodeAt(0), Cc = "$".charCodeAt(0), Xn = "\\".charCodeAt(0), Ra = "/".charCodeAt(0), gt = ` `.charCodeAt(0), bt = "\r".charCodeAt(0), Pt = "\f".charCodeAt(0), Aa = '"'.charCodeAt(0), za = "'".charCodeAt(0), Yn = " ".charCodeAt(0), Kn = " ".charCodeAt(0), kc = ";".charCodeAt(0), Fc = ":".charCodeAt(0), _c = "{".charCodeAt(0), Dc = "}".charCodeAt(0), Ec = "[".charCodeAt(0), Rc = "]".charCodeAt(0), Ac = ",".charCodeAt(0), Ma = ".".charCodeAt(0), Na = "!".charCodeAt(0), Ue = {}; Ue[kc] = u.SemiColon; Ue[Fc] = u.Colon; Ue[_c] = u.CurlyL; Ue[Dc] = u.CurlyR; Ue[Rc] = u.BracketR; Ue[Ec] = u.BracketL; Ue[ao] = u.ParenthesisL; Ue[so] = u.ParenthesisR; Ue[Ac] = u.Comma; var le = {}; le.em = u.EMS; le.ex = u.EXS; le.px = u.Length; le.cm = u.Length; le.mm = u.Length; le.in = u.Length; le.pt = u.Length; le.pc = u.Length; le.deg = u.Angle; le.rad = u.Angle; le.grad = u.Angle; le.ms = u.Time; le.s = u.Time; le.hz = u.Freq; le.khz = u.Freq; le["%"] = u.Percentage; le.fr = u.Percentage; le.dpi = u.Resolution; le.dpcm = u.Resolution; var en = function() { function e() { this.stream = new Fa(""), this.ignoreComment = !0, this.ignoreWhitespace = !0, this.inURL = !1; } return e.prototype.setSource = function(t) { this.stream = new Fa(t); }, e.prototype.finishToken = function(t, n, r) { return { offset: t, len: this.stream.pos() - t, type: n, text: r || this.stream.substring(t) }; }, e.prototype.substring = function(t, n) { return this.stream.substring(t, t + n); }, e.prototype.pos = function() { return this.stream.pos(); }, e.prototype.goBackTo = function(t) { this.stream.goBackTo(t); }, e.prototype.scanUnquotedString = function() { var t = this.stream.pos(), n = []; return this._unquotedString(n) ? this.finishToken(t, u.UnquotedString, n.join("")) : null; }, e.prototype.scan = function() { var t = this.trivia(); if (t !== null) return t; var n = this.stream.pos(); return this.stream.eos() ? this.finishToken(n, u.EOF) : this.scanNext(n); }, e.prototype.scanNext = function(t) { if (this.stream.advanceIfChars([yc, Na, mt, mt])) return this.finishToken(t, u.CDO); if (this.stream.advanceIfChars([mt, mt, wc])) return this.finishToken(t, u.CDC); var n = []; if (this.ident(n)) return this.finishToken(t, u.Ident, n.join("")); if (this.stream.advanceIfChar(xc)) if (n = ["@"], this._name(n)) { var r = n.join(""); return r === "@charset" ? this.finishToken(t, u.Charset, r) : this.finishToken(t, u.AtKeyword, r); } else return this.finishToken(t, u.Delim); if (this.stream.advanceIfChar(Sc)) return n = ["#"], this._name(n) ? this.finishToken(t, u.Hash, n.join("")) : this.finishToken(t, u.Delim); if (this.stream.advanceIfChar(Na)) return this.finishToken(t, u.Exclamation); if (this._number()) { var i = this.stream.pos(); if (n = [this.stream.substring(t, i)], this.stream.advanceIfChar(vc)) return this.finishToken(t, u.Percentage); if (this.ident(n)) { var a = this.stream.substring(i).toLowerCase(), o = le[a]; return typeof o < "u" ? this.finishToken(t, o, n.join("")) : this.finishToken(t, u.Dimension, n.join("")); } return this.finishToken(t, u.Num); } n = []; var l = this._string(n); return l !== null ? this.finishToken(t, l, n.join("")) : (l = Ue[this.stream.peekChar()], typeof l < "u" ? (this.stream.advance(1), this.finishToken(t, l)) : this.stream.peekChar(0) === mc && this.stream.peekChar(1) === Nt ? (this.stream.advance(2), this.finishToken(t, u.Includes)) : this.stream.peekChar(0) === bc && this.stream.peekChar(1) === Nt ? (this.stream.advance(2), this.finishToken(t, u.Dashmatch)) : this.stream.peekChar(0) === Jn && this.stream.peekChar(1) === Nt ? (this.stream.advance(2), this.finishToken(t, u.SubstringOperator)) : this.stream.peekChar(0) === gc && this.stream.peekChar(1) === Nt ? (this.stream.advance(2), this.finishToken(t, u.PrefixOperator)) : this.stream.peekChar(0) === Cc && this.stream.peekChar(1) === Nt ? (this.stream.advance(2), this.finishToken(t, u.SuffixOperator)) : (this.stream.nextChar(), this.finishToken(t, u.Delim))); }, e.prototype.trivia = function() { for (; ; ) { var t = this.stream.pos(); if (this._whitespace()) { if (!this.ignoreWhitespace) return this.finishToken(t, u.Whitespace); } else if (this.comment()) { if (!this.ignoreComment) return this.finishToken(t, u.Comment); } else return null; } }, e.prototype.comment = function() { if (this.stream.advanceIfChars([Ra, Jn])) { var t = !1, n = !1; return this.stream.advanceWhileChar(function(r) { return n && r === Ra ? (t = !0, !1) : (n = r === Jn, !0); }), t && this.stream.advance(1), !0; } return !1; }, e.prototype._number = function() { var t = 0, n; return this.stream.peekChar() === Ma && (t = 1), n = this.stream.peekChar(t), n >= sn && n <= on ? (this.stream.advance(t + 1), this.stream.advanceWhileChar(function(r) { return r >= sn && r <= on || t === 0 && r === Ma; }), !0) : !1; }, e.prototype._newline = function(t) { var n = this.stream.peekChar(); switch (n) { case bt: case Pt: case gt: return this.stream.advance(1), t.push(String.fromCharCode(n)), n === bt && this.stream.advanceIfChar(gt) && t.push(` `), !0; } return !1; }, e.prototype._escape = function(t, n) { var r = this.stream.peekChar(); if (r === Xn) { this.stream.advance(1), r = this.stream.peekChar(); for (var i = 0; i < 6 && (r >= sn && r <= on || r >= Hn && r <= pc || r >= Gn && r <= fc); ) this.stream.advance(1), r = this.stream.peekChar(), i++; if (i > 0) { try { var a = parseInt(this.stream.substring(this.stream.pos() - i), 16); a && t.push(String.fromCharCode(a)); } catch { } return r === Yn || r === Kn ? this.stream.advance(1) : this._newline([]), !0; } if (r !== bt && r !== Pt && r !== gt) return this.stream.advance(1), t.push(String.fromCharCode(r)), !0; if (n) return this._newline(t); } return !1; }, e.prototype._stringChar = function(t, n) { var r = this.stream.peekChar(); return r !== 0 && r !== t && r !== Xn && r !== bt && r !== Pt && r !== gt ? (this.stream.advance(1), n.push(String.fromCharCode(r)), !0) : !1; }, e.prototype._string = function(t) { if (this.stream.peekChar() === za || this.stream.peekChar() === Aa) { var n = this.stream.nextChar(); for (t.push(String.fromCharCode(n)); this._stringChar(n, t) || this._escape(t, !0); ) ; return this.stream.peekChar() === n ? (this.stream.nextChar(), t.push(String.fromCharCode(n)), u.String) : u.BadString; } return null; }, e.prototype._unquotedChar = function(t) { var n = this.stream.peekChar(); return n !== 0 && n !== Xn && n !== za && n !== Aa && n !== ao && n !== so && n !== Yn && n !== Kn && n !== gt && n !== Pt && n !== bt ? (this.stream.advance(1), t.push(String.fromCharCode(n)), !0) : !1; }, e.prototype._unquotedString = function(t) { for (var n = !1; this._unquotedChar(t) || this._escape(t); ) n = !0; return n; }, e.prototype._whitespace = function() { var t = this.stream.advanceWhileChar(function(n) { return n === Yn || n === Kn || n === gt || n === Pt || n === bt; }); return t > 0; }, e.prototype._name = function(t) { for (var n = !1; this._identChar(t) || this._escape(t); ) n = !0; return n; }, e.prototype.ident = function(t) { var n = this.stream.pos(), r = this._minus(t); if (r) { if (this._minus(t) || this._identFirstChar(t) || this._escape(t)) { for (; this._identChar(t) || this._escape(t); ) ; return !0; } } else if (this._identFirstChar(t) || this._escape(t)) { for (; this._identChar(t) || this._escape(t); ) ; return !0; } return this.stream.goBackTo(n), !1; }, e.prototype._identFirstChar = function(t) { var n = this.stream.peekChar(); return n === Ea || n >= Hn && n <= _a || n >= Gn && n <= Da || n >= 128 && n <= 65535 ? (this.stream.advance(1), t.push(String.fromCharCode(n)), !0) : !1; }, e.prototype._minus = function(t) { var n = this.stream.peekChar(); return n === mt ? (this.stream.advance(1), t.push(String.fromCharCode(n)), !0) : !1; }, e.prototype._identChar = function(t) { var n = this.stream.peekChar(); return n === Ea || n === mt || n >= Hn && n <= _a || n >= Gn && n <= Da || n >= sn && n <= on || n >= 128 && n <= 65535 ? (this.stream.advance(1), t.push(String.fromCharCode(n)), !0) : !1; }, e; }(); function oe(e, t) { if (e.length < t.length) return !1; for (var n = 0; n < t.length; n++) if (e[n] !== t[n]) return !1; return !0; } function oo(e, t) { var n = e.length - t.length; return n > 0 ? e.lastIndexOf(t) === n : n === 0 ? e === t : !1; } function zc(e, t, n) { n === void 0 && (n = 4); var r = Math.abs(e.length - t.length); if (r > n) return 0; var i = [], a = [], o, l; for (o = 0; o < t.length + 1; ++o) a.push(0); for (o = 0; o < e.length + 1; ++o) i.push(a); for (o = 1; o < e.length + 1; ++o) for (l = 1; l < t.length + 1; ++l) e[o - 1] === t[l - 1] ? i[o][l] = i[o - 1][l - 1] + 1 : i[o][l] = Math.max(i[o - 1][l], i[o][l - 1]); return i[e.length][t.length] - Math.sqrt(r); } function Pa(e, t) { return t === void 0 && (t = !0), e ? e.length < 140 ? e : e.slice(0, 140) + (t ? "\u2026" : "") : ""; } function Mc(e, t) { var n = t.exec(e); return n && n[0].length ? e.substr(0, e.length - n[0].length) : e; } var I = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), m; (function(e) { e[e.Undefined = 0] = "Undefined", e[e.Identifier = 1] = "Identifier", e[e.Stylesheet = 2] = "Stylesheet", e[e.Ruleset = 3] = "Ruleset", e[e.Selector = 4] = "Selector", e[e.SimpleSelector = 5] = "SimpleSelector", e[e.SelectorInterpolation = 6] = "SelectorInterpolation", e[e.SelectorCombinator = 7] = "SelectorCombinator", e[e.SelectorCombinatorParent = 8] = "SelectorCombinatorParent", e[e.SelectorCombinatorSibling = 9] = "SelectorCombinatorSibling", e[e.SelectorCombinatorAllSiblings = 10] = "SelectorCombinatorAllSiblings", e[e.SelectorCombinatorShadowPiercingDescendant = 11] = "SelectorCombinatorShadowPiercingDescendant", e[e.Page = 12] = "Page", e[e.PageBoxMarginBox = 13] = "PageBoxMarginBox", e[e.ClassSelector = 14] = "ClassSelector", e[e.IdentifierSelector = 15] = "IdentifierSelector", e[e.ElementNameSelector = 16] = "ElementNameSelector", e[e.PseudoSelector = 17] = "PseudoSelector", e[e.AttributeSelector = 18] = "AttributeSelector", e[e.Declaration = 19] = "Declaration", e[e.Declarations = 20] = "Declarations", e[e.Property = 21] = "Property", e[e.Expression = 22] = "Expression", e[e.BinaryExpression = 23] = "BinaryExpression", e[e.Term = 24] = "Term", e[e.Operator = 25] = "Operator", e[e.Value = 26] = "Value", e[e.StringLiteral = 27] = "StringLiteral", e[e.URILiteral = 28] = "URILiteral", e[e.EscapedValue = 29] = "EscapedValue", e[e.Function = 30] = "Function", e[e.NumericValue = 31] = "NumericValue", e[e.HexColorValue = 32] = "HexColorValue", e[e.RatioValue = 33] = "RatioValue", e[e.MixinDeclaration = 34] = "MixinDeclaration", e[e.MixinReference = 35] = "MixinReference", e[e.VariableName = 36] = "VariableName", e[e.VariableDeclaration = 37] = "VariableDeclaration", e[e.Prio = 38] = "Prio", e[e.Interpolation = 39] = "Interpolation", e[e.NestedProperties = 40] = "NestedProperties", e[e.ExtendsReference = 41] = "ExtendsReference", e[e.SelectorPlaceholder = 42] = "SelectorPlaceholder", e[e.Debug = 43] = "Debug", e[e.If = 44] = "If", e[e.Else = 45] = "Else", e[e.For = 46] = "For", e[e.Each = 47] = "Each", e[e.While = 48] = "While", e[e.MixinContentReference = 49] = "MixinContentReference", e[e.MixinContentDeclaration = 50] = "MixinContentDeclaration", e[e.Media = 51] = "Media", e[e.Keyframe = 52] = "Keyframe", e[e.FontFace = 53] = "FontFace", e[e.Import = 54] = "Import", e[e.Namespace = 55] = "Namespace", e[e.Invocation = 56] = "Invocation", e[e.FunctionDeclaration = 57] = "FunctionDeclaration", e[e.ReturnStatement = 58] = "ReturnStatement", e[e.MediaQuery = 59] = "MediaQuery", e[e.MediaCondition = 60] = "MediaCondition", e[e.MediaFeature = 61] = "MediaFeature", e[e.FunctionParameter = 62] = "FunctionParameter", e[e.FunctionArgument = 63] = "FunctionArgument", e[e.KeyframeSelector = 64] = "KeyframeSelector", e[e.ViewPort = 65] = "ViewPort", e[e.Document = 66] = "Document", e[e.AtApplyRule = 67] = "AtApplyRule", e[e.CustomPropertyDeclaration = 68] = "CustomPropertyDeclaration", e[e.CustomPropertySet = 69] = "CustomPropertySet", e[e.ListEntry = 70] = "ListEntry", e[e.Supports = 71] = "Supports", e[e.SupportsCondition = 72] = "SupportsCondition", e[e.NamespacePrefix = 73] = "NamespacePrefix", e[e.GridLine = 74] = "GridLine", e[e.Plugin = 75] = "Plugin", e[e.UnknownAtRule = 76] = "UnknownAtRule", e[e.Use = 77] = "Use", e[e.ModuleConfiguration = 78] = "ModuleConfiguration", e[e.Forward = 79] = "Forward", e[e.ForwardVisibility = 80] = "ForwardVisibility", e[e.Module = 81] = "Module"; })(m || (m = {})); var G; (function(e) { e[e.Mixin = 0] = "Mixin", e[e.Rule = 1] = "Rule", e[e.Variable = 2] = "Variable", e[e.Function = 3] = "Function", e[e.Keyframe = 4] = "Keyframe", e[e.Unknown = 5] = "Unknown", e[e.Module = 6] = "Module", e[e.Forward = 7] = "Forward", e[e.ForwardVisibility = 8] = "ForwardVisibility"; })(G || (G = {})); function Rr(e, t) { var n = null; return !e || t < e.offset || t > e.end ? null : (e.accept(function(r) { return r.offset === -1 && r.length === -1 ? !0 : r.offset <= t && r.end >= t ? (n ? r.length <= n.length && (n = r) : n = r, !0) : !1; }), n); } function ei(e, t) { for (var n = Rr(e, t), r = []; n; ) r.unshift(n), n = n.parent; return r; } function Nc(e) { var t = e.findParent(m.Declaration), n = t && t.getValue(); return n && n.encloses(e) ? t : null; } var L = function() { function e(t, n, r) { t === void 0 && (t = -1), n === void 0 && (n = -1), this.parent = null, this.offset = t, this.length = n, r && (this.nodeType = r); } return Object.defineProperty(e.prototype, "end", { get: function() { return this.offset + this.length; }, enumerable: !1, configurable: !0 }), Object.defineProperty(e.prototype, "type", { get: function() { return this.nodeType || m.Undefined; }, set: function(t) { this.nodeType = t; }, enumerable: !1, configurable: !0 }), e.prototype.getTextProvider = function() { for (var t = this; t && !t.textProvider; ) t = t.parent; return t ? t.textProvider : function() { return "unknown"; }; }, e.prototype.getText = function() { return this.getTextProvider()(this.offset, this.length); }, e.prototype.matches = function(t) { return this.length === t.length && this.getTextProvider()(this.offset, this.length) === t; }, e.prototype.startsWith = function(t) { return this.length >= t.length && this.getTextProvider()(this.offset, t.length) === t; }, e.prototype.endsWith = function(t) { return this.length >= t.length && this.getTextProvider()(this.end - t.length, t.length) === t; }, e.prototype.accept = function(t) { if (t(this) && this.children) for (var n = 0, r = this.children; n < r.length; n++) { var i = r[n]; i.accept(t); } }, e.prototype.acceptVisitor = function(t) { this.accept(t.visitNode.bind(t)); }, e.prototype.adoptChild = function(t, n) { if (n === void 0 && (n = -1), t.parent && t.parent.children) { var r = t.parent.children.indexOf(t); r >= 0 && t.parent.children.splice(r, 1); } t.parent = this; var i = this.children; return i || (i = this.children = []), n !== -1 ? i.splice(n, 0, t) : i.push(t), t; }, e.prototype.attachTo = function(t, n) { return n === void 0 && (n = -1), t && t.adoptChild(this, n), this; }, e.prototype.collectIssues = function(t) { this.issues && t.push.apply(t, this.issues); }, e.prototype.addIssue = function(t) { this.issues || (this.issues = []), this.issues.push(t); }, e.prototype.hasIssue = function(t) { return Array.isArray(this.issues) && this.issues.some(function(n) { return n.getRule() === t; }); }, e.prototype.isErroneous = function(t) { return t === void 0 && (t = !1), this.issues && this.issues.length > 0 ? !0 : t && Array.isArray(this.children) && this.children.some(function(n) { return n.isErroneous(!0); }); }, e.prototype.setNode = function(t, n, r) { return r === void 0 && (r = -1), n ? (n.attachTo(this, r), this[t] = n, !0) : !1; }, e.prototype.addChild = function(t) { return t ? (this.children || (this.children = []), t.attachTo(this), this.updateOffsetAndLength(t), !0) : !1; }, e.prototype.updateOffsetAndLength = function(t) { (t.offset < this.offset || this.offset === -1) && (this.offset = t.offset); var n = t.end; (n > this.end || this.length === -1) && (this.length = n - this.offset); }, e.prototype.hasChildren = function() { return !!this.children && this.children.length > 0; }, e.prototype.getChildren = function() { return this.children ? this.children.slice(0) : []; }, e.prototype.getChild = function(t) { return this.children && t < this.children.length ? this.children[t] : null; }, e.prototype.addChildren = function(t) { for (var n = 0, r = t; n < r.length; n++) { var i = r[n]; this.addChild(i); } }, e.prototype.findFirstChildBeforeOffset = function(t) { if (this.children) { for (var n = null, r = this.children.length - 1; r >= 0; r--) if (n = this.children[r], n.offset <= t) return n; } return null; }, e.prototype.findChildAtOffset = function(t, n) { var r = this.findFirstChildBeforeOffset(t); return r && r.end >= t ? n && r.findChildAtOffset(t, !0) || r : null; }, e.prototype.encloses = function(t) { return this.offset <= t.offset && this.offset + this.length >= t.offset + t.length; }, e.prototype.getParent = function() { for (var t = this.parent; t instanceof me; ) t = t.parent; return t; }, e.prototype.findParent = function(t) { for (var n = this; n && n.type !== t; ) n = n.parent; return n; }, e.prototype.findAParent = function() { for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n]; for (var r = this; r && !t.some(function(i) { return r.type === i; }); ) r = r.parent; return r; }, e.prototype.setData = function(t, n) { this.options || (this.options = {}), this.options[t] = n; }, e.prototype.getData = function(t) { return !this.options || !this.options.hasOwnProperty(t) ? null : this.options[t]; }, e; }(), me = function(e) { I(t, e); function t(n, r) { r === void 0 && (r = -1); var i = e.call(this, -1, -1) || this; return i.attachTo(n, r), i.offset = -1, i.length = -1, i; } return t; }(L), Re = function(e) { I(t, e); function t(n, r) { var i = e.call(this, n, r) || this; return i.isCustomProperty = !1, i; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Identifier; }, enumerable: !1, configurable: !0 }), t.prototype.containsInterpolation = function() { return this.hasChildren(); }, t; }(L), Pc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Stylesheet; }, enumerable: !1, configurable: !0 }), t; }(L), ti = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Declarations; }, enumerable: !1, configurable: !0 }), t; }(L), ne = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return t.prototype.getDeclarations = function() { return this.declarations; }, t.prototype.setDeclarations = function(n) { return this.setNode("declarations", n); }, t; }(L), Ct = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Ruleset; }, enumerable: !1, configurable: !0 }), t.prototype.getSelectors = function() { return this.selectors || (this.selectors = new me(this)), this.selectors; }, t.prototype.isNested = function() { return !!this.parent && this.parent.findParent(m.Declarations) !== null; }, t; }(ne), tn = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Selector; }, enumerable: !1, configurable: !0 }), t; }(L), kt = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.SimpleSelector; }, enumerable: !1, configurable: !0 }), t; }(L); (function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.AtApplyRule; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t; })(L); var ni = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return t; }(L), Ic = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.CustomPropertySet; }, enumerable: !1, configurable: !0 }), t; }(ne), Ve = function(e) { I(t, e); function t(n, r) { var i = e.call(this, n, r) || this; return i.property = null, i; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Declaration; }, enumerable: !1, configurable: !0 }), t.prototype.setProperty = function(n) { return this.setNode("property", n); }, t.prototype.getProperty = function() { return this.property; }, t.prototype.getFullPropertyName = function() { var n = this.property ? this.property.getName() : "unknown"; if (this.parent instanceof ti && this.parent.getParent() instanceof co) { var r = this.parent.getParent().getParent(); if (r instanceof t) return r.getFullPropertyName() + n; } return n; }, t.prototype.getNonPrefixedPropertyName = function() { var n = this.getFullPropertyName(); if (n && n.charAt(0) === "-") { var r = n.indexOf("-", 1); if (r !== -1) return n.substring(r + 1); } return n; }, t.prototype.setValue = function(n) { return this.setNode("value", n); }, t.prototype.getValue = function() { return this.value; }, t.prototype.setNestedProperties = function(n) { return this.setNode("nestedProperties", n); }, t.prototype.getNestedProperties = function() { return this.nestedProperties; }, t; }(ni), Lc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.CustomPropertyDeclaration; }, enumerable: !1, configurable: !0 }), t.prototype.setPropertySet = function(n) { return this.setNode("propertySet", n); }, t.prototype.getPropertySet = function() { return this.propertySet; }, t; }(Ve), ri = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Property; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return Mc(this.getText(), /[_\+]+$/); }, t.prototype.isCustomProperty = function() { return !!this.identifier && this.identifier.isCustomProperty; }, t; }(L), Tc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Invocation; }, enumerable: !1, configurable: !0 }), t.prototype.getArguments = function() { return this.arguments || (this.arguments = new me(this)), this.arguments; }, t; }(L), nn = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Function; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t; }(Tc), On = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.FunctionParameter; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.setDefaultValue = function(n) { return this.setNode("defaultValue", n, 0); }, t.prototype.getDefaultValue = function() { return this.defaultValue; }, t; }(L), Dt = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.FunctionArgument; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.setValue = function(n) { return this.setNode("value", n, 0); }, t.prototype.getValue = function() { return this.value; }, t; }(L), Wc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.If; }, enumerable: !1, configurable: !0 }), t.prototype.setExpression = function(n) { return this.setNode("expression", n, 0); }, t.prototype.setElseClause = function(n) { return this.setNode("elseClause", n); }, t; }(ne), Oc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.For; }, enumerable: !1, configurable: !0 }), t.prototype.setVariable = function(n) { return this.setNode("variable", n, 0); }, t; }(ne), Vc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Each; }, enumerable: !1, configurable: !0 }), t.prototype.getVariables = function() { return this.variables || (this.variables = new me(this)), this.variables; }, t; }(ne), Uc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.While; }, enumerable: !1, configurable: !0 }), t; }(ne), Bc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Else; }, enumerable: !1, configurable: !0 }), t; }(ne), kn = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.FunctionDeclaration; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.getParameters = function() { return this.parameters || (this.parameters = new me(this)), this.parameters; }, t; }(ne), jc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.ViewPort; }, enumerable: !1, configurable: !0 }), t; }(ne), lo = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.FontFace; }, enumerable: !1, configurable: !0 }), t; }(ne), co = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.NestedProperties; }, enumerable: !1, configurable: !0 }), t; }(ne), ho = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Keyframe; }, enumerable: !1, configurable: !0 }), t.prototype.setKeyword = function(n) { return this.setNode("keyword", n, 0); }, t.prototype.getKeyword = function() { return this.keyword; }, t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t; }(ne), Ia = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.KeyframeSelector; }, enumerable: !1, configurable: !0 }), t; }(ne), ii = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Import; }, enumerable: !1, configurable: !0 }), t.prototype.setMedialist = function(n) { return n ? (n.attachTo(this), !0) : !1; }, t; }(L), qc = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Use; }, enumerable: !1, configurable: !0 }), t.prototype.getParameters = function() { return this.parameters || (this.parameters = new me(this)), this.parameters; }, t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t; }(L), $c = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.ModuleConfiguration; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.setValue = function(n) { return this.setNode("value", n, 0); }, t.prototype.getValue = function() { return this.value; }, t; }(L), Hc = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Forward; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getMembers = function() { return this.members || (this.members = new me(this)), this.members; }, t.prototype.getParameters = function() { return this.parameters || (this.parameters = new me(this)), this.parameters; }, t; }(L), Gc = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.ForwardVisibility; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t; }(L), Jc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Namespace; }, enumerable: !1, configurable: !0 }), t; }(L), uo = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Media; }, enumerable: !1, configurable: !0 }), t; }(ne), Ar = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Supports; }, enumerable: !1, configurable: !0 }), t; }(ne), Xc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Document; }, enumerable: !1, configurable: !0 }), t; }(ne), po = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return t.prototype.getMediums = function() { return this.mediums || (this.mediums = new me(this)), this.mediums; }, t; }(L), fo = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MediaQuery; }, enumerable: !1, configurable: !0 }), t; }(L), Yc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MediaCondition; }, enumerable: !1, configurable: !0 }), t; }(L), Kc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MediaFeature; }, enumerable: !1, configurable: !0 }), t; }(L), Ut = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.SupportsCondition; }, enumerable: !1, configurable: !0 }), t; }(L), Zc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Page; }, enumerable: !1, configurable: !0 }), t; }(ne), Qc = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.PageBoxMarginBox; }, enumerable: !1, configurable: !0 }), t; }(ne), mo = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Expression; }, enumerable: !1, configurable: !0 }), t; }(L), ai = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.BinaryExpression; }, enumerable: !1, configurable: !0 }), t.prototype.setLeft = function(n) { return this.setNode("left", n); }, t.prototype.getLeft = function() { return this.left; }, t.prototype.setRight = function(n) { return this.setNode("right", n); }, t.prototype.getRight = function() { return this.right; }, t.prototype.setOperator = function(n) { return this.setNode("operator", n); }, t.prototype.getOperator = function() { return this.operator; }, t; }(L), eh = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Term; }, enumerable: !1, configurable: !0 }), t.prototype.setOperator = function(n) { return this.setNode("operator", n); }, t.prototype.getOperator = function() { return this.operator; }, t.prototype.setExpression = function(n) { return this.setNode("expression", n); }, t.prototype.getExpression = function() { return this.expression; }, t; }(L), th = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.AttributeSelector; }, enumerable: !1, configurable: !0 }), t.prototype.setNamespacePrefix = function(n) { return this.setNode("namespacePrefix", n); }, t.prototype.getNamespacePrefix = function() { return this.namespacePrefix; }, t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.setOperator = function(n) { return this.setNode("operator", n); }, t.prototype.getOperator = function() { return this.operator; }, t.prototype.setValue = function(n) { return this.setNode("value", n); }, t.prototype.getValue = function() { return this.value; }, t; }(L); (function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Operator; }, enumerable: !1, configurable: !0 }), t; })(L); var si = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.HexColorValue; }, enumerable: !1, configurable: !0 }), t; }(L), nh = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.RatioValue; }, enumerable: !1, configurable: !0 }), t; }(L), rh = ".".charCodeAt(0), ih = "0".charCodeAt(0), ah = "9".charCodeAt(0), oi = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.NumericValue; }, enumerable: !1, configurable: !0 }), t.prototype.getValue = function() { for (var n = this.getText(), r = 0, i, a = 0, o = n.length; a < o && (i = n.charCodeAt(a), ih <= i && i <= ah || i === rh); a++) r += 1; return { value: n.substring(0, r), unit: r < n.length ? n.substring(r) : void 0 }; }, t; }(L), Vn = function(e) { I(t, e); function t(n, r) { var i = e.call(this, n, r) || this; return i.variable = null, i.value = null, i.needsSemicolon = !0, i; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.VariableDeclaration; }, enumerable: !1, configurable: !0 }), t.prototype.setVariable = function(n) { return n ? (n.attachTo(this), this.variable = n, !0) : !1; }, t.prototype.getVariable = function() { return this.variable; }, t.prototype.getName = function() { return this.variable ? this.variable.getName() : ""; }, t.prototype.setValue = function(n) { return n ? (n.attachTo(this), this.value = n, !0) : !1; }, t.prototype.getValue = function() { return this.value; }, t; }(ni), zr = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Interpolation; }, enumerable: !1, configurable: !0 }), t; }(L), li = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.VariableName; }, enumerable: !1, configurable: !0 }), t.prototype.getName = function() { return this.getText(); }, t; }(L), qt = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.ExtendsReference; }, enumerable: !1, configurable: !0 }), t.prototype.getSelectors = function() { return this.selectors || (this.selectors = new me(this)), this.selectors; }, t; }(L), sh = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MixinContentReference; }, enumerable: !1, configurable: !0 }), t.prototype.getArguments = function() { return this.arguments || (this.arguments = new me(this)), this.arguments; }, t; }(L), oh = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MixinContentReference; }, enumerable: !1, configurable: !0 }), t.prototype.getParameters = function() { return this.parameters || (this.parameters = new me(this)), this.parameters; }, t; }(ne), Fn = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MixinReference; }, enumerable: !1, configurable: !0 }), t.prototype.getNamespaces = function() { return this.namespaces || (this.namespaces = new me(this)), this.namespaces; }, t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.getArguments = function() { return this.arguments || (this.arguments = new me(this)), this.arguments; }, t.prototype.setContent = function(n) { return this.setNode("content", n); }, t.prototype.getContent = function() { return this.content; }, t; }(L), $t = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.MixinDeclaration; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t.prototype.getName = function() { return this.identifier ? this.identifier.getText() : ""; }, t.prototype.getParameters = function() { return this.parameters || (this.parameters = new me(this)), this.parameters; }, t.prototype.setGuard = function(n) { return n && (n.attachTo(this), this.guard = n), !1; }, t; }(ne), go = function(e) { I(t, e); function t(n, r) { return e.call(this, n, r) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.UnknownAtRule; }, enumerable: !1, configurable: !0 }), t.prototype.setAtRuleName = function(n) { this.atRuleName = n; }, t.prototype.getAtRuleName = function() { return this.atRuleName; }, t; }(ne), lh = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.ListEntry; }, enumerable: !1, configurable: !0 }), t.prototype.setKey = function(n) { return this.setNode("key", n, 0); }, t.prototype.setValue = function(n) { return this.setNode("value", n, 1); }, t; }(L), ch = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return t.prototype.getConditions = function() { return this.conditions || (this.conditions = new me(this)), this.conditions; }, t; }(L), hh = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return t.prototype.setVariable = function(n) { return this.setNode("variable", n); }, t; }(L), La = function(e) { I(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return Object.defineProperty(t.prototype, "type", { get: function() { return m.Module; }, enumerable: !1, configurable: !0 }), t.prototype.setIdentifier = function(n) { return this.setNode("identifier", n, 0); }, t.prototype.getIdentifier = function() { return this.identifier; }, t; }(L), _e; (function(e) { e[e.Ignore = 1] = "Ignore", e[e.Warning = 2] = "Warning", e[e.Error = 4] = "Error"; })(_e || (_e = {})); var bo = function() { function e(t, n, r, i, a, o) { a === void 0 && (a = t.offset), o === void 0 && (o = t.length), this.node = t, this.rule = n, this.level = r, this.message = i || n.message, this.offset = a, this.length = o; } return e.prototype.getRule = function() { return this.rule; }, e.prototype.getLevel = function() { return this.level; }, e.prototype.getOffset = function() { return this.offset; }, e.prototype.getLength = function() { return this.length; }, e.prototype.getNode = function() { return this.node; }, e.prototype.getMessage = function() { return this.message; }, e; }(), dh = function() { function e() { this.entries = []; } return e.entries = function(t) { var n = new e(); return t.acceptVisitor(n), n.entries; }, e.prototype.visitNode = function(t) { return t.isErroneous() && t.collectIssues(this.entries), !0; }, e; }(); function uh(e, t) { let n; return t.length === 0 ? n = e : n = e.replace(/\{(\d+)\}/g, (r, i) => { let a = i[0]; return typeof t[a] < "u" ? t[a] : r; }), n; } function ph(e, t, ...n) { return uh(t, n); } function Le(e) { return ph; } var J = Le(), X = function() { function e(t, n) { this.id = t, this.message = n; } return e; }(), v = { NumberExpected: new X("css-numberexpected", J("expected.number", "number expected")), ConditionExpected: new X("css-conditionexpected", J("expected.condt", "condition expected")), RuleOrSelectorExpected: new X("css-ruleorselectorexpected", J("expected.ruleorselector", "at-rule or selector expected")), DotExpected: new X("css-dotexpected", J("expected.dot", "dot expected")), ColonExpected: new X("css-colonexpected", J("expected.colon", "colon expected")), SemiColonExpected: new X("css-semicolonexpected", J("expected.semicolon", "semi-colon expected")), TermExpected: new X("css-termexpected", J("expected.term", "term expected")), ExpressionExpected: new X("css-expressionexpected", J("expected.expression", "expression expected")), OperatorExpected: new X("css-operatorexpected", J("expected.operator", "operator expected")), IdentifierExpected: new X("css-identifierexpected", J("expected.ident", "identifier expected")), PercentageExpected: new X("css-percentageexpected", J("expected.percentage", "percentage expected")), URIOrStringExpected: new X("css-uriorstringexpected", J("expected.uriorstring", "uri or string expected")), URIExpected: new X("css-uriexpected", J("expected.uri", "URI expected")), VariableNameExpected: new X("css-varnameexpected", J("expected.varname", "variable name expected")), VariableValueExpected: new X("css-varvalueexpected", J("expected.varvalue", "variable value expected")), PropertyValueExpected: new X("css-propertyvalueexpected", J("expected.propvalue", "property value expected")), LeftCurlyExpected: new X("css-lcurlyexpected", J("expected.lcurly", "{ expected")), RightCurlyExpected: new X("css-rcurlyexpected", J("expected.rcurly", "} expected")), LeftSquareBracketExpected: new X("css-rbracketexpected", J("expected.lsquare", "[ expected")), RightSquareBracketExpected: new X("css-lbracketexpected", J("expected.rsquare", "] expected")), LeftParenthesisExpected: new X("css-lparentexpected", J("expected.lparen", "( expected")), RightParenthesisExpected: new X("css-rparentexpected", J("expected.rparent", ") expected")), CommaExpected: new X("css-commaexpected", J("expected.comma", "comma expected")), PageDirectiveOrDeclarationExpected: new X("css-pagedirordeclexpected", J("expected.pagedirordecl", "page directive or declaraton expected")), UnknownAtRule: new X("css-unknownatrule", J("unknown.atrule", "at-rule unknown")), UnknownKeyword: new X("css-unknownkeyword", J("unknown.keyword", "unknown keyword")), SelectorExpected: new X("css-selectorexpected", J("expected.selector", "selector expected")), StringLiteralExpected: new X("css-stringliteralexpected", J("expected.stringliteral", "string literal expected")), WhitespaceExpected: new X("css-whitespaceexpected", J("expected.whitespace", "whitespace expected")), MediaQueryExpected: new X("css-mediaqueryexpected", J("expected.mediaquery", "media query expected")), IdentifierOrWildcardExpected: new X("css-idorwildcardexpected", J("expected.idorwildcard", "identifier or wildcard expected")), WildcardExpected: new X("css-wildcardexpected", J("expected.wildcard", "wildcard expected")), IdentifierOrVariableExpected: new X("css-idorvarexpected", J("expected.idorvar", "identifier or variable expected")) }, Ta; (function(e) { e.MIN_VALUE = -2147483648, e.MAX_VALUE = 2147483647; })(Ta || (Ta = {})); var _n; (function(e) { e.MIN_VALUE = 0, e.MAX_VALUE = 2147483647; })(_n || (_n = {})); var Fe; (function(e) { function t(r, i) { return r === Number.MAX_VALUE && (r = _n.MAX_VALUE), i === Number.MAX_VALUE && (i = _n.MAX_VALUE), { line: r, character: i }; } e.create = t; function n(r) { var i = r; return x.objectLiteral(i) && x.uinteger(i.line) && x.uinteger(i.character); } e.is = n; })(Fe || (Fe = {})); var Q; (function(e) { function t(r, i, a, o) { if (x.uinteger(r) && x.uinteger(i) && x.uinteger(a) && x.uinteger(o)) return { start: Fe.create(r, i), end: Fe.create(a, o) }; if (Fe.is(r) && Fe.is(i)) return { start: r, end: i }; throw new Error("Range#create called with invalid arguments[" + r + ", " + i + ", " + a + ", " + o + "]"); } e.create = t; function n(r) { var i = r; return x.objectLiteral(i) && Fe.is(i.start) && Fe.is(i.end); } e.is = n; })(Q || (Q = {})); var Ht; (function(e) { function t(r, i) { return { uri: r, range: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && Q.is(i.range) && (x.string(i.uri) || x.undefined(i.uri)); } e.is = n; })(Ht || (Ht = {})); var Wa; (function(e) { function t(r, i, a, o) { return { targetUri: r, targetRange: i, targetSelectionRange: a, originSelectionRange: o }; } e.create = t; function n(r) { var i = r; return x.defined(i) && Q.is(i.targetRange) && x.string(i.targetUri) && (Q.is(i.targetSelectionRange) || x.undefined(i.targetSelectionRange)) && (Q.is(i.originSelectionRange) || x.undefined(i.originSelectionRange)); } e.is = n; })(Wa || (Wa = {})); var Mr; (function(e) { function t(r, i, a, o) { return { red: r, green: i, blue: a, alpha: o }; } e.create = t; function n(r) { var i = r; return x.numberRange(i.red, 0, 1) && x.numberRange(i.green, 0, 1) && x.numberRange(i.blue, 0, 1) && x.numberRange(i.alpha, 0, 1); } e.is = n; })(Mr || (Mr = {})); var Oa; (function(e) { function t(r, i) { return { range: r, color: i }; } e.create = t; function n(r) { var i = r; return Q.is(i.range) && Mr.is(i.color); } e.is = n; })(Oa || (Oa = {})); var Va; (function(e) { function t(r, i, a) { return { label: r, textEdit: i, additionalTextEdits: a }; } e.create = t; function n(r) { var i = r; return x.string(i.label) && (x.undefined(i.textEdit) || B.is(i)) && (x.undefined(i.additionalTextEdits) || x.typedArray(i.additionalTextEdits, B.is)); } e.is = n; })(Va || (Va = {})); var Ua; (function(e) { e.Comment = "comment", e.Imports = "imports", e.Region = "region"; })(Ua || (Ua = {})); var Ba; (function(e) { function t(r, i, a, o, l) { var h = { startLine: r, endLine: i }; return x.defined(a) && (h.startCharacter = a), x.defined(o) && (h.endCharacter = o), x.defined(l) && (h.kind = l), h; } e.create = t; function n(r) { var i = r; return x.uinteger(i.startLine) && x.uinteger(i.startLine) && (x.undefined(i.startCharacter) || x.uinteger(i.startCharacter)) && (x.undefined(i.endCharacter) || x.uinteger(i.endCharacter)) && (x.undefined(i.kind) || x.string(i.kind)); } e.is = n; })(Ba || (Ba = {})); var Nr; (function(e) { function t(r, i) { return { location: r, message: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && Ht.is(i.location) && x.string(i.message); } e.is = n; })(Nr || (Nr = {})); var Dn; (function(e) { e.Error = 1, e.Warning = 2, e.Information = 3, e.Hint = 4; })(Dn || (Dn = {})); var ja; (function(e) { e.Unnecessary = 1, e.Deprecated = 2; })(ja || (ja = {})); var qa; (function(e) { function t(n) { var r = n; return r != null && x.string(r.href); } e.is = t; })(qa || (qa = {})); var En; (function(e) { function t(r, i, a, o, l, h) { var c = { range: r, message: i }; return x.defined(a) && (c.severity = a), x.defined(o) && (c.code = o), x.defined(l) && (c.source = l), x.defined(h) && (c.relatedInformation = h), c; } e.create = t; function n(r) { var i, a = r; return x.defined(a) && Q.is(a.range) && x.string(a.message) && (x.number(a.severity) || x.undefined(a.severity)) && (x.integer(a.code) || x.string(a.code) || x.undefined(a.code)) && (x.undefined(a.codeDescription) || x.string((i = a.codeDescription) === null || i === void 0 ? void 0 : i.href)) && (x.string(a.source) || x.undefined(a.source)) && (x.undefined(a.relatedInformation) || x.typedArray(a.relatedInformation, Nr.is)); } e.is = n; })(En || (En = {})); var Et; (function(e) { function t(r, i) { for (var a = [], o = 2; o < arguments.length; o++) a[o - 2] = arguments[o]; var l = { title: r, command: i }; return x.defined(a) && a.length > 0 && (l.arguments = a), l; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.string(i.title) && x.string(i.command); } e.is = n; })(Et || (Et = {})); var B; (function(e) { function t(a, o) { return { range: a, newText: o }; } e.replace = t; function n(a, o) { return { range: { start: a, end: a }, newText: o }; } e.insert = n; function r(a) { return { range: a, newText: "" }; } e.del = r; function i(a) { var o = a; return x.objectLiteral(o) && x.string(o.newText) && Q.is(o.range); } e.is = i; })(B || (B = {})); var Ft; (function(e) { function t(r, i, a) { var o = { label: r }; return i !== void 0 && (o.needsConfirmation = i), a !== void 0 && (o.description = a), o; } e.create = t; function n(r) { var i = r; return i !== void 0 && x.objectLiteral(i) && x.string(i.label) && (x.boolean(i.needsConfirmation) || i.needsConfirmation === void 0) && (x.string(i.description) || i.description === void 0); } e.is = n; })(Ft || (Ft = {})); var be; (function(e) { function t(n) { var r = n; return typeof r == "string"; } e.is = t; })(be || (be = {})); var Ze; (function(e) { function t(a, o, l) { return { range: a, newText: o, annotationId: l }; } e.replace = t; function n(a, o, l) { return { range: { start: a, end: a }, newText: o, annotationId: l }; } e.insert = n; function r(a, o) { return { range: a, newText: "", annotationId: o }; } e.del = r; function i(a) { var o = a; return B.is(o) && (Ft.is(o.annotationId) || be.is(o.annotationId)); } e.is = i; })(Ze || (Ze = {})); var Gt; (function(e) { function t(r, i) { return { textDocument: r, edits: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && Rn.is(i.textDocument) && Array.isArray(i.edits); } e.is = n; })(Gt || (Gt = {})); var Jt; (function(e) { function t(r, i, a) { var o = { kind: "create", uri: r }; return i !== void 0 && (i.overwrite !== void 0 || i.ignoreIfExists !== void 0) && (o.options = i), a !== void 0 && (o.annotationId = a), o; } e.create = t; function n(r) { var i = r; return i && i.kind === "create" && x.string(i.uri) && (i.options === void 0 || (i.options.overwrite === void 0 || x.boolean(i.options.overwrite)) && (i.options.ignoreIfExists === void 0 || x.boolean(i.options.ignoreIfExists))) && (i.annotationId === void 0 || be.is(i.annotationId)); } e.is = n; })(Jt || (Jt = {})); var Xt; (function(e) { function t(r, i, a, o) { var l = { kind: "rename", oldUri: r, newUri: i }; return a !== void 0 && (a.overwrite !== void 0 || a.ignoreIfExists !== void 0) && (l.options = a), o !== void 0 && (l.annotationId = o), l; } e.create = t; function n(r) { var i = r; return i && i.kind === "rename" && x.string(i.oldUri) && x.string(i.newUri) && (i.options === void 0 || (i.options.overwrite === void 0 || x.boolean(i.options.overwrite)) && (i.options.ignoreIfExists === void 0 || x.boolean(i.options.ignoreIfExists))) && (i.annotationId === void 0 || be.is(i.annotationId)); } e.is = n; })(Xt || (Xt = {})); var Yt; (function(e) { function t(r, i, a) { var o = { kind: "delete", uri: r }; return i !== void 0 && (i.recursive !== void 0 || i.ignoreIfNotExists !== void 0) && (o.options = i), a !== void 0 && (o.annotationId = a), o; } e.create = t; function n(r) { var i = r; return i && i.kind === "delete" && x.string(i.uri) && (i.options === void 0 || (i.options.recursive === void 0 || x.boolean(i.options.recursive)) && (i.options.ignoreIfNotExists === void 0 || x.boolean(i.options.ignoreIfNotExists))) && (i.annotationId === void 0 || be.is(i.annotationId)); } e.is = n; })(Yt || (Yt = {})); var Pr; (function(e) { function t(n) { var r = n; return r && (r.changes !== void 0 || r.documentChanges !== void 0) && (r.documentChanges === void 0 || r.documentChanges.every(function(i) { return x.string(i.kind) ? Jt.is(i) || Xt.is(i) || Yt.is(i) : Gt.is(i); })); } e.is = t; })(Pr || (Pr = {})); var ln = function() { function e(t, n) { this.edits = t, this.changeAnnotations = n; } return e.prototype.insert = function(t, n, r) { var i, a; if (r === void 0 ? i = B.insert(t, n) : be.is(r) ? (a = r, i = Ze.insert(t, n, r)) : (this.assertChangeAnnotations(this.changeAnnotations), a = this.changeAnnotations.manage(r), i = Ze.insert(t, n, a)), this.edits.push(i), a !== void 0) return a; }, e.prototype.replace = function(t, n, r) { var i, a; if (r === void 0 ? i = B.replace(t, n) : be.is(r) ? (a = r, i = Ze.replace(t, n, r)) : (this.assertChangeAnnotations(this.changeAnnotations), a = this.changeAnnotations.manage(r), i = Ze.replace(t, n, a)), this.edits.push(i), a !== void 0) return a; }, e.prototype.delete = function(t, n) { var r, i; if (n === void 0 ? r = B.del(t) : be.is(n) ? (i = n, r = Ze.del(t, n)) : (this.assertChangeAnnotations(this.changeAnnotations), i = this.changeAnnotations.manage(n), r = Ze.del(t, i)), this.edits.push(r), i !== void 0) return i; }, e.prototype.add = function(t) { this.edits.push(t); }, e.prototype.all = function() { return this.edits; }, e.prototype.clear = function() { this.edits.splice(0, this.edits.length); }, e.prototype.assertChangeAnnotations = function(t) { if (t === void 0) throw new Error("Text edit change is not configured to manage change annotations."); }, e; }(), $a = function() { function e(t) { this._annotations = t === void 0 ? /* @__PURE__ */ Object.create(null) : t, this._counter = 0, this._size = 0; } return e.prototype.all = function() { return this._annotations; }, Object.defineProperty(e.prototype, "size", { get: function() { return this._size; }, enumerable: !1, configurable: !0 }), e.prototype.manage = function(t, n) { var r; if (be.is(t) ? r = t : (r = this.nextId(), n = t), this._annotations[r] !== void 0) throw new Error("Id " + r + " is already in use."); if (n === void 0) throw new Error("No annotation provided for id " + r); return this._annotations[r] = n, this._size++, r; }, e.prototype.nextId = function() { return this._counter++, this._counter.toString(); }, e; }(); (function() { function e(t) { var n = this; this._textEditChanges = /* @__PURE__ */ Object.create(null), t !== void 0 ? (this._workspaceEdit = t, t.documentChanges ? (this._changeAnnotations = new $a(t.changeAnnotations), t.changeAnnotations = this._changeAnnotations.all(), t.documentChanges.forEach(function(r) { if (Gt.is(r)) { var i = new ln(r.edits, n._changeAnnotations); n._textEditChanges[r.textDocument.uri] = i; } })) : t.changes && Object.keys(t.changes).forEach(function(r) { var i = new ln(t.changes[r]); n._textEditChanges[r] = i; })) : this._workspaceEdit = {}; } return Object.defineProperty(e.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 }), e.prototype.getTextEditChange = function(t) { if (Rn.is(t)) { if (this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0) throw new Error("Workspace edit is not configured for document changes."); var n = { uri: t.uri, version: t.version }, r = this._textEditChanges[n.uri]; if (!r) { var i = [], a = { textDocument: n, edits: i }; this._workspaceEdit.documentChanges.push(a), r = new ln(i, this._changeAnnotations), this._textEditChanges[n.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 i = []; this._workspaceEdit.changes[t] = i, r = new ln(i), this._textEditChanges[t] = r; } return r; } }, e.prototype.initDocumentChanges = function() { this._workspaceEdit.documentChanges === void 0 && this._workspaceEdit.changes === void 0 && (this._changeAnnotations = new $a(), this._workspaceEdit.documentChanges = [], this._workspaceEdit.changeAnnotations = this._changeAnnotations.all()); }, e.prototype.initChanges = function() { this._workspaceEdit.documentChanges === void 0 && this._workspaceEdit.changes === void 0 && (this._workspaceEdit.changes = /* @__PURE__ */ Object.create(null)); }, e.prototype.createFile = function(t, n, r) { if (this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0) throw new Error("Workspace edit is not configured for document changes."); var i; Ft.is(n) || be.is(n) ? i = n : r = n; var a, o; if (i === void 0 ? a = Jt.create(t, r) : (o = be.is(i) ? i : this._changeAnnotations.manage(i), a = Jt.create(t, r, o)), this._workspaceEdit.documentChanges.push(a), o !== void 0) return o; }, e.prototype.renameFile = function(t, n, r, i) { if (this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0) throw new Error("Workspace edit is not configured for document changes."); var a; Ft.is(r) || be.is(r) ? a = r : i = r; var o, l; if (a === void 0 ? o = Xt.create(t, n, i) : (l = be.is(a) ? a : this._changeAnnotations.manage(a), o = Xt.create(t, n, i, l)), this._workspaceEdit.documentChanges.push(o), l !== void 0) return l; }, e.prototype.deleteFile = function(t, n, r) { if (this.initDocumentChanges(), this._workspaceEdit.documentChanges === void 0) throw new Error("Workspace edit is not configured for document changes."); var i; Ft.is(n) || be.is(n) ? i = n : r = n; var a, o; if (i === void 0 ? a = Yt.create(t, r) : (o = be.is(i) ? i : this._changeAnnotations.manage(i), a = Yt.create(t, r, o)), this._workspaceEdit.documentChanges.push(a), o !== void 0) return o; }, e; })(); var Ha; (function(e) { function t(r) { return { uri: r }; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.string(i.uri); } e.is = n; })(Ha || (Ha = {})); var Ir; (function(e) { function t(r, i) { return { uri: r, version: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.string(i.uri) && x.integer(i.version); } e.is = n; })(Ir || (Ir = {})); var Rn; (function(e) { function t(r, i) { return { uri: r, version: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.string(i.uri) && (i.version === null || x.integer(i.version)); } e.is = n; })(Rn || (Rn = {})); var Ga; (function(e) { function t(r, i, a, o) { return { uri: r, languageId: i, version: a, text: o }; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.string(i.uri) && x.string(i.languageId) && x.integer(i.version) && x.string(i.text); } e.is = n; })(Ga || (Ga = {})); var Ae; (function(e) { e.PlainText = "plaintext", e.Markdown = "markdown"; })(Ae || (Ae = {})); (function(e) { function t(n) { var r = n; return r === e.PlainText || r === e.Markdown; } e.is = t; })(Ae || (Ae = {})); var Lr; (function(e) { function t(n) { var r = n; return x.objectLiteral(n) && Ae.is(r.kind) && x.string(r.value); } e.is = t; })(Lr || (Lr = {})); var V; (function(e) { e.Text = 1, e.Method = 2, e.Function = 3, e.Constructor = 4, e.Field = 5, e.Variable = 6, e.Class = 7, e.Interface = 8, e.Module = 9, e.Property = 10, e.Unit = 11, e.Value = 12, e.Enum = 13, e.Keyword = 14, e.Snippet = 15, e.Color = 16, e.File = 17, e.Reference = 18, e.Folder = 19, e.EnumMember = 20, e.Constant = 21, e.Struct = 22, e.Event = 23, e.Operator = 24, e.TypeParameter = 25; })(V || (V = {})); var ke; (function(e) { e.PlainText = 1, e.Snippet = 2; })(ke || (ke = {})); var ot; (function(e) { e.Deprecated = 1; })(ot || (ot = {})); var Ja; (function(e) { function t(r, i, a) { return { newText: r, insert: i, replace: a }; } e.create = t; function n(r) { var i = r; return i && x.string(i.newText) && Q.is(i.insert) && Q.is(i.replace); } e.is = n; })(Ja || (Ja = {})); var Xa; (function(e) { e.asIs = 1, e.adjustIndentation = 2; })(Xa || (Xa = {})); var Ya; (function(e) { function t(n) { return { label: n }; } e.create = t; })(Ya || (Ya = {})); var Ka; (function(e) { function t(n, r) { return { items: n || [], isIncomplete: !!r }; } e.create = t; })(Ka || (Ka = {})); var An; (function(e) { function t(r) { return r.replace(/[\\`*_{}[\]()#+\-.!]/g, "\\$&"); } e.fromPlainText = t; function n(r) { var i = r; return x.string(i) || x.objectLiteral(i) && x.string(i.language) && x.string(i.value); } e.is = n; })(An || (An = {})); var Za; (function(e) { function t(n) { var r = n; return !!r && x.objectLiteral(r) && (Lr.is(r.contents) || An.is(r.contents) || x.typedArray(r.contents, An.is)) && (n.range === void 0 || Q.is(n.range)); } e.is = t; })(Za || (Za = {})); var Qa; (function(e) { function t(n, r) { return r ? { label: n, documentation: r } : { label: n }; } e.create = t; })(Qa || (Qa = {})); var es; (function(e) { function t(n, r) { for (var i = [], a = 2; a < arguments.length; a++) i[a - 2] = arguments[a]; var o = { label: n }; return x.defined(r) && (o.documentation = r), x.defined(i) ? o.parameters = i : o.parameters = [], o; } e.create = t; })(es || (es = {})); var xt; (function(e) { e.Text = 1, e.Read = 2, e.Write = 3; })(xt || (xt = {})); var ts; (function(e) { function t(n, r) { var i = { range: n }; return x.number(r) && (i.kind = r), i; } e.create = t; })(ts || (ts = {})); var lt; (function(e) { e.File = 1, e.Module = 2, e.Namespace = 3, e.Package = 4, e.Class = 5, e.Method = 6, e.Property = 7, e.Field = 8, e.Constructor = 9, e.Enum = 10, e.Interface = 11, e.Function = 12, e.Variable = 13, e.Constant = 14, e.String = 15, e.Number = 16, e.Boolean = 17, e.Array = 18, e.Object = 19, e.Key = 20, e.Null = 21, e.EnumMember = 22, e.Struct = 23, e.Event = 24, e.Operator = 25, e.TypeParameter = 26; })(lt || (lt = {})); var ns; (function(e) { e.Deprecated = 1; })(ns || (ns = {})); var rs; (function(e) { function t(n, r, i, a, o) { var l = { name: n, kind: r, location: { uri: a, range: i } }; return o && (l.containerName = o), l; } e.create = t; })(rs || (rs = {})); var is; (function(e) { function t(r, i, a, o, l, h) { var c = { name: r, detail: i, kind: a, range: o, selectionRange: l }; return h !== void 0 && (c.children = h), c; } e.create = t; function n(r) { var i = r; return i && x.string(i.name) && x.number(i.kind) && Q.is(i.range) && Q.is(i.selectionRange) && (i.detail === void 0 || x.string(i.detail)) && (i.deprecated === void 0 || x.boolean(i.deprecated)) && (i.children === void 0 || Array.isArray(i.children)) && (i.tags === void 0 || Array.isArray(i.tags)); } e.is = n; })(is || (is = {})); var Tr; (function(e) { e.Empty = "", e.QuickFix = "quickfix", e.Refactor = "refactor", e.RefactorExtract = "refactor.extract", e.RefactorInline = "refactor.inline", e.RefactorRewrite = "refactor.rewrite", e.Source = "source", e.SourceOrganizeImports = "source.organizeImports", e.SourceFixAll = "source.fixAll"; })(Tr || (Tr = {})); var as; (function(e) { function t(r, i) { var a = { diagnostics: r }; return i != null && (a.only = i), a; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.typedArray(i.diagnostics, En.is) && (i.only === void 0 || x.typedArray(i.only, x.string)); } e.is = n; })(as || (as = {})); var Wr; (function(e) { function t(r, i, a) { var o = { title: r }, l = !0; return typeof i == "string" ? (l = !1, o.kind = i) : Et.is(i) ? o.command = i : o.edit = i, l && a !== void 0 && (o.kind = a), o; } e.create = t; function n(r) { var i = r; return i && x.string(i.title) && (i.diagnostics === void 0 || x.typedArray(i.diagnostics, En.is)) && (i.kind === void 0 || x.string(i.kind)) && (i.edit !== void 0 || i.command !== void 0) && (i.command === void 0 || Et.is(i.command)) && (i.isPreferred === void 0 || x.boolean(i.isPreferred)) && (i.edit === void 0 || Pr.is(i.edit)); } e.is = n; })(Wr || (Wr = {})); var ss; (function(e) { function t(r, i) { var a = { range: r }; return x.defined(i) && (a.data = i), a; } e.create = t; function n(r) { var i = r; return x.defined(i) && Q.is(i.range) && (x.undefined(i.command) || Et.is(i.command)); } e.is = n; })(ss || (ss = {})); var os; (function(e) { function t(r, i) { return { tabSize: r, insertSpaces: i }; } e.create = t; function n(r) { var i = r; return x.defined(i) && x.uinteger(i.tabSize) && x.boolean(i.insertSpaces); } e.is = n; })(os || (os = {})); var ls; (function(e) { function t(r, i, a) { return { range: r, target: i, data: a }; } e.create = t; function n(r) { var i = r; return x.defined(i) && Q.is(i.range) && (x.undefined(i.target) || x.string(i.target)); } e.is = n; })(ls || (ls = {})); var zn; (function(e) { function t(r, i) { return { range: r, parent: i }; } e.create = t; function n(r) { var i = r; return i !== void 0 && Q.is(i.range) && (i.parent === void 0 || e.is(i.parent)); } e.is = n; })(zn || (zn = {})); var cs; (function(e) { function t(a, o, l, h) { return new fh(a, o, l, h); } e.create = t; function n(a) { var o = a; return !!(x.defined(o) && x.string(o.uri) && (x.undefined(o.languageId) || x.string(o.languageId)) && x.uinteger(o.lineCount) && x.func(o.getText) && x.func(o.positionAt) && x.func(o.offsetAt)); } e.is = n; function r(a, o) { for (var l = a.getText(), h = i(o, function(w, b) { var y = w.range.start.line - b.range.start.line; return y === 0 ? w.range.start.character - b.range.start.character : y; }), c = l.length, d = h.length - 1; d >= 0; d--) { var p = h[d], f = a.offsetAt(p.range.start), g = a.offsetAt(p.range.end); if (g <= c) l = l.substring(0, f) + p.newText + l.substring(g, l.length); else throw new Error("Overlapping edit"); c = f; } return l; } e.applyEdits = r; function i(a, o) { if (a.length <= 1) return a; var l = a.length / 2 | 0, h = a.slice(0, l), c = a.slice(l); i(h, o), i(c, o); for (var d = 0, p = 0, f = 0; d < h.length && p < c.length; ) { var g = o(h[d], c[p]); g <= 0 ? a[f++] = h[d++] : a[f++] = c[p++]; } for (; d < h.length; ) a[f++] = h[d++]; for (; p < c.length; ) a[f++] = c[p++]; return a; } })(cs || (cs = {})); var fh = function() { function e(t, n, r, i) { this._uri = t, this._languageId = n, this._version = r, this._content = i, this._lineOffsets = void 0; } return Object.defineProperty(e.prototype, "uri", { get: function() { return this._uri; }, enumerable: !1, configurable: !0 }), Object.defineProperty(e.prototype, "languageId", { get: function() { return this._languageId; }, enumerable: !1, configurable: !0 }), Object.defineProperty(e.prototype, "version", { get: function() { return this._version; }, enumerable: !1, configurable: !0 }), e.prototype.getText = function(t) { if (t) { var n = this.offsetAt(t.start), r = this.offsetAt(t.end); return this._content.substring(n, r); } return this._content; }, e.prototype.update = function(t, n) { this._content = t.text, this._version = n, this._lineOffsets = void 0; }, e.prototype.getLineOffsets = function() { if (this._lineOffsets === void 0) { for (var t = [], n = this._content, r = !0, i = 0; i < n.length; i++) { r && (t.push(i), r = !1); var a = n.charAt(i); r = a === "\r" || a === ` `, a === "\r" && i + 1 < n.length && n.charAt(i + 1) === ` ` && i++; } r && n.length > 0 && t.push(n.length), this._lineOffsets = t; } return this._lineOffsets; }, e.prototype.positionAt = function(t) { t = Math.max(Math.min(t, this._content.length), 0); var n = this.getLineOffsets(), r = 0, i = n.length; if (i === 0) return Fe.create(0, t); for (; r < i; ) { var a = Math.floor((r + i) / 2); n[a] > t ? i = a : r = a + 1; } var o = r - 1; return Fe.create(o, t - n[o]); }, e.prototype.offsetAt = function(t) { var n = this.getLineOffsets(); if (t.line >= n.length) return this._content.length; if (t.line < 0) return 0; var r = n[t.line], i = t.line + 1 < n.length ? n[t.line + 1] : this._content.length; return Math.max(Math.min(r + t.character, i), r); }, Object.defineProperty(e.prototype, "lineCount", { get: function() { return this.getLineOffsets().length; }, enumerable: !1, configurable: !0 }), e; }(), x; (function(e) { var t = Object.prototype.toString; function n(g) { return typeof g < "u"; } e.defined = n; function r(g) { return typeof g > "u"; } e.undefined = r; function i(g) { return g === !0 || g === !1; } e.boolean = i; function a(g) { return t.call(g) === "[object String]"; } e.string = a; function o(g) { return t.call(g) === "[object Number]"; } e.number = o; function l(g, w, b) { return t.call(g) === "[object Number]" && w <= g && g <= b; } e.numberRange = l; function h(g) { return t.call(g) === "[object Number]" && -2147483648 <= g && g <= 2147483647; } e.integer = h; function c(g) { return t.call(g) === "[object Number]" && 0 <= g && g <= 2147483647; } e.uinteger = c; function d(g) { return t.call(g) === "[object Function]"; } e.func = d; function p(g) { return g !== null && typeof g == "object"; } e.objectLiteral = p; function f(g, w) { return Array.isArray(g) && g.every(w); } e.typedArray = f; })(x || (x = {})); var Mn = class { constructor(e, t, n, r) { this._uri = e, this._languageId = t, this._version = n, this._content = r, this._lineOffsets = void 0; } get uri() { return this._uri; } get languageId() { return this._languageId; } get version() { return this._version; } getText(e) { if (e) { const t = this.offsetAt(e.start), n = this.offsetAt(e.end); return this._content.substring(t, n); } return this._content; } update(e, t) { for (let n of e) if (Mn.isIncremental(n)) { const r = vo(n.range), i = this.offsetAt(r.start), a = this.offsetAt(r.end); this._content = this._content.substring(0, i) + n.text + this._content.substring(a, this._content.length); const o = Math.max(r.start.line, 0), l = Math.max(r.end.line, 0); let h = this._lineOffsets; const c = hs(n.text, !1, i); if (l - o === c.length) for (let p = 0, f = c.length; p < f; p++) h[p + o + 1] = c[p]; else c.length < 1e4 ? h.splice(o + 1, l - o, ...c) : this._lineOffsets = h = h.slice(0, o + 1).concat(c, h.slice(l + 1)); const d = n.text.length - (a - i); if (d !== 0) for (let p = o + 1 + c.length, f = h.length; p < f; p++) h[p] = h[p] + d; } else if (Mn.isFull(n)) this._content = n.text, this._lineOffsets = void 0; else throw new Error("Unknown change event received"); this._version = t; } getLineOffsets() { return this._lineOffsets === void 0 && (this._lineOffsets = hs(this._content, !0)), this._lineOffsets; } positionAt(e) { e = Math.max(Math.min(e, this._content.length), 0); let t = this.getLineOffsets(), n = 0, r = t.length; if (r === 0) return { line: 0, character: e }; for (; n < r; ) { let a = Math.floor((n + r) / 2); t[a] > e ? r = a : n = a + 1; } let i = n - 1; return { line: i, character: e - t[i] }; } offsetAt(e) { let t = this.getLineOffsets(); if (e.line >= t.length) return this._content.length; if (e.line < 0) return 0; let n = t[e.line], r = e.line + 1 < t.length ? t[e.line + 1] : this._content.length; return Math.max(Math.min(n + e.character, r), n); } get lineCount() { return this.getLineOffsets().length; } static isIncremental(e) { let t = e; return t != null && typeof t.text == "string" && t.range !== void 0 && (t.rangeLength === void 0 || typeof t.rangeLength == "number"); } static isFull(e) { let t = e; return t != null && typeof t.text == "string" && t.range === void 0 && t.rangeLength === void 0; } }, Or; (function(e) { function t(i, a, o, l) { return new Mn(i, a, o, l); } e.create = t; function n(i, a, o) { if (i instanceof Mn) return i.update(a, o), i; throw new Error("TextDocument.update: document must be created by TextDocument.create"); } e.update = n; function r(i, a) { let o = i.getText(), l = Vr(a.map(mh), (d, p) => { let f = d.range.start.line - p.range.start.line; return f === 0 ? d.range.start.character - p.range.start.character : f; }), h = 0; const c = []; for (const d of l) { let p = i.offsetAt(d.range.start); if (p < h) throw new Error("Overlapping edit"); p > h && c.push(o.substring(h, p)), d.newText.length && c.push(d.newText), h = i.offsetAt(d.range.end); } return c.push(o.substr(h)), c.join(""); } e.applyEdits = r; })(Or || (Or = {})); function Vr(e, t) { if (e.length <= 1) return e; const n = e.length / 2 | 0, r = e.slice(0, n), i = e.slice(n); Vr(r, t), Vr(i, t); let a = 0, o = 0, l = 0; for (; a < r.length && o < i.length; ) t(r[a], i[o]) <= 0 ? e[l++] = r[a++] : e[l++] = i[o++]; for (; a < r.length; ) e[l++] = r[a++]; for (; o < i.length; ) e[l++] = i[o++]; return e; } function hs(e, t, n = 0) { const r = t ? [n] : []; for (let i = 0; i < e.length; i++) { let a = e.charCodeAt(i); (a === 13 || a === 10) && (a === 13 && i + 1 < e.length && e.charCodeAt(i + 1) === 10 && i++, r.push(n + i + 1)); } return r; } function vo(e) { const t = e.start, n = e.end; return t.line > n.line || t.line === n.line && t.character > n.character ? { start: n, end: t } : e; } function mh(e) { const t = vo(e.range); return t !== e.range ? { newText: e.newText, range: t } : e; } var ds; (function(e) { e.LATEST = { textDocument: { completion: { completionItem: { documentationFormat: [Ae.Markdown, Ae.PlainText] } }, hover: { contentFormat: [Ae.Markdown, Ae.PlainText] } } }; })(ds || (ds = {})); var Kt; (function(e) { e[e.Unknown = 0] = "Unknown", e[e.File = 1] = "File", e[e.Directory = 2] = "Directory", e[e.SymbolicLink = 64] = "SymbolicLink"; })(Kt || (Kt = {})); var us = { E: "Edge", FF: "Firefox", S: "Safari", C: "Chrome", IE: "IE", O: "Opera" }; function yo(e) { switch (e) { case "experimental": return `\u26A0\uFE0F Property is experimental. Be cautious when using it.\uFE0F `; case "nonstandard": return `\u{1F6A8}\uFE0F Property is nonstandard. Avoid using it. `; case "obsolete": return `\u{1F6A8}\uFE0F\uFE0F\uFE0F Property is obsolete. Avoid using it. `; default: return ""; } } function et(e, t, n) { var r; if (t ? r = { kind: "markdown", value: bh(e, n) } : r = { kind: "plaintext", value: gh(e, n) }, r.value !== "") return r; } function cn(e) { return e = e.replace(/[\\`*_{}[\]()#+\-.!]/g, "\\$&"), e.replace(//g, ">"); } function gh(e, t) { if (!e.description || e.description === "") return ""; if (typeof e.description != "string") return e.description.value; var n = ""; if ((t == null ? void 0 : t.documentation) !== !1) { e.status && (n += yo(e.status)), n += e.description; var r = wo(e.browsers); r && (n += ` (` + r + ")"), "syntax" in e && (n += ` Syntax: `.concat(e.syntax)); } return e.references && e.references.length > 0 && (t == null ? void 0 : t.references) !== !1 && (n.length > 0 && (n += ` `), n += e.references.map(function(i) { return "".concat(i.name, ": ").concat(i.url); }).join(" | ")), n; } function bh(e, t) { if (!e.description || e.description === "") return ""; var n = ""; if ((t == null ? void 0 : t.documentation) !== !1) { e.status && (n += yo(e.status)), typeof e.description == "string" ? n += cn(e.description) : n += e.description.kind === Ae.Markdown ? e.description.value : cn(e.description.value); var r = wo(e.browsers); r && (n += ` (` + cn(r) + ")"), "syntax" in e && e.syntax && (n += ` Syntax: `.concat(cn(e.syntax))); } return e.references && e.references.length > 0 && (t == null ? void 0 : t.references) !== !1 && (n.length > 0 && (n += ` `), n += e.references.map(function(i) { return "[".concat(i.name, "](").concat(i.url, ")"); }).join(" | ")), n; } function wo(e) { return e === void 0 && (e = []), e.length === 0 ? null : e.map(function(t) { var n = "", r = t.match(/([A-Z]+)(\d+)?/), i = r[1], a = r[2]; return i in us && (n += us[i]), a && (n += " " + a), n; }).join(", "); } var hn = Le(), vh = [ { func: "rgb($red, $green, $blue)", desc: hn("css.builtin.rgb", "Creates a Color from red, green, and blue values.") }, { func: "rgba($red, $green, $blue, $alpha)", desc: hn("css.builtin.rgba", "Creates a Color from red, green, blue, and alpha values.") }, { func: "hsl($hue, $saturation, $lightness)", desc: hn("css.builtin.hsl", "Creates a Color from hue, saturation, and lightness values.") }, { func: "hsla($hue, $saturation, $lightness, $alpha)", desc: hn("css.builtin.hsla", "Creates a Color from hue, saturation, lightness, and alpha values.") } ], Nn = { aliceblue: "#f0f8ff", antiquewhite: "#faebd7", aqua: "#00ffff", aquamarine: "#7fffd4", azure: "#f0ffff", beige: "#f5f5dc", bisque: "#ffe4c4", black: "#000000", blanchedalmond: "#ffebcd", blue: "#0000ff", blueviolet: "#8a2be2", brown: "#a52a2a", burlywood: "#deb887", cadetblue: "#5f9ea0", chartreuse: "#7fff00", chocolate: "#d2691e", coral: "#ff7f50", cornflowerblue: "#6495ed", cornsilk: "#fff8dc", crimson: "#dc143c", cyan: "#00ffff", darkblue: "#00008b", darkcyan: "#008b8b", darkgoldenrod: "#b8860b", darkgray: "#a9a9a9", darkgrey: "#a9a9a9", darkgreen: "#006400", darkkhaki: "#bdb76b", darkmagenta: "#8b008b", darkolivegreen: "#556b2f", darkorange: "#ff8c00", darkorchid: "#9932cc", darkred: "#8b0000", darksalmon: "#e9967a", darkseagreen: "#8fbc8f", darkslateblue: "#483d8b", darkslategray: "#2f4f4f", darkslategrey: "#2f4f4f", darkturquoise: "#00ced1", darkviolet: "#9400d3", deeppink: "#ff1493", deepskyblue: "#00bfff", dimgray: "#696969", dimgrey: "#696969", dodgerblue: "#1e90ff", firebrick: "#b22222", floralwhite: "#fffaf0", forestgreen: "#228b22", fuchsia: "#ff00ff", gainsboro: "#dcdcdc", ghostwhite: "#f8f8ff", gold: "#ffd700", goldenrod: "#daa520", gray: "#808080", grey: "#808080", green: "#008000", greenyellow: "#adff2f", honeydew: "#f0fff0", hotpink: "#ff69b4", indianred: "#cd5c5c", indigo: "#4b0082", ivory: "#fffff0", khaki: "#f0e68c", lavender: "#e6e6fa", lavenderblush: "#fff0f5", lawngreen: "#7cfc00", lemonchiffon: "#fffacd", lightblue: "#add8e6", lightcoral: "#f08080", lightcyan: "#e0ffff", lightgoldenrodyellow: "#fafad2", lightgray: "#d3d3d3", lightgrey: "#d3d3d3", lightgreen: "#90ee90", lightpink: "#ffb6c1", lightsalmon: "#ffa07a", lightseagreen: "#20b2aa", lightskyblue: "#87cefa", lightslategray: "#778899", lightslategrey: "#778899", lightsteelblue: "#b0c4de", lightyellow: "#ffffe0", lime: "#00ff00", limegreen: "#32cd32", linen: "#faf0e6", magenta: "#ff00ff", maroon: "#800000", mediumaquamarine: "#66cdaa", mediumblue: "#0000cd", mediumorchid: "#ba55d3", mediumpurple: "#9370d8", mediumseagreen: "#3cb371", mediumslateblue: "#7b68ee", mediumspringgreen: "#00fa9a", mediumturquoise: "#48d1cc", mediumvioletred: "#c71585", midnightblue: "#191970", mintcream: "#f5fffa", mistyrose: "#ffe4e1", moccasin: "#ffe4b5", navajowhite: "#ffdead", navy: "#000080", oldlace: "#fdf5e6", olive: "#808000", olivedrab: "#6b8e23", orange: "#ffa500", orangered: "#ff4500", orchid: "#da70d6", palegoldenrod: "#eee8aa", palegreen: "#98fb98", paleturquoise: "#afeeee", palevioletred: "#d87093", papayawhip: "#ffefd5", peachpuff: "#ffdab9", peru: "#cd853f", pink: "#ffc0cb", plum: "#dda0dd", powderblue: "#b0e0e6", purple: "#800080", red: "#ff0000", rebeccapurple: "#663399", rosybrown: "#bc8f8f", royalblue: "#4169e1", saddlebrown: "#8b4513", salmon: "#fa8072", sandybrown: "#f4a460", seagreen: "#2e8b57", seashell: "#fff5ee", sienna: "#a0522d", silver: "#c0c0c0", skyblue: "#87ceeb", slateblue: "#6a5acd", slategray: "#708090", slategrey: "#708090", snow: "#fffafa", springgreen: "#00ff7f", steelblue: "#4682b4", tan: "#d2b48c", teal: "#008080", thistle: "#d8bfd8", tomato: "#ff6347", turquoise: "#40e0d0", violet: "#ee82ee", wheat: "#f5deb3", white: "#ffffff", whitesmoke: "#f5f5f5", yellow: "#ffff00", yellowgreen: "#9acd32" }, ps = { currentColor: "The value of the 'color' property. The computed value of the 'currentColor' keyword is the computed value of the 'color' property. If the 'currentColor' keyword is set on the 'color' property itself, it is treated as 'color:inherit' at parse time.", transparent: "Fully transparent. This keyword can be considered a shorthand for rgba(0,0,0,0) which is its computed value." }; function vt(e, t) { var n = e.getText(), r = n.match(/^([-+]?[0-9]*\.?[0-9]+)(%?)$/); if (r) { r[2] && (t = 100); var i = parseFloat(r[1]) / t; if (i >= 0 && i <= 1) return i; } throw new Error(); } function yh(e) { var t = e.getText(), n = t.match(/^([-+]?[0-9]*\.?[0-9]+)(deg|rad|grad|turn)?$/); if (n) switch (n[2]) { case "deg": return parseFloat(t) % 360; case "rad": return parseFloat(t) * 180 / Math.PI % 360; case "grad": return parseFloat(t) * 0.9 % 360; case "turn": return parseFloat(t) * 360 % 360; default: if (typeof n[2] > "u") return parseFloat(t) % 360; } throw new Error(); } function wh(e) { var t = e.getName(); return t ? /^(rgb|rgba|hsl|hsla)$/gi.test(t) : !1; } var fs = 48, xh = 57, Sh = 65, dn = 97, Ch = 102; function ae(e) { return e < fs ? 0 : e <= xh ? e - fs : (e < dn && (e += dn - Sh), e >= dn && e <= Ch ? e - dn + 10 : 0); } function ms(e) { if (e[0] !== "#") return null; switch (e.length) { case 4: return { red: ae(e.charCodeAt(1)) * 17 / 255, green: ae(e.charCodeAt(2)) * 17 / 255, blue: ae(e.charCodeAt(3)) * 17 / 255, alpha: 1 }; case 5: return { red: ae(e.charCodeAt(1)) * 17 / 255, green: ae(e.charCodeAt(2)) * 17 / 255, blue: ae(e.charCodeAt(3)) * 17 / 255, alpha: ae(e.charCodeAt(4)) * 17 / 255 }; case 7: return { red: (ae(e.charCodeAt(1)) * 16 + ae(e.charCodeAt(2))) / 255, green: (ae(e.charCodeAt(3)) * 16 + ae(e.charCodeAt(4))) / 255, blue: (ae(e.charCodeAt(5)) * 16 + ae(e.charCodeAt(6))) / 255, alpha: 1 }; case 9: return { red: (ae(e.charCodeAt(1)) * 16 + ae(e.charCodeAt(2))) / 255, green: (ae(e.charCodeAt(3)) * 16 + ae(e.charCodeAt(4))) / 255, blue: (ae(e.charCodeAt(5)) * 16 + ae(e.charCodeAt(6))) / 255, alpha: (ae(e.charCodeAt(7)) * 16 + ae(e.charCodeAt(8))) / 255 }; } return null; } function kh(e, t, n, r) { if (r === void 0 && (r = 1), e = e / 60, t === 0) return { red: n, green: n, blue: n, alpha: r }; var i = function(l, h, c) { for (; c < 0; ) c += 6; for (; c >= 6; ) c -= 6; return c < 1 ? (h - l) * c + l : c < 3 ? h : c < 4 ? (h - l) * (4 - c) + l : l; }, a = n <= 0.5 ? n * (t + 1) : n + t - n * t, o = n * 2 - a; return { red: i(o, a, e + 2), green: i(o, a, e), blue: i(o, a, e - 2), alpha: r }; } function Fh(e) { var t = e.red, n = e.green, r = e.blue, i = e.alpha, a = Math.max(t, n, r), o = Math.min(t, n, r), l = 0, h = 0, c = (o + a) / 2, d = a - o; if (d > 0) { switch (h = Math.min(c <= 0.5 ? d / (2 * c) : d / (2 - 2 * c), 1), a) { case t: l = (n - r) / d + (n < r ? 6 : 0); break; case n: l = (r - t) / d + 2; break; case r: l = (t - n) / d + 4; break; } l *= 60, l = Math.round(l); } return { h: l, s: h, l: c, a: i }; } function _h(e) { if (e.type === m.HexColorValue) { var t = e.getText(); return ms(t); } else if (e.type === m.Function) { var n = e, r = n.getName(), i = n.getArguments().getChildren(); if (i.length === 1) { var a = i[0].getChildren(); if (a.length === 1 && a[0].type === m.Expression && (i = a[0].getChildren(), i.length === 3)) { var o = i[2]; if (o instanceof ai) { var l = o.getLeft(), h = o.getRight(), c = o.getOperator(); l && h && c && c.matches("/") && (i = [i[0], i[1], l, h]); } } } if (!r || i.length < 3 || i.length > 4) return null; try { var d = i.length === 4 ? vt(i[3], 1) : 1; if (r === "rgb" || r === "rgba") return { red: vt(i[0], 255), green: vt(i[1], 255), blue: vt(i[2], 255), alpha: d }; if (r === "hsl" || r === "hsla") { var p = yh(i[0]), f = vt(i[1], 100), g = vt(i[2], 100); return kh(p, f, g, d); } } catch { return null; } } else if (e.type === m.Identifier) { if (e.parent && e.parent.type !== m.Term) return null; var w = e.parent; if (w && w.parent && w.parent.type === m.BinaryExpression) { var b = w.parent; if (b.parent && b.parent.type === m.ListEntry && b.parent.key === b) return null; } var y = e.getText().toLowerCase(); if (y === "none") return null; var A = Nn[y]; if (A) return ms(A); } return null; } var gs = { bottom: "Computes to \u2018100%\u2019 for the vertical position if one or two values are given, otherwise specifies the bottom edge as the origin for the next offset.", center: "Computes to \u201850%\u2019 (\u2018left 50%\u2019) for the horizontal position if the horizontal position is not otherwise specified, or \u201850%\u2019 (\u2018top 50%\u2019) for the vertical position if it is.", left: "Computes to \u20180%\u2019 for the horizontal position if one or two values are given, otherwise specifies the left edge as the origin for the next offset.", right: "Computes to \u2018100%\u2019 for the horizontal position if one or two values are given, otherwise specifies the right edge as the origin for the next offset.", top: "Computes to \u20180%\u2019 for the vertical position if one or two values are given, otherwise specifies the top edge as the origin for the next offset." }, bs = { "no-repeat": "Placed once and not repeated in this direction.", repeat: "Repeated in this direction as often as needed to cover the background painting area.", "repeat-x": "Computes to \u2018repeat no-repeat\u2019.", "repeat-y": "Computes to \u2018no-repeat repeat\u2019.", round: "Repeated as often as will fit within the background positioning area. If it doesn\u2019t fit a whole number of times, it is rescaled so that it does.", space: "Repeated as often as will fit within the background positioning area without being clipped and then the images are spaced out to fill the area." }, vs = { dashed: "A series of square-ended dashes.", dotted: "A series of round dots.", double: "Two parallel solid lines with some space between them.", groove: "Looks as if it were carved in the canvas.", hidden: "Same as \u2018none\u2019, but has different behavior in the border conflict resolution rules for border-collapsed tables.", inset: "Looks as if the content on the inside of the border is sunken into the canvas.", none: "No border. Color and width are ignored.", outset: "Looks as if the content on the inside of the border is coming out of the canvas.", ridge: "Looks as if it were coming out of the canvas.", solid: "A single line segment." }, Dh = ["medium", "thick", "thin"], ys = { "border-box": "The background is painted within (clipped to) the border box.", "content-box": "The background is painted within (clipped to) the content box.", "padding-box": "The background is painted within (clipped to) the padding box." }, ws = { "margin-box": "Uses the margin box as reference box.", "fill-box": "Uses the object bounding box as reference box.", "stroke-box": "Uses the stroke bounding box as reference box.", "view-box": "Uses the nearest SVG viewport as reference box." }, xs = { initial: "Represents the value specified as the property\u2019s initial value.", inherit: "Represents the computed value of the property on the element\u2019s parent.", unset: "Acts as either `inherit` or `initial`, depending on whether the property is inherited or not." }, Ss = { "var()": "Evaluates the value of a custom variable.", "calc()": "Evaluates an mathematical expression. The following operators can be used: + - * /." }, Cs = { "url()": "Reference an image file by URL", "image()": "Provide image fallbacks and annotations.", "-webkit-image-set()": "Provide multiple resolutions. Remember to use unprefixed image-set() in addition.", "image-set()": "Provide multiple resolutions of an image and const the UA decide which is most appropriate in a given situation.", "-moz-element()": "Use an element in the document as an image. Remember to use unprefixed element() in addition.", "element()": "Use an element in the document as an image.", "cross-fade()": "Indicates the two images to be combined and how far along in the transition the combination is.", "-webkit-gradient()": "Deprecated. Use modern linear-gradient() or radial-gradient() instead.", "-webkit-linear-gradient()": "Linear gradient. Remember to use unprefixed version in addition.", "-moz-linear-gradient()": "Linear gradient. Remember to use unprefixed version in addition.", "-o-linear-gradient()": "Linear gradient. Remember to use unprefixed version in addition.", "linear-gradient()": "A linear gradient is created by specifying a straight gradient line, and then several colors placed along that line.", "-webkit-repeating-linear-gradient()": "Repeating Linear gradient. Remember to use unprefixed version in addition.", "-moz-repeating-linear-gradient()": "Repeating Linear gradient. Remember to use unprefixed version in addition.", "-o-repeating-linear-gradient()": "Repeating Linear gradient. Remember to use unprefixed version in addition.", "repeating-linear-gradient()": "Same as linear-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop\u2019s position and the first specified color-stop\u2019s position.", "-webkit-radial-gradient()": "Radial gradient. Remember to use unprefixed version in addition.", "-moz-radial-gradient()": "Radial gradient. Remember to use unprefixed version in addition.", "radial-gradient()": "Colors emerge from a single point and smoothly spread outward in a circular or elliptical shape.", "-webkit-repeating-radial-gradient()": "Repeating radial gradient. Remember to use unprefixed version in addition.", "-moz-repeating-radial-gradient()": "Repeating radial gradient. Remember to use unprefixed version in addition.", "repeating-radial-gradient()": "Same as radial-gradient, except the color-stops are repeated infinitely in both directions, with their positions shifted by multiples of the difference between the last specified color-stop\u2019s position and the first specified color-stop\u2019s position." }, ks = { ease: "Equivalent to cubic-bezier(0.25, 0.1, 0.25, 1.0).", "ease-in": "Equivalent to cubic-bezier(0.42, 0, 1.0, 1.0).", "ease-in-out": "Equivalent to cubic-bezier(0.42, 0, 0.58, 1.0).", "ease-out": "Equivalent to cubic-bezier(0, 0, 0.58, 1.0).", linear: "Equivalent to cubic-bezier(0.0, 0.0, 1.0, 1.0).", "step-end": "Equivalent to steps(1, end).", "step-start": "Equivalent to steps(1, start).", "steps()": "The first parameter specifies the number of intervals in the function. The second parameter, which is optional, is either the value \u201Cstart\u201D or \u201Cend\u201D.", "cubic-bezier()": "Specifies a cubic-bezier curve. The four values specify points P1 and P2 of the curve as (x1, y1, x2, y2).", "cubic-bezier(0.6, -0.28, 0.735, 0.045)": "Ease-in Back. Overshoots.", "cubic-bezier(0.68, -0.55, 0.265, 1.55)": "Ease-in-out Back. Overshoots.", "cubic-bezier(0.175, 0.885, 0.32, 1.275)": "Ease-out Back. Overshoots.", "cubic-bezier(0.6, 0.04, 0.98, 0.335)": "Ease-in Circular. Based on half circle.", "cubic-bezier(0.785, 0.135, 0.15, 0.86)": "Ease-in-out Circular. Based on half circle.", "cubic-bezier(0.075, 0.82, 0.165, 1)": "Ease-out Circular. Based on half circle.", "cubic-bezier(0.55, 0.055, 0.675, 0.19)": "Ease-in Cubic. Based on power of three.", "cubic-bezier(0.645, 0.045, 0.355, 1)": "Ease-in-out Cubic. Based on power of three.", "cubic-bezier(0.215, 0.610, 0.355, 1)": "Ease-out Cubic. Based on power of three.", "cubic-bezier(0.95, 0.05, 0.795, 0.035)": "Ease-in Exponential. Based on two to the power ten.", "cubic-bezier(1, 0, 0, 1)": "Ease-in-out Exponential. Based on two to the power ten.", "cubic-bezier(0.19, 1, 0.22, 1)": "Ease-out Exponential. Based on two to the power ten.", "cubic-bezier(0.47, 0, 0.745, 0.715)": "Ease-in Sine.", "cubic-bezier(0.445, 0.05, 0.55, 0.95)": "Ease-in-out Sine.", "cubic-bezier(0.39, 0.575, 0.565, 1)": "Ease-out Sine.", "cubic-bezier(0.55, 0.085, 0.68, 0.53)": "Ease-in Quadratic. Based on power of two.", "cubic-bezier(0.455, 0.03, 0.515, 0.955)": "Ease-in-out Quadratic. Based on power of two.", "cubic-bezier(0.25, 0.46, 0.45, 0.94)": "Ease-out Quadratic. Based on power of two.", "cubic-bezier(0.895, 0.03, 0.685, 0.22)": "Ease-in Quartic. Based on power of four.", "cubic-bezier(0.77, 0, 0.175, 1)": "Ease-in-out Quartic. Based on power of four.", "cubic-bezier(0.165, 0.84, 0.44, 1)": "Ease-out Quartic. Based on power of four.", "cubic-bezier(0.755, 0.05, 0.855, 0.06)": "Ease-in Quintic. Based on power of five.", "cubic-bezier(0.86, 0, 0.07, 1)": "Ease-in-out Quintic. Based on power of five.", "cubic-bezier(0.23, 1, 0.320, 1)": "Ease-out Quintic. Based on power of five." }, Fs = { "circle()": "Defines a circle.", "ellipse()": "Defines an ellipse.", "inset()": "Defines an inset rectangle.", "polygon()": "Defines a polygon." }, xo = { length: ["em", "rem", "ex", "px", "cm", "mm", "in", "pt", "pc", "ch", "vw", "vh", "vmin", "vmax"], angle: ["deg", "rad", "grad", "turn"], time: ["ms", "s"], frequency: ["Hz", "kHz"], resolution: ["dpi", "dpcm", "dppx"], percentage: ["%", "fr"] }, Eh = [ "a", "abbr", "address", "area", "article", "aside", "audio", "b", "base", "bdi", "bdo", "blockquote", "body", "br", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "keygen", "label", "legend", "li", "link", "main", "map", "mark", "menu", "menuitem", "meta", "meter", "nav", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "pre", "progress", "q", "rb", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "section", "select", "small", "source", "span", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "u", "ul", "const", "video", "wbr" ], Rh = [ "circle", "clipPath", "cursor", "defs", "desc", "ellipse", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "filter", "foreignObject", "g", "hatch", "hatchpath", "image", "line", "linearGradient", "marker", "mask", "mesh", "meshpatch", "meshrow", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "set", "solidcolor", "stop", "svg", "switch", "symbol", "text", "textPath", "tspan", "use", "view" ], Ah = [ "@bottom-center", "@bottom-left", "@bottom-left-corner", "@bottom-right", "@bottom-right-corner", "@left-bottom", "@left-middle", "@left-top", "@right-bottom", "@right-middle", "@right-top", "@top-center", "@top-left", "@top-left-corner", "@top-right", "@top-right-corner" ]; function un(e) { return Object.keys(e).map(function(t) { return e[t]; }); } function Ee(e) { return typeof e < "u"; } var _s = function(e, t, n) { if (n || arguments.length === 2) for (var r = 0, i = t.length, a; r < i; r++) (a || !(r in t)) && (a || (a = Array.prototype.slice.call(t, 0, r)), a[r] = t[r]); return e.concat(a || Array.prototype.slice.call(t)); }, ci = function() { function e(t) { t === void 0 && (t = new en()), this.keyframeRegex = /^@(\-(webkit|ms|moz|o)\-)?keyframes$/i, this.scanner = t, this.token = { type: u.EOF, offset: -1, len: 0, text: "" }, this.prevToken = void 0; } return e.prototype.peekIdent = function(t) { return u.Ident === this.token.type && t.length === this.token.text.length && t === this.token.text.toLowerCase(); }, e.prototype.peekKeyword = function(t) { return u.AtKeyword === this.token.type && t.length === this.token.text.length && t === this.token.text.toLowerCase(); }, e.prototype.peekDelim = function(t) { return u.Delim === this.token.type && t === this.token.text; }, e.prototype.peek = function(t) { return t === this.token.type; }, e.prototype.peekOne = function() { for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n]; return t.indexOf(this.token.type) !== -1; }, e.prototype.peekRegExp = function(t, n) { return t !== this.token.type ? !1 : n.test(this.token.text); }, e.prototype.hasWhitespace = function() { return !!this.prevToken && this.prevToken.offset + this.prevToken.len !== this.token.offset; }, e.prototype.consumeToken = function() { this.prevToken = this.token, this.token = this.scanner.scan(); }, e.prototype.mark = function() { return { prev: this.prevToken, curr: this.token, pos: this.scanner.pos() }; }, e.prototype.restoreAtMark = function(t) { this.prevToken = t.prev, this.token = t.curr, this.scanner.goBackTo(t.pos); }, e.prototype.try = function(t) { var n = this.mark(), r = t(); return r || (this.restoreAtMark(n), null); }, e.prototype.acceptOneKeyword = function(t) { if (u.AtKeyword === this.token.type) for (var n = 0, r = t; n < r.length; n++) { var i = r[n]; if (i.length === this.token.text.length && i === this.token.text.toLowerCase()) return this.consumeToken(), !0; } return !1; }, e.prototype.accept = function(t) { return t === this.token.type ? (this.consumeToken(), !0) : !1; }, e.prototype.acceptIdent = function(t) { return this.peekIdent(t) ? (this.consumeToken(), !0) : !1; }, e.prototype.acceptKeyword = function(t) { return this.peekKeyword(t) ? (this.consumeToken(), !0) : !1; }, e.prototype.acceptDelim = function(t) { return this.peekDelim(t) ? (this.consumeToken(), !0) : !1; }, e.prototype.acceptRegexp = function(t) { return t.test(this.token.text) ? (this.consumeToken(), !0) : !1; }, e.prototype._parseRegexp = function(t) { var n = this.createNode(m.Identifier); do ; while (this.acceptRegexp(t)); return this.finish(n); }, e.prototype.acceptUnquotedString = function() { var t = this.scanner.pos(); this.scanner.goBackTo(this.token.offset); var n = this.scanner.scanUnquotedString(); return n ? (this.token = n, this.consumeToken(), !0) : (this.scanner.goBackTo(t), !1); }, e.prototype.resync = function(t, n) { for (; ; ) { if (t && t.indexOf(this.token.type) !== -1) return this.consumeToken(), !0; if (n && n.indexOf(this.token.type) !== -1) return !0; if (this.token.type === u.EOF) return !1; this.token = this.scanner.scan(); } }, e.prototype.createNode = function(t) { return new L(this.token.offset, this.token.len, t); }, e.prototype.create = function(t) { return new t(this.token.offset, this.token.len); }, e.prototype.finish = function(t, n, r, i) { if (!(t instanceof me) && (n && this.markError(t, n, r, i), this.prevToken)) { var a = this.prevToken.offset + this.prevToken.len; t.length = a > t.offset ? a - t.offset : 0; } return t; }, e.prototype.markError = function(t, n, r, i) { this.token !== this.lastErrorToken && (t.addIssue(new bo(t, n, _e.Error, void 0, this.token.offset, this.token.len)), this.lastErrorToken = this.token), (r || i) && this.resync(r, i); }, e.prototype.parseStylesheet = function(t) { var n = t.version, r = t.getText(), i = function(a, o) { if (t.version !== n) throw new Error("Underlying model has changed, AST is no longer valid"); return r.substr(a, o); }; return this.internalParse(r, this._parseStylesheet, i); }, e.prototype.internalParse = function(t, n, r) { this.scanner.setSource(t), this.token = this.scanner.scan(); var i = n.bind(this)(); return i && (r ? i.textProvider = r : i.textProvider = function(a, o) { return t.substr(a, o); }), i; }, e.prototype._parseStylesheet = function() { for (var t = this.create(Pc); t.addChild(this._parseStylesheetStart()); ) ; var n = !1; do { var r = !1; do { r = !1; var i = this._parseStylesheetStatement(); for (i && (t.addChild(i), r = !0, n = !1, !this.peek(u.EOF) && this._needsSemicolonAfter(i) && !this.accept(u.SemiColon) && this.markError(t, v.SemiColonExpected)); this.accept(u.SemiColon) || this.accept(u.CDO) || this.accept(u.CDC); ) r = !0, n = !1; } while (r); if (this.peek(u.EOF)) break; n || (this.peek(u.AtKeyword) ? this.markError(t, v.UnknownAtRule) : this.markError(t, v.RuleOrSelectorExpected), n = !0), this.consumeToken(); } while (!this.peek(u.EOF)); return this.finish(t); }, e.prototype._parseStylesheetStart = function() { return this._parseCharset(); }, e.prototype._parseStylesheetStatement = function(t) { return t === void 0 && (t = !1), this.peek(u.AtKeyword) ? this._parseStylesheetAtStatement(t) : this._parseRuleset(t); }, e.prototype._parseStylesheetAtStatement = function(t) { return t === void 0 && (t = !1), this._parseImport() || this._parseMedia(t) || this._parsePage() || this._parseFontFace() || this._parseKeyframe() || this._parseSupports(t) || this._parseViewPort() || this._parseNamespace() || this._parseDocument() || this._parseUnknownAtRule(); }, e.prototype._tryParseRuleset = function(t) { var n = this.mark(); if (this._parseSelector(t)) { for (; this.accept(u.Comma) && this._parseSelector(t); ) ; if (this.accept(u.CurlyL)) return this.restoreAtMark(n), this._parseRuleset(t); } return this.restoreAtMark(n), null; }, e.prototype._parseRuleset = function(t) { t === void 0 && (t = !1); var n = this.create(Ct), r = n.getSelectors(); if (!r.addChild(this._parseSelector(t))) return null; for (; this.accept(u.Comma); ) if (!r.addChild(this._parseSelector(t))) return this.finish(n, v.SelectorExpected); return this._parseBody(n, this._parseRuleSetDeclaration.bind(this)); }, e.prototype._parseRuleSetDeclarationAtStatement = function() { return this._parseUnknownAtRule(); }, e.prototype._parseRuleSetDeclaration = function() { return this.peek(u.AtKeyword) ? this._parseRuleSetDeclarationAtStatement() : this._parseDeclaration(); }, e.prototype._needsSemicolonAfter = function(t) { switch (t.type) { case m.Keyframe: case m.ViewPort: case m.Media: case m.Ruleset: case m.Namespace: case m.If: case m.For: case m.Each: case m.While: case m.MixinDeclaration: case m.FunctionDeclaration: case m.MixinContentDeclaration: return !1; case m.ExtendsReference: case m.MixinContentReference: case m.ReturnStatement: case m.MediaQuery: case m.Debug: case m.Import: case m.AtApplyRule: case m.CustomPropertyDeclaration: return !0; case m.VariableDeclaration: return t.needsSemicolon; case m.MixinReference: return !t.getContent(); case m.Declaration: return !t.getNestedProperties(); } return !1; }, e.prototype._parseDeclarations = function(t) { var n = this.create(ti); if (!this.accept(u.CurlyL)) return null; for (var r = t(); n.addChild(r) && !this.peek(u.CurlyR); ) { if (this._needsSemicolonAfter(r) && !this.accept(u.SemiColon)) return this.finish(n, v.SemiColonExpected, [u.SemiColon, u.CurlyR]); for (r && this.prevToken && this.prevToken.type === u.SemiColon && (r.semicolonPosition = this.prevToken.offset); this.accept(u.SemiColon); ) ; r = t(); } return this.accept(u.CurlyR) ? this.finish(n) : this.finish(n, v.RightCurlyExpected, [u.CurlyR, u.SemiColon]); }, e.prototype._parseBody = function(t, n) { return t.setDeclarations(this._parseDeclarations(n)) ? this.finish(t) : this.finish(t, v.LeftCurlyExpected, [u.CurlyR, u.SemiColon]); }, e.prototype._parseSelector = function(t) { var n = this.create(tn), r = !1; for (t && (r = n.addChild(this._parseCombinator())); n.addChild(this._parseSimpleSelector()); ) r = !0, n.addChild(this._parseCombinator()); return r ? this.finish(n) : null; }, e.prototype._parseDeclaration = function(t) { var n = this._tryParseCustomPropertyDeclaration(t); if (n) return n; var r = this.create(Ve); return r.setProperty(this._parseProperty()) ? this.accept(u.Colon) ? (this.prevToken && (r.colonPosition = this.prevToken.offset), r.setValue(this._parseExpr()) ? (r.addChild(this._parsePrio()), this.peek(u.SemiColon) && (r.semicolonPosition = this.token.offset), this.finish(r)) : this.finish(r, v.PropertyValueExpected)) : this.finish(r, v.ColonExpected, [u.Colon], t || [u.SemiColon]) : null; }, e.prototype._tryParseCustomPropertyDeclaration = function(t) { if (!this.peekRegExp(u.Ident, /^--/)) return null; var n = this.create(Lc); if (!n.setProperty(this._parseProperty())) return null; if (!this.accept(u.Colon)) return this.finish(n, v.ColonExpected, [u.Colon]); this.prevToken && (n.colonPosition = this.prevToken.offset); var r = this.mark(); if (this.peek(u.CurlyL)) { var i = this.create(Ic), a = this._parseDeclarations(this._parseRuleSetDeclaration.bind(this)); if (i.setDeclarations(a) && !a.isErroneous(!0) && (i.addChild(this._parsePrio()), this.peek(u.SemiColon))) return this.finish(i), n.setPropertySet(i), n.semicolonPosition = this.token.offset, this.finish(n); this.restoreAtMark(r); } var o = this._parseExpr(); return o && !o.isErroneous(!0) && (this._parsePrio(), this.peekOne.apply(this, _s(_s([], t || [], !1), [u.SemiColon, u.EOF], !1))) ? (n.setValue(o), this.peek(u.SemiColon) && (n.semicolonPosition = this.token.offset), this.finish(n)) : (this.restoreAtMark(r), n.addChild(this._parseCustomPropertyValue(t)), n.addChild(this._parsePrio()), Ee(n.colonPosition) && this.token.offset === n.colonPosition + 1 ? this.finish(n, v.PropertyValueExpected) : this.finish(n)); }, e.prototype._parseCustomPropertyValue = function(t) { var n = this; t === void 0 && (t = [u.CurlyR]); var r = this.create(L), i = function() { return o === 0 && l === 0 && h === 0; }, a = function() { return t.indexOf(n.token.type) !== -1; }, o = 0, l = 0, h = 0; e: for (; ; ) { switch (this.token.type) { case u.SemiColon: if (i()) break e; break; case u.Exclamation: if (i()) break e; break; case u.CurlyL: o++; break; case u.CurlyR: if (o--, o < 0) { if (a() && l === 0 && h === 0) break e; return this.finish(r, v.LeftCurlyExpected); } break; case u.ParenthesisL: l++; break; case u.ParenthesisR: if (l--, l < 0) { if (a() && h === 0 && o === 0) break e; return this.finish(r, v.LeftParenthesisExpected); } break; case u.BracketL: h++; break; case u.BracketR: if (h--, h < 0) return this.finish(r, v.LeftSquareBracketExpected); break; case u.BadString: break e; case u.EOF: var c = v.RightCurlyExpected; return h > 0 ? c = v.RightSquareBracketExpected : l > 0 && (c = v.RightParenthesisExpected), this.finish(r, c); } this.consumeToken(); } return this.finish(r); }, e.prototype._tryToParseDeclaration = function(t) { var n = this.mark(); return this._parseProperty() && this.accept(u.Colon) ? (this.restoreAtMark(n), this._parseDeclaration(t)) : (this.restoreAtMark(n), null); }, e.prototype._parseProperty = function() { var t = this.create(ri), n = this.mark(); return (this.acceptDelim("*") || this.acceptDelim("_")) && this.hasWhitespace() ? (this.restoreAtMark(n), null) : t.setIdentifier(this._parsePropertyIdentifier()) ? this.finish(t) : null; }, e.prototype._parsePropertyIdentifier = function() { return this._parseIdent(); }, e.prototype._parseCharset = function() { if (!this.peek(u.Charset)) return null; var t = this.create(L); return this.consumeToken(), this.accept(u.String) ? this.accept(u.SemiColon) ? this.finish(t) : this.finish(t, v.SemiColonExpected) : this.finish(t, v.IdentifierExpected); }, e.prototype._parseImport = function() { if (!this.peekKeyword("@import")) return null; var t = this.create(ii); return this.consumeToken(), !t.addChild(this._parseURILiteral()) && !t.addChild(this._parseStringLiteral()) ? this.finish(t, v.URIOrStringExpected) : (!this.peek(u.SemiColon) && !this.peek(u.EOF) && t.setMedialist(this._parseMediaQueryList()), this.finish(t)); }, e.prototype._parseNamespace = function() { if (!this.peekKeyword("@namespace")) return null; var t = this.create(Jc); return this.consumeToken(), !t.addChild(this._parseURILiteral()) && (t.addChild(this._parseIdent()), !t.addChild(this._parseURILiteral()) && !t.addChild(this._parseStringLiteral())) ? this.finish(t, v.URIExpected, [u.SemiColon]) : this.accept(u.SemiColon) ? this.finish(t) : this.finish(t, v.SemiColonExpected); }, e.prototype._parseFontFace = function() { if (!this.peekKeyword("@font-face")) return null; var t = this.create(lo); return this.consumeToken(), this._parseBody(t, this._parseRuleSetDeclaration.bind(this)); }, e.prototype._parseViewPort = function() { if (!this.peekKeyword("@-ms-viewport") && !this.peekKeyword("@-o-viewport") && !this.peekKeyword("@viewport")) return null; var t = this.create(jc); return this.consumeToken(), this._parseBody(t, this._parseRuleSetDeclaration.bind(this)); }, e.prototype._parseKeyframe = function() { if (!this.peekRegExp(u.AtKeyword, this.keyframeRegex)) return null; var t = this.create(ho), n = this.create(L); return this.consumeToken(), t.setKeyword(this.finish(n)), n.matches("@-ms-keyframes") && this.markError(n, v.UnknownKeyword), t.setIdentifier(this._parseKeyframeIdent()) ? this._parseBody(t, this._parseKeyframeSelector.bind(this)) : this.finish(t, v.IdentifierExpected, [u.CurlyR]); }, e.prototype._parseKeyframeIdent = function() { return this._parseIdent([G.Keyframe]); }, e.prototype._parseKeyframeSelector = function() { var t = this.create(Ia); if (!t.addChild(this._parseIdent()) && !this.accept(u.Percentage)) return null; for (; this.accept(u.Comma); ) if (!t.addChild(this._parseIdent()) && !this.accept(u.Percentage)) return this.finish(t, v.PercentageExpected); return this._parseBody(t, this._parseRuleSetDeclaration.bind(this)); }, e.prototype._tryParseKeyframeSelector = function() { var t = this.create(Ia), n = this.mark(); if (!t.addChild(this._parseIdent()) && !this.accept(u.Percentage)) return null; for (; this.accept(u.Comma); ) if (!t.addChild(this._parseIdent()) && !this.accept(u.Percentage)) return this.restoreAtMark(n), null; return this.peek(u.CurlyL) ? this._parseBody(t, this._parseRuleSetDeclaration.bind(this)) : (this.restoreAtMark(n), null); }, e.prototype._parseSupports = function(t) { if (t === void 0 && (t = !1), !this.peekKeyword("@supports")) return null; var n = this.create(Ar); return this.consumeToken(), n.addChild(this._parseSupportsCondition()), this._parseBody(n, this._parseSupportsDeclaration.bind(this, t)); }, e.prototype._parseSupportsDeclaration = function(t) { return t === void 0 && (t = !1), t ? this._tryParseRuleset(!0) || this._tryToParseDeclaration() || this._parseStylesheetStatement(!0) : this._parseStylesheetStatement(!1); }, e.prototype._parseSupportsCondition = function() { var t = this.create(Ut); if (this.acceptIdent("not")) t.addChild(this._parseSupportsConditionInParens()); else if (t.addChild(this._parseSupportsConditionInParens()), this.peekRegExp(u.Ident, /^(and|or)$/i)) for (var n = this.token.text.toLowerCase(); this.acceptIdent(n); ) t.addChild(this._parseSupportsConditionInParens()); return this.finish(t); }, e.prototype._parseSupportsConditionInParens = function() { var t = this.create(Ut); if (this.accept(u.ParenthesisL)) return this.prevToken && (t.lParent = this.prevToken.offset), !t.addChild(this._tryToParseDeclaration([u.ParenthesisR])) && !this._parseSupportsCondition() ? this.finish(t, v.ConditionExpected) : this.accept(u.ParenthesisR) ? (this.prevToken && (t.rParent = this.prevToken.offset), this.finish(t)) : this.finish(t, v.RightParenthesisExpected, [u.ParenthesisR], []); if (this.peek(u.Ident)) { var n = this.mark(); if (this.consumeToken(), !this.hasWhitespace() && this.accept(u.ParenthesisL)) { for (var r = 1; this.token.type !== u.EOF && r !== 0; ) this.token.type === u.ParenthesisL ? r++ : this.token.type === u.ParenthesisR && r--, this.consumeToken(); return this.finish(t); } else this.restoreAtMark(n); } return this.finish(t, v.LeftParenthesisExpected, [], [u.ParenthesisL]); }, e.prototype._parseMediaDeclaration = function(t) { return t === void 0 && (t = !1), t ? this._tryParseRuleset(!0) || this._tryToParseDeclaration() || this._parseStylesheetStatement(!0) : this._parseStylesheetStatement(!1); }, e.prototype._parseMedia = function(t) { if (t === void 0 && (t = !1), !this.peekKeyword("@media")) return null; var n = this.create(uo); return this.consumeToken(), n.addChild(this._parseMediaQueryList()) ? this._parseBody(n, this._parseMediaDeclaration.bind(this, t)) : this.finish(n, v.MediaQueryExpected); }, e.prototype._parseMediaQueryList = function() { var t = this.create(po); if (!t.addChild(this._parseMediaQuery())) return this.finish(t, v.MediaQueryExpected); for (; this.accept(u.Comma); ) if (!t.addChild(this._parseMediaQuery())) return this.finish(t, v.MediaQueryExpected); return this.finish(t); }, e.prototype._parseMediaQuery = function() { var t = this.create(fo), n = this.mark(); if (this.acceptIdent("not"), this.peek(u.ParenthesisL)) this.restoreAtMark(n), t.addChild(this._parseMediaCondition()); else { if (this.acceptIdent("only"), !t.addChild(this._parseIdent())) return null; this.acceptIdent("and") && t.addChild(this._parseMediaCondition()); } return this.finish(t); }, e.prototype._parseRatio = function() { var t = this.mark(), n = this.create(nh); return this._parseNumeric() ? this.acceptDelim("/") ? this._parseNumeric() ? this.finish(n) : this.finish(n, v.NumberExpected) : (this.restoreAtMark(t), null) : null; }, e.prototype._parseMediaCondition = function() { var t = this.create(Yc); this.acceptIdent("not"); for (var n = !0; n; ) { if (!this.accept(u.ParenthesisL)) return this.finish(t, v.LeftParenthesisExpected, [], [u.CurlyL]); if (this.peek(u.ParenthesisL) || this.peekIdent("not") ? t.addChild(this._parseMediaCondition()) : t.addChild(this._parseMediaFeature()), !this.accept(u.ParenthesisR)) return this.finish(t, v.RightParenthesisExpected, [], [u.CurlyL]); n = this.acceptIdent("and") || this.acceptIdent("or"); } return this.finish(t); }, e.prototype._parseMediaFeature = function() { var t = this, n = [u.ParenthesisR], r = this.create(Kc), i = function() { return t.acceptDelim("<") || t.acceptDelim(">") ? (t.hasWhitespace() || t.acceptDelim("="), !0) : !!t.acceptDelim("="); }; if (r.addChild(this._parseMediaFeatureName())) { if (this.accept(u.Colon)) { if (!r.addChild(this._parseMediaFeatureValue())) return this.finish(r, v.TermExpected, [], n); } else if (i()) { if (!r.addChild(this._parseMediaFeatureValue())) return this.finish(r, v.TermExpected, [], n); if (i() && !r.addChild(this._parseMediaFeatureValue())) return this.finish(r, v.TermExpected, [], n); } } else if (r.addChild(this._parseMediaFeatureValue())) { if (!i()) return this.finish(r, v.OperatorExpected, [], n); if (!r.addChild(this._parseMediaFeatureName())) return this.finish(r, v.IdentifierExpected, [], n); if (i() && !r.addChild(this._parseMediaFeatureValue())) return this.finish(r, v.TermExpected, [], n); } else return this.finish(r, v.IdentifierExpected, [], n); return this.finish(r); }, e.prototype._parseMediaFeatureName = function() { return this._parseIdent(); }, e.prototype._parseMediaFeatureValue = function() { return this._parseRatio() || this._parseTermExpression(); }, e.prototype._parseMedium = function() { var t = this.create(L); return t.addChild(this._parseIdent()) ? this.finish(t) : null; }, e.prototype._parsePageDeclaration = function() { return this._parsePageMarginBox() || this._parseRuleSetDeclaration(); }, e.prototype._parsePage = function() { if (!this.peekKeyword("@page")) return null; var t = this.create(Zc); if (this.consumeToken(), t.addChild(this._parsePageSelector())) { for (; this.accept(u.Comma); ) if (!t.addChild(this._parsePageSelector())) return this.finish(t, v.IdentifierExpected); } return this._parseBody(t, this._parsePageDeclaration.bind(this)); }, e.prototype._parsePageMarginBox = function() { if (!this.peek(u.AtKeyword)) return null; var t = this.create(Qc); return this.acceptOneKeyword(Ah) || this.markError(t, v.UnknownAtRule, [], [u.CurlyL]), this._parseBody(t, this._parseRuleSetDeclaration.bind(this)); }, e.prototype._parsePageSelector = function() { if (!this.peek(u.Ident) && !this.peek(u.Colon)) return null; var t = this.create(L); return t.addChild(this._parseIdent()), this.accept(u.Colon) && !t.addChild(this._parseIdent()) ? this.finish(t, v.IdentifierExpected) : this.finish(t); }, e.prototype._parseDocument = function() { if (!this.peekKeyword("@-moz-document")) return null; var t = this.create(Xc); return this.consumeToken(), this.resync([], [u.CurlyL]), this._parseBody(t, this._parseStylesheetStatement.bind(this)); }, e.prototype._parseUnknownAtRule = function() { if (!this.peek(u.AtKeyword)) return null; var t = this.create(go); t.addChild(this._parseUnknownAtRuleName()); var n = function() { return i === 0 && a === 0 && o === 0; }, r = 0, i = 0, a = 0, o = 0; e: for (; ; ) { switch (this.token.type) { case u.SemiColon: if (n()) break e; break; case u.EOF: return i > 0 ? this.finish(t, v.RightCurlyExpected) : o > 0 ? this.finish(t, v.RightSquareBracketExpected) : a > 0 ? this.finish(t, v.RightParenthesisExpected) : this.finish(t); case u.CurlyL: r++, i++; break; case u.CurlyR: if (i--, r > 0 && i === 0) { if (this.consumeToken(), o > 0) return this.finish(t, v.RightSquareBracketExpected); if (a > 0) return this.finish(t, v.RightParenthesisExpected); break e; } if (i < 0) { if (a === 0 && o === 0) break e; return this.finish(t, v.LeftCurlyExpected); } break; case u.ParenthesisL: a++; break; case u.ParenthesisR: if (a--, a < 0) return this.finish(t, v.LeftParenthesisExpected); break; case u.BracketL: o++; break; case u.BracketR: if (o--, o < 0) return this.finish(t, v.LeftSquareBracketExpected); break; } this.consumeToken(); } return t; }, e.prototype._parseUnknownAtRuleName = function() { var t = this.create(L); return this.accept(u.AtKeyword) ? this.finish(t) : t; }, e.prototype._parseOperator = function() { if (this.peekDelim("/") || this.peekDelim("*") || this.peekDelim("+") || this.peekDelim("-") || this.peek(u.Dashmatch) || this.peek(u.Includes) || this.peek(u.SubstringOperator) || this.peek(u.PrefixOperator) || this.peek(u.SuffixOperator) || this.peekDelim("=")) { var t = this.createNode(m.Operator); return this.consumeToken(), this.finish(t); } else return null; }, e.prototype._parseUnaryOperator = function() { if (!this.peekDelim("+") && !this.peekDelim("-")) return null; var t = this.create(L); return this.consumeToken(), this.finish(t); }, e.prototype._parseCombinator = function() { if (this.peekDelim(">")) { var t = this.create(L); this.consumeToken(); var n = this.mark(); if (!this.hasWhitespace() && this.acceptDelim(">")) { if (!this.hasWhitespace() && this.acceptDelim(">")) return t.type = m.SelectorCombinatorShadowPiercingDescendant, this.finish(t); this.restoreAtMark(n); } return t.type = m.SelectorCombinatorParent, this.finish(t); } else if (this.peekDelim("+")) { var t = this.create(L); return this.consumeToken(), t.type = m.SelectorCombinatorSibling, this.finish(t); } else if (this.peekDelim("~")) { var t = this.create(L); return this.consumeToken(), t.type = m.SelectorCombinatorAllSiblings, this.finish(t); } else if (this.peekDelim("/")) { var t = this.create(L); this.consumeToken(); var n = this.mark(); if (!this.hasWhitespace() && this.acceptIdent("deep") && !this.hasWhitespace() && this.acceptDelim("/")) return t.type = m.SelectorCombinatorShadowPiercingDescendant, this.finish(t); this.restoreAtMark(n); } return null; }, e.prototype._parseSimpleSelector = function() { var t = this.create(kt), n = 0; for (t.addChild(this._parseElementName()) && n++; (n === 0 || !this.hasWhitespace()) && t.addChild(this._parseSimpleSelectorBody()); ) n++; return n > 0 ? this.finish(t) : null; }, e.prototype._parseSimpleSelectorBody = function() { return this._parsePseudo() || this._parseHash() || this._parseClass() || this._parseAttrib(); }, e.prototype._parseSelectorIdent = function() { return this._parseIdent(); }, e.prototype._parseHash = function() { if (!this.peek(u.Hash) && !this.peekDelim("#")) return null; var t = this.createNode(m.IdentifierSelector); if (this.acceptDelim("#")) { if (this.hasWhitespace() || !t.addChild(this._parseSelectorIdent())) return this.finish(t, v.IdentifierExpected); } else this.consumeToken(); return this.finish(t); }, e.prototype._parseClass = function() { if (!this.peekDelim(".")) return null; var t = this.createNode(m.ClassSelector); return this.consumeToken(), this.hasWhitespace() || !t.addChild(this._parseSelectorIdent()) ? this.finish(t, v.IdentifierExpected) : this.finish(t); }, e.prototype._parseElementName = function() { var t = this.mark(), n = this.createNode(m.ElementNameSelector); return n.addChild(this._parseNamespacePrefix()), !n.addChild(this._parseSelectorIdent()) && !this.acceptDelim("*") ? (this.restoreAtMark(t), null) : this.finish(n); }, e.prototype._parseNamespacePrefix = function() { var t = this.mark(), n = this.createNode(m.NamespacePrefix); return !n.addChild(this._parseIdent()) && this.acceptDelim("*"), this.acceptDelim("|") ? this.finish(n) : (this.restoreAtMark(t), null); }, e.prototype._parseAttrib = function() { if (!this.peek(u.BracketL)) return null; var t = this.create(th); return this.consumeToken(), t.setNamespacePrefix(this._parseNamespacePrefix()), t.setIdentifier(this._parseIdent()) ? (t.setOperator(this._parseOperator()) && (t.setValue(this._parseBinaryExpr()), this.acceptIdent("i"), this.acceptIdent("s")), this.accept(u.BracketR) ? this.finish(t) : this.finish(t, v.RightSquareBracketExpected)) : this.finish(t, v.IdentifierExpected); }, e.prototype._parsePseudo = function() { var t = this, n = this._tryParsePseudoIdentifier(); if (n) { if (!this.hasWhitespace() && this.accept(u.ParenthesisL)) { var r = function() { var i = t.create(L); if (!i.addChild(t._parseSelector(!1))) return null; for (; t.accept(u.Comma) && i.addChild(t._parseSelector(!1)); ) ; return t.peek(u.ParenthesisR) ? t.finish(i) : null; }; if (n.addChild(this.try(r) || this._parseBinaryExpr()), !this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected); } return this.finish(n); } return null; }, e.prototype._tryParsePseudoIdentifier = function() { if (!this.peek(u.Colon)) return null; var t = this.mark(), n = this.createNode(m.PseudoSelector); return this.consumeToken(), this.hasWhitespace() ? (this.restoreAtMark(t), null) : (this.accept(u.Colon), this.hasWhitespace() || !n.addChild(this._parseIdent()) ? this.finish(n, v.IdentifierExpected) : this.finish(n)); }, e.prototype._tryParsePrio = function() { var t = this.mark(), n = this._parsePrio(); return n || (this.restoreAtMark(t), null); }, e.prototype._parsePrio = function() { if (!this.peek(u.Exclamation)) return null; var t = this.createNode(m.Prio); return this.accept(u.Exclamation) && this.acceptIdent("important") ? this.finish(t) : null; }, e.prototype._parseExpr = function(t) { t === void 0 && (t = !1); var n = this.create(mo); if (!n.addChild(this._parseBinaryExpr())) return null; for (; ; ) { if (this.peek(u.Comma)) { if (t) return this.finish(n); this.consumeToken(); } if (!n.addChild(this._parseBinaryExpr())) break; } return this.finish(n); }, e.prototype._parseNamedLine = function() { if (!this.peek(u.BracketL)) return null; var t = this.createNode(m.GridLine); for (this.consumeToken(); t.addChild(this._parseIdent()); ) ; return this.accept(u.BracketR) ? this.finish(t) : this.finish(t, v.RightSquareBracketExpected); }, e.prototype._parseBinaryExpr = function(t, n) { var r = this.create(ai); if (!r.setLeft(t || this._parseTerm())) return null; if (!r.setOperator(n || this._parseOperator())) return this.finish(r); if (!r.setRight(this._parseTerm())) return this.finish(r, v.TermExpected); r = this.finish(r); var i = this._parseOperator(); return i && (r = this._parseBinaryExpr(r, i)), this.finish(r); }, e.prototype._parseTerm = function() { var t = this.create(eh); return t.setOperator(this._parseUnaryOperator()), t.setExpression(this._parseTermExpression()) ? this.finish(t) : null; }, e.prototype._parseTermExpression = function() { return this._parseURILiteral() || this._parseFunction() || this._parseIdent() || this._parseStringLiteral() || this._parseNumeric() || this._parseHexColor() || this._parseOperation() || this._parseNamedLine(); }, e.prototype._parseOperation = function() { if (!this.peek(u.ParenthesisL)) return null; var t = this.create(L); return this.consumeToken(), t.addChild(this._parseExpr()), this.accept(u.ParenthesisR) ? this.finish(t) : this.finish(t, v.RightParenthesisExpected); }, e.prototype._parseNumeric = function() { if (this.peek(u.Num) || this.peek(u.Percentage) || this.peek(u.Resolution) || this.peek(u.Length) || this.peek(u.EMS) || this.peek(u.EXS) || this.peek(u.Angle) || this.peek(u.Time) || this.peek(u.Dimension) || this.peek(u.Freq)) { var t = this.create(oi); return this.consumeToken(), this.finish(t); } return null; }, e.prototype._parseStringLiteral = function() { if (!this.peek(u.String) && !this.peek(u.BadString)) return null; var t = this.createNode(m.StringLiteral); return this.consumeToken(), this.finish(t); }, e.prototype._parseURILiteral = function() { if (!this.peekRegExp(u.Ident, /^url(-prefix)?$/i)) return null; var t = this.mark(), n = this.createNode(m.URILiteral); return this.accept(u.Ident), this.hasWhitespace() || !this.peek(u.ParenthesisL) ? (this.restoreAtMark(t), null) : (this.scanner.inURL = !0, this.consumeToken(), n.addChild(this._parseURLArgument()), this.scanner.inURL = !1, this.accept(u.ParenthesisR) ? this.finish(n) : this.finish(n, v.RightParenthesisExpected)); }, e.prototype._parseURLArgument = function() { var t = this.create(L); return !this.accept(u.String) && !this.accept(u.BadString) && !this.acceptUnquotedString() ? null : this.finish(t); }, e.prototype._parseIdent = function(t) { if (!this.peek(u.Ident)) return null; var n = this.create(Re); return t && (n.referenceTypes = t), n.isCustomProperty = this.peekRegExp(u.Ident, /^--/), this.consumeToken(), this.finish(n); }, e.prototype._parseFunction = function() { var t = this.mark(), n = this.create(nn); if (!n.setIdentifier(this._parseFunctionIdentifier())) return null; if (this.hasWhitespace() || !this.accept(u.ParenthesisL)) return this.restoreAtMark(t), null; if (n.getArguments().addChild(this._parseFunctionArgument())) for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) n.getArguments().addChild(this._parseFunctionArgument()) || this.markError(n, v.ExpressionExpected); return this.accept(u.ParenthesisR) ? this.finish(n) : this.finish(n, v.RightParenthesisExpected); }, e.prototype._parseFunctionIdentifier = function() { if (!this.peek(u.Ident)) return null; var t = this.create(Re); if (t.referenceTypes = [G.Function], this.acceptIdent("progid")) { if (this.accept(u.Colon)) for (; this.accept(u.Ident) && this.acceptDelim("."); ) ; return this.finish(t); } return this.consumeToken(), this.finish(t); }, e.prototype._parseFunctionArgument = function() { var t = this.create(Dt); return t.setValue(this._parseExpr(!0)) ? this.finish(t) : null; }, e.prototype._parseHexColor = function() { if (this.peekRegExp(u.Hash, /^#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/g)) { var t = this.create(si); return this.consumeToken(), this.finish(t); } else return null; }, e; }(); function zh(e, t) { var n = 0, r = e.length; if (r === 0) return 0; for (; n < r; ) { var i = Math.floor((n + r) / 2); t(e[i]) ? r = i : n = i + 1; } return n; } function So(e, t) { return e.indexOf(t) !== -1; } function pn() { for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; for (var n = [], r = 0, i = e; r < i.length; r++) for (var a = i[r], o = 0, l = a; o < l.length; o++) { var h = l[o]; So(n, h) || n.push(h); } return n; } var Mh = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), Co = function() { function e(t, n) { this.offset = t, this.length = n, this.symbols = [], this.parent = null, this.children = []; } return e.prototype.addChild = function(t) { this.children.push(t), t.setParent(this); }, e.prototype.setParent = function(t) { this.parent = t; }, e.prototype.findScope = function(t, n) { return n === void 0 && (n = 0), this.offset <= t && this.offset + this.length > t + n || this.offset === t && this.length === n ? this.findInScope(t, n) : null; }, e.prototype.findInScope = function(t, n) { n === void 0 && (n = 0); var r = t + n, i = zh(this.children, function(o) { return o.offset > r; }); if (i === 0) return this; var a = this.children[i - 1]; return a.offset <= t && a.offset + a.length >= t + n ? a.findInScope(t, n) : this; }, e.prototype.addSymbol = function(t) { this.symbols.push(t); }, e.prototype.getSymbol = function(t, n) { for (var r = 0; r < this.symbols.length; r++) { var i = this.symbols[r]; if (i.name === t && i.type === n) return i; } return null; }, e.prototype.getSymbols = function() { return this.symbols; }, e; }(), Nh = function(e) { Mh(t, e); function t() { return e.call(this, 0, Number.MAX_VALUE) || this; } return t; }(Co), fn = function() { function e(t, n, r, i) { this.name = t, this.value = n, this.node = r, this.type = i; } return e; }(), Ph = function() { function e(t) { this.scope = t; } return e.prototype.addSymbol = function(t, n, r, i) { if (t.offset !== -1) { var a = this.scope.findScope(t.offset, t.length); a && a.addSymbol(new fn(n, r, t, i)); } }, e.prototype.addScope = function(t) { if (t.offset !== -1) { var n = this.scope.findScope(t.offset, t.length); if (n && (n.offset !== t.offset || n.length !== t.length)) { var r = new Co(t.offset, t.length); return n.addChild(r), r; } return n; } return null; }, e.prototype.addSymbolToChildScope = function(t, n, r, i, a) { if (t && t.offset !== -1) { var o = this.addScope(t); o && o.addSymbol(new fn(r, i, n, a)); } }, e.prototype.visitNode = function(t) { switch (t.type) { case m.Keyframe: return this.addSymbol(t, t.getName(), void 0, G.Keyframe), !0; case m.CustomPropertyDeclaration: return this.visitCustomPropertyDeclarationNode(t); case m.VariableDeclaration: return this.visitVariableDeclarationNode(t); case m.Ruleset: return this.visitRuleSet(t); case m.MixinDeclaration: return this.addSymbol(t, t.getName(), void 0, G.Mixin), !0; case m.FunctionDeclaration: return this.addSymbol(t, t.getName(), void 0, G.Function), !0; case m.FunctionParameter: return this.visitFunctionParameterNode(t); case m.Declarations: return this.addScope(t), !0; case m.For: var n = t, r = n.getDeclarations(); return r && n.variable && this.addSymbolToChildScope(r, n.variable, n.variable.getName(), void 0, G.Variable), !0; case m.Each: { var i = t, a = i.getDeclarations(); if (a) for (var o = i.getVariables().getChildren(), l = 0, h = o; l < h.length; l++) { var c = h[l]; this.addSymbolToChildScope(a, c, c.getName(), void 0, G.Variable); } return !0; } } return !0; }, e.prototype.visitRuleSet = function(t) { var n = this.scope.findScope(t.offset, t.length); if (n) for (var r = 0, i = t.getSelectors().getChildren(); r < i.length; r++) { var a = i[r]; a instanceof tn && a.getChildren().length === 1 && n.addSymbol(new fn(a.getChild(0).getText(), void 0, a, G.Rule)); } return !0; }, e.prototype.visitVariableDeclarationNode = function(t) { var n = t.getValue() ? t.getValue().getText() : void 0; return this.addSymbol(t, t.getName(), n, G.Variable), !0; }, e.prototype.visitFunctionParameterNode = function(t) { var n = t.getParent().getDeclarations(); if (n) { var r = t.getDefaultValue(), i = r ? r.getText() : void 0; this.addSymbolToChildScope(n, t, t.getName(), i, G.Variable); } return !0; }, e.prototype.visitCustomPropertyDeclarationNode = function(t) { var n = t.getValue() ? t.getValue().getText() : ""; return this.addCSSVariable(t.getProperty(), t.getProperty().getName(), n, G.Variable), !0; }, e.prototype.addCSSVariable = function(t, n, r, i) { t.offset !== -1 && this.scope.addSymbol(new fn(n, r, t, i)); }, e; }(), Ur = function() { function e(t) { this.global = new Nh(), t.acceptVisitor(new Ph(this.global)); } return e.prototype.findSymbolsAtOffset = function(t, n) { for (var r = this.global.findScope(t, 0), i = [], a = {}; r; ) { for (var o = r.getSymbols(), l = 0; l < o.length; l++) { var h = o[l]; h.type === n && !a[h.name] && (i.push(h), a[h.name] = !0); } r = r.parent; } return i; }, e.prototype.internalFindSymbol = function(t, n) { var r = t; if (t.parent instanceof On && t.parent.getParent() instanceof ne && (r = t.parent.getParent().getDeclarations()), t.parent instanceof Dt && t.parent.getParent() instanceof nn) { var i = t.parent.getParent().getIdentifier(); if (i) { var a = this.internalFindSymbol(i, [G.Function]); a && (r = a.node.getDeclarations()); } } if (!r) return null; for (var o = t.getText(), l = this.global.findScope(r.offset, r.length); l; ) { for (var h = 0; h < n.length; h++) { var c = n[h], d = l.getSymbol(o, c); if (d) return d; } l = l.parent; } return null; }, e.prototype.evaluateReferenceTypes = function(t) { if (t instanceof Re) { var n = t.referenceTypes; if (n) return n; if (t.isCustomProperty) return [G.Variable]; var r = Nc(t); if (r) { var i = r.getNonPrefixedPropertyName(); if ((i === "animation" || i === "animation-name") && r.getValue() && r.getValue().offset === t.offset) return [G.Keyframe]; } } else if (t instanceof li) return [G.Variable]; var a = t.findAParent(m.Selector, m.ExtendsReference); return a ? [G.Rule] : null; }, e.prototype.findSymbolFromNode = function(t) { if (!t) return null; for (; t.type === m.Interpolation; ) t = t.getParent(); var n = this.evaluateReferenceTypes(t); return n ? this.internalFindSymbol(t, n) : null; }, e.prototype.matchesSymbol = function(t, n) { if (!t) return !1; for (; t.type === m.Interpolation; ) t = t.getParent(); if (!t.matches(n.name)) return !1; var r = this.evaluateReferenceTypes(t); if (!r || r.indexOf(n.type) === -1) return !1; var i = this.internalFindSymbol(t, r); return i === n; }, e.prototype.findSymbol = function(t, n, r) { for (var i = this.global.findScope(r); i; ) { var a = i.getSymbol(t, n); if (a) return a; i = i.parent; } return null; }, e; }(), ko; ko = (() => { var e = { 470: (r) => { function i(l) { if (typeof l != "string") throw new TypeError("Path must be a string. Received " + JSON.stringify(l)); } function a(l, h) { for (var c, d = "", p = 0, f = -1, g = 0, w = 0; w <= l.length; ++w) { if (w < l.length) c = l.charCodeAt(w); else { if (c === 47) break; c = 47; } if (c === 47) { if (!(f === w - 1 || g === 1)) if (f !== w - 1 && g === 2) { if (d.length < 2 || p !== 2 || d.charCodeAt(d.length - 1) !== 46 || d.charCodeAt(d.length - 2) !== 46) { if (d.length > 2) { var b = d.lastIndexOf("/"); if (b !== d.length - 1) { b === -1 ? (d = "", p = 0) : p = (d = d.slice(0, b)).length - 1 - d.lastIndexOf("/"), f = w, g = 0; continue; } } else if (d.length === 2 || d.length === 1) { d = "", p = 0, f = w, g = 0; continue; } } h && (d.length > 0 ? d += "/.." : d = "..", p = 2); } else d.length > 0 ? d += "/" + l.slice(f + 1, w) : d = l.slice(f + 1, w), p = w - f - 1; f = w, g = 0; } else c === 46 && g !== -1 ? ++g : g = -1; } return d; } var o = { resolve: function() { for (var l, h = "", c = !1, d = arguments.length - 1; d >= -1 && !c; d--) { var p; d >= 0 ? p = arguments[d] : (l === void 0 && (l = process.cwd()), p = l), i(p), p.length !== 0 && (h = p + "/" + h, c = p.charCodeAt(0) === 47); } return h = a(h, !c), c ? h.length > 0 ? "/" + h : "/" : h.length > 0 ? h : "."; }, normalize: function(l) { if (i(l), l.length === 0) return "."; var h = l.charCodeAt(0) === 47, c = l.charCodeAt(l.length - 1) === 47; return (l = a(l, !h)).length !== 0 || h || (l = "."), l.length > 0 && c && (l += "/"), h ? "/" + l : l; }, isAbsolute: function(l) { return i(l), l.length > 0 && l.charCodeAt(0) === 47; }, join: function() { if (arguments.length === 0) return "."; for (var l, h = 0; h < arguments.length; ++h) { var c = arguments[h]; i(c), c.length > 0 && (l === void 0 ? l = c : l += "/" + c); } return l === void 0 ? "." : o.normalize(l); }, relative: function(l, h) { if (i(l), i(h), l === h || (l = o.resolve(l)) === (h = o.resolve(h))) return ""; for (var c = 1; c < l.length && l.charCodeAt(c) === 47; ++c) ; for (var d = l.length, p = d - c, f = 1; f < h.length && h.charCodeAt(f) === 47; ++f) ; for (var g = h.length - f, w = p < g ? p : g, b = -1, y = 0; y <= w; ++y) { if (y === w) { if (g > w) { if (h.charCodeAt(f + y) === 47) return h.slice(f + y + 1); if (y === 0) return h.slice(f + y); } else p > w && (l.charCodeAt(c + y) === 47 ? b = y : y === 0 && (b = 0)); break; } var A = l.charCodeAt(c + y); if (A !== h.charCodeAt(f + y)) break; A === 47 && (b = y); } var C = ""; for (y = c + b + 1; y <= d; ++y) y !== d && l.charCodeAt(y) !== 47 || (C.length === 0 ? C += ".." : C += "/.."); return C.length > 0 ? C + h.slice(f + b) : (f += b, h.charCodeAt(f) === 47 && ++f, h.slice(f)); }, _makeLong: function(l) { return l; }, dirname: function(l) { if (i(l), l.length === 0) return "."; for (var h = l.charCodeAt(0), c = h === 47, d = -1, p = !0, f = l.length - 1; f >= 1; --f) if ((h = l.charCodeAt(f)) === 47) { if (!p) { d = f; break; } } else p = !1; return d === -1 ? c ? "/" : "." : c && d === 1 ? "//" : l.slice(0, d); }, basename: function(l, h) { if (h !== void 0 && typeof h != "string") throw new TypeError('"ext" argument must be a string'); i(l); var c, d = 0, p = -1, f = !0; if (h !== void 0 && h.length > 0 && h.length <= l.length) { if (h.length === l.length && h === l) return ""; var g = h.length - 1, w = -1; for (c = l.length - 1; c >= 0; --c) { var b = l.charCodeAt(c); if (b === 47) { if (!f) { d = c + 1; break; } } else w === -1 && (f = !1, w = c + 1), g >= 0 && (b === h.charCodeAt(g) ? --g == -1 && (p = c) : (g = -1, p = w)); } return d === p ? p = w : p === -1 && (p = l.length), l.slice(d, p); } for (c = l.length - 1; c >= 0; --c) if (l.charCodeAt(c) === 47) { if (!f) { d = c + 1; break; } } else p === -1 && (f = !1, p = c + 1); return p === -1 ? "" : l.slice(d, p); }, extname: function(l) { i(l); for (var h = -1, c = 0, d = -1, p = !0, f = 0, g = l.length - 1; g >= 0; --g) { var w = l.charCodeAt(g); if (w !== 47) d === -1 && (p = !1, d = g + 1), w === 46 ? h === -1 ? h = g : f !== 1 && (f = 1) : h !== -1 && (f = -1); else if (!p) { c = g + 1; break; } } return h === -1 || d === -1 || f === 0 || f === 1 && h === d - 1 && h === c + 1 ? "" : l.slice(h, d); }, format: function(l) { if (l === null || typeof l != "object") throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof l); return function(h, c) { var d = c.dir || c.root, p = c.base || (c.name || "") + (c.ext || ""); return d ? d === c.root ? d + p : d + "/" + p : p; }(0, l); }, parse: function(l) { i(l); var h = { root: "", dir: "", base: "", ext: "", name: "" }; if (l.length === 0) return h; var c, d = l.charCodeAt(0), p = d === 47; p ? (h.root = "/", c = 1) : c = 0; for (var f = -1, g = 0, w = -1, b = !0, y = l.length - 1, A = 0; y >= c; --y) if ((d = l.charCodeAt(y)) !== 47) w === -1 && (b = !1, w = y + 1), d === 46 ? f === -1 ? f = y : A !== 1 && (A = 1) : f !== -1 && (A = -1); else if (!b) { g = y + 1; break; } return f === -1 || w === -1 || A === 0 || A === 1 && f === w - 1 && f === g + 1 ? w !== -1 && (h.base = h.name = g === 0 && p ? l.slice(1, w) : l.slice(g, w)) : (g === 0 && p ? (h.name = l.slice(1, f), h.base = l.slice(1, w)) : (h.name = l.slice(g, f), h.base = l.slice(g, w)), h.ext = l.slice(f, w)), g > 0 ? h.dir = l.slice(0, g - 1) : p && (h.dir = "/"), h; }, sep: "/", delimiter: ":", win32: null, posix: null }; o.posix = o, r.exports = o; }, 447: (r, i, a) => { var o; if (a.r(i), a.d(i, { URI: () => C, Utils: () => re }), typeof process == "object") o = process.platform === "win32"; else if (typeof navigator == "object") { var l = navigator.userAgent; o = l.indexOf("Windows") >= 0; } var h, c, d = (h = function(D, S) { return (h = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(E, M) { E.__proto__ = M; } || function(E, M) { for (var $ in M) Object.prototype.hasOwnProperty.call(M, $) && (E[$] = M[$]); })(D, S); }, function(D, S) { if (typeof S != "function" && S !== null) throw new TypeError("Class extends value " + String(S) + " is not a constructor or null"); function E() { this.constructor = D; } h(D, S), D.prototype = S === null ? Object.create(S) : (E.prototype = S.prototype, new E()); }), p = /^\w[\w\d+.-]*$/, f = /^\//, g = /^\/\//; function w(D, S) { if (!D.scheme && S) throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'.concat(D.authority, '", path: "').concat(D.path, '", query: "').concat(D.query, '", fragment: "').concat(D.fragment, '"}')); if (D.scheme && !p.test(D.scheme)) throw new Error("[UriError]: Scheme contains illegal characters."); if (D.path) { if (D.authority) { if (!f.test(D.path)) throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character'); } else if (g.test(D.path)) throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")'); } } var b = "", y = "/", A = /^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/, C = function() { function D(S, E, M, $, H, Y) { Y === void 0 && (Y = !1), typeof S == "object" ? (this.scheme = S.scheme || b, this.authority = S.authority || b, this.path = S.path || b, this.query = S.query || b, this.fragment = S.fragment || b) : (this.scheme = function(Te, ge) { return Te || ge ? Te : "file"; }(S, Y), this.authority = E || b, this.path = function(Te, ge) { switch (Te) { case "https": case "http": case "file": ge ? ge[0] !== y && (ge = y + ge) : ge = y; } return ge; }(this.scheme, M || b), this.query = $ || b, this.fragment = H || b, w(this, Y)); } return D.isUri = function(S) { return S instanceof D || !!S && typeof S.authority == "string" && typeof S.fragment == "string" && typeof S.path == "string" && typeof S.query == "string" && typeof S.scheme == "string" && typeof S.fsPath == "string" && typeof S.with == "function" && typeof S.toString == "function"; }, Object.defineProperty(D.prototype, "fsPath", { get: function() { return z(this, !1); }, enumerable: !1, configurable: !0 }), D.prototype.with = function(S) { if (!S) return this; var E = S.scheme, M = S.authority, $ = S.path, H = S.query, Y = S.fragment; return E === void 0 ? E = this.scheme : E === null && (E = b), M === void 0 ? M = this.authority : M === null && (M = b), $ === void 0 ? $ = this.path : $ === null && ($ = b), H === void 0 ? H = this.query : H === null && (H = b), Y === void 0 ? Y = this.fragment : Y === null && (Y = b), E === this.scheme && M === this.authority && $ === this.path && H === this.query && Y === this.fragment ? this : new k(E, M, $, H, Y); }, D.parse = function(S, E) { E === void 0 && (E = !1); var M = A.exec(S); return M ? new k(M[2] || b, O(M[4] || b), O(M[5] || b), O(M[7] || b), O(M[9] || b), E) : new k(b, b, b, b, b); }, D.file = function(S) { var E = b; if (o && (S = S.replace(/\\/g, y)), S[0] === y && S[1] === y) { var M = S.indexOf(y, 2); M === -1 ? (E = S.substring(2), S = y) : (E = S.substring(2, M), S = S.substring(M) || y); } return new k("file", E, S, b, b); }, D.from = function(S) { var E = new k(S.scheme, S.authority, S.path, S.query, S.fragment); return w(E, !0), E; }, D.prototype.toString = function(S) { return S === void 0 && (S = !1), T(this, S); }, D.prototype.toJSON = function() { return this; }, D.revive = function(S) { if (S) { if (S instanceof D) return S; var E = new k(S); return E._formatted = S.external, E._fsPath = S._sep === R ? S.fsPath : null, E; } return S; }, D; }(), R = o ? 1 : void 0, k = function(D) { function S() { var E = D !== null && D.apply(this, arguments) || this; return E._formatted = null, E._fsPath = null, E; } return d(S, D), Object.defineProperty(S.prototype, "fsPath", { get: function() { return this._fsPath || (this._fsPath = z(this, !1)), this._fsPath; }, enumerable: !1, configurable: !0 }), S.prototype.toString = function(E) { return E === void 0 && (E = !1), E ? T(this, !0) : (this._formatted || (this._formatted = T(this, !1)), this._formatted); }, S.prototype.toJSON = function() { var E = { $mid: 1 }; return this._fsPath && (E.fsPath = this._fsPath, E._sep = R), this._formatted && (E.external = this._formatted), this.path && (E.path = this.path), this.scheme && (E.scheme = this.scheme), this.authority && (E.authority = this.authority), this.query && (E.query = this.query), this.fragment && (E.fragment = this.fragment), E; }, S; }(C), F = ((c = {})[58] = "%3A", c[47] = "%2F", c[63] = "%3F", c[35] = "%23", c[91] = "%5B", c[93] = "%5D", c[64] = "%40", c[33] = "%21", c[36] = "%24", c[38] = "%26", c[39] = "%27", c[40] = "%28", c[41] = "%29", c[42] = "%2A", c[43] = "%2B", c[44] = "%2C", c[59] = "%3B", c[61] = "%3D", c[32] = "%20", c); function P(D, S) { for (var E = void 0, M = -1, $ = 0; $ < D.length; $++) { var H = D.charCodeAt($); if (H >= 97 && H <= 122 || H >= 65 && H <= 90 || H >= 48 && H <= 57 || H === 45 || H === 46 || H === 95 || H === 126 || S && H === 47) M !== -1 && (E += encodeURIComponent(D.substring(M, $)), M = -1), E !== void 0 && (E += D.charAt($)); else { E === void 0 && (E = D.substr(0, $)); var Y = F[H]; Y !== void 0 ? (M !== -1 && (E += encodeURIComponent(D.substring(M, $)), M = -1), E += Y) : M === -1 && (M = $); } } return M !== -1 && (E += encodeURIComponent(D.substring(M))), E !== void 0 ? E : D; } function N(D) { for (var S = void 0, E = 0; E < D.length; E++) { var M = D.charCodeAt(E); M === 35 || M === 63 ? (S === void 0 && (S = D.substr(0, E)), S += F[M]) : S !== void 0 && (S += D[E]); } return S !== void 0 ? S : D; } function z(D, S) { var E; return E = D.authority && D.path.length > 1 && D.scheme === "file" ? "//".concat(D.authority).concat(D.path) : D.path.charCodeAt(0) === 47 && (D.path.charCodeAt(1) >= 65 && D.path.charCodeAt(1) <= 90 || D.path.charCodeAt(1) >= 97 && D.path.charCodeAt(1) <= 122) && D.path.charCodeAt(2) === 58 ? S ? D.path.substr(1) : D.path[1].toLowerCase() + D.path.substr(2) : D.path, o && (E = E.replace(/\//g, "\\")), E; } function T(D, S) { var E = S ? N : P, M = "", $ = D.scheme, H = D.authority, Y = D.path, Te = D.query, ge = D.fragment; if ($ && (M += $, M += ":"), (H || $ === "file") && (M += y, M += y), H) { var Se = H.indexOf("@"); if (Se !== -1) { var rt = H.substr(0, Se); H = H.substr(Se + 1), (Se = rt.indexOf(":")) === -1 ? M += E(rt, !1) : (M += E(rt.substr(0, Se), !1), M += ":", M += E(rt.substr(Se + 1), !1)), M += "@"; } (Se = (H = H.toLowerCase()).indexOf(":")) === -1 ? M += E(H, !1) : (M += E(H.substr(0, Se), !1), M += H.substr(Se)); } if (Y) { if (Y.length >= 3 && Y.charCodeAt(0) === 47 && Y.charCodeAt(2) === 58) (Be = Y.charCodeAt(1)) >= 65 && Be <= 90 && (Y = "/".concat(String.fromCharCode(Be + 32), ":").concat(Y.substr(3))); else if (Y.length >= 2 && Y.charCodeAt(1) === 58) { var Be; (Be = Y.charCodeAt(0)) >= 65 && Be <= 90 && (Y = "".concat(String.fromCharCode(Be + 32), ":").concat(Y.substr(2))); } M += E(Y, !0); } return Te && (M += "?", M += E(Te, !1)), ge && (M += "#", M += S ? ge : P(ge, !1)), M; } function j(D) { try { return decodeURIComponent(D); } catch { return D.length > 3 ? D.substr(0, 3) + j(D.substr(3)) : D; } } var U = /(%[0-9A-Za-z][0-9A-Za-z])+/g; function O(D) { return D.match(U) ? D.replace(U, function(S) { return j(S); }) : D; } var re, de = a(470), Me = function(D, S, E) { if (E || arguments.length === 2) for (var M, $ = 0, H = S.length; $ < H; $++) !M && $ in S || (M || (M = Array.prototype.slice.call(S, 0, $)), M[$] = S[$]); return D.concat(M || Array.prototype.slice.call(S)); }, Ne = de.posix || de; (function(D) { D.joinPath = function(S) { for (var E = [], M = 1; M < arguments.length; M++) E[M - 1] = arguments[M]; return S.with({ path: Ne.join.apply(Ne, Me([S.path], E, !1)) }); }, D.resolvePath = function(S) { for (var E = [], M = 1; M < arguments.length; M++) E[M - 1] = arguments[M]; var $ = S.path || "/"; return S.with({ path: Ne.resolve.apply(Ne, Me([$], E, !1)) }); }, D.dirname = function(S) { var E = Ne.dirname(S.path); return E.length === 1 && E.charCodeAt(0) === 46 ? S : S.with({ path: E }); }, D.basename = function(S) { return Ne.basename(S.path); }, D.extname = function(S) { return Ne.extname(S.path); }; })(re || (re = {})); } }, t = {}; function n(r) { if (t[r]) return t[r].exports; var i = t[r] = { exports: {} }; return e[r](i, i.exports, n), i.exports; } return n.d = (r, i) => { for (var a in i) n.o(i, a) && !n.o(r, a) && Object.defineProperty(r, a, { enumerable: !0, get: i[a] }); }, n.o = (r, i) => Object.prototype.hasOwnProperty.call(r, i), n.r = (r) => { typeof Symbol < "u" && Symbol.toStringTag && Object.defineProperty(r, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(r, "__esModule", { value: !0 }); }, n(447); })(); var { URI: hi, Utils: Br } = ko, Ih = function(e, t, n) { if (n || arguments.length === 2) for (var r = 0, i = t.length, a; r < i; r++) (a || !(r in t)) && (a || (a = Array.prototype.slice.call(t, 0, r)), a[r] = t[r]); return e.concat(a || Array.prototype.slice.call(t)); }; function Zn(e) { return Br.dirname(hi.parse(e)).toString(); } function jr(e) { for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n]; return Br.joinPath.apply(Br, Ih([hi.parse(e)], t, !1)).toString(); } var Ds = function(e, t, n, r) { function i(a) { return a instanceof n ? a : new n(function(o) { o(a); }); } return new (n || (n = Promise))(function(a, o) { function l(d) { try { c(r.next(d)); } catch (p) { o(p); } } function h(d) { try { c(r.throw(d)); } catch (p) { o(p); } } function c(d) { d.done ? a(d.value) : i(d.value).then(l, h); } c((r = r.apply(e, t || [])).next()); }); }, Es = function(e, t) { var n = { label: 0, sent: function() { if (a[0] & 1) throw a[1]; return a[1]; }, trys: [], ops: [] }, r, i, a, o; return o = { next: l(0), throw: l(1), return: l(2) }, typeof Symbol == "function" && (o[Symbol.iterator] = function() { return this; }), o; function l(c) { return function(d) { return h([c, d]); }; } function h(c) { if (r) throw new TypeError("Generator is already executing."); for (; n; ) try { if (r = 1, i && (a = c[0] & 2 ? i.return : c[0] ? i.throw || ((a = i.return) && a.call(i), 0) : i.next) && !(a = a.call(i, c[1])).done) return a; switch (i = 0, a && (c = [c[0] & 2, a.value]), c[0]) { case 0: case 1: a = c; break; case 4: return n.label++, { value: c[1], done: !1 }; case 5: n.label++, i = c[1], c = [0]; continue; case 7: c = n.ops.pop(), n.trys.pop(); continue; default: if (a = n.trys, !(a = a.length > 0 && a[a.length - 1]) && (c[0] === 6 || c[0] === 2)) { n = 0; continue; } if (c[0] === 3 && (!a || c[1] > a[0] && c[1] < a[3])) { n.label = c[1]; break; } if (c[0] === 6 && n.label < a[1]) { n.label = a[1], a = c; break; } if (a && n.label < a[2]) { n.label = a[2], n.ops.push(c); break; } a[2] && n.ops.pop(), n.trys.pop(); continue; } c = t.call(e, n); } catch (d) { c = [6, d], i = 0; } finally { r = a = 0; } if (c[0] & 5) throw c[1]; return { value: c[0] ? c[1] : void 0, done: !0 }; } }, Lh = function() { function e(t) { this.readDirectory = t, this.literalCompletions = [], this.importCompletions = []; } return e.prototype.onCssURILiteralValue = function(t) { this.literalCompletions.push(t); }, e.prototype.onCssImportPath = function(t) { this.importCompletions.push(t); }, e.prototype.computeCompletions = function(t, n) { return Ds(this, void 0, void 0, function() { var r, i, a, o, l, b, h, c, d, R, p, f, g, w, b, y, A, C, R; return Es(this, function(k) { switch (k.label) { case 0: r = { items: [], isIncomplete: !1 }, i = 0, a = this.literalCompletions, k.label = 1; case 1: return i < a.length ? (o = a[i], l = o.uriValue, b = Qn(l), b === "." || b === ".." ? (r.isIncomplete = !0, [3, 4]) : [3, 2]) : [3, 5]; case 2: return [4, this.providePathSuggestions(l, o.position, o.range, t, n)]; case 3: for (h = k.sent(), c = 0, d = h; c < d.length; c++) R = d[c], r.items.push(R); k.label = 4; case 4: return i++, [3, 1]; case 5: p = 0, f = this.importCompletions, k.label = 6; case 6: return p < f.length ? (g = f[p], w = g.pathValue, b = Qn(w), b === "." || b === ".." ? (r.isIncomplete = !0, [3, 9]) : [3, 7]) : [3, 10]; case 7: return [4, this.providePathSuggestions(w, g.position, g.range, t, n)]; case 8: for (y = k.sent(), t.languageId === "scss" && y.forEach(function(F) { oe(F.label, "_") && oo(F.label, ".scss") && (F.textEdit ? F.textEdit.newText = F.label.slice(1, -5) : F.label = F.label.slice(1, -5)); }), A = 0, C = y; A < C.length; A++) R = C[A], r.items.push(R); k.label = 9; case 9: return p++, [3, 6]; case 10: return [2, r]; } }); }); }, e.prototype.providePathSuggestions = function(t, n, r, i, a) { return Ds(this, void 0, void 0, function() { var o, l, h, c, d, p, f, g, w, b, y, A, C, R, k; return Es(this, function(F) { switch (F.label) { case 0: if (o = Qn(t), l = oe(t, "'") || oe(t, '"'), h = l ? o.slice(0, n.character - (r.start.character + 1)) : o.slice(0, n.character - r.start.character), c = i.uri, d = l ? Vh(r, 1, -1) : r, p = Wh(h, o, d), f = h.substring(0, h.lastIndexOf("/") + 1), g = a.resolveReference(f || ".", c), !g) return [3, 4]; F.label = 1; case 1: return F.trys.push([1, 3, , 4]), w = [], [4, this.readDirectory(g)]; case 2: for (b = F.sent(), y = 0, A = b; y < A.length; y++) C = A[y], R = C[0], k = C[1], R.charCodeAt(0) !== Th && (k === Kt.Directory || jr(g, R) !== c) && w.push(Oh(R, k === Kt.Directory, p)); return [2, w]; case 3: return F.sent(), [3, 4]; case 4: return [2, []]; } }); }); }, e; }(), Th = ".".charCodeAt(0); function Qn(e) { return oe(e, "'") || oe(e, '"') ? e.slice(1, -1) : e; } function Wh(e, t, n) { var r, i = e.lastIndexOf("/"); if (i === -1) r = n; else { var a = t.slice(i + 1), o = Pn(n.end, -a.length), l = a.indexOf(" "), h = void 0; l !== -1 ? h = Pn(o, l) : h = n.end, r = Q.create(o, h); } return r; } function Oh(e, t, n) { return t ? (e = e + "/", { label: mn(e), kind: V.Folder, textEdit: B.replace(n, mn(e)), command: { title: "Suggest", command: "editor.action.triggerSuggest" } }) : { label: mn(e), kind: V.File, textEdit: B.replace(n, mn(e)) }; } function mn(e) { return e.replace(/(\s|\(|\)|,|"|')/g, "\\$1"); } function Pn(e, t) { return Fe.create(e.line, e.character + t); } function Vh(e, t, n) { var r = Pn(e.start, t), i = Pn(e.end, n); return Q.create(r, i); } var Uh = function(e, t, n, r) { function i(a) { return a instanceof n ? a : new n(function(o) { o(a); }); } return new (n || (n = Promise))(function(a, o) { function l(d) { try { c(r.next(d)); } catch (p) { o(p); } } function h(d) { try { c(r.throw(d)); } catch (p) { o(p); } } function c(d) { d.done ? a(d.value) : i(d.value).then(l, h); } c((r = r.apply(e, t || [])).next()); }); }, Bh = function(e, t) { var n = { label: 0, sent: function() { if (a[0] & 1) throw a[1]; return a[1]; }, trys: [], ops: [] }, r, i, a, o; return o = { next: l(0), throw: l(1), return: l(2) }, typeof Symbol == "function" && (o[Symbol.iterator] = function() { return this; }), o; function l(c) { return function(d) { return h([c, d]); }; } function h(c) { if (r) throw new TypeError("Generator is already executing."); for (; n; ) try { if (r = 1, i && (a = c[0] & 2 ? i.return : c[0] ? i.throw || ((a = i.return) && a.call(i), 0) : i.next) && !(a = a.call(i, c[1])).done) return a; switch (i = 0, a && (c = [c[0] & 2, a.value]), c[0]) { case 0: case 1: a = c; break; case 4: return n.label++, { value: c[1], done: !1 }; case 5: n.label++, i = c[1], c = [0]; continue; case 7: c = n.ops.pop(), n.trys.pop(); continue; default: if (a = n.trys, !(a = a.length > 0 && a[a.length - 1]) && (c[0] === 6 || c[0] === 2)) { n = 0; continue; } if (c[0] === 3 && (!a || c[1] > a[0] && c[1] < a[3])) { n.label = c[1]; break; } if (c[0] === 6 && n.label < a[1]) { n.label = a[1], a = c; break; } if (a && n.label < a[2]) { n.label = a[2], n.ops.push(c); break; } a[2] && n.ops.pop(), n.trys.pop(); continue; } c = t.call(e, n); } catch (d) { c = [6, d], i = 0; } finally { r = a = 0; } if (c[0] & 5) throw c[1]; return { value: c[0] ? c[1] : void 0, done: !0 }; } }, jh = Le(), je = ke.Snippet, Rs = { title: "Suggest", command: "editor.action.triggerSuggest" }, We; (function(e) { e.Enums = " ", e.Normal = "d", e.VendorPrefixed = "x", e.Term = "y", e.Variable = "z"; })(We || (We = {})); var di = function() { function e(t, n, r) { t === void 0 && (t = null), this.variablePrefix = t, this.lsOptions = n, this.cssDataManager = r, this.completionParticipants = []; } return e.prototype.configure = function(t) { this.defaultSettings = t; }, e.prototype.getSymbolContext = function() { return this.symbolContext || (this.symbolContext = new Ur(this.styleSheet)), this.symbolContext; }, e.prototype.setCompletionParticipants = function(t) { this.completionParticipants = t || []; }, e.prototype.doComplete2 = function(t, n, r, i, a) { return a === void 0 && (a = this.defaultSettings), Uh(this, void 0, void 0, function() { var o, l, h, c; return Bh(this, function(d) { switch (d.label) { case 0: if (!this.lsOptions.fileSystemProvider || !this.lsOptions.fileSystemProvider.readDirectory) return [2, this.doComplete(t, n, r, a)]; o = new Lh(this.lsOptions.fileSystemProvider.readDirectory), l = this.completionParticipants, this.completionParticipants = [o].concat(l), h = this.doComplete(t, n, r, a), d.label = 1; case 1: return d.trys.push([1, , 3, 4]), [4, o.computeCompletions(t, i)]; case 2: return c = d.sent(), [2, { isIncomplete: h.isIncomplete || c.isIncomplete, items: c.items.concat(h.items) }]; case 3: return this.completionParticipants = l, [7]; case 4: return [2]; } }); }); }, e.prototype.doComplete = function(t, n, r, i) { this.offset = t.offsetAt(n), this.position = n, this.currentWord = Gh(t, this.offset), this.defaultReplaceRange = Q.create(Fe.create(this.position.line, this.position.character - this.currentWord.length), this.position), this.textDocument = t, this.styleSheet = r, this.documentSettings = i; try { var a = { isIncomplete: !1, items: [] }; this.nodePath = ei(this.styleSheet, this.offset); for (var o = this.nodePath.length - 1; o >= 0; o--) { var l = this.nodePath[o]; if (l instanceof ri) this.getCompletionsForDeclarationProperty(l.getParent(), a); else if (l instanceof mo) l.parent instanceof zr ? this.getVariableProposals(null, a) : this.getCompletionsForExpression(l, a); else if (l instanceof kt) { var h = l.findAParent(m.ExtendsReference, m.Ruleset); if (h) if (h.type === m.ExtendsReference) this.getCompletionsForExtendsReference(h, l, a); else { var c = h; this.getCompletionsForSelector(c, c && c.isNested(), a); } } else if (l instanceof Dt) this.getCompletionsForFunctionArgument(l, l.getParent(), a); else if (l instanceof ti) this.getCompletionsForDeclarations(l, a); else if (l instanceof Vn) this.getCompletionsForVariableDeclaration(l, a); else if (l instanceof Ct) this.getCompletionsForRuleSet(l, a); else if (l instanceof zr) this.getCompletionsForInterpolation(l, a); else if (l instanceof kn) this.getCompletionsForFunctionDeclaration(l, a); else if (l instanceof Fn) this.getCompletionsForMixinReference(l, a); else if (l instanceof nn) this.getCompletionsForFunctionArgument(null, l, a); else if (l instanceof Ar) this.getCompletionsForSupports(l, a); else if (l instanceof Ut) this.getCompletionsForSupportsCondition(l, a); else if (l instanceof qt) this.getCompletionsForExtendsReference(l, null, a); else if (l.type === m.URILiteral) this.getCompletionForUriLiteralValue(l, a); else if (l.parent === null) this.getCompletionForTopLevel(a); else if (l.type === m.StringLiteral && this.isImportPathParent(l.parent.type)) this.getCompletionForImportPath(l, a); else continue; if (a.items.length > 0 || this.offset > l.offset) return this.finalize(a); } return this.getCompletionsForStylesheet(a), a.items.length === 0 && this.variablePrefix && this.currentWord.indexOf(this.variablePrefix) === 0 && this.getVariableProposals(null, a), this.finalize(a); } finally { this.position = null, this.currentWord = null, this.textDocument = null, this.styleSheet = null, this.symbolContext = null, this.defaultReplaceRange = null, this.nodePath = null; } }, e.prototype.isImportPathParent = function(t) { return t === m.Import; }, e.prototype.finalize = function(t) { return t; }, e.prototype.findInNodePath = function() { for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n]; for (var r = this.nodePath.length - 1; r >= 0; r--) { var i = this.nodePath[r]; if (t.indexOf(i.type) !== -1) return i; } return null; }, e.prototype.getCompletionsForDeclarationProperty = function(t, n) { return this.getPropertyProposals(t, n); }, e.prototype.getPropertyProposals = function(t, n) { var r = this, i = this.isTriggerPropertyValueCompletionEnabled, a = this.isCompletePropertyWithSemicolonEnabled, o = this.cssDataManager.getProperties(); return o.forEach(function(l) { var h, c, d = !1; t ? (h = r.getCompletionRange(t.getProperty()), c = l.name, Ee(t.colonPosition) || (c += ": ", d = !0)) : (h = r.getCompletionRange(null), c = l.name + ": ", d = !0), !t && a && (c += "$0;"), t && !t.semicolonPosition && a && r.offset >= r.textDocument.offsetAt(h.end) && (c += "$0;"); var p = { label: l.name, documentation: et(l, r.doesSupportMarkdown()), tags: It(l) ? [ot.Deprecated] : [], textEdit: B.replace(h, c), insertTextFormat: ke.Snippet, kind: V.Property }; l.restrictions || (d = !1), i && d && (p.command = Rs); var f = typeof l.relevance == "number" ? Math.min(Math.max(l.relevance, 0), 99) : 50, g = (255 - f).toString(16), w = oe(l.name, "-") ? We.VendorPrefixed : We.Normal; p.sortText = w + "_" + g, n.items.push(p); }), this.completionParticipants.forEach(function(l) { l.onCssProperty && l.onCssProperty({ propertyName: r.currentWord, range: r.defaultReplaceRange }); }), n; }, Object.defineProperty(e.prototype, "isTriggerPropertyValueCompletionEnabled", { get: function() { var t, n; return (n = (t = this.documentSettings) === null || t === void 0 ? void 0 : t.triggerPropertyValueCompletion) !== null && n !== void 0 ? n : !0; }, enumerable: !1, configurable: !0 }), Object.defineProperty(e.prototype, "isCompletePropertyWithSemicolonEnabled", { get: function() { var t, n; return (n = (t = this.documentSettings) === null || t === void 0 ? void 0 : t.completePropertyWithSemicolon) !== null && n !== void 0 ? n : !0; }, enumerable: !1, configurable: !0 }), e.prototype.getCompletionsForDeclarationValue = function(t, n) { for (var r = this, i = t.getFullPropertyName(), a = this.cssDataManager.getProperty(i), o = t.getValue() || null; o && o.hasChildren(); ) o = o.findChildAtOffset(this.offset, !1); if (this.completionParticipants.forEach(function(w) { w.onCssPropertyValue && w.onCssPropertyValue({ propertyName: i, propertyValue: r.currentWord, range: r.getCompletionRange(o) }); }), a) { if (a.restrictions) for (var l = 0, h = a.restrictions; l < h.length; l++) { var c = h[l]; switch (c) { case "color": this.getColorProposals(a, o, n); break; case "position": this.getPositionProposals(a, o, n); break; case "repeat": this.getRepeatStyleProposals(a, o, n); break; case "line-style": this.getLineStyleProposals(a, o, n); break; case "line-width": this.getLineWidthProposals(a, o, n); break; case "geometry-box": this.getGeometryBoxProposals(a, o, n); break; case "box": this.getBoxProposals(a, o, n); break; case "image": this.getImageProposals(a, o, n); break; case "timing-function": this.getTimingFunctionProposals(a, o, n); break; case "shape": this.getBasicShapeProposals(a, o, n); break; } } this.getValueEnumProposals(a, o, n), this.getCSSWideKeywordProposals(a, o, n), this.getUnitProposals(a, o, n); } else for (var d = qh(this.styleSheet, t), p = 0, f = d.getEntries(); p < f.length; p++) { var g = f[p]; n.items.push({ label: g, textEdit: B.replace(this.getCompletionRange(o), g), kind: V.Value }); } return this.getVariableProposals(o, n), this.getTermProposals(a, o, n), n; }, e.prototype.getValueEnumProposals = function(t, n, r) { if (t.values) for (var i = 0, a = t.values; i < a.length; i++) { var o = a[i], l = o.name, h = void 0; if (oo(l, ")")) { var c = l.lastIndexOf("("); c !== -1 && (l = l.substr(0, c) + "($1)", h = je); } var d = We.Enums; oe(o.name, "-") && (d += We.VendorPrefixed); var p = { label: o.name, documentation: et(o, this.doesSupportMarkdown()), tags: It(t) ? [ot.Deprecated] : [], textEdit: B.replace(this.getCompletionRange(n), l), sortText: d, kind: V.Value, insertTextFormat: h }; r.items.push(p); } return r; }, e.prototype.getCSSWideKeywordProposals = function(t, n, r) { for (var i in xs) r.items.push({ label: i, documentation: xs[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); for (var a in Ss) { var o = yt(a); r.items.push({ label: a, documentation: Ss[a], textEdit: B.replace(this.getCompletionRange(n), o), kind: V.Function, insertTextFormat: je, command: oe(a, "var") ? Rs : void 0 }); } return r; }, e.prototype.getCompletionsForInterpolation = function(t, n) { return this.offset >= t.offset + 2 && this.getVariableProposals(null, n), n; }, e.prototype.getVariableProposals = function(t, n) { for (var r = this.getSymbolContext().findSymbolsAtOffset(this.offset, G.Variable), i = 0, a = r; i < a.length; i++) { var o = a[i], l = oe(o.name, "--") ? "var(".concat(o.name, ")") : o.name, h = { label: o.name, documentation: o.value ? Pa(o.value) : o.value, textEdit: B.replace(this.getCompletionRange(t), l), kind: V.Variable, sortText: We.Variable }; if (typeof h.documentation == "string" && As(h.documentation) && (h.kind = V.Color), o.node.type === m.FunctionParameter) { var c = o.node.getParent(); c.type === m.MixinDeclaration && (h.detail = jh("completion.argument", "argument from '{0}'", c.getName())); } n.items.push(h); } return n; }, e.prototype.getVariableProposalsForCSSVarFunction = function(t) { var n = new qr(); this.styleSheet.acceptVisitor(new Hh(n, this.offset)); for (var r = this.getSymbolContext().findSymbolsAtOffset(this.offset, G.Variable), i = 0, a = r; i < a.length; i++) { var o = a[i]; if (oe(o.name, "--")) { var l = { label: o.name, documentation: o.value ? Pa(o.value) : o.value, textEdit: B.replace(this.getCompletionRange(null), o.name), kind: V.Variable }; typeof l.documentation == "string" && As(l.documentation) && (l.kind = V.Color), t.items.push(l); } n.remove(o.name); } for (var h = 0, c = n.getEntries(); h < c.length; h++) { var d = c[h]; if (oe(d, "--")) { var l = { label: d, textEdit: B.replace(this.getCompletionRange(null), d), kind: V.Variable }; t.items.push(l); } } return t; }, e.prototype.getUnitProposals = function(t, n, r) { var i = "0"; if (this.currentWord.length > 0) { var a = this.currentWord.match(/^-?\d[\.\d+]*/); a && (i = a[0], r.isIncomplete = i.length === this.currentWord.length); } else this.currentWord.length === 0 && (r.isIncomplete = !0); if (n && n.parent && n.parent.type === m.Term && (n = n.getParent()), t.restrictions) for (var o = 0, l = t.restrictions; o < l.length; o++) { var h = l[o], c = xo[h]; if (c) for (var d = 0, p = c; d < p.length; d++) { var f = p[d], g = i + f; r.items.push({ label: g, textEdit: B.replace(this.getCompletionRange(n), g), kind: V.Unit }); } } return r; }, e.prototype.getCompletionRange = function(t) { if (t && t.offset <= this.offset && this.offset <= t.end) { var n = t.end !== -1 ? this.textDocument.positionAt(t.end) : this.position, r = this.textDocument.positionAt(t.offset); if (r.line === n.line) return Q.create(r, n); } return this.defaultReplaceRange; }, e.prototype.getColorProposals = function(t, n, r) { for (var i in Nn) r.items.push({ label: i, documentation: Nn[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Color }); for (var i in ps) r.items.push({ label: i, documentation: ps[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); var a = new qr(); this.styleSheet.acceptVisitor(new $h(a, this.offset)); for (var o = 0, l = a.getEntries(); o < l.length; o++) { var i = l[o]; r.items.push({ label: i, textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Color }); } for (var h = function(g) { var w = 1, b = function(A, C) { return "${" + w++ + ":" + C + "}"; }, y = g.func.replace(/\[?\$(\w+)\]?/g, b); r.items.push({ label: g.func.substr(0, g.func.indexOf("(")), detail: g.func, documentation: g.desc, textEdit: B.replace(c.getCompletionRange(n), y), insertTextFormat: je, kind: V.Function }); }, c = this, d = 0, p = vh; d < p.length; d++) { var f = p[d]; h(f); } return r; }, e.prototype.getPositionProposals = function(t, n, r) { for (var i in gs) r.items.push({ label: i, documentation: gs[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); return r; }, e.prototype.getRepeatStyleProposals = function(t, n, r) { for (var i in bs) r.items.push({ label: i, documentation: bs[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); return r; }, e.prototype.getLineStyleProposals = function(t, n, r) { for (var i in vs) r.items.push({ label: i, documentation: vs[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); return r; }, e.prototype.getLineWidthProposals = function(t, n, r) { for (var i = 0, a = Dh; i < a.length; i++) { var o = a[i]; r.items.push({ label: o, textEdit: B.replace(this.getCompletionRange(n), o), kind: V.Value }); } return r; }, e.prototype.getGeometryBoxProposals = function(t, n, r) { for (var i in ws) r.items.push({ label: i, documentation: ws[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); return r; }, e.prototype.getBoxProposals = function(t, n, r) { for (var i in ys) r.items.push({ label: i, documentation: ys[i], textEdit: B.replace(this.getCompletionRange(n), i), kind: V.Value }); return r; }, e.prototype.getImageProposals = function(t, n, r) { for (var i in Cs) { var a = yt(i); r.items.push({ label: i, documentation: Cs[i], textEdit: B.replace(this.getCompletionRange(n), a), kind: V.Function, insertTextFormat: i !== a ? je : void 0 }); } return r; }, e.prototype.getTimingFunctionProposals = function(t, n, r) { for (var i in ks) { var a = yt(i); r.items.push({ label: i, documentation: ks[i], textEdit: B.replace(this.getCompletionRange(n), a), kind: V.Function, insertTextFormat: i !== a ? je : void 0 }); } return r; }, e.prototype.getBasicShapeProposals = function(t, n, r) { for (var i in Fs) { var a = yt(i); r.items.push({ label: i, documentation: Fs[i], textEdit: B.replace(this.getCompletionRange(n), a), kind: V.Function, insertTextFormat: i !== a ? je : void 0 }); } return r; }, e.prototype.getCompletionsForStylesheet = function(t) { var n = this.styleSheet.findFirstChildBeforeOffset(this.offset); return n ? n instanceof Ct ? this.getCompletionsForRuleSet(n, t) : n instanceof Ar ? this.getCompletionsForSupports(n, t) : t : this.getCompletionForTopLevel(t); }, e.prototype.getCompletionForTopLevel = function(t) { var n = this; return this.cssDataManager.getAtDirectives().forEach(function(r) { t.items.push({ label: r.name, textEdit: B.replace(n.getCompletionRange(null), r.name), documentation: et(r, n.doesSupportMarkdown()), tags: It(r) ? [ot.Deprecated] : [], kind: V.Keyword }); }), this.getCompletionsForSelector(null, !1, t), t; }, e.prototype.getCompletionsForRuleSet = function(t, n) { var r = t.getDeclarations(), i = r && r.endsWith("}") && this.offset >= r.end; if (i) return this.getCompletionForTopLevel(n); var a = !r || this.offset <= r.offset; return a ? this.getCompletionsForSelector(t, t.isNested(), n) : this.getCompletionsForDeclarations(t.getDeclarations(), n); }, e.prototype.getCompletionsForSelector = function(t, n, r) { var i = this, a = this.findInNodePath(m.PseudoSelector, m.IdentifierSelector, m.ClassSelector, m.ElementNameSelector); !a && this.hasCharacterAtPosition(this.offset - this.currentWord.length - 1, ":") && (this.currentWord = ":" + this.currentWord, this.hasCharacterAtPosition(this.offset - this.currentWord.length - 1, ":") && (this.currentWord = ":" + this.currentWord), this.defaultReplaceRange = Q.create(Fe.create(this.position.line, this.position.character - this.currentWord.length), this.position)); var o = this.cssDataManager.getPseudoClasses(); o.forEach(function(y) { var A = yt(y.name), C = { label: y.name, textEdit: B.replace(i.getCompletionRange(a), A), documentation: et(y, i.doesSupportMarkdown()), tags: It(y) ? [ot.Deprecated] : [], kind: V.Function, insertTextFormat: y.name !== A ? je : void 0 }; oe(y.name, ":-") && (C.sortText = We.VendorPrefixed), r.items.push(C); }); var l = this.cssDataManager.getPseudoElements(); if (l.forEach(function(y) { var A = yt(y.name), C = { label: y.name, textEdit: B.replace(i.getCompletionRange(a), A), documentation: et(y, i.doesSupportMarkdown()), tags: It(y) ? [ot.Deprecated] : [], kind: V.Function, insertTextFormat: y.name !== A ? je : void 0 }; oe(y.name, "::-") && (C.sortText = We.VendorPrefixed), r.items.push(C); }), !n) { for (var h = 0, c = Eh; h < c.length; h++) { var d = c[h]; r.items.push({ label: d, textEdit: B.replace(this.getCompletionRange(a), d), kind: V.Keyword }); } for (var p = 0, f = Rh; p < f.length; p++) { var d = f[p]; r.items.push({ label: d, textEdit: B.replace(this.getCompletionRange(a), d), kind: V.Keyword }); } } var g = {}; g[this.currentWord] = !0; var w = this.textDocument.getText(); if (this.styleSheet.accept(function(y) { if (y.type === m.SimpleSelector && y.length > 0) { var A = w.substr(y.offset, y.length); return A.charAt(0) === "." && !g[A] && (g[A] = !0, r.items.push({ label: A, textEdit: B.replace(i.getCompletionRange(a), A), kind: V.Keyword })), !1; } return !0; }), t && t.isNested()) { var b = t.getSelectors().findFirstChildBeforeOffset(this.offset); b && t.getSelectors().getChildren().indexOf(b) === 0 && this.getPropertyProposals(null, r); } return r; }, e.prototype.getCompletionsForDeclarations = function(t, n) { if (!t || this.offset === t.offset) return n; var r = t.findFirstChildBeforeOffset(this.offset); if (!r) return this.getCompletionsForDeclarationProperty(null, n); if (r instanceof ni) { var i = r; if (!Ee(i.colonPosition) || this.offset <= i.colonPosition) return this.getCompletionsForDeclarationProperty(i, n); if (Ee(i.semicolonPosition) && i.semicolonPosition < this.offset) return this.offset === i.semicolonPosition + 1 ? n : this.getCompletionsForDeclarationProperty(null, n); if (i instanceof Ve) return this.getCompletionsForDeclarationValue(i, n); } else r instanceof qt ? this.getCompletionsForExtendsReference(r, null, n) : this.currentWord && this.currentWord[0] === "@" ? this.getCompletionsForDeclarationProperty(null, n) : r instanceof Ct && this.getCompletionsForDeclarationProperty(null, n); return n; }, e.prototype.getCompletionsForVariableDeclaration = function(t, n) { return this.offset && Ee(t.colonPosition) && this.offset > t.colonPosition && this.getVariableProposals(t.getValue(), n), n; }, e.prototype.getCompletionsForExpression = function(t, n) { var r = t.getParent(); if (r instanceof Dt) return this.getCompletionsForFunctionArgument(r, r.getParent(), n), n; var i = t.findParent(m.Declaration); if (!i) return this.getTermProposals(void 0, null, n), n; var a = t.findChildAtOffset(this.offset, !0); return a ? a instanceof oi || a instanceof Re ? this.getCompletionsForDeclarationValue(i, n) : n : this.getCompletionsForDeclarationValue(i, n); }, e.prototype.getCompletionsForFunctionArgument = function(t, n, r) { var i = n.getIdentifier(); return i && i.matches("var") && (!n.getArguments().hasChildren() || n.getArguments().getChild(0) === t) && this.getVariableProposalsForCSSVarFunction(r), r; }, e.prototype.getCompletionsForFunctionDeclaration = function(t, n) { var r = t.getDeclarations(); return r && this.offset > r.offset && this.offset < r.end && this.getTermProposals(void 0, null, n), n; }, e.prototype.getCompletionsForMixinReference = function(t, n) { for (var r = this, i = this.getSymbolContext().findSymbolsAtOffset(this.offset, G.Mixin), a = 0, o = i; a < o.length; a++) { var l = o[a]; l.node instanceof $t && n.items.push(this.makeTermProposal(l, l.node.getParameters(), null)); } var h = t.getIdentifier() || null; return this.completionParticipants.forEach(function(c) { c.onCssMixinReference && c.onCssMixinReference({ mixinName: r.currentWord, range: r.getCompletionRange(h) }); }), n; }, e.prototype.getTermProposals = function(t, n, r) { for (var i = this.getSymbolContext().findSymbolsAtOffset(this.offset, G.Function), a = 0, o = i; a < o.length; a++) { var l = o[a]; l.node instanceof kn && r.items.push(this.makeTermProposal(l, l.node.getParameters(), n)); } return r; }, e.prototype.makeTermProposal = function(t, n, r) { t.node; var i = n.getChildren().map(function(o) { return o instanceof On ? o.getName() : o.getText(); }), a = t.name + "(" + i.map(function(o, l) { return "${" + (l + 1) + ":" + o + "}"; }).join(", ") + ")"; return { label: t.name, detail: t.name + "(" + i.join(", ") + ")", textEdit: B.replace(this.getCompletionRange(r), a), insertTextFormat: je, kind: V.Function, sortText: We.Term }; }, e.prototype.getCompletionsForSupportsCondition = function(t, n) { var r = t.findFirstChildBeforeOffset(this.offset); if (r) { if (r instanceof Ve) return !Ee(r.colonPosition) || this.offset <= r.colonPosition ? this.getCompletionsForDeclarationProperty(r, n) : this.getCompletionsForDeclarationValue(r, n); if (r instanceof Ut) return this.getCompletionsForSupportsCondition(r, n); } return Ee(t.lParent) && this.offset > t.lParent && (!Ee(t.rParent) || this.offset <= t.rParent) ? this.getCompletionsForDeclarationProperty(null, n) : n; }, e.prototype.getCompletionsForSupports = function(t, n) { var r = t.getDeclarations(), i = !r || this.offset <= r.offset; if (i) { var a = t.findFirstChildBeforeOffset(this.offset); return a instanceof Ut ? this.getCompletionsForSupportsCondition(a, n) : n; } return this.getCompletionForTopLevel(n); }, e.prototype.getCompletionsForExtendsReference = function(t, n, r) { return r; }, e.prototype.getCompletionForUriLiteralValue = function(t, n) { var r, i, a; if (t.hasChildren()) { var l = t.getChild(0); r = l.getText(), i = this.position, a = this.getCompletionRange(l); } else { r = "", i = this.position; var o = this.textDocument.positionAt(t.offset + 4); a = Q.create(o, o); } return this.completionParticipants.forEach(function(h) { h.onCssURILiteralValue && h.onCssURILiteralValue({ uriValue: r, position: i, range: a }); }), n; }, e.prototype.getCompletionForImportPath = function(t, n) { var r = this; return this.completionParticipants.forEach(function(i) { i.onCssImportPath && i.onCssImportPath({ pathValue: t.getText(), position: r.position, range: r.getCompletionRange(t) }); }), n; }, e.prototype.hasCharacterAtPosition = function(t, n) { var r = this.textDocument.getText(); return t >= 0 && t < r.length && r.charAt(t) === n; }, e.prototype.doesSupportMarkdown = function() { var t, n, r; if (!Ee(this.supportsMarkdown)) { if (!Ee(this.lsOptions.clientCapabilities)) return this.supportsMarkdown = !0, this.supportsMarkdown; var i = (r = (n = (t = this.lsOptions.clientCapabilities.textDocument) === null || t === void 0 ? void 0 : t.completion) === null || n === void 0 ? void 0 : n.completionItem) === null || r === void 0 ? void 0 : r.documentationFormat; this.supportsMarkdown = Array.isArray(i) && i.indexOf(Ae.Markdown) !== -1; } return this.supportsMarkdown; }, e; }(); function It(e) { return !!(e.status && (e.status === "nonstandard" || e.status === "obsolete")); } var qr = function() { function e() { this.entries = {}; } return e.prototype.add = function(t) { this.entries[t] = !0; }, e.prototype.remove = function(t) { delete this.entries[t]; }, e.prototype.getEntries = function() { return Object.keys(this.entries); }, e; }(); function yt(e) { return e.replace(/\(\)$/, "($1)"); } function qh(e, t) { var n = t.getFullPropertyName(), r = new qr(); function i(l) { return (l instanceof Re || l instanceof oi || l instanceof si) && r.add(l.getText()), !0; } function a(l) { var h = l.getFullPropertyName(); return n === h; } function o(l) { if (l instanceof Ve && l !== t && a(l)) { var h = l.getValue(); h && h.accept(i); } return !0; } return e.accept(o), r; } var $h = function() { function e(t, n) { this.entries = t, this.currentOffset = n; } return e.prototype.visitNode = function(t) { return (t instanceof si || t instanceof nn && wh(t)) && (this.currentOffset < t.offset || t.end < this.currentOffset) && this.entries.add(t.getText()), !0; }, e; }(), Hh = function() { function e(t, n) { this.entries = t, this.currentOffset = n; } return e.prototype.visitNode = function(t) { return t instanceof Re && t.isCustomProperty && (this.currentOffset < t.offset || t.end < this.currentOffset) && this.entries.add(t.getText()), !0; }, e; }(); function Gh(e, t) { for (var n = t - 1, r = e.getText(); n >= 0 && ` \r":{[()]},*>+`.indexOf(r.charAt(n)) === -1; ) n--; return r.substring(n + 1, t); } function As(e) { return e.toLowerCase() in Nn || /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e); } var Fo = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), Jh = Le(), ui = function() { function e() { this.parent = null, this.children = null, this.attributes = null; } return e.prototype.findAttribute = function(t) { if (this.attributes) for (var n = 0, r = this.attributes; n < r.length; n++) { var i = r[n]; if (i.name === t) return i.value; } return null; }, e.prototype.addChild = function(t) { t instanceof e && (t.parent = this), this.children || (this.children = []), this.children.push(t); }, e.prototype.append = function(t) { if (this.attributes) { var n = this.attributes[this.attributes.length - 1]; n.value = n.value + t; } }, e.prototype.prepend = function(t) { if (this.attributes) { var n = this.attributes[0]; n.value = t + n.value; } }, e.prototype.findRoot = function() { for (var t = this; t.parent && !(t.parent instanceof Rt); ) t = t.parent; return t; }, e.prototype.removeChild = function(t) { if (this.children) { var n = this.children.indexOf(t); if (n !== -1) return this.children.splice(n, 1), !0; } return !1; }, e.prototype.addAttr = function(t, n) { this.attributes || (this.attributes = []); for (var r = 0, i = this.attributes; r < i.length; r++) { var a = i[r]; if (a.name === t) { a.value += " " + n; return; } } this.attributes.push({ name: t, value: n }); }, e.prototype.clone = function(t) { t === void 0 && (t = !0); var n = new e(); if (this.attributes) { n.attributes = []; for (var r = 0, i = this.attributes; r < i.length; r++) { var a = i[r]; n.addAttr(a.name, a.value); } } if (t && this.children) { n.children = []; for (var o = 0; o < this.children.length; o++) n.addChild(this.children[o].clone()); } return n; }, e.prototype.cloneWithParent = function() { var t = this.clone(!1); if (this.parent && !(this.parent instanceof Rt)) { var n = this.parent.cloneWithParent(); n.addChild(t); } return t; }, e; }(), Rt = function(e) { Fo(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return t; }(ui), $r = function(e) { Fo(t, e); function t(n) { var r = e.call(this) || this; return r.addAttr("name", n), r; } return t; }(ui), zs = function() { function e(t) { this.quote = t, this.result = []; } return e.prototype.print = function(t) { this.result = [], t instanceof Rt ? t.children && this.doPrint(t.children, 0) : this.doPrint([t], 0); var n = this.result.join(` `); return [{ language: "html", value: n }]; }, e.prototype.doPrint = function(t, n) { for (var r = 0, i = t; r < i.length; r++) { var a = i[r]; this.doPrintElement(a, n), a.children && this.doPrint(a.children, n + 1); } }, e.prototype.writeLine = function(t, n) { var r = new Array(t + 1).join(" "); this.result.push(r + n); }, e.prototype.doPrintElement = function(t, n) { var r = t.findAttribute("name"); if (t instanceof $r || r === "\u2026") { this.writeLine(n, r); return; } var i = ["<"]; if (r ? i.push(r) : i.push("element"), t.attributes) for (var a = 0, o = t.attributes; a < o.length; a++) { var l = o[a]; if (l.name !== "name") { i.push(" "), i.push(l.name); var h = l.value; h && (i.push("="), i.push($e.ensure(h, this.quote))); } } i.push(">"), this.writeLine(n, i.join("")); }, e; }(), $e; (function(e) { function t(r, i) { return i + n(r) + i; } e.ensure = t; function n(r) { var i = r.match(/^['"](.*)["']$/); return i ? i[1] : r; } e.remove = n; })($e || ($e = {})); var Xh = function() { function e() { this.id = 0, this.attr = 0, this.tag = 0; } return e; }(); function _o(e, t) { for (var n = new ui(), r = 0, i = e.getChildren(); r < i.length; r++) { var a = i[r]; switch (a.type) { case m.SelectorCombinator: if (t) { var o = a.getText().split("&"); if (o.length === 1) { n.addAttr("name", o[0]); break; } if (n = t.cloneWithParent(), o[0]) { var l = n.findRoot(); l.prepend(o[0]); } for (var h = 1; h < o.length; h++) { if (h > 1) { var c = t.cloneWithParent(); n.addChild(c.findRoot()), n = c; } n.append(o[h]); } } break; case m.SelectorPlaceholder: if (a.matches("@at-root")) return n; case m.ElementNameSelector: var d = a.getText(); n.addAttr("name", d === "*" ? "element" : De(d)); break; case m.ClassSelector: n.addAttr("class", De(a.getText().substring(1))); break; case m.IdentifierSelector: n.addAttr("id", De(a.getText().substring(1))); break; case m.MixinDeclaration: n.addAttr("class", a.getName()); break; case m.PseudoSelector: n.addAttr(De(a.getText()), ""); break; case m.AttributeSelector: var p = a, f = p.getIdentifier(); if (f) { var g = p.getValue(), w = p.getOperator(), b = void 0; if (g && w) switch (De(w.getText())) { case "|=": b = "".concat($e.remove(De(g.getText())), "-\u2026"); break; case "^=": b = "".concat($e.remove(De(g.getText())), "\u2026"); break; case "$=": b = "\u2026".concat($e.remove(De(g.getText()))); break; case "~=": b = " \u2026 ".concat($e.remove(De(g.getText())), " \u2026 "); break; case "*=": b = "\u2026".concat($e.remove(De(g.getText())), "\u2026"); break; default: b = $e.remove(De(g.getText())); break; } n.addAttr(De(f.getText()), b); } break; } } return n; } function De(e) { var t = new en(); t.setSource(e); var n = t.scanUnquotedString(); return n ? n.text : e; } var Yh = function() { function e(t) { this.cssDataManager = t; } return e.prototype.selectorToMarkedString = function(t) { var n = Qh(t); if (n) { var r = new zs('"').print(n); return r.push(this.selectorToSpecificityMarkedString(t)), r; } else return []; }, e.prototype.simpleSelectorToMarkedString = function(t) { var n = _o(t), r = new zs('"').print(n); return r.push(this.selectorToSpecificityMarkedString(t)), r; }, e.prototype.isPseudoElementIdentifier = function(t) { var n = t.match(/^::?([\w-]+)/); return n ? !!this.cssDataManager.getPseudoElement("::" + n[1]) : !1; }, e.prototype.selectorToSpecificityMarkedString = function(t) { var n = this, r = function(a) { for (var o = 0, l = a.getChildren(); o < l.length; o++) { var h = l[o]; switch (h.type) { case m.IdentifierSelector: i.id++; break; case m.ClassSelector: case m.AttributeSelector: i.attr++; break; case m.ElementNameSelector: if (h.matches("*")) break; i.tag++; break; case m.PseudoSelector: var c = h.getText(); if (n.isPseudoElementIdentifier(c)) i.tag++; else { if (c.match(/^:not/i)) break; i.attr++; } break; } h.getChildren().length > 0 && r(h); } }, i = new Xh(); return r(t), Jh("specificity", "[Selector Specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity): ({0}, {1}, {2})", i.id, i.attr, i.tag); }, e; }(), Kh = function() { function e(t) { this.prev = null, this.element = t; } return e.prototype.processSelector = function(t) { var n = null; if (!(this.element instanceof Rt) && t.getChildren().some(function(d) { return d.hasChildren() && d.getChild(0).type === m.SelectorCombinator; })) { var r = this.element.findRoot(); r.parent instanceof Rt && (n = this.element, this.element = r.parent, this.element.removeChild(r), this.prev = null); } for (var i = 0, a = t.getChildren(); i < a.length; i++) { var o = a[i]; if (o instanceof kt) { if (this.prev instanceof kt) { var l = new $r("\u2026"); this.element.addChild(l), this.element = l; } else this.prev && (this.prev.matches("+") || this.prev.matches("~")) && this.element.parent && (this.element = this.element.parent); this.prev && this.prev.matches("~") && this.element.addChild(new $r("\u22EE")); var h = _o(o, n), c = h.findRoot(); this.element.addChild(c), this.element = h; } (o instanceof kt || o.type === m.SelectorCombinatorParent || o.type === m.SelectorCombinatorShadowPiercingDescendant || o.type === m.SelectorCombinatorSibling || o.type === m.SelectorCombinatorAllSiblings) && (this.prev = o); } }, e; }(); function Zh(e) { switch (e.type) { case m.MixinDeclaration: case m.Stylesheet: return !0; } return !1; } function Qh(e) { if (e.matches("@at-root")) return null; var t = new Rt(), n = [], r = e.getParent(); if (r instanceof Ct) for (var i = r.getParent(); i && !Zh(i); ) { if (i instanceof Ct) { if (i.getSelectors().matches("@at-root")) break; n.push(i); } i = i.getParent(); } for (var a = new Kh(t), o = n.length - 1; o >= 0; o--) { var l = n[o].getSelectors().getChild(0); l && a.processSelector(l); } return a.processSelector(e), t; } var pi = function() { function e(t, n) { this.clientCapabilities = t, this.cssDataManager = n, this.selectorPrinting = new Yh(n); } return e.prototype.configure = function(t) { this.defaultSettings = t; }, e.prototype.doHover = function(t, n, r, i) { i === void 0 && (i = this.defaultSettings); function a(y) { return Q.create(t.positionAt(y.offset), t.positionAt(y.end)); } for (var o = t.offsetAt(n), l = ei(r, o), h = null, c = 0; c < l.length; c++) { var d = l[c]; if (d instanceof tn) { h = { contents: this.selectorPrinting.selectorToMarkedString(d), range: a(d) }; break; } if (d instanceof kt) { oe(d.getText(), "@") || (h = { contents: this.selectorPrinting.simpleSelectorToMarkedString(d), range: a(d) }); break; } if (d instanceof Ve) { var p = d.getFullPropertyName(), f = this.cssDataManager.getProperty(p); if (f) { var g = et(f, this.doesSupportMarkdown(), i); g ? h = { contents: g, range: a(d) } : h = null; } continue; } if (d instanceof go) { var w = d.getText(), f = this.cssDataManager.getAtDirective(w); if (f) { var g = et(f, this.doesSupportMarkdown(), i); g ? h = { contents: g, range: a(d) } : h = null; } continue; } if (d instanceof L && d.type === m.PseudoSelector) { var b = d.getText(), f = b.slice(0, 2) === "::" ? this.cssDataManager.getPseudoElement(b) : this.cssDataManager.getPseudoClass(b); if (f) { var g = et(f, this.doesSupportMarkdown(), i); g ? h = { contents: g, range: a(d) } : h = null; } continue; } } return h && (h.contents = this.convertContents(h.contents)), h; }, e.prototype.convertContents = function(t) { return this.doesSupportMarkdown() || typeof t == "string" ? t : "kind" in t ? { kind: "plaintext", value: t.value } : Array.isArray(t) ? t.map(function(n) { return typeof n == "string" ? n : n.value; }) : t.value; }, e.prototype.doesSupportMarkdown = function() { if (!Ee(this.supportsMarkdown)) { if (!Ee(this.clientCapabilities)) return this.supportsMarkdown = !0, this.supportsMarkdown; var t = this.clientCapabilities.textDocument && this.clientCapabilities.textDocument.hover; this.supportsMarkdown = t && t.contentFormat && Array.isArray(t.contentFormat) && t.contentFormat.indexOf(Ae.Markdown) !== -1; } return this.supportsMarkdown; }, e; }(), Lt = function(e, t, n, r) { function i(a) { return a instanceof n ? a : new n(function(o) { o(a); }); } return new (n || (n = Promise))(function(a, o) { function l(d) { try { c(r.next(d)); } catch (p) { o(p); } } function h(d) { try { c(r.throw(d)); } catch (p) { o(p); } } function c(d) { d.done ? a(d.value) : i(d.value).then(l, h); } c((r = r.apply(e, t || [])).next()); }); }, Tt = function(e, t) { var n = { label: 0, sent: function() { if (a[0] & 1) throw a[1]; return a[1]; }, trys: [], ops: [] }, r, i, a, o; return o = { next: l(0), throw: l(1), return: l(2) }, typeof Symbol == "function" && (o[Symbol.iterator] = function() { return this; }), o; function l(c) { return function(d) { return h([c, d]); }; } function h(c) { if (r) throw new TypeError("Generator is already executing."); for (; n; ) try { if (r = 1, i && (a = c[0] & 2 ? i.return : c[0] ? i.throw || ((a = i.return) && a.call(i), 0) : i.next) && !(a = a.call(i, c[1])).done) return a; switch (i = 0, a && (c = [c[0] & 2, a.value]), c[0]) { case 0: case 1: a = c; break; case 4: return n.label++, { value: c[1], done: !1 }; case 5: n.label++, i = c[1], c = [0]; continue; case 7: c = n.ops.pop(), n.trys.pop(); continue; default: if (a = n.trys, !(a = a.length > 0 && a[a.length - 1]) && (c[0] === 6 || c[0] === 2)) { n = 0; continue; } if (c[0] === 3 && (!a || c[1] > a[0] && c[1] < a[3])) { n.label = c[1]; break; } if (c[0] === 6 && n.label < a[1]) { n.label = a[1], a = c; break; } if (a && n.label < a[2]) { n.label = a[2], n.ops.push(c); break; } a[2] && n.ops.pop(), n.trys.pop(); continue; } c = t.call(e, n); } catch (d) { c = [6, d], i = 0; } finally { r = a = 0; } if (c[0] & 5) throw c[1]; return { value: c[0] ? c[1] : void 0, done: !0 }; } }, Ms = Le(), Ns = /^\w+:\/\//, Ps = /^data:/, fi = function() { function e(t, n) { this.fileSystemProvider = t, this.resolveModuleReferences = n; } return e.prototype.findDefinition = function(t, n, r) { var i = new Ur(r), a = t.offsetAt(n), o = Rr(r, a); if (!o) return null; var l = i.findSymbolFromNode(o); return l ? { uri: t.uri, range: st(l.node, t) } : null; }, e.prototype.findReferences = function(t, n, r) { var i = this.findDocumentHighlights(t, n, r); return i.map(function(a) { return { uri: t.uri, range: a.range }; }); }, e.prototype.findDocumentHighlights = function(t, n, r) { var i = [], a = t.offsetAt(n), o = Rr(r, a); if (!o || o.type === m.Stylesheet || o.type === m.Declarations) return i; o.type === m.Identifier && o.parent && o.parent.type === m.ClassSelector && (o = o.parent); var l = new Ur(r), h = l.findSymbolFromNode(o), c = o.getText(); return r.accept(function(d) { if (h) { if (l.matchesSymbol(d, h)) return i.push({ kind: Is(d), range: st(d, t) }), !1; } else o && o.type === d.type && d.matches(c) && i.push({ kind: Is(d), range: st(d, t) }); return !0; }), i; }, e.prototype.isRawStringDocumentLinkNode = function(t) { return t.type === m.Import; }, e.prototype.findDocumentLinks = function(t, n, r) { for (var i = this.findUnresolvedLinks(t, n), a = [], o = 0, l = i; o < l.length; o++) { var h = l[o], c = h.link, d = c.target; if (!(!d || Ps.test(d))) if (Ns.test(d)) a.push(c); else { var p = r.resolveReference(d, t.uri); p && (c.target = p), a.push(c); } } return a; }, e.prototype.findDocumentLinks2 = function(t, n, r) { return Lt(this, void 0, void 0, function() { var i, a, o, l, h, c, d, p; return Tt(this, function(f) { switch (f.label) { case 0: i = this.findUnresolvedLinks(t, n), a = [], o = 0, l = i, f.label = 1; case 1: return o < l.length ? (h = l[o], c = h.link, d = c.target, !d || Ps.test(d) ? [3, 5] : [3, 2]) : [3, 6]; case 2: return Ns.test(d) ? (a.push(c), [3, 5]) : [3, 3]; case 3: return [4, this.resolveRelativeReference(d, t.uri, r, h.isRawLink)]; case 4: p = f.sent(), p !== void 0 && (c.target = p, a.push(c)), f.label = 5; case 5: return o++, [3, 1]; case 6: return [2, a]; } }); }); }, e.prototype.findUnresolvedLinks = function(t, n) { var r = this, i = [], a = function(o) { var l = o.getText(), h = st(o, t); if (!(h.start.line === h.end.line && h.start.character === h.end.character)) { (oe(l, "'") || oe(l, '"')) && (l = l.slice(1, -1)); var c = o.parent ? r.isRawStringDocumentLinkNode(o.parent) : !1; i.push({ link: { target: l, range: h }, isRawLink: c }); } }; return n.accept(function(o) { if (o.type === m.URILiteral) { var l = o.getChild(0); return l && a(l), !1; } if (o.parent && r.isRawStringDocumentLinkNode(o.parent)) { var h = o.getText(); return (oe(h, "'") || oe(h, '"')) && a(o), !1; } return !0; }), i; }, e.prototype.findDocumentSymbols = function(t, n) { var r = []; return n.accept(function(i) { var a = { name: null, kind: lt.Class, location: null }, o = i; if (i instanceof tn) return a.name = i.getText(), o = i.findAParent(m.Ruleset, m.ExtendsReference), o && (a.location = Ht.create(t.uri, st(o, t)), r.push(a)), !1; if (i instanceof Vn) a.name = i.getName(), a.kind = lt.Variable; else if (i instanceof $t) a.name = i.getName(), a.kind = lt.Method; else if (i instanceof kn) a.name = i.getName(), a.kind = lt.Function; else if (i instanceof ho) a.name = Ms("literal.keyframes", "@keyframes {0}", i.getName()); else if (i instanceof lo) a.name = Ms("literal.fontface", "@font-face"); else if (i instanceof uo) { var l = i.getChild(0); l instanceof po && (a.name = "@media " + l.getText(), a.kind = lt.Module); } return a.name && (a.location = Ht.create(t.uri, st(o, t)), r.push(a)), !0; }), r; }, e.prototype.findDocumentColors = function(t, n) { var r = []; return n.accept(function(i) { var a = ed(i, t); return a && r.push(a), !0; }), r; }, e.prototype.getColorPresentations = function(t, n, r, i) { var a = [], o = Math.round(r.red * 255), l = Math.round(r.green * 255), h = Math.round(r.blue * 255), c; r.alpha === 1 ? c = "rgb(".concat(o, ", ").concat(l, ", ").concat(h, ")") : c = "rgba(".concat(o, ", ").concat(l, ", ").concat(h, ", ").concat(r.alpha, ")"), a.push({ label: c, textEdit: B.replace(i, c) }), r.alpha === 1 ? c = "#".concat(at(o)).concat(at(l)).concat(at(h)) : c = "#".concat(at(o)).concat(at(l)).concat(at(h)).concat(at(Math.round(r.alpha * 255))), a.push({ label: c, textEdit: B.replace(i, c) }); var d = Fh(r); return d.a === 1 ? c = "hsl(".concat(d.h, ", ").concat(Math.round(d.s * 100), "%, ").concat(Math.round(d.l * 100), "%)") : c = "hsla(".concat(d.h, ", ").concat(Math.round(d.s * 100), "%, ").concat(Math.round(d.l * 100), "%, ").concat(d.a, ")"), a.push({ label: c, textEdit: B.replace(i, c) }), a; }, e.prototype.doRename = function(t, n, r, i) { var a, o = this.findDocumentHighlights(t, n, i), l = o.map(function(h) { return B.replace(h.range, r); }); return { changes: (a = {}, a[t.uri] = l, a) }; }, e.prototype.resolveModuleReference = function(t, n, r) { return Lt(this, void 0, void 0, function() { var i, a, o, l, h; return Tt(this, function(c) { switch (c.label) { case 0: return oe(n, "file://") ? (i = td(t), a = r.resolveReference("/", n), o = Zn(n), [4, this.resolvePathToModule(i, o, a)]) : [3, 2]; case 1: if (l = c.sent(), l) return h = t.substring(i.length + 1), [2, jr(l, h)]; c.label = 2; case 2: return [2, void 0]; } }); }); }, e.prototype.resolveRelativeReference = function(t, n, r, i) { return Lt(this, void 0, void 0, function() { var a, o; return Tt(this, function(l) { switch (l.label) { case 0: return a = r.resolveReference(t, n), t[0] === "~" && t[1] !== "/" && this.fileSystemProvider ? (t = t.substring(1), [4, this.resolveModuleReference(t, n, r)]) : [3, 2]; case 1: return [2, l.sent() || a]; case 2: return this.resolveModuleReferences ? (o = a, o ? [4, this.fileExists(a)] : [3, 4]) : [3, 7]; case 3: o = l.sent(), l.label = 4; case 4: return o ? [2, a] : [3, 5]; case 5: return [4, this.resolveModuleReference(t, n, r)]; case 6: return [2, l.sent() || a]; case 7: return [2, a]; } }); }); }, e.prototype.resolvePathToModule = function(t, n, r) { return Lt(this, void 0, void 0, function() { var i; return Tt(this, function(a) { switch (a.label) { case 0: return i = jr(n, "node_modules", t, "package.json"), [4, this.fileExists(i)]; case 1: return a.sent() ? [2, Zn(i)] : r && n.startsWith(r) && n.length !== r.length ? [2, this.resolvePathToModule(t, Zn(n), r)] : [2, void 0]; } }); }); }, e.prototype.fileExists = function(t) { return Lt(this, void 0, void 0, function() { var n; return Tt(this, function(r) { switch (r.label) { case 0: if (!this.fileSystemProvider) return [2, !1]; r.label = 1; case 1: return r.trys.push([1, 3, , 4]), [4, this.fileSystemProvider.stat(t)]; case 2: return n = r.sent(), n.type === Kt.Unknown && n.size === -1 ? [2, !1] : [2, !0]; case 3: return r.sent(), [2, !1]; case 4: return [2]; } }); }); }, e; }(); function ed(e, t) { var n = _h(e); if (n) { var r = st(e, t); return { color: n, range: r }; } return null; } function st(e, t) { return Q.create(t.positionAt(e.offset), t.positionAt(e.end)); } function Is(e) { if (e.type === m.Selector || e instanceof Re && e.parent && e.parent instanceof ri && e.isCustomProperty) return xt.Write; if (e.parent) switch (e.parent.type) { case m.FunctionDeclaration: case m.MixinDeclaration: case m.Keyframe: case m.VariableDeclaration: case m.FunctionParameter: return xt.Write; } return xt.Read; } function at(e) { var t = e.toString(16); return t.length !== 2 ? "0" + t : t; } function td(e) { return e[0] === "@" ? e.substring(0, e.indexOf("/", e.indexOf("/") + 1)) : e.substring(0, e.indexOf("/")); } var se = Le(), wt = _e.Warning, Ls = _e.Error, Pe = _e.Ignore, ce = function() { function e(t, n, r) { this.id = t, this.message = n, this.defaultValue = r; } return e; }(), nd = function() { function e(t, n, r) { this.id = t, this.message = n, this.defaultValue = r; } return e; }(), K = { AllVendorPrefixes: new ce("compatibleVendorPrefixes", se("rule.vendorprefixes.all", "When using a vendor-specific prefix make sure to also include all other vendor-specific properties"), Pe), IncludeStandardPropertyWhenUsingVendorPrefix: new ce("vendorPrefix", se("rule.standardvendorprefix.all", "When using a vendor-specific prefix also include the standard property"), wt), DuplicateDeclarations: new ce("duplicateProperties", se("rule.duplicateDeclarations", "Do not use duplicate style definitions"), Pe), EmptyRuleSet: new ce("emptyRules", se("rule.emptyRuleSets", "Do not use empty rulesets"), wt), ImportStatemement: new ce("importStatement", se("rule.importDirective", "Import statements do not load in parallel"), Pe), BewareOfBoxModelSize: new ce("boxModel", se("rule.bewareOfBoxModelSize", "Do not use width or height when using padding or border"), Pe), UniversalSelector: new ce("universalSelector", se("rule.universalSelector", "The universal selector (*) is known to be slow"), Pe), ZeroWithUnit: new ce("zeroUnits", se("rule.zeroWidthUnit", "No unit for zero needed"), Pe), RequiredPropertiesForFontFace: new ce("fontFaceProperties", se("rule.fontFaceProperties", "@font-face rule must define 'src' and 'font-family' properties"), wt), HexColorLength: new ce("hexColorLength", se("rule.hexColor", "Hex colors must consist of three, four, six or eight hex numbers"), Ls), ArgsInColorFunction: new ce("argumentsInColorFunction", se("rule.colorFunction", "Invalid number of parameters"), Ls), UnknownProperty: new ce("unknownProperties", se("rule.unknownProperty", "Unknown property."), wt), UnknownAtRules: new ce("unknownAtRules", se("rule.unknownAtRules", "Unknown at-rule."), wt), IEStarHack: new ce("ieHack", se("rule.ieHack", "IE hacks are only necessary when supporting IE7 and older"), Pe), UnknownVendorSpecificProperty: new ce("unknownVendorSpecificProperties", se("rule.unknownVendorSpecificProperty", "Unknown vendor specific property."), Pe), PropertyIgnoredDueToDisplay: new ce("propertyIgnoredDueToDisplay", se("rule.propertyIgnoredDueToDisplay", "Property is ignored due to the display."), wt), AvoidImportant: new ce("important", se("rule.avoidImportant", "Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored."), Pe), AvoidFloat: new ce("float", se("rule.avoidFloat", "Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes."), Pe), AvoidIdSelector: new ce("idSelector", se("rule.avoidIdSelector", "Selectors should not contain IDs because these rules are too tightly coupled with the HTML."), Pe) }, rd = { ValidProperties: new nd("validProperties", se("rule.validProperties", "A list of properties that are not validated against the `unknownProperties` rule."), []) }, id = function() { function e(t) { t === void 0 && (t = {}), this.conf = t; } return e.prototype.getRule = function(t) { if (this.conf.hasOwnProperty(t.id)) { var n = ad(this.conf[t.id]); if (n) return n; } return t.defaultValue; }, e.prototype.getSetting = function(t) { return this.conf[t.id]; }, e; }(); function ad(e) { switch (e) { case "ignore": return _e.Ignore; case "warning": return _e.Warning; case "error": return _e.Error; } return null; } var sd = Le(), mi = function() { function e(t) { this.cssDataManager = t; } return e.prototype.doCodeActions = function(t, n, r, i) { return this.doCodeActions2(t, n, r, i).map(function(a) { var o = a.edit && a.edit.documentChanges && a.edit.documentChanges[0]; return Et.create(a.title, "_css.applyCodeAction", t.uri, t.version, o && o.edits); }); }, e.prototype.doCodeActions2 = function(t, n, r, i) { var a = []; if (r.diagnostics) for (var o = 0, l = r.diagnostics; o < l.length; o++) { var h = l[o]; this.appendFixesForMarker(t, i, h, a); } return a; }, e.prototype.getFixesForUnknownProperty = function(t, n, r, i) { var a = n.getName(), o = []; this.cssDataManager.getProperties().forEach(function(A) { var C = zc(a, A.name); C >= a.length / 2 && o.push({ property: A.name, score: C }); }), o.sort(function(A, C) { return C.score - A.score || A.property.localeCompare(C.property); }); for (var l = 3, h = 0, c = o; h < c.length; h++) { var d = c[h], p = d.property, f = sd("css.codeaction.rename", "Rename to '{0}'", p), g = B.replace(r.range, p), w = Ir.create(t.uri, t.version), b = { documentChanges: [Gt.create(w, [g])] }, y = Wr.create(f, b, Tr.QuickFix); if (y.diagnostics = [r], i.push(y), --l <= 0) return; } }, e.prototype.appendFixesForMarker = function(t, n, r, i) { if (r.code === K.UnknownProperty.id) for (var a = t.offsetAt(r.range.start), o = t.offsetAt(r.range.end), l = ei(n, a), h = l.length - 1; h >= 0; h--) { var c = l[h]; if (c instanceof Ve) { var d = c.getProperty(); if (d && d.offset === a && d.end === o) { this.getFixesForUnknownProperty(t, d, r, i); return; } } } }, e; }(), od = function() { function e(t) { this.fullPropertyName = t.getFullPropertyName().toLowerCase(), this.node = t; } return e; }(); function Ot(e, t, n, r) { var i = e[t]; i.value = n, n && (So(i.properties, r) || i.properties.push(r)); } function ld(e, t, n) { Ot(e, "top", t, n), Ot(e, "right", t, n), Ot(e, "bottom", t, n), Ot(e, "left", t, n); } function ue(e, t, n, r) { t === "top" || t === "right" || t === "bottom" || t === "left" ? Ot(e, t, n, r) : ld(e, n, r); } function er(e, t, n) { switch (t.length) { case 1: ue(e, void 0, t[0], n); break; case 2: ue(e, "top", t[0], n), ue(e, "bottom", t[0], n), ue(e, "right", t[1], n), ue(e, "left", t[1], n); break; case 3: ue(e, "top", t[0], n), ue(e, "right", t[1], n), ue(e, "left", t[1], n), ue(e, "bottom", t[2], n); break; case 4: ue(e, "top", t[0], n), ue(e, "right", t[1], n), ue(e, "bottom", t[2], n), ue(e, "left", t[3], n); break; } } function Hr(e, t) { for (var n = 0, r = t; n < r.length; n++) { var i = r[n]; if (e.matches(i)) return !0; } return !1; } function Zt(e, t) { return t === void 0 && (t = !0), t && Hr(e, ["initial", "unset"]) ? !1 : parseFloat(e.getText()) !== 0; } function Ts(e, t) { return t === void 0 && (t = !0), e.map(function(n) { return Zt(n, t); }); } function In(e, t) { return t === void 0 && (t = !0), !(Hr(e, ["none", "hidden"]) || t && Hr(e, ["initial", "unset"])); } function cd(e, t) { return t === void 0 && (t = !0), e.map(function(n) { return In(n, t); }); } function hd(e) { var t = e.getChildren(); if (t.length === 1) { var n = t[0]; return Zt(n) && In(n); } for (var r = 0, i = t; r < i.length; r++) { var a = i[r], n = a; if (!Zt(n, !1) || !In(n, !1)) return !1; } return !0; } function dd(e) { for (var t = { top: { value: !1, properties: [] }, right: { value: !1, properties: [] }, bottom: { value: !1, properties: [] }, left: { value: !1, properties: [] } }, n = 0, r = e; n < r.length; n++) { var i = r[n], a = i.node.value; if (!(typeof a > "u")) switch (i.fullPropertyName) { case "box-sizing": return { top: { value: !1, properties: [] }, right: { value: !1, properties: [] }, bottom: { value: !1, properties: [] }, left: { value: !1, properties: [] } }; case "width": t.width = i; break; case "height": t.height = i; break; default: var o = i.fullPropertyName.split("-"); switch (o[0]) { case "border": switch (o[1]) { case void 0: case "top": case "right": case "bottom": case "left": switch (o[2]) { case void 0: ue(t, o[1], hd(a), i); break; case "width": ue(t, o[1], Zt(a, !1), i); break; case "style": ue(t, o[1], In(a, !0), i); break; } break; case "width": er(t, Ts(a.getChildren(), !1), i); break; case "style": er(t, cd(a.getChildren(), !0), i); break; } break; case "padding": o.length === 1 ? er(t, Ts(a.getChildren(), !0), i) : ue(t, o[1], Zt(a, !0), i); break; } break; } } return t; } var qe = Le(), Ws = function() { function e() { this.data = {}; } return e.prototype.add = function(t, n, r) { var i = this.data[t]; i || (i = { nodes: [], names: [] }, this.data[t] = i), i.names.push(n), r && i.nodes.push(r); }, e; }(), ud = function() { function e(t, n, r) { var i = this; this.cssDataManager = r, this.warnings = [], this.settings = n, this.documentText = t.getText(), this.keyframes = new Ws(), this.validProperties = {}; var a = n.getSetting(rd.ValidProperties); Array.isArray(a) && a.forEach(function(o) { if (typeof o == "string") { var l = o.trim().toLowerCase(); l.length && (i.validProperties[l] = !0); } }); } return e.entries = function(t, n, r, i, a) { var o = new e(n, r, i); return t.acceptVisitor(o), o.completeValidations(), o.getEntries(a); }, e.prototype.isValidPropertyDeclaration = function(t) { var n = t.fullPropertyName; return this.validProperties[n]; }, e.prototype.fetch = function(t, n) { for (var r = [], i = 0, a = t; i < a.length; i++) { var o = a[i]; o.fullPropertyName === n && r.push(o); } return r; }, e.prototype.fetchWithValue = function(t, n, r) { for (var i = [], a = 0, o = t; a < o.length; a++) { var l = o[a]; if (l.fullPropertyName === n) { var h = l.node.getValue(); h && this.findValueInExpression(h, r) && i.push(l); } } return i; }, e.prototype.findValueInExpression = function(t, n) { var r = !1; return t.accept(function(i) { return i.type === m.Identifier && i.matches(n) && (r = !0), !r; }), r; }, e.prototype.getEntries = function(t) { return t === void 0 && (t = _e.Warning | _e.Error), this.warnings.filter(function(n) { return (n.getLevel() & t) !== 0; }); }, e.prototype.addEntry = function(t, n, r) { var i = new bo(t, n, this.settings.getRule(n), r); this.warnings.push(i); }, e.prototype.getMissingNames = function(t, n) { for (var r = t.slice(0), i = 0; i < n.length; i++) { var a = r.indexOf(n[i]); a !== -1 && (r[a] = null); } for (var o = null, i = 0; i < r.length; i++) { var l = r[i]; l && (o === null ? o = qe("namelist.single", "'{0}'", l) : o = qe("namelist.concatenated", "{0}, '{1}'", o, l)); } return o; }, e.prototype.visitNode = function(t) { switch (t.type) { case m.UnknownAtRule: return this.visitUnknownAtRule(t); case m.Keyframe: return this.visitKeyframe(t); case m.FontFace: return this.visitFontFace(t); case m.Ruleset: return this.visitRuleSet(t); case m.SimpleSelector: return this.visitSimpleSelector(t); case m.Function: return this.visitFunction(t); case m.NumericValue: return this.visitNumericValue(t); case m.Import: return this.visitImport(t); case m.HexColorValue: return this.visitHexColorValue(t); case m.Prio: return this.visitPrio(t); case m.IdentifierSelector: return this.visitIdentifierSelector(t); } return !0; }, e.prototype.completeValidations = function() { this.validateKeyframes(); }, e.prototype.visitUnknownAtRule = function(t) { var n = t.getChild(0); if (!n) return !1; var r = this.cssDataManager.getAtDirective(n.getText()); return r ? !1 : (this.addEntry(n, K.UnknownAtRules, "Unknown at rule ".concat(n.getText())), !0); }, e.prototype.visitKeyframe = function(t) { var n = t.getKeyword(); if (!n) return !1; var r = n.getText(); return this.keyframes.add(t.getName(), r, r !== "@keyframes" ? n : null), !0; }, e.prototype.validateKeyframes = function() { var t = ["@-webkit-keyframes", "@-moz-keyframes", "@-o-keyframes"]; for (var n in this.keyframes.data) { var r = this.keyframes.data[n].names, i = r.indexOf("@keyframes") === -1; if (!(!i && r.length === 1)) { var a = this.getMissingNames(t, r); if (a || i) for (var o = 0, l = this.keyframes.data[n].nodes; o < l.length; o++) { var h = l[o]; if (i) { var c = qe("keyframes.standardrule.missing", "Always define standard rule '@keyframes' when defining keyframes."); this.addEntry(h, K.IncludeStandardPropertyWhenUsingVendorPrefix, c); } if (a) { var c = qe("keyframes.vendorspecific.missing", "Always include all vendor specific rules: Missing: {0}", a); this.addEntry(h, K.AllVendorPrefixes, c); } } } } return !0; }, e.prototype.visitSimpleSelector = function(t) { var n = this.documentText.charAt(t.offset); return t.length === 1 && n === "*" && this.addEntry(t, K.UniversalSelector), !0; }, e.prototype.visitIdentifierSelector = function(t) { return this.addEntry(t, K.AvoidIdSelector), !0; }, e.prototype.visitImport = function(t) { return this.addEntry(t, K.ImportStatemement), !0; }, e.prototype.visitRuleSet = function(t) { var n = t.getDeclarations(); if (!n) return !1; n.hasChildren() || this.addEntry(t.getSelectors(), K.EmptyRuleSet); for (var r = [], i = 0, a = n.getChildren(); i < a.length; i++) { var o = a[i]; o instanceof Ve && r.push(new od(o)); } var l = dd(r); if (l.width) { var h = []; if (l.right.value && (h = pn(h, l.right.properties)), l.left.value && (h = pn(h, l.left.properties)), h.length !== 0) { for (var c = 0, d = h; c < d.length; c++) { var p = d[c]; this.addEntry(p.node, K.BewareOfBoxModelSize); } this.addEntry(l.width.node, K.BewareOfBoxModelSize); } } if (l.height) { var h = []; if (l.top.value && (h = pn(h, l.top.properties)), l.bottom.value && (h = pn(h, l.bottom.properties)), h.length !== 0) { for (var f = 0, g = h; f < g.length; f++) { var p = g[f]; this.addEntry(p.node, K.BewareOfBoxModelSize); } this.addEntry(l.height.node, K.BewareOfBoxModelSize); } } var w = this.fetchWithValue(r, "display", "inline-block"); if (w.length > 0) for (var b = this.fetch(r, "float"), y = 0; y < b.length; y++) { var A = b[y].node, C = A.getValue(); C && !C.matches("none") && this.addEntry(A, K.PropertyIgnoredDueToDisplay, qe("rule.propertyIgnoredDueToDisplayInlineBlock", "inline-block is ignored due to the float. If 'float' has a value other than 'none', the box is floated and 'display' is treated as 'block'")); } if (w = this.fetchWithValue(r, "display", "block"), w.length > 0) for (var b = this.fetch(r, "vertical-align"), y = 0; y < b.length; y++) this.addEntry(b[y].node, K.PropertyIgnoredDueToDisplay, qe("rule.propertyIgnoredDueToDisplayBlock", "Property is ignored due to the display. With 'display: block', vertical-align should not be used.")); for (var R = this.fetch(r, "float"), y = 0; y < R.length; y++) { var o = R[y]; this.isValidPropertyDeclaration(o) || this.addEntry(o.node, K.AvoidFloat); } for (var k = 0; k < r.length; k++) { var o = r[k]; if (o.fullPropertyName !== "background" && !this.validProperties[o.fullPropertyName]) { var C = o.node.getValue(); if (C && this.documentText.charAt(C.offset) !== "-") { var F = this.fetch(r, o.fullPropertyName); if (F.length > 1) for (var P = 0; P < F.length; P++) { var N = F[P].node.getValue(); N && this.documentText.charAt(N.offset) !== "-" && F[P] !== o && this.addEntry(o.node, K.DuplicateDeclarations); } } } } var z = t.getSelectors().matches(":export"); if (!z) { for (var T = new Ws(), j = !1, U = 0, O = r; U < O.length; U++) { var o = O[U], re = o.node; if (this.isCSSDeclaration(re)) { var de = o.fullPropertyName, Me = de.charAt(0); if (Me === "-") { if (de.charAt(1) !== "-") { !this.cssDataManager.isKnownProperty(de) && !this.validProperties[de] && this.addEntry(re.getProperty(), K.UnknownVendorSpecificProperty); var Ne = re.getNonPrefixedPropertyName(); T.add(Ne, de, re.getProperty()); } } else { var D = de; (Me === "*" || Me === "_") && (this.addEntry(re.getProperty(), K.IEStarHack), de = de.substr(1)), !this.cssDataManager.isKnownProperty(D) && !this.cssDataManager.isKnownProperty(de) && (this.validProperties[de] || this.addEntry(re.getProperty(), K.UnknownProperty, qe("property.unknownproperty.detailed", "Unknown property: '{0}'", re.getFullPropertyName()))), T.add(de, de, null); } } else j = !0; } if (!j) for (var S in T.data) { var E = T.data[S], M = E.names, $ = this.cssDataManager.isStandardProperty(S) && M.indexOf(S) === -1; if (!(!$ && M.length === 1)) { for (var H = [], k = 0, Y = e.prefixes.length; k < Y; k++) { var Te = e.prefixes[k]; this.cssDataManager.isStandardProperty(Te + S) && H.push(Te + S); } var ge = this.getMissingNames(H, M); if (ge || $) for (var Se = 0, rt = E.nodes; Se < rt.length; Se++) { var Be = rt[Se]; if ($) { var Un = qe("property.standard.missing", "Also define the standard property '{0}' for compatibility", S); this.addEntry(Be, K.IncludeStandardPropertyWhenUsingVendorPrefix, Un); } if (ge) { var Un = qe("property.vendorspecific.missing", "Always include all vendor specific properties: Missing: {0}", ge); this.addEntry(Be, K.AllVendorPrefixes, Un); } } } } } return !0; }, e.prototype.visitPrio = function(t) { return this.addEntry(t, K.AvoidImportant), !0; }, e.prototype.visitNumericValue = function(t) { var n = t.findParent(m.Function); if (n && n.getName() === "calc") return !0; var r = t.findParent(m.Declaration); if (r) { var i = r.getValue(); if (i) { var a = t.getValue(); if (!a.unit || xo.length.indexOf(a.unit.toLowerCase()) === -1) return !0; parseFloat(a.value) === 0 && !!a.unit && !this.validProperties[r.getFullPropertyName()] && this.addEntry(t, K.ZeroWithUnit); } } return !0; }, e.prototype.visitFontFace = function(t) { var n = t.getDeclarations(); if (!n) return !1; for (var r = !1, i = !1, a = !1, o = 0, l = n.getChildren(); o < l.length; o++) { var h = l[o]; if (this.isCSSDeclaration(h)) { var c = h.getProperty().getName().toLowerCase(); c === "src" && (r = !0), c === "font-family" && (i = !0); } else a = !0; } return !a && (!r || !i) && this.addEntry(t, K.RequiredPropertiesForFontFace), !0; }, e.prototype.isCSSDeclaration = function(t) { if (t instanceof Ve) { if (!t.getValue()) return !1; var n = t.getProperty(); if (!n) return !1; var r = n.getIdentifier(); return !(!r || r.containsInterpolation()); } return !1; }, e.prototype.visitHexColorValue = function(t) { var n = t.length; return n !== 9 && n !== 7 && n !== 5 && n !== 4 && this.addEntry(t, K.HexColorLength), !1; }, e.prototype.visitFunction = function(t) { var n = t.getName().toLowerCase(), r = -1, i = 0; switch (n) { case "rgb(": case "hsl(": r = 3; break; case "rgba(": case "hsla(": r = 4; break; } return r !== -1 && (t.getArguments().accept(function(a) { return a instanceof ai ? (i += 1, !1) : !0; }), i !== r && this.addEntry(t, K.ArgsInColorFunction)), !0; }, e.prefixes = [ "-ms-", "-moz-", "-o-", "-webkit-" ], e; }(), gi = function() { function e(t) { this.cssDataManager = t; } return e.prototype.configure = function(t) { this.settings = t; }, e.prototype.doValidation = function(t, n, r) { if (r === void 0 && (r = this.settings), r && r.validate === !1) return []; var i = []; i.push.apply(i, dh.entries(n)), i.push.apply(i, ud.entries(n, t, new id(r && r.lint), this.cssDataManager)); var a = []; for (var o in K) a.push(K[o].id); function l(h) { var c = Q.create(t.positionAt(h.getOffset()), t.positionAt(h.getOffset() + h.getLength())), d = t.languageId; return { code: h.getRule().id, source: d, message: h.getMessage(), severity: h.getLevel() === _e.Warning ? Dn.Warning : Dn.Error, range: c }; } return i.filter(function(h) { return h.getLevel() !== _e.Ignore; }).map(l); }, e; }(), pd = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), Os = "/".charCodeAt(0), fd = ` `.charCodeAt(0), md = "\r".charCodeAt(0), gd = "\f".charCodeAt(0), bd = "$".charCodeAt(0), vd = "#".charCodeAt(0), yd = "{".charCodeAt(0), Wt = "=".charCodeAt(0), wd = "!".charCodeAt(0), xd = "<".charCodeAt(0), Sd = ">".charCodeAt(0), tr = ".".charCodeAt(0), Ge = u.CustomToken, Gr = Ge++, Ln = Ge++; Ge++; var Do = Ge++, Eo = Ge++, Ro = Ge++, Ao = Ge++, yn = Ge++; Ge++; var zo = function(e) { pd(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return t.prototype.scanNext = function(n) { if (this.stream.advanceIfChar(bd)) { var r = ["$"]; if (this.ident(r)) return this.finishToken(n, Gr, r.join("")); this.stream.goBackTo(n); } return this.stream.advanceIfChars([vd, yd]) ? this.finishToken(n, Ln) : this.stream.advanceIfChars([Wt, Wt]) ? this.finishToken(n, Do) : this.stream.advanceIfChars([wd, Wt]) ? this.finishToken(n, Eo) : this.stream.advanceIfChar(xd) ? this.stream.advanceIfChar(Wt) ? this.finishToken(n, Ao) : this.finishToken(n, u.Delim) : this.stream.advanceIfChar(Sd) ? this.stream.advanceIfChar(Wt) ? this.finishToken(n, Ro) : this.finishToken(n, u.Delim) : this.stream.advanceIfChars([tr, tr, tr]) ? this.finishToken(n, yn) : e.prototype.scanNext.call(this, n); }, t.prototype.comment = function() { return e.prototype.comment.call(this) ? !0 : !this.inURL && this.stream.advanceIfChars([Os, Os]) ? (this.stream.advanceWhileChar(function(n) { switch (n) { case fd: case md: case gd: return !1; default: return !0; } }), !0) : !1; }, t; }(en), nr = Le(), rr = function() { function e(t, n) { this.id = t, this.message = n; } return e; }(), ir = { FromExpected: new rr("scss-fromexpected", nr("expected.from", "'from' expected")), ThroughOrToExpected: new rr("scss-throughexpected", nr("expected.through", "'through' or 'to' expected")), InExpected: new rr("scss-fromexpected", nr("expected.in", "'in' expected")) }, Cd = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), kd = function(e) { Cd(t, e); function t() { return e.call(this, new zo()) || this; } return t.prototype._parseStylesheetStatement = function(n) { return n === void 0 && (n = !1), this.peek(u.AtKeyword) ? this._parseWarnAndDebug() || this._parseControlStatement() || this._parseMixinDeclaration() || this._parseMixinContent() || this._parseMixinReference() || this._parseFunctionDeclaration() || this._parseForward() || this._parseUse() || this._parseRuleset(n) || e.prototype._parseStylesheetAtStatement.call(this, n) : this._parseRuleset(!0) || this._parseVariableDeclaration(); }, t.prototype._parseImport = function() { if (!this.peekKeyword("@import")) return null; var n = this.create(ii); if (this.consumeToken(), !n.addChild(this._parseURILiteral()) && !n.addChild(this._parseStringLiteral())) return this.finish(n, v.URIOrStringExpected); for (; this.accept(u.Comma); ) if (!n.addChild(this._parseURILiteral()) && !n.addChild(this._parseStringLiteral())) return this.finish(n, v.URIOrStringExpected); return !this.peek(u.SemiColon) && !this.peek(u.EOF) && n.setMedialist(this._parseMediaQueryList()), this.finish(n); }, t.prototype._parseVariableDeclaration = function(n) { if (n === void 0 && (n = []), !this.peek(Gr)) return null; var r = this.create(Vn); if (!r.setVariable(this._parseVariable())) return null; if (!this.accept(u.Colon)) return this.finish(r, v.ColonExpected); if (this.prevToken && (r.colonPosition = this.prevToken.offset), !r.setValue(this._parseExpr())) return this.finish(r, v.VariableValueExpected, [], n); for (; this.peek(u.Exclamation); ) if (!r.addChild(this._tryParsePrio())) { if (this.consumeToken(), !this.peekRegExp(u.Ident, /^(default|global)$/)) return this.finish(r, v.UnknownKeyword); this.consumeToken(); } return this.peek(u.SemiColon) && (r.semicolonPosition = this.token.offset), this.finish(r); }, t.prototype._parseMediaCondition = function() { return this._parseInterpolation() || e.prototype._parseMediaCondition.call(this); }, t.prototype._parseMediaFeatureName = function() { return this._parseModuleMember() || this._parseFunction() || this._parseIdent() || this._parseVariable(); }, t.prototype._parseKeyframeSelector = function() { return this._tryParseKeyframeSelector() || this._parseControlStatement(this._parseKeyframeSelector.bind(this)) || this._parseVariableDeclaration() || this._parseMixinContent(); }, t.prototype._parseVariable = function() { if (!this.peek(Gr)) return null; var n = this.create(li); return this.consumeToken(), n; }, t.prototype._parseModuleMember = function() { var n = this.mark(), r = this.create(La); return r.setIdentifier(this._parseIdent([G.Module])) ? this.hasWhitespace() || !this.acceptDelim(".") || this.hasWhitespace() ? (this.restoreAtMark(n), null) : r.addChild(this._parseVariable() || this._parseFunction()) ? r : this.finish(r, v.IdentifierOrVariableExpected) : null; }, t.prototype._parseIdent = function(n) { var r = this; if (!this.peek(u.Ident) && !this.peek(Ln) && !this.peekDelim("-")) return null; var i = this.create(Re); i.referenceTypes = n, i.isCustomProperty = this.peekRegExp(u.Ident, /^--/); for (var a = !1, o = function() { var l = r.mark(); return r.acceptDelim("-") && (r.hasWhitespace() || r.acceptDelim("-"), r.hasWhitespace()) ? (r.restoreAtMark(l), null) : r._parseInterpolation(); }; (this.accept(u.Ident) || i.addChild(o()) || a && this.acceptRegexp(/^[\w-]/)) && (a = !0, !this.hasWhitespace()); ) ; return a ? this.finish(i) : null; }, t.prototype._parseTermExpression = function() { return this._parseModuleMember() || this._parseVariable() || this._parseSelectorCombinator() || e.prototype._parseTermExpression.call(this); }, t.prototype._parseInterpolation = function() { if (this.peek(Ln)) { var n = this.create(zr); return this.consumeToken(), !n.addChild(this._parseExpr()) && !this._parseSelectorCombinator() ? this.accept(u.CurlyR) ? this.finish(n) : this.finish(n, v.ExpressionExpected) : this.accept(u.CurlyR) ? this.finish(n) : this.finish(n, v.RightCurlyExpected); } return null; }, t.prototype._parseOperator = function() { if (this.peek(Do) || this.peek(Eo) || this.peek(Ro) || this.peek(Ao) || this.peekDelim(">") || this.peekDelim("<") || this.peekIdent("and") || this.peekIdent("or") || this.peekDelim("%")) { var n = this.createNode(m.Operator); return this.consumeToken(), this.finish(n); } return e.prototype._parseOperator.call(this); }, t.prototype._parseUnaryOperator = function() { if (this.peekIdent("not")) { var n = this.create(L); return this.consumeToken(), this.finish(n); } return e.prototype._parseUnaryOperator.call(this); }, t.prototype._parseRuleSetDeclaration = function() { return this.peek(u.AtKeyword) ? this._parseKeyframe() || this._parseImport() || this._parseMedia(!0) || this._parseFontFace() || this._parseWarnAndDebug() || this._parseControlStatement() || this._parseFunctionDeclaration() || this._parseExtends() || this._parseMixinReference() || this._parseMixinContent() || this._parseMixinDeclaration() || this._parseRuleset(!0) || this._parseSupports(!0) || e.prototype._parseRuleSetDeclarationAtStatement.call(this) : this._parseVariableDeclaration() || this._tryParseRuleset(!0) || e.prototype._parseRuleSetDeclaration.call(this); }, t.prototype._parseDeclaration = function(n) { var r = this._tryParseCustomPropertyDeclaration(n); if (r) return r; var i = this.create(Ve); if (!i.setProperty(this._parseProperty())) return null; if (!this.accept(u.Colon)) return this.finish(i, v.ColonExpected, [u.Colon], n || [u.SemiColon]); this.prevToken && (i.colonPosition = this.prevToken.offset); var a = !1; if (i.setValue(this._parseExpr()) && (a = !0, i.addChild(this._parsePrio())), this.peek(u.CurlyL)) i.setNestedProperties(this._parseNestedProperties()); else if (!a) return this.finish(i, v.PropertyValueExpected); return this.peek(u.SemiColon) && (i.semicolonPosition = this.token.offset), this.finish(i); }, t.prototype._parseNestedProperties = function() { var n = this.create(co); return this._parseBody(n, this._parseDeclaration.bind(this)); }, t.prototype._parseExtends = function() { if (this.peekKeyword("@extend")) { var n = this.create(qt); if (this.consumeToken(), !n.getSelectors().addChild(this._parseSimpleSelector())) return this.finish(n, v.SelectorExpected); for (; this.accept(u.Comma); ) n.getSelectors().addChild(this._parseSimpleSelector()); return this.accept(u.Exclamation) && !this.acceptIdent("optional") ? this.finish(n, v.UnknownKeyword) : this.finish(n); } return null; }, t.prototype._parseSimpleSelectorBody = function() { return this._parseSelectorCombinator() || this._parseSelectorPlaceholder() || e.prototype._parseSimpleSelectorBody.call(this); }, t.prototype._parseSelectorCombinator = function() { if (this.peekDelim("&")) { var n = this.createNode(m.SelectorCombinator); for (this.consumeToken(); !this.hasWhitespace() && (this.acceptDelim("-") || this.accept(u.Num) || this.accept(u.Dimension) || n.addChild(this._parseIdent()) || this.acceptDelim("&")); ) ; return this.finish(n); } return null; }, t.prototype._parseSelectorPlaceholder = function() { if (this.peekDelim("%")) { var n = this.createNode(m.SelectorPlaceholder); return this.consumeToken(), this._parseIdent(), this.finish(n); } else if (this.peekKeyword("@at-root")) { var n = this.createNode(m.SelectorPlaceholder); return this.consumeToken(), this.finish(n); } return null; }, t.prototype._parseElementName = function() { var n = this.mark(), r = e.prototype._parseElementName.call(this); return r && !this.hasWhitespace() && this.peek(u.ParenthesisL) ? (this.restoreAtMark(n), null) : r; }, t.prototype._tryParsePseudoIdentifier = function() { return this._parseInterpolation() || e.prototype._tryParsePseudoIdentifier.call(this); }, t.prototype._parseWarnAndDebug = function() { if (!this.peekKeyword("@debug") && !this.peekKeyword("@warn") && !this.peekKeyword("@error")) return null; var n = this.createNode(m.Debug); return this.consumeToken(), n.addChild(this._parseExpr()), this.finish(n); }, t.prototype._parseControlStatement = function(n) { return n === void 0 && (n = this._parseRuleSetDeclaration.bind(this)), this.peek(u.AtKeyword) ? this._parseIfStatement(n) || this._parseForStatement(n) || this._parseEachStatement(n) || this._parseWhileStatement(n) : null; }, t.prototype._parseIfStatement = function(n) { return this.peekKeyword("@if") ? this._internalParseIfStatement(n) : null; }, t.prototype._internalParseIfStatement = function(n) { var r = this.create(Wc); if (this.consumeToken(), !r.setExpression(this._parseExpr(!0))) return this.finish(r, v.ExpressionExpected); if (this._parseBody(r, n), this.acceptKeyword("@else")) { if (this.peekIdent("if")) r.setElseClause(this._internalParseIfStatement(n)); else if (this.peek(u.CurlyL)) { var i = this.create(Bc); this._parseBody(i, n), r.setElseClause(i); } } return this.finish(r); }, t.prototype._parseForStatement = function(n) { if (!this.peekKeyword("@for")) return null; var r = this.create(Oc); return this.consumeToken(), r.setVariable(this._parseVariable()) ? this.acceptIdent("from") ? r.addChild(this._parseBinaryExpr()) ? !this.acceptIdent("to") && !this.acceptIdent("through") ? this.finish(r, ir.ThroughOrToExpected, [u.CurlyR]) : r.addChild(this._parseBinaryExpr()) ? this._parseBody(r, n) : this.finish(r, v.ExpressionExpected, [u.CurlyR]) : this.finish(r, v.ExpressionExpected, [u.CurlyR]) : this.finish(r, ir.FromExpected, [u.CurlyR]) : this.finish(r, v.VariableNameExpected, [u.CurlyR]); }, t.prototype._parseEachStatement = function(n) { if (!this.peekKeyword("@each")) return null; var r = this.create(Vc); this.consumeToken(); var i = r.getVariables(); if (!i.addChild(this._parseVariable())) return this.finish(r, v.VariableNameExpected, [u.CurlyR]); for (; this.accept(u.Comma); ) if (!i.addChild(this._parseVariable())) return this.finish(r, v.VariableNameExpected, [u.CurlyR]); return this.finish(i), this.acceptIdent("in") ? r.addChild(this._parseExpr()) ? this._parseBody(r, n) : this.finish(r, v.ExpressionExpected, [u.CurlyR]) : this.finish(r, ir.InExpected, [u.CurlyR]); }, t.prototype._parseWhileStatement = function(n) { if (!this.peekKeyword("@while")) return null; var r = this.create(Uc); return this.consumeToken(), r.addChild(this._parseBinaryExpr()) ? this._parseBody(r, n) : this.finish(r, v.ExpressionExpected, [u.CurlyR]); }, t.prototype._parseFunctionBodyDeclaration = function() { return this._parseVariableDeclaration() || this._parseReturnStatement() || this._parseWarnAndDebug() || this._parseControlStatement(this._parseFunctionBodyDeclaration.bind(this)); }, t.prototype._parseFunctionDeclaration = function() { if (!this.peekKeyword("@function")) return null; var n = this.create(kn); if (this.consumeToken(), !n.setIdentifier(this._parseIdent([G.Function]))) return this.finish(n, v.IdentifierExpected, [u.CurlyR]); if (!this.accept(u.ParenthesisL)) return this.finish(n, v.LeftParenthesisExpected, [u.CurlyR]); if (n.getParameters().addChild(this._parseParameterDeclaration())) { for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getParameters().addChild(this._parseParameterDeclaration())) return this.finish(n, v.VariableNameExpected); } return this.accept(u.ParenthesisR) ? this._parseBody(n, this._parseFunctionBodyDeclaration.bind(this)) : this.finish(n, v.RightParenthesisExpected, [u.CurlyR]); }, t.prototype._parseReturnStatement = function() { if (!this.peekKeyword("@return")) return null; var n = this.createNode(m.ReturnStatement); return this.consumeToken(), n.addChild(this._parseExpr()) ? this.finish(n) : this.finish(n, v.ExpressionExpected); }, t.prototype._parseMixinDeclaration = function() { if (!this.peekKeyword("@mixin")) return null; var n = this.create($t); if (this.consumeToken(), !n.setIdentifier(this._parseIdent([G.Mixin]))) return this.finish(n, v.IdentifierExpected, [u.CurlyR]); if (this.accept(u.ParenthesisL)) { if (n.getParameters().addChild(this._parseParameterDeclaration())) { for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getParameters().addChild(this._parseParameterDeclaration())) return this.finish(n, v.VariableNameExpected); } if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected, [u.CurlyR]); } return this._parseBody(n, this._parseRuleSetDeclaration.bind(this)); }, t.prototype._parseParameterDeclaration = function() { var n = this.create(On); return n.setIdentifier(this._parseVariable()) ? (this.accept(yn), this.accept(u.Colon) && !n.setDefaultValue(this._parseExpr(!0)) ? this.finish(n, v.VariableValueExpected, [], [u.Comma, u.ParenthesisR]) : this.finish(n)) : null; }, t.prototype._parseMixinContent = function() { if (!this.peekKeyword("@content")) return null; var n = this.create(sh); if (this.consumeToken(), this.accept(u.ParenthesisL)) { if (n.getArguments().addChild(this._parseFunctionArgument())) { for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getArguments().addChild(this._parseFunctionArgument())) return this.finish(n, v.ExpressionExpected); } if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected); } return this.finish(n); }, t.prototype._parseMixinReference = function() { if (!this.peekKeyword("@include")) return null; var n = this.create(Fn); this.consumeToken(); var r = this._parseIdent([G.Mixin]); if (!n.setIdentifier(r)) return this.finish(n, v.IdentifierExpected, [u.CurlyR]); if (!this.hasWhitespace() && this.acceptDelim(".") && !this.hasWhitespace()) { var i = this._parseIdent([G.Mixin]); if (!i) return this.finish(n, v.IdentifierExpected, [u.CurlyR]); var a = this.create(La); r.referenceTypes = [G.Module], a.setIdentifier(r), n.setIdentifier(i), n.addChild(a); } if (this.accept(u.ParenthesisL)) { if (n.getArguments().addChild(this._parseFunctionArgument())) { for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getArguments().addChild(this._parseFunctionArgument())) return this.finish(n, v.ExpressionExpected); } if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected); } return (this.peekIdent("using") || this.peek(u.CurlyL)) && n.setContent(this._parseMixinContentDeclaration()), this.finish(n); }, t.prototype._parseMixinContentDeclaration = function() { var n = this.create(oh); if (this.acceptIdent("using")) { if (!this.accept(u.ParenthesisL)) return this.finish(n, v.LeftParenthesisExpected, [u.CurlyL]); if (n.getParameters().addChild(this._parseParameterDeclaration())) { for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getParameters().addChild(this._parseParameterDeclaration())) return this.finish(n, v.VariableNameExpected); } if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected, [u.CurlyL]); } return this.peek(u.CurlyL) && this._parseBody(n, this._parseMixinReferenceBodyStatement.bind(this)), this.finish(n); }, t.prototype._parseMixinReferenceBodyStatement = function() { return this._tryParseKeyframeSelector() || this._parseRuleSetDeclaration(); }, t.prototype._parseFunctionArgument = function() { var n = this.create(Dt), r = this.mark(), i = this._parseVariable(); if (i) if (this.accept(u.Colon)) n.setIdentifier(i); else { if (this.accept(yn)) return n.setValue(i), this.finish(n); this.restoreAtMark(r); } return n.setValue(this._parseExpr(!0)) ? (this.accept(yn), n.addChild(this._parsePrio()), this.finish(n)) : n.setValue(this._tryParsePrio()) ? this.finish(n) : null; }, t.prototype._parseURLArgument = function() { var n = this.mark(), r = e.prototype._parseURLArgument.call(this); if (!r || !this.peek(u.ParenthesisR)) { this.restoreAtMark(n); var i = this.create(L); return i.addChild(this._parseBinaryExpr()), this.finish(i); } return r; }, t.prototype._parseOperation = function() { if (!this.peek(u.ParenthesisL)) return null; var n = this.create(L); for (this.consumeToken(); n.addChild(this._parseListElement()); ) this.accept(u.Comma); return this.accept(u.ParenthesisR) ? this.finish(n) : this.finish(n, v.RightParenthesisExpected); }, t.prototype._parseListElement = function() { var n = this.create(lh), r = this._parseBinaryExpr(); if (!r) return null; if (this.accept(u.Colon)) { if (n.setKey(r), !n.setValue(this._parseBinaryExpr())) return this.finish(n, v.ExpressionExpected); } else n.setValue(r); return this.finish(n); }, t.prototype._parseUse = function() { if (!this.peekKeyword("@use")) return null; var n = this.create(qc); if (this.consumeToken(), !n.addChild(this._parseStringLiteral())) return this.finish(n, v.StringLiteralExpected); if (!this.peek(u.SemiColon) && !this.peek(u.EOF)) { if (!this.peekRegExp(u.Ident, /as|with/)) return this.finish(n, v.UnknownKeyword); if (this.acceptIdent("as") && !n.setIdentifier(this._parseIdent([G.Module])) && !this.acceptDelim("*")) return this.finish(n, v.IdentifierOrWildcardExpected); if (this.acceptIdent("with")) { if (!this.accept(u.ParenthesisL)) return this.finish(n, v.LeftParenthesisExpected, [u.ParenthesisR]); if (!n.getParameters().addChild(this._parseModuleConfigDeclaration())) return this.finish(n, v.VariableNameExpected); for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getParameters().addChild(this._parseModuleConfigDeclaration())) return this.finish(n, v.VariableNameExpected); if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected); } } return !this.accept(u.SemiColon) && !this.accept(u.EOF) ? this.finish(n, v.SemiColonExpected) : this.finish(n); }, t.prototype._parseModuleConfigDeclaration = function() { var n = this.create($c); return n.setIdentifier(this._parseVariable()) ? !this.accept(u.Colon) || !n.setValue(this._parseExpr(!0)) ? this.finish(n, v.VariableValueExpected, [], [u.Comma, u.ParenthesisR]) : this.accept(u.Exclamation) && (this.hasWhitespace() || !this.acceptIdent("default")) ? this.finish(n, v.UnknownKeyword) : this.finish(n) : null; }, t.prototype._parseForward = function() { if (!this.peekKeyword("@forward")) return null; var n = this.create(Hc); if (this.consumeToken(), !n.addChild(this._parseStringLiteral())) return this.finish(n, v.StringLiteralExpected); if (this.acceptIdent("with")) { if (!this.accept(u.ParenthesisL)) return this.finish(n, v.LeftParenthesisExpected, [u.ParenthesisR]); if (!n.getParameters().addChild(this._parseModuleConfigDeclaration())) return this.finish(n, v.VariableNameExpected); for (; this.accept(u.Comma) && !this.peek(u.ParenthesisR); ) if (!n.getParameters().addChild(this._parseModuleConfigDeclaration())) return this.finish(n, v.VariableNameExpected); if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected); } if (!this.peek(u.SemiColon) && !this.peek(u.EOF)) { if (!this.peekRegExp(u.Ident, /as|hide|show/)) return this.finish(n, v.UnknownKeyword); if (this.acceptIdent("as")) { var r = this._parseIdent([G.Forward]); if (!n.setIdentifier(r)) return this.finish(n, v.IdentifierExpected); if (this.hasWhitespace() || !this.acceptDelim("*")) return this.finish(n, v.WildcardExpected); } if ((this.peekIdent("hide") || this.peekIdent("show")) && !n.addChild(this._parseForwardVisibility())) return this.finish(n, v.IdentifierOrVariableExpected); } return !this.accept(u.SemiColon) && !this.accept(u.EOF) ? this.finish(n, v.SemiColonExpected) : this.finish(n); }, t.prototype._parseForwardVisibility = function() { var n = this.create(Gc); for (n.setIdentifier(this._parseIdent()); n.addChild(this._parseVariable() || this._parseIdent()); ) this.accept(u.Comma); return n.getChildren().length > 1 ? n : null; }, t.prototype._parseSupportsCondition = function() { return this._parseInterpolation() || e.prototype._parseSupportsCondition.call(this); }, t; }(ci), Fd = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), _ = Le(), _d = function(e) { Fd(t, e); function t(n, r) { var i = e.call(this, "$", n, r) || this; return Vs(t.scssModuleLoaders), Vs(t.scssModuleBuiltIns), i; } return t.prototype.isImportPathParent = function(n) { return n === m.Forward || n === m.Use || e.prototype.isImportPathParent.call(this, n); }, t.prototype.getCompletionForImportPath = function(n, r) { var i = n.getParent().type; if (i === m.Forward || i === m.Use) for (var a = 0, o = t.scssModuleBuiltIns; a < o.length; a++) { var l = o[a], h = { label: l.label, documentation: l.documentation, textEdit: B.replace(this.getCompletionRange(n), "'".concat(l.label, "'")), kind: V.Module }; r.items.push(h); } return e.prototype.getCompletionForImportPath.call(this, n, r); }, t.prototype.createReplaceFunction = function() { var n = 1; return function(r, i) { return "\\" + i + ": ${" + n++ + ":" + (t.variableDefaults[i] || "") + "}"; }; }, t.prototype.createFunctionProposals = function(n, r, i, a) { for (var o = 0, l = n; o < l.length; o++) { var h = l[o], c = h.func.replace(/\[?(\$\w+)\]?/g, this.createReplaceFunction()), d = h.func.substr(0, h.func.indexOf("(")), p = { label: d, detail: h.func, documentation: h.desc, textEdit: B.replace(this.getCompletionRange(r), c), insertTextFormat: ke.Snippet, kind: V.Function }; i && (p.sortText = "z"), a.items.push(p); } return a; }, t.prototype.getCompletionsForSelector = function(n, r, i) { return this.createFunctionProposals(t.selectorFuncs, null, !0, i), e.prototype.getCompletionsForSelector.call(this, n, r, i); }, t.prototype.getTermProposals = function(n, r, i) { var a = t.builtInFuncs; return n && (a = a.filter(function(o) { return !o.type || !n.restrictions || n.restrictions.indexOf(o.type) !== -1; })), this.createFunctionProposals(a, r, !0, i), e.prototype.getTermProposals.call(this, n, r, i); }, t.prototype.getColorProposals = function(n, r, i) { return this.createFunctionProposals(t.colorProposals, r, !1, i), e.prototype.getColorProposals.call(this, n, r, i); }, t.prototype.getCompletionsForDeclarationProperty = function(n, r) { return this.getCompletionForAtDirectives(r), this.getCompletionsForSelector(null, !0, r), e.prototype.getCompletionsForDeclarationProperty.call(this, n, r); }, t.prototype.getCompletionsForExtendsReference = function(n, r, i) { for (var a = this.getSymbolContext().findSymbolsAtOffset(this.offset, G.Rule), o = 0, l = a; o < l.length; o++) { var h = l[o], c = { label: h.name, textEdit: B.replace(this.getCompletionRange(r), h.name), kind: V.Function }; i.items.push(c); } return i; }, t.prototype.getCompletionForAtDirectives = function(n) { var r; return (r = n.items).push.apply(r, t.scssAtDirectives), n; }, t.prototype.getCompletionForTopLevel = function(n) { return this.getCompletionForAtDirectives(n), this.getCompletionForModuleLoaders(n), e.prototype.getCompletionForTopLevel.call(this, n), n; }, t.prototype.getCompletionForModuleLoaders = function(n) { var r; return (r = n.items).push.apply(r, t.scssModuleLoaders), n; }, t.variableDefaults = { $red: "1", $green: "2", $blue: "3", $alpha: "1.0", $color: "#000000", $weight: "0.5", $hue: "0", $saturation: "0%", $lightness: "0%", $degrees: "0", $amount: "0", $string: '""', $substring: '"s"', $number: "0", $limit: "1" }, t.colorProposals = [ { func: "red($color)", desc: _("scss.builtin.red", "Gets the red component of a color.") }, { func: "green($color)", desc: _("scss.builtin.green", "Gets the green component of a color.") }, { func: "blue($color)", desc: _("scss.builtin.blue", "Gets the blue component of a color.") }, { func: "mix($color, $color, [$weight])", desc: _("scss.builtin.mix", "Mixes two colors together.") }, { func: "hue($color)", desc: _("scss.builtin.hue", "Gets the hue component of a color.") }, { func: "saturation($color)", desc: _("scss.builtin.saturation", "Gets the saturation component of a color.") }, { func: "lightness($color)", desc: _("scss.builtin.lightness", "Gets the lightness component of a color.") }, { func: "adjust-hue($color, $degrees)", desc: _("scss.builtin.adjust-hue", "Changes the hue of a color.") }, { func: "lighten($color, $amount)", desc: _("scss.builtin.lighten", "Makes a color lighter.") }, { func: "darken($color, $amount)", desc: _("scss.builtin.darken", "Makes a color darker.") }, { func: "saturate($color, $amount)", desc: _("scss.builtin.saturate", "Makes a color more saturated.") }, { func: "desaturate($color, $amount)", desc: _("scss.builtin.desaturate", "Makes a color less saturated.") }, { func: "grayscale($color)", desc: _("scss.builtin.grayscale", "Converts a color to grayscale.") }, { func: "complement($color)", desc: _("scss.builtin.complement", "Returns the complement of a color.") }, { func: "invert($color)", desc: _("scss.builtin.invert", "Returns the inverse of a color.") }, { func: "alpha($color)", desc: _("scss.builtin.alpha", "Gets the opacity component of a color.") }, { func: "opacity($color)", desc: "Gets the alpha component (opacity) of a color." }, { func: "rgba($color, $alpha)", desc: _("scss.builtin.rgba", "Changes the alpha component for a color.") }, { func: "opacify($color, $amount)", desc: _("scss.builtin.opacify", "Makes a color more opaque.") }, { func: "fade-in($color, $amount)", desc: _("scss.builtin.fade-in", "Makes a color more opaque.") }, { func: "transparentize($color, $amount)", desc: _("scss.builtin.transparentize", "Makes a color more transparent.") }, { func: "fade-out($color, $amount)", desc: _("scss.builtin.fade-out", "Makes a color more transparent.") }, { func: "adjust-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])", desc: _("scss.builtin.adjust-color", "Increases or decreases one or more components of a color.") }, { func: "scale-color($color, [$red], [$green], [$blue], [$saturation], [$lightness], [$alpha])", desc: _("scss.builtin.scale-color", "Fluidly scales one or more properties of a color.") }, { func: "change-color($color, [$red], [$green], [$blue], [$hue], [$saturation], [$lightness], [$alpha])", desc: _("scss.builtin.change-color", "Changes one or more properties of a color.") }, { func: "ie-hex-str($color)", desc: _("scss.builtin.ie-hex-str", "Converts a color into the format understood by IE filters.") } ], t.selectorFuncs = [ { func: "selector-nest($selectors\u2026)", desc: _("scss.builtin.selector-nest", "Nests selector beneath one another like they would be nested in the stylesheet.") }, { func: "selector-append($selectors\u2026)", desc: _("scss.builtin.selector-append", "Appends selectors to one another without spaces in between.") }, { func: "selector-extend($selector, $extendee, $extender)", desc: _("scss.builtin.selector-extend", "Extends $extendee with $extender within $selector.") }, { func: "selector-replace($selector, $original, $replacement)", desc: _("scss.builtin.selector-replace", "Replaces $original with $replacement within $selector.") }, { func: "selector-unify($selector1, $selector2)", desc: _("scss.builtin.selector-unify", "Unifies two selectors to produce a selector that matches elements matched by both.") }, { func: "is-superselector($super, $sub)", desc: _("scss.builtin.is-superselector", "Returns whether $super matches all the elements $sub does, and possibly more.") }, { func: "simple-selectors($selector)", desc: _("scss.builtin.simple-selectors", "Returns the simple selectors that comprise a compound selector.") }, { func: "selector-parse($selector)", desc: _("scss.builtin.selector-parse", "Parses a selector into the format returned by &.") } ], t.builtInFuncs = [ { func: "unquote($string)", desc: _("scss.builtin.unquote", "Removes quotes from a string.") }, { func: "quote($string)", desc: _("scss.builtin.quote", "Adds quotes to a string.") }, { func: "str-length($string)", desc: _("scss.builtin.str-length", "Returns the number of characters in a string.") }, { func: "str-insert($string, $insert, $index)", desc: _("scss.builtin.str-insert", "Inserts $insert into $string at $index.") }, { func: "str-index($string, $substring)", desc: _("scss.builtin.str-index", "Returns the index of the first occurance of $substring in $string.") }, { func: "str-slice($string, $start-at, [$end-at])", desc: _("scss.builtin.str-slice", "Extracts a substring from $string.") }, { func: "to-upper-case($string)", desc: _("scss.builtin.to-upper-case", "Converts a string to upper case.") }, { func: "to-lower-case($string)", desc: _("scss.builtin.to-lower-case", "Converts a string to lower case.") }, { func: "percentage($number)", desc: _("scss.builtin.percentage", "Converts a unitless number to a percentage."), type: "percentage" }, { func: "round($number)", desc: _("scss.builtin.round", "Rounds a number to the nearest whole number.") }, { func: "ceil($number)", desc: _("scss.builtin.ceil", "Rounds a number up to the next whole number.") }, { func: "floor($number)", desc: _("scss.builtin.floor", "Rounds a number down to the previous whole number.") }, { func: "abs($number)", desc: _("scss.builtin.abs", "Returns the absolute value of a number.") }, { func: "min($numbers)", desc: _("scss.builtin.min", "Finds the minimum of several numbers.") }, { func: "max($numbers)", desc: _("scss.builtin.max", "Finds the maximum of several numbers.") }, { func: "random([$limit])", desc: _("scss.builtin.random", "Returns a random number.") }, { func: "length($list)", desc: _("scss.builtin.length", "Returns the length of a list.") }, { func: "nth($list, $n)", desc: _("scss.builtin.nth", "Returns a specific item in a list.") }, { func: "set-nth($list, $n, $value)", desc: _("scss.builtin.set-nth", "Replaces the nth item in a list.") }, { func: "join($list1, $list2, [$separator])", desc: _("scss.builtin.join", "Joins together two lists into one.") }, { func: "append($list1, $val, [$separator])", desc: _("scss.builtin.append", "Appends a single value onto the end of a list.") }, { func: "zip($lists)", desc: _("scss.builtin.zip", "Combines several lists into a single multidimensional list.") }, { func: "index($list, $value)", desc: _("scss.builtin.index", "Returns the position of a value within a list.") }, { func: "list-separator(#list)", desc: _("scss.builtin.list-separator", "Returns the separator of a list.") }, { func: "map-get($map, $key)", desc: _("scss.builtin.map-get", "Returns the value in a map associated with a given key.") }, { func: "map-merge($map1, $map2)", desc: _("scss.builtin.map-merge", "Merges two maps together into a new map.") }, { func: "map-remove($map, $keys)", desc: _("scss.builtin.map-remove", "Returns a new map with keys removed.") }, { func: "map-keys($map)", desc: _("scss.builtin.map-keys", "Returns a list of all keys in a map.") }, { func: "map-values($map)", desc: _("scss.builtin.map-values", "Returns a list of all values in a map.") }, { func: "map-has-key($map, $key)", desc: _("scss.builtin.map-has-key", "Returns whether a map has a value associated with a given key.") }, { func: "keywords($args)", desc: _("scss.builtin.keywords", "Returns the keywords passed to a function that takes variable arguments.") }, { func: "feature-exists($feature)", desc: _("scss.builtin.feature-exists", "Returns whether a feature exists in the current Sass runtime.") }, { func: "variable-exists($name)", desc: _("scss.builtin.variable-exists", "Returns whether a variable with the given name exists in the current scope.") }, { func: "global-variable-exists($name)", desc: _("scss.builtin.global-variable-exists", "Returns whether a variable with the given name exists in the global scope.") }, { func: "function-exists($name)", desc: _("scss.builtin.function-exists", "Returns whether a function with the given name exists.") }, { func: "mixin-exists($name)", desc: _("scss.builtin.mixin-exists", "Returns whether a mixin with the given name exists.") }, { func: "inspect($value)", desc: _("scss.builtin.inspect", "Returns the string representation of a value as it would be represented in Sass.") }, { func: "type-of($value)", desc: _("scss.builtin.type-of", "Returns the type of a value.") }, { func: "unit($number)", desc: _("scss.builtin.unit", "Returns the unit(s) associated with a number.") }, { func: "unitless($number)", desc: _("scss.builtin.unitless", "Returns whether a number has units.") }, { func: "comparable($number1, $number2)", desc: _("scss.builtin.comparable", "Returns whether two numbers can be added, subtracted, or compared.") }, { func: "call($name, $args\u2026)", desc: _("scss.builtin.call", "Dynamically calls a Sass function.") } ], t.scssAtDirectives = [ { label: "@extend", documentation: _("scss.builtin.@extend", "Inherits the styles of another selector."), kind: V.Keyword }, { label: "@at-root", documentation: _("scss.builtin.@at-root", "Causes one or more rules to be emitted at the root of the document."), kind: V.Keyword }, { label: "@debug", documentation: _("scss.builtin.@debug", "Prints the value of an expression to the standard error output stream. Useful for debugging complicated Sass files."), kind: V.Keyword }, { label: "@warn", documentation: _("scss.builtin.@warn", "Prints the value of an expression to the standard error output stream. Useful for libraries that need to warn users of deprecations or recovering from minor mixin usage mistakes. Warnings can be turned off with the `--quiet` command-line option or the `:quiet` Sass option."), kind: V.Keyword }, { label: "@error", documentation: _("scss.builtin.@error", "Throws the value of an expression as a fatal error with stack trace. Useful for validating arguments to mixins and functions."), kind: V.Keyword }, { label: "@if", documentation: _("scss.builtin.@if", "Includes the body if the expression does not evaluate to `false` or `null`."), insertText: `@if \${1:expr} { $0 }`, insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@for", documentation: _("scss.builtin.@for", "For loop that repeatedly outputs a set of styles for each `$var` in the `from/through` or `from/to` clause."), insertText: "@for \\$${1:var} from ${2:start} ${3|to,through|} ${4:end} {\n $0\n}", insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@each", documentation: _("scss.builtin.@each", "Each loop that sets `$var` to each item in the list or map, then outputs the styles it contains using that value of `$var`."), insertText: "@each \\$${1:var} in ${2:list} {\n $0\n}", insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@while", documentation: _("scss.builtin.@while", "While loop that takes an expression and repeatedly outputs the nested styles until the statement evaluates to `false`."), insertText: `@while \${1:condition} { $0 }`, insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@mixin", documentation: _("scss.builtin.@mixin", "Defines styles that can be re-used throughout the stylesheet with `@include`."), insertText: `@mixin \${1:name} { $0 }`, insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@include", documentation: _("scss.builtin.@include", "Includes the styles defined by another mixin into the current rule."), kind: V.Keyword }, { label: "@function", documentation: _("scss.builtin.@function", "Defines complex operations that can be re-used throughout stylesheets."), kind: V.Keyword } ], t.scssModuleLoaders = [ { label: "@use", documentation: _("scss.builtin.@use", "Loads mixins, functions, and variables from other Sass stylesheets as 'modules', and combines CSS from multiple stylesheets together."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/at-rules/use" }], insertText: "@use $0;", insertTextFormat: ke.Snippet, kind: V.Keyword }, { label: "@forward", documentation: _("scss.builtin.@forward", "Loads a Sass stylesheet and makes its mixins, functions, and variables available when this stylesheet is loaded with the @use rule."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/at-rules/forward" }], insertText: "@forward $0;", insertTextFormat: ke.Snippet, kind: V.Keyword } ], t.scssModuleBuiltIns = [ { label: "sass:math", documentation: _("scss.builtin.sass:math", "Provides functions that operate on numbers."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/math" }] }, { label: "sass:string", documentation: _("scss.builtin.sass:string", "Makes it easy to combine, search, or split apart strings."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/string" }] }, { label: "sass:color", documentation: _("scss.builtin.sass:color", "Generates new colors based on existing ones, making it easy to build color themes."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/color" }] }, { label: "sass:list", documentation: _("scss.builtin.sass:list", "Lets you access and modify values in lists."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/list" }] }, { label: "sass:map", documentation: _("scss.builtin.sass:map", "Makes it possible to look up the value associated with a key in a map, and much more."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/map" }] }, { label: "sass:selector", documentation: _("scss.builtin.sass:selector", "Provides access to Sass\u2019s powerful selector engine."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/selector" }] }, { label: "sass:meta", documentation: _("scss.builtin.sass:meta", "Exposes the details of Sass\u2019s inner workings."), references: [{ name: "Sass documentation", url: "https://sass-lang.com/documentation/modules/meta" }] } ], t; }(di); function Vs(e) { e.forEach(function(t) { if (t.documentation && t.references && t.references.length > 0) { var n = typeof t.documentation == "string" ? { kind: "markdown", value: t.documentation } : { kind: "markdown", value: t.documentation.value }; n.value += ` `, n.value += t.references.map(function(r) { return "[".concat(r.name, "](").concat(r.url, ")"); }).join(" | "), t.documentation = n; } }); } var Dd = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), Us = "/".charCodeAt(0), Ed = ` `.charCodeAt(0), Rd = "\r".charCodeAt(0), Ad = "\f".charCodeAt(0), ar = "`".charCodeAt(0), sr = ".".charCodeAt(0), zd = u.CustomToken, Jr = zd++, Mo = function(e) { Dd(t, e); function t() { return e !== null && e.apply(this, arguments) || this; } return t.prototype.scanNext = function(n) { var r = this.escapedJavaScript(); return r !== null ? this.finishToken(n, r) : this.stream.advanceIfChars([sr, sr, sr]) ? this.finishToken(n, Jr) : e.prototype.scanNext.call(this, n); }, t.prototype.comment = function() { return e.prototype.comment.call(this) ? !0 : !this.inURL && this.stream.advanceIfChars([Us, Us]) ? (this.stream.advanceWhileChar(function(n) { switch (n) { case Ed: case Rd: case Ad: return !1; default: return !0; } }), !0) : !1; }, t.prototype.escapedJavaScript = function() { var n = this.stream.peekChar(); return n === ar ? (this.stream.advance(1), this.stream.advanceWhileChar(function(r) { return r !== ar; }), this.stream.advanceIfChar(ar) ? u.EscapedJavaScript : u.BadEscapedJavaScript) : null; }, t; }(en), Md = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), Nd = function(e) { Md(t, e); function t() { return e.call(this, new Mo()) || this; } return t.prototype._parseStylesheetStatement = function(n) { return n === void 0 && (n = !1), this.peek(u.AtKeyword) ? this._parseVariableDeclaration() || this._parsePlugin() || e.prototype._parseStylesheetAtStatement.call(this, n) : this._tryParseMixinDeclaration() || this._tryParseMixinReference() || this._parseFunction() || this._parseRuleset(!0); }, t.prototype._parseImport = function() { if (!this.peekKeyword("@import") && !this.peekKeyword("@import-once")) return null; var n = this.create(ii); if (this.consumeToken(), this.accept(u.ParenthesisL)) { if (!this.accept(u.Ident)) return this.finish(n, v.IdentifierExpected, [u.SemiColon]); do if (!this.accept(u.Comma)) break; while (this.accept(u.Ident)); if (!this.accept(u.ParenthesisR)) return this.finish(n, v.RightParenthesisExpected, [u.SemiColon]); } return !n.addChild(this._parseURILiteral()) && !n.addChild(this._parseStringLiteral()) ? this.finish(n, v.URIOrStringExpected, [u.SemiColon]) : (!this.peek(u.SemiColon) && !this.peek(u.EOF) && n.setMedialist(this._parseMediaQueryList()), this.finish(n)); }, t.prototype._parsePlugin = function() { if (!this.peekKeyword("@plugin")) return null; var n = this.createNode(m.Plugin); return this.consumeToken(), n.addChild(this._parseStringLiteral()) ? this.accept(u.SemiColon) ? this.finish(n) : this.finish(n, v.SemiColonExpected) : this.finish(n, v.StringLiteralExpected); }, t.prototype._parseMediaQuery = function() { var n = e.prototype._parseMediaQuery.call(this); if (!n) { var r = this.create(fo); return r.addChild(this._parseVariable()) ? this.finish(r) : null; } return n; }, t.prototype._parseMediaDeclaration = function(n) { return n === void 0 && (n = !1), this._tryParseRuleset(n) || this._tryToParseDeclaration() || this._tryParseMixinDeclaration() || this._tryParseMixinReference() || this._parseDetachedRuleSetMixin() || this._parseStylesheetStatement(n); }, t.prototype._parseMediaFeatureName = function() { return this._parseIdent() || this._parseVariable(); }, t.prototype._parseVariableDeclaration = function(n) { n === void 0 && (n = []); var r = this.create(Vn), i = this.mark(); if (!r.setVariable(this._parseVariable(!0))) return null; if (this.accept(u.Colon)) { if (this.prevToken && (r.colonPosition = this.prevToken.offset), r.setValue(this._parseDetachedRuleSet())) r.needsSemicolon = !1; else if (!r.setValue(this._parseExpr())) return this.finish(r, v.VariableValueExpected, [], n); r.addChild(this._parsePrio()); } else return this.restoreAtMark(i), null; return this.peek(u.SemiColon) && (r.semicolonPosition = this.token.offset), this.finish(r); }, t.prototype._parseDetachedRuleSet = function() { var n = this.mark(); if (this.peekDelim("#") || this.peekDelim(".")) if (this.consumeToken(), !this.hasWhitespace() && this.accept(u.ParenthesisL)) { var r = this.create($t); if (r.getParameters().addChild(this._parseMixinParameter())) for (; (this.accept(u.Comma) || this.accept(u.SemiColon)) && !this.peek(u.ParenthesisR); ) r.getParameters().addChild(this._parseMixinParameter()) || this.markError(r, v.IdentifierExpected, [], [u.ParenthesisR]); if (!this.accept(u.ParenthesisR)) return this.restoreAtMark(n), null; } else return this.restoreAtMark(n), null; if (!this.peek(u.CurlyL)) return null; var i = this.create(ne); return this._parseBody(i, this._parseDetachedRuleSetBody.bind(this)), this.finish(i); }, t.prototype._parseDetachedRuleSetBody = function() { return this._tryParseKeyframeSelector() || this._parseRuleSetDeclaration(); }, t.prototype._addLookupChildren = function(n) { if (!n.addChild(this._parseLookupValue())) return !1; for (var r = !1; this.peek(u.BracketL) && (r = !0), !!n.addChild(this._parseLookupValue()); ) r = !1; return !r; }, t.prototype._parseLookupValue = function() { var n = this.create(L), r = this.mark(); return this.accept(u.BracketL) ? (n.addChild(this._parseVariable(!1, !0)) || n.addChild(this._parsePropertyIdentifier())) && this.accept(u.BracketR) || this.accept(u.BracketR) ? n : (this.restoreAtMark(r), null) : (this.restoreAtMark(r), null); }, t.prototype._parseVariable = function(n, r) { n === void 0 && (n = !1), r === void 0 && (r = !1); var i = !n && this.peekDelim("$"); if (!this.peekDelim("@") && !i && !this.peek(u.AtKeyword)) return null; for (var a = this.create(li), o = this.mark(); this.acceptDelim("@") || !n && this.acceptDelim("$"); ) if (this.hasWhitespace()) return this.restoreAtMark(o), null; return !this.accept(u.AtKeyword) && !this.accept(u.Ident) ? (this.restoreAtMark(o), null) : !r && this.peek(u.BracketL) && !this._addLookupChildren(a) ? (this.restoreAtMark(o), null) : a; }, t.prototype._parseTermExpression = function() { return this._parseVariable() || this._parseEscaped() || e.prototype._parseTermExpression.call(this) || this._tryParseMixinReference(!1); }, t.prototype._parseEscaped = function() { if (this.peek(u.EscapedJavaScript) || this.peek(u.BadEscapedJavaScript)) { var n = this.createNode(m.EscapedValue); return this.consumeToken(), this.finish(n); } if (this.peekDelim("~")) { var n = this.createNode(m.EscapedValue); return this.consumeToken(), this.accept(u.String) || this.accept(u.EscapedJavaScript) ? this.finish(n) : this.finish(n, v.TermExpected); } return null; }, t.prototype._parseOperator = function() { var n = this._parseGuardOperator(); return n || e.prototype._parseOperator.call(this); }, t.prototype._parseGuardOperator = function() { if (this.peekDelim(">")) { var n = this.createNode(m.Operator); return this.consumeToken(), this.acceptDelim("="), n; } else if (this.peekDelim("=")) { var n = this.createNode(m.Operator); return this.consumeToken(), this.acceptDelim("<"), n; } else if (this.peekDelim("<")) { var n = this.createNode(m.Operator); return this.consumeToken(), this.acceptDelim("="), n; } return null; }, t.prototype._parseRuleSetDeclaration = function() { return this.peek(u.AtKeyword) ? this._parseKeyframe() || this._parseMedia(!0) || this._parseImport() || this._parseSupports(!0) || this._parseDetachedRuleSetMixin() || this._parseVariableDeclaration() || e.prototype._parseRuleSetDeclarationAtStatement.call(this) : this._tryParseMixinDeclaration() || this._tryParseRuleset(!0) || this._tryParseMixinReference() || this._parseFunction() || this._parseExtend() || e.prototype._parseRuleSetDeclaration.call(this); }, t.prototype._parseKeyframeIdent = function() { return this._parseIdent([G.Keyframe]) || this._parseVariable(); }, t.prototype._parseKeyframeSelector = function() { return this._parseDetachedRuleSetMixin() || e.prototype._parseKeyframeSelector.call(this); }, t.prototype._parseSimpleSelectorBody = function() { return this._parseSelectorCombinator() || e.prototype._parseSimpleSelectorBody.call(this); }, t.prototype._parseSelector = function(n) { var r = this.create(tn), i = !1; for (n && (i = r.addChild(this._parseCombinator())); r.addChild(this._parseSimpleSelector()); ) { i = !0; var a = this.mark(); if (r.addChild(this._parseGuard()) && this.peek(u.CurlyL)) break; this.restoreAtMark(a), r.addChild(this._parseCombinator()); } return i ? this.finish(r) : null; }, t.prototype._parseSelectorCombinator = function() { if (this.peekDelim("&")) { var n = this.createNode(m.SelectorCombinator); for (this.consumeToken(); !this.hasWhitespace() && (this.acceptDelim("-") || this.accept(u.Num) || this.accept(u.Dimension) || n.addChild(this._parseIdent()) || this.acceptDelim("&")); ) ; return this.finish(n); } return null; }, t.prototype._parseSelectorIdent = function() { if (!this.peekInterpolatedIdent()) return null; var n = this.createNode(m.SelectorInterpolation), r = this._acceptInterpolatedIdent(n); return r ? this.finish(n) : null; }, t.prototype._parsePropertyIdentifier = function(n) { n === void 0 && (n = !1); var r = /^[\w-]+/; if (!this.peekInterpolatedIdent() && !this.peekRegExp(this.token.type, r)) return null; var i = this.mark(), a = this.create(Re); a.isCustomProperty = this.acceptDelim("-") && this.acceptDelim("-"); var o = !1; return n ? a.isCustomProperty ? o = a.addChild(this._parseIdent()) : o = a.addChild(this._parseRegexp(r)) : a.isCustomProperty ? o = this._acceptInterpolatedIdent(a) : o = this._acceptInterpolatedIdent(a, r), o ? (!n && !this.hasWhitespace() && (this.acceptDelim("+"), this.hasWhitespace() || this.acceptIdent("_")), this.finish(a)) : (this.restoreAtMark(i), null); }, t.prototype.peekInterpolatedIdent = function() { return this.peek(u.Ident) || this.peekDelim("@") || this.peekDelim("$") || this.peekDelim("-"); }, t.prototype._acceptInterpolatedIdent = function(n, r) { for (var i = this, a = !1, o = function() { var h = i.mark(); return i.acceptDelim("-") && (i.hasWhitespace() || i.acceptDelim("-"), i.hasWhitespace()) ? (i.restoreAtMark(h), null) : i._parseInterpolation(); }, l = r ? function() { return i.acceptRegexp(r); } : function() { return i.accept(u.Ident); }; (l() || n.addChild(this._parseInterpolation() || this.try(o))) && (a = !0, !this.hasWhitespace()); ) ; return a; }, t.prototype._parseInterpolation = function() { var n = this.mark(); if (this.peekDelim("@") || this.peekDelim("$")) { var r = this.createNode(m.Interpolation); return this.consumeToken(), this.hasWhitespace() || !this.accept(u.CurlyL) ? (this.restoreAtMark(n), null) : r.addChild(this._parseIdent()) ? this.accept(u.CurlyR) ? this.finish(r) : this.finish(r, v.RightCurlyExpected) : this.finish(r, v.IdentifierExpected); } return null; }, t.prototype._tryParseMixinDeclaration = function() { var n = this.mark(), r = this.create($t); if (!r.setIdentifier(this._parseMixinDeclarationIdentifier()) || !this.accept(u.ParenthesisL)) return this.restoreAtMark(n), null; if (r.getParameters().addChild(this._parseMixinParameter())) for (; (this.accept(u.Comma) || this.accept(u.SemiColon)) && !this.peek(u.ParenthesisR); ) r.getParameters().addChild(this._parseMixinParameter()) || this.markError(r, v.IdentifierExpected, [], [u.ParenthesisR]); return this.accept(u.ParenthesisR) ? (r.setGuard(this._parseGuard()), this.peek(u.CurlyL) ? this._parseBody(r, this._parseMixInBodyDeclaration.bind(this)) : (this.restoreAtMark(n), null)) : (this.restoreAtMark(n), null); }, t.prototype._parseMixInBodyDeclaration = function() { return this._parseFontFace() || this._parseRuleSetDeclaration(); }, t.prototype._parseMixinDeclarationIdentifier = function() { var n; if (this.peekDelim("#") || this.peekDelim(".")) { if (n = this.create(Re), this.consumeToken(), this.hasWhitespace() || !n.addChild(this._parseIdent())) return null; } else if (this.peek(u.Hash)) n = this.create(Re), this.consumeToken(); else return null; return n.referenceTypes = [G.Mixin], this.finish(n); }, t.prototype._parsePseudo = function() { if (!this.peek(u.Colon)) return null; var n = this.mark(), r = this.create(qt); return this.consumeToken(), this.acceptIdent("extend") ? this._completeExtends(r) : (this.restoreAtMark(n), e.prototype._parsePseudo.call(this)); }, t.prototype._parseExtend = function() { if (!this.peekDelim("&")) return null; var n = this.mark(), r = this.create(qt); return this.consumeToken(), this.hasWhitespace() || !this.accept(u.Colon) || !this.acceptIdent("extend") ? (this.restoreAtMark(n), null) : this._completeExtends(r); }, t.prototype._completeExtends = function(n) { if (!this.accept(u.ParenthesisL)) return this.finish(n, v.LeftParenthesisExpected); var r = n.getSelectors(); if (!r.addChild(this._parseSelector(!0))) return this.finish(n, v.SelectorExpected); for (; this.accept(u.Comma); ) if (!r.addChild(this._parseSelector(!0))) return this.finish(n, v.SelectorExpected); return this.accept(u.ParenthesisR) ? this.finish(n) : this.finish(n, v.RightParenthesisExpected); }, t.prototype._parseDetachedRuleSetMixin = function() { if (!this.peek(u.AtKeyword)) return null; var n = this.mark(), r = this.create(Fn); return r.addChild(this._parseVariable(!0)) && (this.hasWhitespace() || !this.accept(u.ParenthesisL)) ? (this.restoreAtMark(n), null) : this.accept(u.ParenthesisR) ? this.finish(r) : this.finish(r, v.RightParenthesisExpected); }, t.prototype._tryParseMixinReference = function(n) { n === void 0 && (n = !0); for (var r = this.mark(), i = this.create(Fn), a = this._parseMixinDeclarationIdentifier(); a; ) { this.acceptDelim(">"); var o = this._parseMixinDeclarationIdentifier(); if (o) i.getNamespaces().addChild(a), a = o; else break; } if (!i.setIdentifier(a)) return this.restoreAtMark(r), null; var l = !1; if (this.accept(u.ParenthesisL)) { if (l = !0, i.getArguments().addChild(this._parseMixinArgument())) { for (; (this.accept(u.Comma) || this.accept(u.SemiColon)) && !this.peek(u.ParenthesisR); ) if (!i.getArguments().addChild(this._parseMixinArgument())) return this.finish(i, v.ExpressionExpected); } if (!this.accept(u.ParenthesisR)) return this.finish(i, v.RightParenthesisExpected); a.referenceTypes = [G.Mixin]; } else a.referenceTypes = [G.Mixin, G.Rule]; return this.peek(u.BracketL) ? n || this._addLookupChildren(i) : i.addChild(this._parsePrio()), !l && !this.peek(u.SemiColon) && !this.peek(u.CurlyR) && !this.peek(u.EOF) ? (this.restoreAtMark(r), null) : this.finish(i); }, t.prototype._parseMixinArgument = function() { var n = this.create(Dt), r = this.mark(), i = this._parseVariable(); return i && (this.accept(u.Colon) ? n.setIdentifier(i) : this.restoreAtMark(r)), n.setValue(this._parseDetachedRuleSet() || this._parseExpr(!0)) ? this.finish(n) : (this.restoreAtMark(r), null); }, t.prototype._parseMixinParameter = function() { var n = this.create(On); if (this.peekKeyword("@rest")) { var r = this.create(L); return this.consumeToken(), this.accept(Jr) ? (n.setIdentifier(this.finish(r)), this.finish(n)) : this.finish(n, v.DotExpected, [], [u.Comma, u.ParenthesisR]); } if (this.peek(Jr)) { var i = this.create(L); return this.consumeToken(), n.setIdentifier(this.finish(i)), this.finish(n); } var a = !1; return n.setIdentifier(this._parseVariable()) && (this.accept(u.Colon), a = !0), !n.setDefaultValue(this._parseDetachedRuleSet() || this._parseExpr(!0)) && !a ? null : this.finish(n); }, t.prototype._parseGuard = function() { if (!this.peekIdent("when")) return null; var n = this.create(ch); if (this.consumeToken(), n.isNegated = this.acceptIdent("not"), !n.getConditions().addChild(this._parseGuardCondition())) return this.finish(n, v.ConditionExpected); for (; this.acceptIdent("and") || this.accept(u.Comma); ) if (!n.getConditions().addChild(this._parseGuardCondition())) return this.finish(n, v.ConditionExpected); return this.finish(n); }, t.prototype._parseGuardCondition = function() { if (!this.peek(u.ParenthesisL)) return null; var n = this.create(hh); return this.consumeToken(), n.addChild(this._parseExpr()), this.accept(u.ParenthesisR) ? this.finish(n) : this.finish(n, v.RightParenthesisExpected); }, t.prototype._parseFunction = function() { var n = this.mark(), r = this.create(nn); if (!r.setIdentifier(this._parseFunctionIdentifier())) return null; if (this.hasWhitespace() || !this.accept(u.ParenthesisL)) return this.restoreAtMark(n), null; if (r.getArguments().addChild(this._parseMixinArgument())) { for (; (this.accept(u.Comma) || this.accept(u.SemiColon)) && !this.peek(u.ParenthesisR); ) if (!r.getArguments().addChild(this._parseMixinArgument())) return this.finish(r, v.ExpressionExpected); } return this.accept(u.ParenthesisR) ? this.finish(r) : this.finish(r, v.RightParenthesisExpected); }, t.prototype._parseFunctionIdentifier = function() { if (this.peekDelim("%")) { var n = this.create(Re); return n.referenceTypes = [G.Function], this.consumeToken(), this.finish(n); } return e.prototype._parseFunctionIdentifier.call(this); }, t.prototype._parseURLArgument = function() { var n = this.mark(), r = e.prototype._parseURLArgument.call(this); if (!r || !this.peek(u.ParenthesisR)) { this.restoreAtMark(n); var i = this.create(L); return i.addChild(this._parseBinaryExpr()), this.finish(i); } return r; }, t; }(ci), Pd = function() { var e = function(t, n) { return e = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, i) { r.__proto__ = i; } || function(r, i) { for (var a in i) Object.prototype.hasOwnProperty.call(i, a) && (r[a] = i[a]); }, e(t, n); }; return function(t, n) { if (typeof n != "function" && n !== null) throw new TypeError("Class extends value " + String(n) + " is not a constructor or null"); e(t, n); function r() { this.constructor = t; } t.prototype = n === null ? Object.create(n) : (r.prototype = n.prototype, new r()); }; }(), W = Le(), Id = function(e) { Pd(t, e); function t(n, r) { return e.call(this, "@", n, r) || this; } return t.prototype.createFunctionProposals = function(n, r, i, a) { for (var o = 0, l = n; o < l.length; o++) { var h = l[o], c = { label: h.name, detail: h.example, documentation: h.description, textEdit: B.replace(this.getCompletionRange(r), h.name + "($0)"), insertTextFormat: ke.Snippet, kind: V.Function }; i && (c.sortText = "z"), a.items.push(c); } return a; }, t.prototype.getTermProposals = function(n, r, i) { var a = t.builtInProposals; return n && (a = a.filter(function(o) { return !o.type || !n.restrictions || n.restrictions.indexOf(o.type) !== -1; })), this.createFunctionProposals(a, r, !0, i), e.prototype.getTermProposals.call(this, n, r, i); }, t.prototype.getColorProposals = function(n, r, i) { return this.createFunctionProposals(t.colorProposals, r, !1, i), e.prototype.getColorProposals.call(this, n, r, i); }, t.prototype.getCompletionsForDeclarationProperty = function(n, r) { return this.getCompletionsForSelector(null, !0, r), e.prototype.getCompletionsForDeclarationProperty.call(this, n, r); }, t.builtInProposals = [ { name: "if", example: "if(condition, trueValue [, falseValue]);", description: W("less.builtin.if", "returns one of two values depending on a condition.") }, { name: "boolean", example: "boolean(condition);", description: W("less.builtin.boolean", '"store" a boolean test for later evaluation in a guard or if().') }, { name: "length", example: "length(@list);", description: W("less.builtin.length", "returns the number of elements in a value list") }, { name: "extract", example: "extract(@list, index);", description: W("less.builtin.extract", "returns a value at the specified position in the list") }, { name: "range", example: "range([start, ] end [, step]);", description: W("less.builtin.range", "generate a list spanning a range of values") }, { name: "each", example: "each(@list, ruleset);", description: W("less.builtin.each", "bind the evaluation of a ruleset to each member of a list.") }, { name: "escape", example: "escape(@string);", description: W("less.builtin.escape", "URL encodes a string") }, { name: "e", example: "e(@string);", description: W("less.builtin.e", "escape string content") }, { name: "replace", example: "replace(@string, @pattern, @replacement[, @flags]);", description: W("less.builtin.replace", "string replace") }, { name: "unit", example: "unit(@dimension, [@unit: '']);", description: W("less.builtin.unit", "remove or change the unit of a dimension") }, { name: "color", example: "color(@string);", description: W("less.builtin.color", "parses a string to a color"), type: "color" }, { name: "convert", example: "convert(@value, unit);", description: W("less.builtin.convert", "converts numbers from one type into another") }, { name: "data-uri", example: "data-uri([mimetype,] url);", description: W("less.builtin.data-uri", "inlines a resource and falls back to `url()`"), type: "url" }, { name: "abs", description: W("less.builtin.abs", "absolute value of a number"), example: "abs(number);" }, { name: "acos", description: W("less.builtin.acos", "arccosine - inverse of cosine function"), example: "acos(number);" }, { name: "asin", description: W("less.builtin.asin", "arcsine - inverse of sine function"), example: "asin(number);" }, { name: "ceil", example: "ceil(@number);", description: W("less.builtin.ceil", "rounds up to an integer") }, { name: "cos", description: W("less.builtin.cos", "cosine function"), example: "cos(number);" }, { name: "floor", description: W("less.builtin.floor", "rounds down to an integer"), example: "floor(@number);" }, { name: "percentage", description: W("less.builtin.percentage", "converts to a %, e.g. 0.5 > 50%"), example: "percentage(@number);", type: "percentage" }, { name: "round", description: W("less.builtin.round", "rounds a number to a number of places"), example: "round(number, [places: 0]);" }, { name: "sqrt", description: W("less.builtin.sqrt", "calculates square root of a number"), example: "sqrt(number);" }, { name: "sin", description: W("less.builtin.sin", "sine function"), example: "sin(number);" }, { name: "tan", description: W("less.builtin.tan", "tangent function"), example: "tan(number);" }, { name: "atan", description: W("less.builtin.atan", "arctangent - inverse of tangent function"), example: "atan(number);" }, { name: "pi", description: W("less.builtin.pi", "returns pi"), example: "pi();" }, { name: "pow", description: W("less.builtin.pow", "first argument raised to the power of the second argument"), example: "pow(@base, @exponent);" }, { name: "mod", description: W("less.builtin.mod", "first argument modulus second argument"), example: "mod(number, number);" }, { name: "min", description: W("less.builtin.min", "returns the lowest of one or more values"), example: "min(@x, @y);" }, { name: "max", description: W("less.builtin.max", "returns the lowest of one or more values"), example: "max(@x, @y);" } ], t.colorProposals = [ { name: "argb", example: "argb(@color);", description: W("less.builtin.argb", "creates a #AARRGGBB") }, { name: "hsl", example: "hsl(@hue, @saturation, @lightness);", description: W("less.builtin.hsl", "creates a color") }, { name: "hsla", example: "hsla(@hue, @saturation, @lightness, @alpha);", description: W("less.builtin.hsla", "creates a color") }, { name: "hsv", example: "hsv(@hue, @saturation, @value);", description: W("less.builtin.hsv", "creates a color") }, { name: "hsva", example: "hsva(@hue, @saturation, @value, @alpha);", description: W("less.builtin.hsva", "creates a color") }, { name: "hue", example: "hue(@color);", description: W("less.builtin.hue", "returns the `hue` channel of `@color` in the HSL space") }, { name: "saturation", example: "saturation(@color);", description: W("less.builtin.saturation", "returns the `saturation` channel of `@color` in the HSL space") }, { name: "lightness", example: "lightness(@color);", description: W("less.builtin.lightness", "returns the `lightness` channel of `@color` in the HSL space") }, { name: "hsvhue", example: "hsvhue(@color);", description: W("less.builtin.hsvhue", "returns the `hue` channel of `@color` in the HSV space") }, { name: "hsvsaturation", example: "hsvsaturation(@color);", description: W("less.builtin.hsvsaturation", "returns the `saturation` channel of `@color` in the HSV space") }, { name: "hsvvalue", example: "hsvvalue(@color);", description: W("less.builtin.hsvvalue", "returns the `value` channel of `@color` in the HSV space") }, { name: "red", example: "red(@color);", description: W("less.builtin.red", "returns the `red` channel of `@color`") }, { name: "green", example: "green(@color);", description: W("less.builtin.green", "returns the `green` channel of `@color`") }, { name: "blue", example: "blue(@color);", description: W("less.builtin.blue", "returns the `blue` channel of `@color`") }, { name: "alpha", example: "alpha(@color);", description: W("less.builtin.alpha", "returns the `alpha` channel of `@color`") }, { name: "luma", example: "luma(@color);", description: W("less.builtin.luma", "returns the `luma` value (perceptual brightness) of `@color`") }, { name: "saturate", example: "saturate(@color, 10%);", description: W("less.builtin.saturate", "return `@color` 10% points more saturated") }, { name: "desaturate", example: "desaturate(@color, 10%);", description: W("less.builtin.desaturate", "return `@color` 10% points less saturated") }, { name: "lighten", example: "lighten(@color, 10%);", description: W("less.builtin.lighten", "return `@color` 10% points lighter") }, { name: "darken", example: "darken(@color, 10%);", description: W("less.builtin.darken", "return `@color` 10% points darker") }, { name: "fadein", example: "fadein(@color, 10%);", description: W("less.builtin.fadein", "return `@color` 10% points less transparent") }, { name: "fadeout", example: "fadeout(@color, 10%);", description: W("less.builtin.fadeout", "return `@color` 10% points more transparent") }, { name: "fade", example: "fade(@color, 50%);", description: W("less.builtin.fade", "return `@color` with 50% transparency") }, { name: "spin", example: "spin(@color, 10);", description: W("less.builtin.spin", "return `@color` with a 10 degree larger in hue") }, { name: "mix", example: "mix(@color1, @color2, [@weight: 50%]);", description: W("less.builtin.mix", "return a mix of `@color1` and `@color2`") }, { name: "greyscale", example: "greyscale(@color);", description: W("less.builtin.greyscale", "returns a grey, 100% desaturated color") }, { name: "contrast", example: "contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);", description: W("less.builtin.contrast", "return `@darkcolor` if `@color1 is> 43% luma` otherwise return `@lightcolor`, see notes") }, { name: "multiply", example: "multiply(@color1, @color2);" }, { name: "screen", example: "screen(@color1, @color2);" }, { name: "overlay", example: "overlay(@color1, @color2);" }, { name: "softlight", example: "softlight(@color1, @color2);" }, { name: "hardlight", example: "hardlight(@color1, @color2);" }, { name: "difference", example: "difference(@color1, @color2);" }, { name: "exclusion", example: "exclusion(@color1, @color2);" }, { name: "average", example: "average(@color1, @color2);" }, { name: "negation", example: "negation(@color1, @color2);" } ], t; }(di); function Ld(e, t) { var n = Td(e); return Wd(n, t); } function Td(e) { function t(p) { return e.positionAt(p.offset).line; } function n(p) { return e.positionAt(p.offset + p.len).line; } function r() { switch (e.languageId) { case "scss": return new zo(); case "less": return new Mo(); default: return new en(); } } function i(p, f) { var g = t(p), w = n(p); return g !== w ? { startLine: g, endLine: w, kind: f } : null; } var a = [], o = [], l = r(); l.ignoreComment = !1, l.setSource(e.getText()); for (var h = l.scan(), c = null, d = function() { switch (h.type) { case u.CurlyL: case Ln: { o.push({ line: t(h), type: "brace", isStart: !0 }); break; } case u.CurlyR: { if (o.length !== 0) { var p = Bs(o, "brace"); if (!p) break; var f = n(h); p.type === "brace" && (c && n(c) !== f && f--, p.line !== f && a.push({ startLine: p.line, endLine: f, kind: void 0 })); } break; } case u.Comment: { var g = function(A) { return A === "#region" ? { line: t(h), type: "comment", isStart: !0 } : { line: n(h), type: "comment", isStart: !1 }; }, w = function(A) { var C = A.text.match(/^\s*\/\*\s*(#region|#endregion)\b\s*(.*?)\s*\*\//); if (C) return g(C[1]); if (e.languageId === "scss" || e.languageId === "less") { var R = A.text.match(/^\s*\/\/\s*(#region|#endregion)\b\s*(.*?)\s*/); if (R) return g(R[1]); } return null; }, b = w(h); if (b) if (b.isStart) o.push(b); else { var p = Bs(o, "comment"); if (!p) break; p.type === "comment" && p.line !== b.line && a.push({ startLine: p.line, endLine: b.line, kind: "region" }); } else { var y = i(h, "comment"); y && a.push(y); } break; } } c = h, h = l.scan(); }; h.type !== u.EOF; ) d(); return a; } function Bs(e, t) { if (e.length === 0) return null; for (var n = e.length - 1; n >= 0; n--) if (e[n].type === t && e[n].isStart) return e.splice(n, 1)[0]; return null; } function Wd(e, t) { var n = t && t.rangeLimit || Number.MAX_VALUE, r = e.sort(function(o, l) { var h = o.startLine - l.startLine; return h === 0 && (h = o.endLine - l.endLine), h; }), i = [], a = -1; return r.forEach(function(o) { o.startLine < a && a < o.endLine || (i.push(o), a = o.endLine); }), i.length < n ? i : i.slice(0, n); } var Od = { version: 1.1, properties: [ { name: "additive-symbols", browsers: [ "FF33" ], syntax: "[ && ]#", relevance: 50, description: "@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor. Needs to be specified if the counter system is 'additive'.", restrictions: [ "integer", "string", "image", "identifier" ] }, { name: "align-content", values: [ { name: "center", description: "Lines are packed toward the center of the flex container." }, { name: "flex-end", description: "Lines are packed toward the end of the flex container." }, { name: "flex-start", description: "Lines are packed toward the start of the flex container." }, { name: "space-around", description: "Lines are evenly distributed in the flex container, with half-size spaces on either end." }, { name: "space-between", description: "Lines are evenly distributed in the flex container." }, { name: "stretch", description: "Lines stretch to take up the remaining space." } ], syntax: "normal | | | ? ", relevance: 62, description: "Aligns a flex container\u2019s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.", restrictions: [ "enum" ] }, { name: "align-items", values: [ { name: "baseline", description: "If the flex item\u2019s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment." }, { name: "center", description: "The flex item\u2019s margin box is centered in the cross axis within the line." }, { name: "flex-end", description: "The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line." }, { name: "flex-start", description: "The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line." }, { name: "stretch", description: "If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched." } ], syntax: "normal | stretch | | [ ? ]", relevance: 86, description: "Aligns flex items along the cross axis of the current line of the flex container.", restrictions: [ "enum" ] }, { name: "justify-items", values: [ { name: "auto" }, { name: "normal" }, { name: "end" }, { name: "start" }, { name: "flex-end", description: '"Flex items are packed toward the end of the line."' }, { name: "flex-start", description: '"Flex items are packed toward the start of the line."' }, { name: "self-end", description: "The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis." }, { name: "self-start", description: "The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.." }, { name: "center", description: "The items are packed flush to each other toward the center of the of the alignment container." }, { name: "left" }, { name: "right" }, { name: "baseline" }, { name: "first baseline" }, { name: "last baseline" }, { name: "stretch", description: "If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched." }, { name: "save" }, { name: "unsave" }, { name: "legacy" } ], syntax: "normal | stretch | | ? [ | left | right ] | legacy | legacy && [ left | right | center ]", relevance: 53, description: "Defines the default justify-self for all items of the box, giving them the default way of justifying each box along the appropriate axis", restrictions: [ "enum" ] }, { name: "justify-self", values: [ { name: "auto" }, { name: "normal" }, { name: "end" }, { name: "start" }, { name: "flex-end", description: '"Flex items are packed toward the end of the line."' }, { name: "flex-start", description: '"Flex items are packed toward the start of the line."' }, { name: "self-end", description: "The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis." }, { name: "self-start", description: "The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.." }, { name: "center", description: "The items are packed flush to each other toward the center of the of the alignment container." }, { name: "left" }, { name: "right" }, { name: "baseline" }, { name: "first baseline" }, { name: "last baseline" }, { name: "stretch", description: "If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched." }, { name: "save" }, { name: "unsave" } ], syntax: "auto | normal | stretch | | ? [ | left | right ]", relevance: 53, description: "Defines the way of justifying a box inside its container along the appropriate axis.", restrictions: [ "enum" ] }, { name: "align-self", values: [ { name: "auto", description: "Computes to the value of 'align-items' on the element\u2019s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself." }, { name: "baseline", description: "If the flex item\u2019s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment." }, { name: "center", description: "The flex item\u2019s margin box is centered in the cross axis within the line." }, { name: "flex-end", description: "The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line." }, { name: "flex-start", description: "The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line." }, { name: "stretch", description: "If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched." } ], syntax: "auto | normal | stretch | | ? ", relevance: 72, description: "Allows the default alignment along the cross axis to be overridden for individual flex items.", restrictions: [ "enum" ] }, { name: "all", browsers: [ "E79", "FF27", "S9.1", "C37", "O24" ], values: [], syntax: "initial | inherit | unset | revert", relevance: 52, references: [ { name: "MDN Reference", url: "https://developer.mozilla.org/docs/Web/CSS/all" } ], description: "Shorthand that resets all properties except 'direction' and 'unicode-bidi'.", restrictions: [ "enum" ] }, { name: "alt", browsers: [ "S9" ], values: [], relevance: 50, references: [ { name: "MDN Reference", url: "https://developer.mozilla.org/docs/Web/CSS/alt" } ], description: "Provides alternative text for assistive technology to replace the generated content of a ::before or ::after element.", restrictions: [ "string", "enum" ] }, { name: "animation", values: [ { name: "alternate", description: "The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction." }, { name: "alternate-reverse", description: "The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction." }, { name: "backwards", description: "The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'." }, { name: "both", description: "Both forwards and backwards fill modes are applied." }, { name: "forwards", description: "The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes." }, { name: "infinite", description: "Causes the animation to repeat forever." }, { name: "none", description: "No animation is performed" }, { name: "normal", description: "Normal playback." }, { name: "reverse", description: "All iterations of the animation are played in the reverse direction from the way they were specified." } ], syntax: "#", relevance: 82, references: [ { name: "MDN Reference", url: "https://developer.mozilla.org/docs/Web/CSS/animation" } ], description: "Shorthand property combines six of the animation properties into a single property.", restrictions: [ "time", "timing-function", "enum", "identifier", "number" ] }, { name: "animation-delay", syntax: "