@arcgis/coding-components
Version:
Contains components for editing code in different languages. The currently supported languages are html, css, json, TypeScript, JavaScript, and Arcade.
1,051 lines (1,049 loc) • 512 kB
JavaScript
class Ro {
constructor() {
this.listeners = [], this.unexpectedErrorHandler = function(t) {
setTimeout(() => {
throw t.stack ? _t.isErrorNoTelemetry(t) ? new _t(t.message + `
` + 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);
}
// For external errors, we don't want the listeners to be called
onUnexpectedExternalError(t) {
this.unexpectedErrorHandler(t);
}
}
const Eo = new Ro();
function Vt(e) {
Mo(e) || Eo.onUnexpectedError(e);
}
function Ur(e) {
if (e instanceof Error) {
const { name: t, message: n } = e, r = e.stacktrace || e.stack;
return {
$isError: !0,
name: t,
message: n,
stack: r,
noTelemetry: _t.isErrorNoTelemetry(e)
};
}
return e;
}
const Hn = "Canceled";
function Mo(e) {
return e instanceof Co ? !0 : e instanceof Error && e.name === Hn && e.message === Hn;
}
class Co extends Error {
constructor() {
super(Hn), this.name = this.message;
}
}
class _t extends Error {
constructor(t) {
super(t), this.name = "CodeExpectedError";
}
static fromError(t) {
if (t instanceof _t)
return t;
const n = new _t();
return n.message = t.message, n.stack = t.stack, n;
}
static isErrorNoTelemetry(t) {
return t.name === "CodeExpectedError";
}
}
class ye extends Error {
constructor(t) {
super(t || "An unexpected bug occurred."), Object.setPrototypeOf(this, ye.prototype);
}
}
function To(e, t) {
const n = this;
let r = !1, i;
return function() {
return r || (r = !0, i = e.apply(n, arguments)), i;
};
}
var un;
(function(e) {
function t(y) {
return y && typeof y == "object" && typeof y[Symbol.iterator] == "function";
}
e.is = t;
const n = Object.freeze([]);
function r() {
return n;
}
e.empty = r;
function* i(y) {
yield y;
}
e.single = i;
function s(y) {
return t(y) ? y : i(y);
}
e.wrap = s;
function a(y) {
return y || n;
}
e.from = a;
function* l(y) {
for (let b = y.length - 1; b >= 0; b--)
yield y[b];
}
e.reverse = l;
function o(y) {
return !y || y[Symbol.iterator]().next().done === !0;
}
e.isEmpty = o;
function u(y) {
return y[Symbol.iterator]().next().value;
}
e.first = u;
function h(y, b) {
let L = 0;
for (const S of y)
if (b(S, L++))
return !0;
return !1;
}
e.some = h;
function c(y, b) {
for (const L of y)
if (b(L))
return L;
}
e.find = c;
function* d(y, b) {
for (const L of y)
b(L) && (yield L);
}
e.filter = d;
function* m(y, b) {
let L = 0;
for (const S of y)
yield b(S, L++);
}
e.map = m;
function* g(y, b) {
let L = 0;
for (const S of y)
yield* b(S, L++);
}
e.flatMap = g;
function* p(...y) {
for (const b of y)
yield* b;
}
e.concat = p;
function v(y, b, L) {
let S = L;
for (const M of y)
S = b(S, M);
return S;
}
e.reduce = v;
function* w(y, b, L = y.length) {
for (b < 0 && (b += y.length), L < 0 ? L += y.length : L > y.length && (L = y.length); b < L; b++)
yield y[b];
}
e.slice = w;
function _(y, b = Number.POSITIVE_INFINITY) {
const L = [];
if (b === 0)
return [L, y];
const S = y[Symbol.iterator]();
for (let M = 0; M < b; M++) {
const F = S.next();
if (F.done)
return [L, e.empty()];
L.push(F.value);
}
return [L, { [Symbol.iterator]() {
return S;
} }];
}
e.consume = _;
async function x(y) {
const b = [];
for await (const L of y)
b.push(L);
return Promise.resolve(b);
}
e.asyncToArray = x;
})(un || (un = {}));
function Oa(e) {
if (un.is(e)) {
const 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 AggregateError(t, "Encountered errors while disposing of store");
return Array.isArray(e) ? [] : e;
} else if (e)
return e.dispose(), e;
}
function Po(...e) {
return cn(() => Oa(e));
}
function cn(e) {
return {
dispose: To(() => {
e();
})
};
}
class Ht {
static {
this.DISABLE_DISPOSED_WARNING = !1;
}
constructor() {
this._toDispose = /* @__PURE__ */ new Set(), this._isDisposed = !1;
}
/**
* Dispose of all registered disposables and mark this object as disposed.
*
* Any future disposables added to this object will be disposed of on `add`.
*/
dispose() {
this._isDisposed || (this._isDisposed = !0, this.clear());
}
/**
* @return `true` if this object has been disposed of.
*/
get isDisposed() {
return this._isDisposed;
}
/**
* Dispose of all registered disposables but do not mark this object as disposed.
*/
clear() {
if (this._toDispose.size !== 0)
try {
Oa(this._toDispose);
} finally {
this._toDispose.clear();
}
}
/**
* Add a new {@link IDisposable disposable} to the collection.
*/
add(t) {
if (!t)
return t;
if (t === this)
throw new Error("Cannot register a disposable on itself!");
return this._isDisposed ? Ht.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;
}
/**
* Deletes the value from the store, but does not dispose it.
*/
deleteAndLeak(t) {
t && this._toDispose.has(t) && this._toDispose.delete(t);
}
}
class fn {
static {
this.None = Object.freeze({ dispose() {
} });
}
constructor() {
this._store = new Ht(), this._store;
}
dispose() {
this._store.dispose();
}
/**
* Adds `o` to the collection of disposables managed by this object.
*/
_register(t) {
if (t === this)
throw new Error("Cannot register a disposable on itself!");
return this._store.add(t);
}
}
class J {
static {
this.Undefined = new J(void 0);
}
constructor(t) {
this.element = t, this.next = J.Undefined, this.prev = J.Undefined;
}
}
class Io {
constructor() {
this._first = J.Undefined, this._last = J.Undefined, this._size = 0;
}
get size() {
return this._size;
}
isEmpty() {
return this._first === J.Undefined;
}
clear() {
let t = this._first;
for (; t !== J.Undefined; ) {
const n = t.next;
t.prev = J.Undefined, t.next = J.Undefined, t = n;
}
this._first = J.Undefined, this._last = J.Undefined, this._size = 0;
}
unshift(t) {
return this._insert(t, !1);
}
push(t) {
return this._insert(t, !0);
}
_insert(t, n) {
const r = new J(t);
if (this._first === J.Undefined)
this._first = r, this._last = r;
else if (n) {
const s = this._last;
this._last = r, r.prev = s, s.next = r;
} else {
const s = this._first;
this._first = r, r.next = s, s.prev = r;
}
this._size += 1;
let i = !1;
return () => {
i || (i = !0, this._remove(r));
};
}
shift() {
if (this._first !== J.Undefined) {
const t = this._first.element;
return this._remove(this._first), t;
}
}
pop() {
if (this._last !== J.Undefined) {
const t = this._last.element;
return this._remove(this._last), t;
}
}
_remove(t) {
if (t.prev !== J.Undefined && t.next !== J.Undefined) {
const n = t.prev;
n.next = t.next, t.next.prev = n;
} else t.prev === J.Undefined && t.next === J.Undefined ? (this._first = J.Undefined, this._last = J.Undefined) : t.next === J.Undefined ? (this._last = this._last.prev, this._last.next = J.Undefined) : t.prev === J.Undefined && (this._first = this._first.next, this._first.prev = J.Undefined);
this._size -= 1;
}
*[Symbol.iterator]() {
let t = this._first;
for (; t !== J.Undefined; )
yield t.element, t = t.next;
}
}
const Fo = globalThis.performance && typeof globalThis.performance.now == "function";
class Mn {
static create(t) {
return new Mn(t);
}
constructor(t) {
this._now = Fo && t === !1 ? Date.now : globalThis.performance.now.bind(globalThis.performance), this._startTime = this._now(), this._stopTime = -1;
}
stop() {
this._stopTime = this._now();
}
reset() {
this._startTime = this._now(), this._stopTime = -1;
}
elapsed() {
return this._stopTime !== -1 ? this._stopTime - this._startTime : this._now() - this._startTime;
}
}
var hn;
(function(e) {
e.None = () => fn.None;
function t(k, R) {
return d(k, () => {
}, 0, void 0, !0, void 0, R);
}
e.defer = t;
function n(k) {
return (R, I = null, T) => {
let P = !1, D;
return D = k((B) => {
if (!P)
return D ? D.dispose() : P = !0, R.call(I, B);
}, null, T), P && D.dispose(), D;
};
}
e.once = n;
function r(k, R) {
return e.once(e.filter(k, R));
}
e.onceIf = r;
function i(k, R, I) {
return h((T, P = null, D) => k((B) => T.call(P, R(B)), null, D), I);
}
e.map = i;
function s(k, R, I) {
return h((T, P = null, D) => k((B) => {
R(B), T.call(P, B);
}, null, D), I);
}
e.forEach = s;
function a(k, R, I) {
return h((T, P = null, D) => k((B) => R(B) && T.call(P, B), null, D), I);
}
e.filter = a;
function l(k) {
return k;
}
e.signal = l;
function o(...k) {
return (R, I = null, T) => {
const P = Po(...k.map((D) => D((B) => R.call(I, B))));
return c(P, T);
};
}
e.any = o;
function u(k, R, I, T) {
let P = I;
return i(k, (D) => (P = R(P, D), P), T);
}
e.reduce = u;
function h(k, R) {
let I;
const T = {
onWillAddFirstListener() {
I = k(P.fire, P);
},
onDidRemoveLastListener() {
I?.dispose();
}
}, P = new _e(T);
return R?.add(P), P.event;
}
function c(k, R) {
return R instanceof Array ? R.push(k) : R && R.add(k), k;
}
function d(k, R, I = 100, T = !1, P = !1, D, B) {
let j, ee, ot, Gt = 0, Rt;
const So = {
leakWarningThreshold: D,
onWillAddFirstListener() {
j = k((Ao) => {
Gt++, ee = R(ee, Ao), T && !ot && (Jt.fire(ee), ee = void 0), Rt = () => {
const ko = ee;
ee = void 0, ot = void 0, (!T || Gt > 1) && Jt.fire(ko), Gt = 0;
}, typeof I == "number" ? (clearTimeout(ot), ot = setTimeout(Rt, I)) : ot === void 0 && (ot = 0, queueMicrotask(Rt));
});
},
onWillRemoveListener() {
P && Gt > 0 && Rt?.();
},
onDidRemoveLastListener() {
Rt = void 0, j.dispose();
}
}, Jt = new _e(So);
return B?.add(Jt), Jt.event;
}
e.debounce = d;
function m(k, R = 0, I) {
return e.debounce(k, (T, P) => T ? (T.push(P), T) : [P], R, void 0, !0, void 0, I);
}
e.accumulate = m;
function g(k, R = (T, P) => T === P, I) {
let T = !0, P;
return a(k, (D) => {
const B = T || !R(D, P);
return T = !1, P = D, B;
}, I);
}
e.latch = g;
function p(k, R, I) {
return [
e.filter(k, R, I),
e.filter(k, (T) => !R(T), I)
];
}
e.split = p;
function v(k, R = !1, I = [], T) {
let P = I.slice(), D = k((ee) => {
P ? P.push(ee) : j.fire(ee);
});
T && T.add(D);
const B = () => {
P?.forEach((ee) => j.fire(ee)), P = null;
}, j = new _e({
onWillAddFirstListener() {
D || (D = k((ee) => j.fire(ee)), T && T.add(D));
},
onDidAddFirstListener() {
P && (R ? setTimeout(B) : B());
},
onDidRemoveLastListener() {
D && D.dispose(), D = null;
}
});
return T && T.add(j), j.event;
}
e.buffer = v;
function w(k, R) {
return (T, P, D) => {
const B = R(new x());
return k(function(j) {
const ee = B.evaluate(j);
ee !== _ && T.call(P, ee);
}, void 0, D);
};
}
e.chain = w;
const _ = Symbol("HaltChainable");
class x {
constructor() {
this.steps = [];
}
map(R) {
return this.steps.push(R), this;
}
forEach(R) {
return this.steps.push((I) => (R(I), I)), this;
}
filter(R) {
return this.steps.push((I) => R(I) ? I : _), this;
}
reduce(R, I) {
let T = I;
return this.steps.push((P) => (T = R(T, P), T)), this;
}
latch(R = (I, T) => I === T) {
let I = !0, T;
return this.steps.push((P) => {
const D = I || !R(P, T);
return I = !1, T = P, D ? P : _;
}), this;
}
evaluate(R) {
for (const I of this.steps)
if (R = I(R), R === _)
break;
return R;
}
}
function y(k, R, I = (T) => T) {
const T = (...j) => B.fire(I(...j)), P = () => k.on(R, T), D = () => k.removeListener(R, T), B = new _e({ onWillAddFirstListener: P, onDidRemoveLastListener: D });
return B.event;
}
e.fromNodeEventEmitter = y;
function b(k, R, I = (T) => T) {
const T = (...j) => B.fire(I(...j)), P = () => k.addEventListener(R, T), D = () => k.removeEventListener(R, T), B = new _e({ onWillAddFirstListener: P, onDidRemoveLastListener: D });
return B.event;
}
e.fromDOMEventEmitter = b;
function L(k) {
return new Promise((R) => n(k)(R));
}
e.toPromise = L;
function S(k) {
const R = new _e();
return k.then((I) => {
R.fire(I);
}, () => {
R.fire(void 0);
}).finally(() => {
R.dispose();
}), R.event;
}
e.fromPromise = S;
function M(k, R) {
return k((I) => R.fire(I));
}
e.forward = M;
function F(k, R, I) {
return R(I), k((T) => R(T));
}
e.runAndSubscribe = F;
class O {
constructor(R, I) {
this._observable = R, this._counter = 0, this._hasChanged = !1;
const T = {
onWillAddFirstListener: () => {
R.addObserver(this), this._observable.reportChanges();
},
onDidRemoveLastListener: () => {
R.removeObserver(this);
}
};
this.emitter = new _e(T), I && I.add(this.emitter);
}
beginUpdate(R) {
this._counter++;
}
handlePossibleChange(R) {
}
handleChange(R, I) {
this._hasChanged = !0;
}
endUpdate(R) {
this._counter--, this._counter === 0 && (this._observable.reportChanges(), this._hasChanged && (this._hasChanged = !1, this.emitter.fire(this._observable.get())));
}
}
function C(k, R) {
return new O(k, R).emitter.event;
}
e.fromObservable = C;
function N(k) {
return (R, I, T) => {
let P = 0, D = !1;
const B = {
beginUpdate() {
P++;
},
endUpdate() {
P--, P === 0 && (k.reportChanges(), D && (D = !1, R.call(I)));
},
handlePossibleChange() {
},
handleChange() {
D = !0;
}
};
k.addObserver(B), k.reportChanges();
const j = {
dispose() {
k.removeObserver(B);
}
};
return T instanceof Ht ? T.add(j) : Array.isArray(T) && T.push(j), j;
};
}
e.fromObservableLight = N;
})(hn || (hn = {}));
class dn {
static {
this.all = /* @__PURE__ */ new Set();
}
static {
this._idPool = 0;
}
constructor(t) {
this.listenerCount = 0, this.invocationCount = 0, this.elapsedOverall = 0, this.durations = [], this.name = `${t}_${dn._idPool++}`, dn.all.add(this);
}
start(t) {
this._stopWatch = new Mn(), this.listenerCount = t;
}
stop() {
if (this._stopWatch) {
const t = this._stopWatch.elapsed();
this.durations.push(t), this.elapsedOverall += t, this.invocationCount += 1, this._stopWatch = void 0;
}
}
}
let Vo = -1;
class Tr {
static {
this._idPool = 1;
}
constructor(t, n, r = (Tr._idPool++).toString(16).padStart(3, "0")) {
this._errorHandler = t, this.threshold = n, this.name = r, this._warnCountdown = 0;
}
dispose() {
this._stacks?.clear();
}
check(t, n) {
const r = this.threshold;
if (r <= 0 || n < r)
return;
this._stacks || (this._stacks = /* @__PURE__ */ new Map());
const i = this._stacks.get(t.value) || 0;
if (this._stacks.set(t.value, i + 1), this._warnCountdown -= 1, this._warnCountdown <= 0) {
this._warnCountdown = r * 0.5;
const [s, a] = this.getMostFrequentStack(), l = `[${this.name}] potential listener LEAK detected, having ${n} listeners already. MOST frequent listener (${a}):`;
console.warn(l), console.warn(s);
const o = new Do(l, s);
this._errorHandler(o);
}
return () => {
const s = this._stacks.get(t.value) || 0;
this._stacks.set(t.value, s - 1);
};
}
getMostFrequentStack() {
if (!this._stacks)
return;
let t, n = 0;
for (const [r, i] of this._stacks)
(!t || n < i) && (t = [r, i], n = i);
return t;
}
}
class Pr {
static create() {
const t = new Error();
return new Pr(t.stack ?? "");
}
constructor(t) {
this.value = t;
}
print() {
console.warn(this.value.split(`
`).slice(2).join(`
`));
}
}
class Do extends Error {
constructor(t, n) {
super(t), this.name = "ListenerLeakError", this.stack = n;
}
}
class Oo extends Error {
constructor(t, n) {
super(t), this.name = "ListenerRefusalError", this.stack = n;
}
}
class Tn {
constructor(t) {
this.value = t;
}
}
const Bo = 2;
class _e {
constructor(t) {
this._size = 0, this._options = t, this._leakageMon = this._options?.leakWarningThreshold ? new Tr(t?.onListenerError ?? Vt, this._options?.leakWarningThreshold ?? Vo) : void 0, this._perfMon = this._options?._profName ? new dn(this._options._profName) : void 0, this._deliveryQueue = this._options?.deliveryQueue;
}
dispose() {
this._disposed || (this._disposed = !0, this._deliveryQueue?.current === this && this._deliveryQueue.reset(), this._listeners && (this._listeners = void 0, this._size = 0), this._options?.onDidRemoveLastListener?.(), this._leakageMon?.dispose());
}
/**
* For the public to allow to subscribe
* to events from this Emitter
*/
get event() {
return this._event ??= (t, n, r) => {
if (this._leakageMon && this._size > this._leakageMon.threshold ** 2) {
const l = `[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;
console.warn(l);
const o = this._leakageMon.getMostFrequentStack() ?? ["UNKNOWN stack", -1], u = new Oo(`${l}. HINT: Stack shows most frequent listener (${o[1]}-times)`, o[0]);
return (this._options?.onListenerError || Vt)(u), fn.None;
}
if (this._disposed)
return fn.None;
n && (t = t.bind(n));
const i = new Tn(t);
let s;
this._leakageMon && this._size >= Math.ceil(this._leakageMon.threshold * 0.2) && (i.stack = Pr.create(), s = this._leakageMon.check(i.stack, this._size + 1)), this._listeners ? this._listeners instanceof Tn ? (this._deliveryQueue ??= new $o(), this._listeners = [this._listeners, i]) : this._listeners.push(i) : (this._options?.onWillAddFirstListener?.(this), this._listeners = i, this._options?.onDidAddFirstListener?.(this)), this._size++;
const a = cn(() => {
s?.(), this._removeListener(i);
});
return r instanceof Ht ? r.add(a) : Array.isArray(r) && r.push(a), a;
}, this._event;
}
_removeListener(t) {
if (this._options?.onWillRemoveListener?.(this), !this._listeners)
return;
if (this._size === 1) {
this._listeners = void 0, this._options?.onDidRemoveLastListener?.(this), this._size = 0;
return;
}
const n = this._listeners, r = n.indexOf(t);
if (r === -1)
throw console.log("disposed?", this._disposed), console.log("size?", this._size), console.log("arr?", JSON.stringify(this._listeners)), new Error("Attempted to dispose unknown listener");
this._size--, n[r] = void 0;
const i = this._deliveryQueue.current === this;
if (this._size * Bo <= n.length) {
let s = 0;
for (let a = 0; a < n.length; a++)
n[a] ? n[s++] = n[a] : i && (this._deliveryQueue.end--, s < this._deliveryQueue.i && this._deliveryQueue.i--);
n.length = s;
}
}
_deliver(t, n) {
if (!t)
return;
const r = this._options?.onListenerError || Vt;
if (!r) {
t.value(n);
return;
}
try {
t.value(n);
} catch (i) {
r(i);
}
}
/** Delivers items in the queue. Assumes the queue is ready to go. */
_deliverQueue(t) {
const n = t.current._listeners;
for (; t.i < t.end; )
this._deliver(n[t.i++], t.value);
t.reset();
}
/**
* To be kept private to fire an event to
* subscribers
*/
fire(t) {
if (this._deliveryQueue?.current && (this._deliverQueue(this._deliveryQueue), this._perfMon?.stop()), this._perfMon?.start(this._size), this._listeners) if (this._listeners instanceof Tn)
this._deliver(this._listeners, t);
else {
const n = this._deliveryQueue;
n.enqueue(this, t, this._listeners.length), this._deliverQueue(n);
}
this._perfMon?.stop();
}
hasListeners() {
return this._size > 0;
}
}
class $o {
constructor() {
this.i = -1, this.end = 0;
}
enqueue(t, n, r) {
this.i = 0, this.end = r, this.current = t, this.value = n;
}
reset() {
this.i = this.end, this.current = void 0, this.value = void 0;
}
}
function Uo() {
return globalThis._VSCODE_NLS_MESSAGES;
}
function Ba() {
return globalThis._VSCODE_NLS_LANGUAGE;
}
const qo = Ba() === "pseudo" || typeof document < "u" && document.location && document.location.hash.indexOf("pseudo=true") >= 0;
function qr(e, t) {
let n;
return t.length === 0 ? n = e : n = e.replace(/\{(\d+)\}/g, (r, i) => {
const s = i[0], a = t[s];
let l = r;
return typeof a == "string" ? l = a : (typeof a == "number" || typeof a == "boolean" || a === void 0 || a === null) && (l = String(a)), l;
}), qo && (n = "[" + n.replace(/[aouei]/g, "$&$&") + "]"), n;
}
function X(e, t, ...n) {
return qr(typeof e == "number" ? jo(e, t) : t, n);
}
function jo(e, t) {
const n = Uo()?.[e];
if (typeof n != "string") {
if (typeof t == "string")
return t;
throw new Error(`!!! NLS MISSING: ${e} !!!`);
}
return n;
}
const bt = "en";
let zn = !1, Gn = !1, Pn = !1, $a = !1, Ir = !1, Xt, In = bt, jr = bt, Wo, De;
const Oe = globalThis;
let ve;
typeof Oe.vscode < "u" && typeof Oe.vscode.process < "u" ? ve = Oe.vscode.process : typeof process < "u" && typeof process?.versions?.node == "string" && (ve = process);
const Ho = typeof ve?.versions?.electron == "string", zo = Ho && ve?.type === "renderer";
if (typeof ve == "object") {
zn = ve.platform === "win32", Gn = ve.platform === "darwin", Pn = ve.platform === "linux", Pn && ve.env.SNAP && ve.env.SNAP_REVISION, ve.env.CI || ve.env.BUILD_ARTIFACTSTAGINGDIRECTORY, Xt = bt, In = bt;
const e = ve.env.VSCODE_NLS_CONFIG;
if (e)
try {
const t = JSON.parse(e);
Xt = t.userLocale, jr = t.osLocale, In = t.resolvedLanguage || bt, Wo = t.languagePack?.translationsConfigFile;
} catch {
}
$a = !0;
} else typeof navigator == "object" && !zo ? (De = navigator.userAgent, zn = De.indexOf("Windows") >= 0, Gn = De.indexOf("Macintosh") >= 0, (De.indexOf("Macintosh") >= 0 || De.indexOf("iPad") >= 0 || De.indexOf("iPhone") >= 0) && navigator.maxTouchPoints && navigator.maxTouchPoints > 0, Pn = De.indexOf("Linux") >= 0, De?.indexOf("Mobi") >= 0, Ir = !0, In = Ba() || bt, Xt = navigator.language.toLowerCase(), jr = Xt) : console.error("Unable to resolve platform.");
const Bt = zn, Go = Gn, Jo = $a, Xo = Ir, Qo = Ir && typeof Oe.importScripts == "function", Yo = Qo ? Oe.origin : void 0, Fe = De, Zo = typeof Oe.postMessage == "function" && !Oe.importScripts;
(() => {
if (Zo) {
const e = [];
Oe.addEventListener("message", (n) => {
if (n.data && n.data.vscodeScheduleAsyncWork)
for (let r = 0, i = e.length; r < i; r++) {
const s = e[r];
if (s.id === n.data.vscodeScheduleAsyncWork) {
e.splice(r, 1), s.callback();
return;
}
}
});
let t = 0;
return (n) => {
const r = ++t;
e.push({
id: r,
callback: n
}), Oe.postMessage({ vscodeScheduleAsyncWork: r }, "*");
};
}
return (e) => setTimeout(e);
})();
const Ko = !!(Fe && Fe.indexOf("Chrome") >= 0);
Fe && Fe.indexOf("Firefox") >= 0;
!Ko && Fe && Fe.indexOf("Safari") >= 0;
Fe && Fe.indexOf("Edg/") >= 0;
Fe && Fe.indexOf("Android") >= 0;
function el(e) {
return e;
}
class tl {
constructor(t, n) {
this.lastCache = void 0, this.lastArgKey = void 0, typeof t == "function" ? (this._fn = t, this._computeKey = el) : (this._fn = n, this._computeKey = t.getCacheKey);
}
get(t) {
const n = this._computeKey(t);
return this.lastArgKey !== n && (this.lastArgKey = n, this.lastCache = this._fn(t)), this.lastCache;
}
}
class Wr {
constructor(t) {
this.executor = t, this._didRun = !1;
}
/**
* Get the wrapped value.
*
* This will force evaluation of the lazy value if it has not been resolved yet. Lazy values are only
* resolved once. `getValue` will re-throw exceptions that are hit while resolving the value
*/
get value() {
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 the wrapped value without forcing evaluation.
*/
get rawValue() {
return this._value;
}
}
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 sl(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 Ua(e) {
return e >= 65 && e <= 90;
}
function mn(e) {
return 55296 <= e && e <= 56319;
}
function Jn(e) {
return 56320 <= e && e <= 57343;
}
function qa(e, t) {
return (e - 55296 << 10) + (t - 56320) + 65536;
}
function al(e, t, n) {
const r = e.charCodeAt(n);
if (mn(r) && n + 1 < t) {
const i = e.charCodeAt(n + 1);
if (Jn(i))
return qa(r, i);
}
return r;
}
const ol = /^[\t\n\r\x20-\x7E]*$/;
function ll(e) {
return ol.test(e);
}
class Ye {
static {
this.ambiguousCharacterData = new Wr(() => 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,119846,109],"_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]}'));
}
static {
this.cache = new tl({ getCacheKey: JSON.stringify }, (t) => {
function n(h) {
const c = /* @__PURE__ */ new Map();
for (let d = 0; d < h.length; d += 2)
c.set(h[d], h[d + 1]);
return c;
}
function r(h, c) {
const d = new Map(h);
for (const [m, g] of c)
d.set(m, g);
return d;
}
function i(h, c) {
if (!h)
return c;
const d = /* @__PURE__ */ new Map();
for (const [m, g] of h)
c.has(m) && d.set(m, g);
return d;
}
const s = this.ambiguousCharacterData.value;
let a = t.filter((h) => !h.startsWith("_") && h in s);
a.length === 0 && (a = ["_default"]);
let l;
for (const h of a) {
const c = n(s[h]);
l = i(l, c);
}
const o = n(s._common), u = r(o, l);
return new Ye(u);
});
}
static getInstance(t) {
return Ye.cache.get(Array.from(t));
}
static {
this._locales = new Wr(() => Object.keys(Ye.ambiguousCharacterData.value).filter((t) => !t.startsWith("_")));
}
static getLocales() {
return Ye._locales.value;
}
constructor(t) {
this.confusableDictionary = t;
}
isAmbiguous(t) {
return this.confusableDictionary.has(t);
}
/**
* Returns the non basic ASCII code point that the given code point can be confused,
* or undefined if such code point does note exist.
*/
getPrimaryConfusable(t) {
return this.confusableDictionary.get(t);
}
getConfusableCodePoints() {
return new Set(this.confusableDictionary.keys());
}
}
class nt {
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,917